@inf-monkeys-tech/monkeys-design 2.0.168 → 2.0.169
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/capabilities/index.js +5 -5
- package/dist/components/capabilities/index.js.map +1 -1
- package/dist/components/capabilities/index.mjs +5 -5
- package/dist/components/capabilities/index.mjs.map +1 -1
- package/dist/components/ui/index.js +66 -66
- package/dist/components/ui/index.js.map +1 -1
- package/dist/components/ui/index.mjs +7 -7
- package/dist/components/ui/index.mjs.map +1 -1
- package/dist/components/ui-cards/index.js +1 -1
- package/dist/components/ui-cards/index.js.map +1 -1
- package/dist/components/ui-cards/index.mjs +1 -1
- package/dist/components/ui-cards/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/ui/controls.tsx","../../../src/ui/internal.ts","../../../src/theme-system/theme-tokens.ts","../../../src/locale/en-US.ts","../../../src/locale/zh-CN.ts","../../../src/locale/resolve-locale.ts","../../../src/provider/context.ts","../../../src/ui/theme/base.json","../../../src/ui/theme/tenants/bsd.json","../../../src/ui/theme/config.ts","../../../src/ui/theme/presets.ts","../../../src/ui/theme/theme.tsx","../../../src/ui/sample-color.ts","../../../src/ui/motion.ts","../../../src/ui/theme/effect-tokens.ts","../../../src/ui/button-light-edge.tsx","../../../src/ui/scroll-surface.tsx","../../../src/ui/overlays.tsx","../../../src/ui/panel-surface.ts","../../../src/ui/effects.tsx","../../../src/ui/sortable-collection.tsx","../../../src/ui/collection.tsx","../../../src/ui/upload.tsx","../../../src/ui/surface-effect.tsx","../../../src/ui/patterns.tsx","../../../src/ui/theme/token-catalog.ts"],"names":["cx","__name","values","durationMilliseconds","token","value","unit","useControllable","defaultValue","fallback","onChange","controlled","initial","useRef","warned","local","setLocal","useState","current","next","useFormReset","ref","reset","latest","useEffect","element","form","active","listener","event","CSS_EXTENSION_KEY","isRecord","readCssExtension","extensions","extension","formatNumber","formatDimension","formatDuration","formatColorComponent","hexToSrgb","hex","colorSrgbComponents","component","srgbToHsl","red","green","blue","maximum","minimum","lightness","delta","saturation","hue","formatHslTriplet","formatColor","alpha","components","alphaSuffix","formatFontFamily","families","genericFamilies","family","formatShadow","shadow","formatGradient","stops","stop","gradient","formatTokenValue","styleToken","toCssVariableName","path","prefix","normalized","assertCssVariablePrefix","selectModePath","paths","basePath","colorMode","contextualPath","HSL_SEMANTIC_VARIABLES","THEME_TOKEN_CSS_ALIASES","variableName","getThemeTokenCssValue","compiled","compileThemeTokens","input","options","resolved","resolveThemeTokens","contract","density","variablePrefix","cssValues","cssVariables","canonicalVariableSources","cssValue","existingPath","alias","axis","cssText","left","right","name","enUS","page","pageCount","start","end","total","count","columnId","duration","completed","used","percent","code","zhCN","mergeMonkeysLocaleMessages","base","override","defaultMonkeysLocale","EMPTY_ENVIRONMENT","EMPTY_PORTAL","MONKEYS_PROVIDER_CONTEXTS_KEY","createMonkeysProviderContexts","createContext","getMonkeysProviderContexts","host","existing","contexts","providerContexts","MonkeysLocaleContext","MonkeysThemeContext","MonkeysDirectionContext","MonkeysEnvironmentContext","useMonkeysLocale","useContext","useMonkeysResolvedTheme","useMonkeysDirection","useMonkeysEnvironment","useMonkeysPortalOptions","base_default","bsd_default","isGroup","mergeThemeTokens","merge","a","b","result","key","uiVariable","baseThemeTokens","uiThemePresets","getTenantTheme","tenant","preset","defaultThemeTokens","defaultResolvedTokens","compileUITheme","tokens","variablesFromTheme","variables","UIThemeContext","PortalDepthContext","useUIDirection","explicit","theme","inherited","environment","documentDirection","setDocumentDirection","root","update","observer","useUILocale","locale","useTooltipScope","inputDocuments","observeInput","document","releaseInput","previous","pointer","keyboard","entry","ThemeProvider","children","className","style","dir","rest","parent","inheritedDirection","tenantId","effectiveDensity","useMemo","foundation","dimensionAlias","densityOverride","direction","context","jsx","Jt","useUIResolvedTokens","Portal","depth","setHost","baseLayer","nestingStep","content","createPortal","sampleInk","color","channels","index","useShaderEnabled","enabled","setEnabled","motion","colors","resolveEffectTokens","number","effect","ButtonLightEdge","filterId","useId","hostRef","module","setModule","ready","setReady","shape","setShape","loaded","button","width","height","radiusValue","radius","inset","jsxs","Button","forwardRef","variant","icon","tone","size","loading","lightEdge","toggle","checked","defaultChecked","onCheckedChange","required","type","onClick","onPointerDown","onKeyDown","props","pressed","setPressed","Switch","ToggleButton","ColorSlider","onValueChange","onValueCommit","disabled","readOnly","onPointerMove","onPointerCancel","onPointerUp","onKeyUp","field","useField","selected","setSelected","useImperativeHandle","option","motionEnabled","interaction","setInteraction","animated","sample","samples","setSamples","layer","position","location","fraction","item","t","background","locked","commit","FieldContext","Field","explicitId","label","labelAccessory","description","descriptionHidden","error","invalid","generated","id","isValidElement","describedBy","fieldLabel","Children","Fieldset","legend","Input","InputTagSelectionControl","InputTagsControl","InputSearchControl","InputNumberControl","nativeProps","mode","inputValue","onInputValueChange","removeLabel","placeholder","onCompositionStart","onCompositionEnd","tags","setTags","draft","setDraft","announcement","setAnnouncement","composing","initialTags","remove","_","tag","InputTag","onRemove","X","items","onAdd","onInvalid","add","group","Plus","Textarea","parseNumberValue","text","NumberInput","setText","SearchField","onSearch","clearLabel","clear","editor","Search","setValue","PickerTrigger","indicator","ChevronDown","Select","MultipleSelect","SingleSelect","_variant","fieldAttributes","ChevronUp","Check","open","defaultOpen","onOpenChange","shown","setShown","trigger","setValidationFailed","generatedId","triggerId","requiredId","validationFailed","selectedLabels","MonthYearPicker","month","defaultMonth","year","defaultYear","minYear","maxYear","onMonthChange","onYearChange","monthLabel","yearLabel","initialYear","selectedMonth","selectedYear","months","years","SegmentedControl","SectionTitle","Element","Tabs","ScrollSurface","onScroll","delay","Tooltip","delayDuration","side","scoped","milliseconds","tooltip","Menu","onCloseAutoFocus","fe","Dialog","frame","scroll","backdrop","surface","title","actions","initialFocusRef","restoreFocusRef","closeLabel","close","Badge","Notice","action","EmptyState","LoadingState","Avatar","src","alt","PanelSurfaceContext","ShaderEffect","onUnavailable","hostProps","unavailable","hostStyle","reason","splitHostProps","shader","native","Aurora","ChromaFlow","LightEdge","BottomGlow","Sorting","canStartCollectionDrag","activeNode","target","_CardMouseSensor","MouseSensor","nativeEvent","_options","CardMouseSensor","_CardTouchSensor","TouchSensor","CardTouchSensor","SortableCollection","reorderItems","reorderAxis","reorderGroupField","reorderDisabled","onReorder","suppressClick","sensors","useSensors","useSensor","KeyboardSensor","sortableKeyboardCoordinates","ids","groups","over","DndContext","args","closestCenter","SortableContext","rectSortingStrategy","horizontalListSortingStrategy","verticalListSortingStrategy","SortableCollectionItem","itemId","ActiveItem","setNodeRef","attributes","listeners","transform","transition","isDragging","useSortable","CSS","Panel","classNames","PageShell","header","AppHeader","logo","navigation","account","SplitLayout","primary","sidebar","ratio","primaryAspectRatio","minPrimarySize","maxPrimarySize","gap","sidebarWidth","share","useAspectRatio","dimension","CollectionToolbar","search","filters","CollectionSection","lead","CardGrid","view","minCardWidth","columnGap","Card","chrome","breadcrumbSurface","onSelectedChange","headingLevel","image","imageAlt","imagePosition","imageStyle","media","mediaOverlay","emptyMedia","href","onOpen","meta","stats","dragHandle","navigationLabel","footer","failedSource","setFailedSource","detail","hasDescription","hasEntry","descriptionId","Heading","tooltipTitle","headingContent","heading","mediaContent","ImageOff","statistics","StatGroup","body","sortable","dragId","sortableState","setCardRef","node","cardStyle","dragListeners","dragAttributes","GripVertical","CardDragProvider","onMove","PointerSensor","rectSwappingStrategy","columns","defaultAccept","identity","file","validateImageFiles","files","accept","maxFileBytes","existingFiles","seen","accepted","rejected","UploadedImageItem","onRetry","onSelectCover","cover","Fragment","ImageUploadField","onFilesSelected","onRejected","coverId","onDrop","onPaste","onDragOver","receive","SurfaceEffect","shaders","setShaders","rendererState","setRendererState","move","bounds","leave","Stack","wrap","Breadcrumbs","BrandMark","BrandBanner","caption","CardGridItem","sortableId","CardActions","monitored","monitorPending","onMonitoredChange","favorite","favoritePending","onFavoriteChange","menuItems","menuLabel","onMenuCloseAutoFocus","LocateFixed","Bookmark","MoreHorizontal","FormPanel","FormGrid","PreviewMagnifier","stage","setSize","measure","scale","PreviewPanel","state","pendingLabel","emptyMessage","errorMessage","NoticeRegion","getUITokenCatalog","rows","walk","reference","unused"],"mappings":"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","file":"index.mjs","sourcesContent":["import { Children, cloneElement, createContext, forwardRef, isValidElement, useContext, useEffect, useId, useImperativeHandle, useRef, useState, type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode, type CSSProperties } from 'react';\nimport * as SwitchPrimitive from '@radix-ui/react-switch';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\nimport * as ToggleGroup from '@radix-ui/react-toggle-group';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { cx, useControllable, useFormReset } from './internal';\nimport { Portal, useUIDirection, useUILocale } from './theme/theme';\nimport { Search, X, Plus, ChevronDown, ChevronUp, Check } from 'lucide-react';\nimport { sampleInk } from './sample-color';\nimport { ButtonLightEdge, type ButtonLightEdgeOptions } from './button-light-edge';\nimport { useShaderEnabled } from './motion';\n\ninterface ButtonBaseProps extends ButtonHTMLAttributes<HTMLButtonElement> { variant?: 'solid' | 'soft' | 'outline' | 'ghost' | 'switch'; tone?: 'neutral' | 'primary' | 'danger'; size?: 'sm' | 'md' | 'lg'; loading?: boolean; icon?: ReactNode; lightEdge?: boolean | ButtonLightEdgeOptions; toggle?: boolean; checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; required?: boolean }\ntype ButtonShapeProps = { shape?: 'default' | 'tile' } | { shape: 'icon'; 'aria-label': string };\nexport type ButtonProps = ButtonBaseProps & ButtonShapeProps;\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button({ variant, shape = 'default', icon, tone = 'neutral', size = 'md', loading = false, lightEdge = false, toggle = false, checked, defaultChecked, onCheckedChange, required, type = 'button', className, children, onClick, onPointerDown, onKeyDown, ...props }, ref) {\n const direction = useUIDirection();\n const [pressed, setPressed] = useControllable(checked, defaultChecked, false, onCheckedChange);\n if (variant === 'switch') return <Switch {...props} ref={ref} type={type} value={props.value === undefined ? undefined : String(props.value)} required={required} checked={checked} defaultChecked={defaultChecked} onCheckedChange={onCheckedChange} className={cx('monkeys-ui-button-switch', className)} data-variant=\"switch\" data-tone=\"primary\" data-size={size} aria-label={props['aria-label'] ?? (typeof children === 'string' ? children : undefined)} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onPointerDown={onPointerDown} onKeyDown={onKeyDown} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); }} />;\n return <button {...props} dir={props.dir ?? direction} ref={ref} type={type} className={cx('monkeys-ui-button', className)} data-light-edge={lightEdge ? true : undefined} data-shape={shape} data-variant={variant ?? (shape === 'icon' ? 'ghost' : shape === 'tile' ? 'outline' : 'solid')} data-tone={tone} data-size={size} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} aria-pressed={toggle ? pressed : props['aria-pressed']} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); if (toggle && !event.defaultPrevented) setPressed(!pressed); }}>{lightEdge ? <span className=\"monkeys-ui-button-light-edge\" aria-hidden=\"true\"><ButtonLightEdge {...(lightEdge === true ? {} : lightEdge)} /></span> : null}<span className=\"monkeys-ui-button-label\" data-loading={loading || undefined}>{icon ? <span className=\"monkeys-ui-button-icon\" aria-hidden=\"true\">{icon}</span> : null}{children}</span>{loading ? <span className=\"monkeys-ui-button-spinner\" aria-hidden=\"true\" /> : null}</button>;\n});\nexport type ToggleButtonProps = Omit<ButtonBaseProps, 'value' | 'defaultValue' | 'variant'> & ButtonShapeProps & { variant?: Exclude<ButtonBaseProps['variant'], 'switch'> };\n/** Compatibility entry; prefer Button toggle. */\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(function ToggleButton(props, ref) {\n return <Button {...props} ref={ref} toggle />;\n});\n\nexport interface ColorOption { id: string; label: string; color: string }\nexport interface ColorSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step' | 'children'> {\n options: ColorOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n onValueCommit?: (value: string) => void;\n}\n/** A native, discrete range control. The gradient never creates selectable intermediate colors. */\nexport const ColorSlider = forwardRef<HTMLInputElement, ColorSliderProps>(function ColorSlider({ options, value, defaultValue, onValueChange, onValueCommit, disabled, readOnly, className, style, onPointerDown, onPointerMove, onPointerCancel, onKeyDown, onPointerUp, onKeyUp, dir, name, ...props }, ref) {\n const field = useField(props);\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const [selected, setSelected] = useControllable(value, defaultValue, options[0]?.id ?? '', onValueChange);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? options[0]?.id ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); });\n const index = Math.max(0, options.findIndex(option => option.id === selected));\n const option = options[index];\n const motionEnabled = useShaderEnabled();\n const [interaction, setInteraction] = useState<'pointer' | 'drag' | 'keyboard'>('keyboard');\n const pointer = useRef<{ id: number; x: number; y: number } | null>(null);\n const animated = motionEnabled && interaction === 'pointer' && !disabled && !readOnly;\n // Keep two stable layers so rapid changes retarget their opacity transitions.\n const sample = { label: option?.label, color: option?.color };\n const [samples, setSamples] = useState({ layers: [sample, sample], active: 0 });\n const current = samples.layers[samples.active];\n if (current.label !== sample.label || current.color !== sample.color) {\n const active = 1 - samples.active;\n setSamples({ layers: samples.layers.map((layer, index) => index === active ? sample : layer), active });\n }\n const position = options.length > 1 ? index / (options.length - 1) : 0.5;\n // Native hit target, visual thumb and gradient stops share the same inset.\n const location = (fraction: number) => `calc(${fraction * 100}% + ${0.5 - fraction} * var(--monkeys-ui-color-slider-thumb-width,var(--monkeys-ui-default-color-slider-thumb-width)))`;\n const gradient = options.map((item, index) => {\n const t = options.length > 1 ? index / (options.length - 1) : 0;\n return `${item.color} ${location(t)}`;\n });\n const background = options.length > 1 ? `linear-gradient(to ${direction === 'rtl' ? 'left' : 'right'}, ${gradient.join(', ')})` : option?.color;\n const locked = disabled || readOnly || options.length < 2;\n const commit = (input: HTMLInputElement) => {\n const next = options[Number(input.value)];\n if (!locked && next) onValueCommit?.(next.id);\n };\n return <div className={cx('monkeys-ui-color-slider', className)} data-animated={animated || undefined} data-disabled={disabled || options.length === 0 || undefined} dir={direction} style={style}>\n <span className=\"monkeys-ui-color-slider-track\" style={{ background }} aria-hidden=\"true\" />\n <span className=\"monkeys-ui-color-slider-positioner\" style={{ transform: `translateX(${(direction === 'rtl' ? -1 : 1) * position * 100}%)` }} aria-hidden=\"true\">\n <span className=\"monkeys-ui-color-slider-thumb\" data-ink={sampleInk(option?.color)} style={{ '--monkeys-ui-color-slider-selected': option?.color } as CSSProperties}>\n {samples.layers.map((layer, index) => <span key={index} className=\"monkeys-ui-color-slider-sample\" data-active={index === samples.active} data-ink={sampleInk(layer.color)} style={{ '--monkeys-ui-color-slider-selected': layer.color } as CSSProperties}><span className={index === samples.active ? 'monkeys-ui-color-slider-label' : 'monkeys-ui-color-slider-previous-label'}>{layer.label}</span></span>)}\n </span>\n </span>\n <input {...props} {...field} ref={input} type=\"range\" dir={direction} min={0} max={Math.max(0, options.length - 1)} step={1} value={index} disabled={disabled || options.length === 0} aria-readonly={readOnly || undefined} aria-valuetext={option?.label ?? ''} className=\"monkeys-ui-color-slider-input\" onPointerDown={event => {\n onPointerDown?.(event);\n if (readOnly) event.preventDefault();\n if (!locked && !event.defaultPrevented && event.isPrimary !== false && event.button === 0) {\n pointer.current = { id: event.pointerId, x: event.clientX, y: event.clientY };\n setInteraction('pointer');\n }\n }} onPointerMove={event => {\n onPointerMove?.(event);\n const start = pointer.current;\n if (start?.id === event.pointerId && Math.hypot(event.clientX - start.x, event.clientY - start.y) > 3) setInteraction('drag');\n }} onPointerCancel={event => { pointer.current = null; setInteraction('keyboard'); onPointerCancel?.(event); }} onKeyDown={event => { pointer.current = null; setInteraction('keyboard'); onKeyDown?.(event); if (readOnly && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) event.preventDefault(); }} onChange={event => { if (!locked) { const next = options[Number(event.target.value)]; if (next) setSelected(next.id); } }} onPointerUp={event => { pointer.current = null; onPointerUp?.(event); if (!event.defaultPrevented) commit(event.currentTarget); }} onKeyUp={event => { onKeyUp?.(event); if (!event.defaultPrevented && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) commit(event.currentTarget); }} />\n {name ? <input type=\"hidden\" name={name} form={props.form} value={option?.id ?? ''} disabled={disabled || options.length === 0} /> : null}\n </div>;\n});\n\ninterface FieldContextValue { id: string; describedBy?: string; invalid?: boolean; required?: boolean }\nconst FieldContext = createContext<FieldContextValue | null>(null);\nfunction useField(props: { id?: string; dir?: string; 'aria-describedby'?: string; 'aria-invalid'?: InputHTMLAttributes<HTMLInputElement>['aria-invalid']; required?: boolean }) {\n const field = useContext(FieldContext);\n const direction = useUIDirection(props.dir === 'rtl' || props.dir === 'ltr' ? props.dir : undefined);\n return { id: field?.id ?? props.id, dir: props.dir ?? direction, 'aria-describedby': [field?.describedBy, props['aria-describedby']].filter(Boolean).join(' ') || undefined, 'aria-invalid': props['aria-invalid'] ?? field?.invalid, required: props.required ?? field?.required };\n}\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> { label: ReactNode; labelAccessory?: ReactNode; children: ReactElement; description?: ReactNode; descriptionHidden?: boolean; error?: ReactNode; invalid?: boolean; required?: boolean }\nexport function Field({ id: explicitId, label, labelAccessory, description, descriptionHidden, error, invalid, required, className, children, ...props }: FieldProps) {\n const generated = useId();\n const id = explicitId ?? (isValidElement<{ id?: string }>(children) ? children.props.id : undefined) ?? generated;\n const describedBy = [description ? id + '-description' : '', error ? id + '-error' : ''].filter(Boolean).join(' ') || undefined;\n const fieldLabel = <label className=\"monkeys-ui-label\" htmlFor={id}>{label}{required ? <span className=\"monkeys-ui-required\" aria-hidden=\"true\"> *</span> : null}</label>;\n return <div {...props} className={cx('monkeys-ui-field', className)}>\n {labelAccessory ? <div className=\"flex items-center gap-1\" data-slot=\"label-row\">{fieldLabel}{labelAccessory}</div> : fieldLabel}\n <FieldContext.Provider value={{ id, describedBy, invalid: invalid ?? !!error, required }}>{Children.only(children)}</FieldContext.Provider>\n {description ? <div id={id + '-description'} className={descriptionHidden ? 'monkeys-ui-visually-hidden' : 'monkeys-ui-description'}>{description}</div> : null}\n {error ? <div id={id + '-error'} className=\"monkeys-ui-error\" role=\"alert\">{error}</div> : null}\n </div>;\n}\nexport interface FieldsetProps extends HTMLAttributes<HTMLFieldSetElement> { legend: ReactNode; disabled?: boolean }\nexport function Fieldset({ legend, children, className, ...props }: FieldsetProps) { return <fieldset {...props} className={cx('monkeys-ui-fieldset', className)}>{legend != null ? <legend>{legend}</legend> : null}{children}</fieldset>; }\ntype InputTagsProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type'> & {\n variant: 'tags';\n mode?: 'input';\n value?: string[];\n defaultValue?: string[];\n onValueChange?: (value: string[]) => void;\n /** Optional controlled draft for forms that own uncommitted text. */\n inputValue?: string;\n onInputValueChange?: (value: string) => void;\n removeLabel?: string;\n};\nexport interface InputTagItem { id: string; label: string }\ntype InputTagSelectionProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type' | 'onChange' | 'children'> & {\n variant: 'tags';\n mode: 'select';\n label: string;\n items: InputTagItem[];\n onAdd?: () => void;\n onRemove?: (id: string) => void;\n removeLabel?: string;\n};\ntype InputSearchProps = SearchFieldProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'search' };\ntype InputNumberProps = NumberInputProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'number' };\nexport type InputProps = (InputHTMLAttributes<HTMLInputElement> & { variant?: 'default' }) | InputTagsProps | InputTagSelectionProps | InputSearchProps | InputNumberProps;\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(props, ref) {\n const field = useField(props);\n if (props.variant === 'tags') return props.mode === 'select' ? <InputTagSelectionControl {...props} ref={ref} /> : <InputTagsControl {...props} ref={ref} />;\n if (props.variant === 'search') return <InputSearchControl {...props} ref={ref} />;\n if (props.variant === 'number') return <InputNumberControl {...props} ref={ref} />;\n const { variant, className, ...nativeProps } = props;\n return <input {...nativeProps} {...field} className={cx('monkeys-ui-input', className)} ref={ref} />;\n});\nconst InputTagsControl = forwardRef<HTMLInputElement, InputTagsProps>(function InputTagsControl({\n variant, mode, value, defaultValue, onValueChange, inputValue, onInputValueChange, removeLabel = '删除', name, form, className, style,\n disabled, readOnly, placeholder = '输入并回车后添加', onChange, onKeyDown, onCompositionStart, onCompositionEnd, ...props\n}, ref) {\n const field = useField(props);\n const [tags, setTags] = useControllable(value, defaultValue, [], onValueChange);\n const [draft, setDraft] = useControllable(inputValue, undefined, '', onInputValueChange);\n const [announcement, setAnnouncement] = useState('');\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n const initialTags = useRef(defaultValue ?? []);\n useFormReset(input, () => { if (value === undefined) setTags(initialTags.current); setDraft(''); });\n useEffect(() => {\n input.current?.setCustomValidity(field.required && tags.length === 0 ? '请至少添加一个标签' : '');\n }, [field.required, tags.length]);\n const remove = (index: number) => {\n if (locked) return;\n setTags(tags.filter((_, current) => current !== index));\n setAnnouncement(`${removeLabel} ${tags[index]}`);\n input.current?.focus();\n };\n return <div className={cx('monkeys-ui-tag-input', className)} style={style} dir={field.dir} data-variant={variant} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} onClick={event => {\n if (!disabled && !(event.target as HTMLElement).closest('button')) input.current?.focus();\n }}>\n {tags.map((tag, index) => <InputTag key={`${index}:${tag}`} label={tag} disabled={locked} removeLabel={removeLabel} onRemove={() => remove(index)} />)}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-tag-input-editor\" disabled={disabled} readOnly={readOnly} placeholder={placeholder} value={draft} required={field.required && tags.length === 0} aria-required={field.required || undefined} onChange={event => {\n if (locked) return;\n setDraft(event.target.value);\n onChange?.(event);\n }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => {\n onKeyDown?.(event);\n if (event.defaultPrevented || locked || composing.current || event.nativeEvent.isComposing || event.keyCode === 229) return;\n if (event.key === 'Enter') {\n event.preventDefault();\n const next = draft.trim();\n if (next && !tags.includes(next)) {\n setTags([...tags, next]);\n setAnnouncement(next);\n }\n setDraft('');\n } else if (event.key === 'Backspace' && draft === '' && tags.length) {\n event.preventDefault();\n remove(tags.length - 1);\n }\n }} />\n {name ? tags.map((tag, index) => <input key={index} type=\"hidden\" name={name} form={form} value={tag} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\n/** One chip recipe for typed tags and ID-backed selections; not a public component. */\nfunction InputTag({ label, disabled, removeLabel, onRemove }: { label: string; disabled?: boolean; removeLabel: string; onRemove?: () => void }) {\n return <span className=\"monkeys-ui-input-tag\"><span className=\"monkeys-ui-input-tag-text\" title={label}>{label}</span>{onRemove ? <button type=\"button\" className=\"monkeys-ui-input-tag-remove\" disabled={disabled} aria-label={`${removeLabel} ${label}`} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></button> : null}</span>;\n}\nconst InputTagSelectionControl = forwardRef<HTMLInputElement, InputTagSelectionProps>(function InputTagSelectionControl({\n variant, mode, label, items, onAdd, onRemove, removeLabel = '移除', name, form, disabled, readOnly, className, style, onInvalid, ...props\n}, ref) {\n const field = useField(props);\n const input = useRef<HTMLInputElement>(null);\n const add = useRef<HTMLButtonElement>(null);\n const group = useRef<HTMLDivElement>(null);\n const [announcement, setAnnouncement] = useState('');\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n useEffect(() => { input.current?.setCustomValidity(field.required && !items.length ? '请至少添加一个标签' : ''); }, [field.required, items.length]);\n return <div ref={group} role=\"group\" aria-label={label} aria-describedby={field['aria-describedby']} aria-required={field.required || undefined} aria-invalid={field['aria-invalid']} tabIndex={-1} dir={field.dir} className={cx('monkeys-ui-tag-input', className)} data-mode={mode} data-empty={!items.length} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} style={style}>\n <div className=\"monkeys-ui-tag-input-header\"><span className=\"monkeys-ui-label\">{label}</span>{onAdd ? <button ref={add} type=\"button\" className=\"monkeys-ui-tag-input-add\" disabled={locked} aria-label={'添加' + label} onClick={onAdd}><Plus aria-hidden=\"true\" /></button> : null}</div>\n {items.length ? <div className=\"monkeys-ui-tag-input-items\">{items.map(item => <InputTag key={item.id} label={item.label} disabled={locked} removeLabel={removeLabel} onRemove={onRemove ? () => { if (locked) return; onRemove(item.id); setAnnouncement(`${removeLabel} ${item.label}`); (add.current ?? group.current)?.focus(); } : undefined} />)}</div> : null}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} value={items.length ? 'selected' : ''} onChange={() => {}} disabled={disabled} required={field.required} onInvalid={event => { onInvalid?.(event); event.preventDefault(); (add.current ?? group.current)?.focus(); }} />\n {name ? items.map(item => <input key={item.id} type=\"hidden\" name={name} form={form} value={item.id} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaHTMLAttributes<HTMLTextAreaElement>>(function Textarea({ className, ...props }, ref) { const field = useField(props); return <textarea {...props} {...field} ref={ref} className={cx('monkeys-ui-textarea', className)} />; });\nexport function parseNumberValue(text: string): number | null { return /^-?(?:\\d+|\\d*\\.\\d+)$/.test(text.trim()) && Number.isFinite(Number(text)) ? Number(text) : null; }\nexport interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange'> { value?: string; defaultValue?: string; onValueChange?: (text: string, detail: { numberValue: number | null }) => void }\n/** Compatibility entry; prefer Input variant=\"number\". */\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(function NumberInput(props, ref) {\n return <Input {...props} variant=\"number\" ref={ref} />;\n});\nconst InputNumberControl = forwardRef<HTMLInputElement, InputNumberProps>(function InputNumberControl({ variant, value, defaultValue, onValueChange, onChange, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', next => onValueChange?.(next, { numberValue: parseNumberValue(next) }));\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n return <Input {...props} variant=\"default\" type=\"text\" inputMode=\"decimal\" value={text} onChange={event => { setText(event.target.value); onChange?.(event); }} ref={input} />;\n});\nexport interface SearchFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'onSubmit'> { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; onSearch?: (value: string) => void; clearLabel?: string }\n/** Compatibility entry; prefer Input variant=\"search\". */\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(function SearchField(props, ref) {\n return <Input {...props} variant=\"search\" ref={ref} />;\n});\nconst InputSearchControl = forwardRef<HTMLInputElement, InputSearchProps>(function InputSearchControl({ variant, value, defaultValue, onValueChange, onChange, onSearch, clearLabel = '清空搜索', className, onKeyDown, onCompositionStart, onCompositionEnd, disabled, readOnly, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', onValueChange);\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n useImperativeHandle(ref, () => input.current!, []);\n const initial = useRef(defaultValue ?? '');\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n const clear = () => {\n const editor = input.current;\n if (disabled || readOnly || !editor) return;\n // Dispatch a native input event through React's normal onChange path.\n const setter = Object.getOwnPropertyDescriptor(editor.ownerDocument.defaultView!.HTMLInputElement.prototype, 'value')!.set!;\n setter.call(editor, '');\n editor.dispatchEvent(new Event('input', { bubbles: true }));\n editor.focus();\n };\n return <div className={cx('monkeys-ui-search', className)}><Search size=\"var(--monkeys-ui-icon-size-s17,var(--monkeys-ui-default-icon-size-s17))\" aria-hidden=\"true\" /><Input {...props} variant=\"default\" ref={input} type=\"search\" disabled={disabled} readOnly={readOnly} value={text} onChange={event => { if (!disabled && !readOnly) { setText(event.target.value); onChange?.(event); } }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => { onKeyDown?.(event); if (!event.defaultPrevented && event.key === 'Enter' && !disabled && !readOnly && !composing.current && !event.nativeEvent.isComposing && event.keyCode !== 229) { event.preventDefault(); onSearch?.(text); } }} />{text ? <Button shape=\"icon\" aria-label={clearLabel} size=\"sm\" disabled={disabled || readOnly} onClick={clear}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface SwitchProps extends Omit<SwitchPrimitive.SwitchProps, 'defaultChecked'> { defaultChecked?: boolean }\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps>(function Switch({ checked, defaultChecked, onCheckedChange, className, onPointerDown, onKeyDown, ...props }, ref) {\n const field = useField(props);\n const [value, setValue] = useControllable(checked, defaultChecked, false, onCheckedChange);\n return <SwitchPrimitive.Root {...props} {...field} ref={ref} checked={value} onCheckedChange={setValue} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} className={cx('monkeys-ui-switch', className)}><SwitchPrimitive.Thumb className=\"monkeys-ui-switch-thumb\" /></SwitchPrimitive.Root>;\n});\nexport interface SelectOption { value: string; label: string; disabled?: boolean }\n/** Shared select appearance for popover-backed pickers; the parent owns selection semantics. */\nexport interface PickerTriggerProps extends ButtonHTMLAttributes<HTMLButtonElement> { indicator?: ReactNode }\nexport const PickerTrigger = forwardRef<HTMLButtonElement, PickerTriggerProps>(function PickerTrigger({ indicator = <ChevronDown size={12} />, className, children, type = 'button', ...props }, ref) {\n return <button {...props} ref={ref} type={type} className={cx('monkeys-ui-select', className)}><span className=\"min-w-0 truncate\">{children}</span><span className=\"shrink-0\" aria-hidden=\"true\">{indicator}</span></button>;\n});\ninterface SelectBaseProps extends Omit<SelectPrimitive.SelectProps, 'children' | 'value' | 'defaultValue' | 'onValueChange'> { options: SelectOption[]; placeholder?: string; id?: string; className?: string; style?: React.CSSProperties; 'aria-label'?: string; 'aria-describedby'?: string; 'aria-invalid'?: boolean }\ntype MultipleSelectProps = SelectBaseProps & { variant: 'multiple'; value?: string[]; defaultValue?: string[]; onValueChange?: (value: string[]) => void };\ntype SingleSelectProps = SelectBaseProps & { variant?: 'default'; value?: string; defaultValue?: string; onValueChange?: (value: string) => void };\nexport type SelectProps = SingleSelectProps | MultipleSelectProps;\nexport const Select = forwardRef<HTMLButtonElement, SelectProps>(function Select(props, ref) {\n if (props.variant === 'multiple') return <MultipleSelect {...props} ref={ref} />;\n return <SingleSelect {...props} ref={ref} />;\n});\nconst SingleSelect = forwardRef<HTMLButtonElement, SingleSelectProps>(function SingleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, variant: _variant, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, '', onValueChange);\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n return <SelectPrimitive.Root {...props} dir={direction} required={required} value={selected} onValueChange={setSelected}><SelectPrimitive.Trigger ref={ref} {...fieldAttributes} aria-required={required || undefined} aria-label={label} className={cx('monkeys-ui-select', className)} style={style}><SelectPrimitive.Value placeholder={placeholder ?? locale.messages.multiSelect.placeholder} /><SelectPrimitive.Icon aria-hidden=\"true\"><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" /></SelectPrimitive.Icon></SelectPrimitive.Trigger><Portal><SelectPrimitive.Content className=\"monkeys-ui-select-content\" position=\"popper\" sideOffset={6}><SelectPrimitive.ScrollUpButton><ChevronUp size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollUpButton><SelectPrimitive.Viewport>{options.map(option => <SelectPrimitive.Item key={option.value} value={option.value} disabled={option.disabled} className=\"monkeys-ui-select-item\"><SelectPrimitive.ItemText>{option.label}</SelectPrimitive.ItemText><SelectPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ItemIndicator></SelectPrimitive.Item>)}</SelectPrimitive.Viewport><SelectPrimitive.ScrollDownButton><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollDownButton></SelectPrimitive.Content></Portal></SelectPrimitive.Root>;\n});\nconst MultipleSelect = forwardRef<HTMLButtonElement, MultipleSelectProps>(function MultipleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, open, defaultOpen, onOpenChange, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, [], onValueChange);\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const trigger = useRef<HTMLButtonElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? []);\n useImperativeHandle(ref, () => trigger.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); setShown(false); setValidationFailed(false); });\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n const generatedId = useId();\n const triggerId = field.id ?? generatedId;\n const requiredId = generatedId + '-required';\n const [validationFailed, setValidationFailed] = useState(false);\n useEffect(() => { if (selected.length || !required) setValidationFailed(false); }, [selected.length, required]);\n const selectedLabels = options.filter(option => selected.includes(option.value)).map(option => option.label);\n const toggle = (option: SelectOption) => {\n if (option.disabled || props.disabled) return;\n setSelected(selected.includes(option.value) ? selected.filter(value => value !== option.value) : [...selected, option.value]);\n };\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown} modal={false}>\n <MenuPrimitive.Trigger asChild><button ref={trigger} type=\"button\" {...fieldAttributes} id={triggerId} aria-label={label} aria-describedby={[field['aria-describedby'], required ? requiredId : ''].filter(Boolean).join(' ') || undefined} aria-invalid={field['aria-invalid'] || validationFailed || undefined} disabled={props.disabled} className={cx('monkeys-ui-select', className)} style={style} data-variant=\"multiple\" data-placeholder={!selectedLabels.length || undefined}>\n <span className=\"monkeys-ui-select-value\">{selectedLabels.length ? selectedLabels.join('、') : (placeholder ?? locale.messages.multiSelect.placeholder)}</span><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" />\n </button></MenuPrimitive.Trigger>\n <Portal><MenuPrimitive.Content aria-label={label} aria-labelledby={label ? undefined : triggerId} sideOffset={6} align=\"start\" className=\"monkeys-ui-select-content monkeys-ui-select-multiple-content\">\n {options.map(option => <MenuPrimitive.CheckboxItem key={option.value} checked={selected.includes(option.value)} disabled={option.disabled} onSelect={event => { event.preventDefault(); toggle(option); }} className=\"monkeys-ui-select-item\">\n <span>{option.label}</span><MenuPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></MenuPrimitive.ItemIndicator>\n </MenuPrimitive.CheckboxItem>)}\n </MenuPrimitive.Content></Portal>\n {required ? <span id={requiredId} className=\"monkeys-ui-visually-hidden\">{locale.locale.startsWith('zh') ? '必填,请至少选择一项' : 'Required. Select at least one option.'}</span> : null}\n <input ref={input} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} form={props.form} autoComplete={props.autoComplete} value={selected.length ? 'selected' : ''} onChange={() => {}} disabled={props.disabled} required={required} onInvalid={event => { event.preventDefault(); setValidationFailed(true); trigger.current?.focus(); }} />\n {props.name ? selected.map(item => <input key={item} type=\"hidden\" name={props.name} form={props.form} value={item} disabled={props.disabled} />) : null}\n </MenuPrimitive.Root>;\n});\nexport interface MonthYearPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'children' | 'defaultValue'> {\n month?: number;\n defaultMonth?: number;\n year?: number;\n defaultYear?: number;\n /** Inclusive year range. Defaults to 2020–2035. */\n minYear?: number;\n maxYear?: number;\n onMonthChange?: (month: number) => void;\n onYearChange?: (year: number) => void;\n monthLabel?: string;\n yearLabel?: string;\n disabled?: boolean;\n}\n/** Two existing Select controls; numeric values contain no day or time-zone conversion. */\nexport function MonthYearPicker({ month, defaultMonth = 1, year, defaultYear, minYear = 2020, maxYear = 2035, onMonthChange, onYearChange, monthLabel = '月份', yearLabel = '年份', disabled, className, dir, 'aria-label': label = '年月', ...props }: MonthYearPickerProps) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n if (!Number.isInteger(minYear) || !Number.isInteger(maxYear) || minYear < 1 || maxYear > 9999 || minYear > maxYear) throw new RangeError('MonthYearPicker requires an inclusive year range within 1–9999.');\n const initialYear = defaultYear ?? minYear;\n const selectedMonth = month ?? defaultMonth;\n const selectedYear = year ?? initialYear;\n if (!Number.isInteger(selectedMonth) || selectedMonth < 1 || selectedMonth > 12) throw new RangeError('MonthYearPicker month must be between 1 and 12.');\n if (!Number.isInteger(selectedYear) || selectedYear < minYear || selectedYear > maxYear) throw new RangeError('MonthYearPicker year must be within the configured range.');\n const months = Array.from({ length: 12 }, (_, index) => ({ value: String(index + 1), label: `${index + 1}月` }));\n const years = Array.from({ length: maxYear - minYear + 1 }, (_, index) => ({ value: String(minYear + index), label: String(minYear + index) }));\n return <div {...props} role=\"group\" aria-label={label} dir={direction} className={cx('monkeys-ui-month-year-picker', className)}><Select aria-label={monthLabel} dir={direction} options={months} value={month === undefined ? undefined : String(month)} defaultValue={month === undefined ? String(defaultMonth) : undefined} onValueChange={value => onMonthChange?.(Number(value))} disabled={disabled} /><Select aria-label={yearLabel} dir={direction} options={years} value={year === undefined ? undefined : String(year)} defaultValue={year === undefined ? String(initialYear) : undefined} onValueChange={value => onYearChange?.(Number(value))} disabled={disabled} /></div>;\n}\nexport interface ChoiceItem { value: string; label: ReactNode; ariaLabel?: string; disabled?: boolean }\nexport interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange' | 'dir'> { dir?: 'ltr' | 'rtl'; items: ChoiceItem[]; value?: string; defaultValue?: string; onValueChange?: (value: string) => void; 'aria-label': string }\nexport function SegmentedControl({ items, value, defaultValue, onValueChange, className, ...props }: SegmentedControlProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <ToggleGroup.Root {...props} dir={direction} type=\"single\" value={selected} onValueChange={next => { if (next) setSelected(next); }} className={cx('monkeys-ui-segmented', className)}>{items.map(item => <ToggleGroup.Item type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-segment\">{item.label}</ToggleGroup.Item>)}</ToggleGroup.Root>;\n}\nexport interface SectionTitleProps extends HTMLAttributes<HTMLElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span';\n indicator?: boolean;\n}\n/** Shared title/indicator presentation; the parent owns navigation and selection. */\nexport function SectionTitle({ as: Element = 'h2', indicator = true, className, ...props }: SectionTitleProps) {\n return <Element {...props} className={cx('monkeys-ui-section-title', className)} data-indicator={indicator} />;\n}\nexport interface TabItem extends ChoiceItem { content: ReactNode }\nexport interface TabsProps extends Omit<TabsPrimitive.TabsProps, 'children'> { items: TabItem[]; 'aria-label': string }\nexport function Tabs({ items, value, defaultValue, onValueChange, className, 'aria-label': label, ...props }: TabsProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <TabsPrimitive.Root {...props} dir={direction} value={selected} onValueChange={setSelected} className={cx('monkeys-ui-tabs', className)}><TabsPrimitive.List aria-label={label} className=\"monkeys-ui-tab-list\">{items.map(item => <TabsPrimitive.Trigger type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-tab\"><SectionTitle as=\"span\" indicator={selected === item.value}>{item.label}</SectionTitle></TabsPrimitive.Trigger>)}</TabsPrimitive.List>{items.map(item => <TabsPrimitive.Content key={item.value} value={item.value} className=\"monkeys-ui-tab-panel\">{item.content}</TabsPrimitive.Content>)}</TabsPrimitive.Root>;\n}\n","import { useEffect, useRef, useState, type RefObject } from 'react';\nexport const cx = (...values: Array<string | false | undefined>) => values.filter(Boolean).join(' ');\n/** Radix durations are milliseconds; DTCG also allows seconds. */\nexport function durationMilliseconds(token: unknown) {\n const { value, unit } = token as { value: number; unit: 's' | 'ms' };\n return unit === 's' ? value * 1000 : value;\n}\nexport function useControllable<T>(value: T | undefined, defaultValue: T | undefined, fallback: T, onChange?: (value: T) => void) {\n const controlled = value !== undefined;\n const initial = useRef(controlled);\n const warned = useRef(false);\n if (process.env.NODE_ENV !== 'production' && !warned.current && ((value !== undefined && defaultValue !== undefined) || initial.current !== controlled)) {\n console.error('monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes.');\n warned.current = true;\n }\n const [local, setLocal] = useState(defaultValue ?? fallback);\n const current = controlled ? value : local;\n const update = (next: T) => { if (!controlled) setLocal(next); if (next !== current) onChange?.(next); };\n return [current, update] as const;\n}\n\n/** Native reset is cancelable. Restore local state after every reset listener ran. */\nexport function useFormReset<T extends HTMLElement>(ref: RefObject<T>, reset: () => void) {\n const latest = useRef(reset);\n latest.current = reset;\n useEffect(() => {\n const element = ref.current;\n const form = element && ('form' in element ? (element as unknown as { form: HTMLFormElement | null }).form : element.closest('form'));\n if (!form) return;\n let active = true;\n const listener = (event: Event) => queueMicrotask(() => { if (active && !event.defaultPrevented) latest.current(); });\n form.addEventListener('reset', listener);\n return () => { active = false; form.removeEventListener('reset', listener); };\n });\n}\n","import type {\n ResolvedThemeToken,\n ThemeColorValue,\n ThemeDimensionValue,\n ThemeDurationValue,\n ThemeTokenExtensions,\n ThemeTokens,\n} from '@inf-monkeys-tech/monkeys/contracts';\nimport { resolveThemeTokens } from '@inf-monkeys-tech/monkeys/runtime';\n\nexport type MonkeysThemeColorMode = 'light' | 'dark' | (string & {});\nexport type MonkeysThemeDensity = 'compact' | 'default' | 'comfortable';\n\nexport interface CompileThemeTokensOptions {\n colorMode?: MonkeysThemeColorMode;\n density?: MonkeysThemeDensity;\n variablePrefix?: string;\n}\n\nexport interface CompiledThemeTokens {\n contract: ThemeTokens;\n colorMode: MonkeysThemeColorMode;\n density: MonkeysThemeDensity;\n values: Readonly<Record<string, unknown>>;\n cssValues: Readonly<Record<string, string>>;\n cssVariables: Readonly<Record<string, string>>;\n cssText: string;\n}\n\nexport interface ApplyThemeTokensOptions extends CompileThemeTokensOptions {\n target?: HTMLElement | null;\n themeId?: string;\n}\n\nexport interface ClearThemeTokensOptions {\n target?: HTMLElement | null;\n}\n\ntype ThemeTokenCssAliasAxis = 'colorMode' | 'density';\ntype ThemeTokenCssAliasFormat = 'hsl' | 'css';\n\ninterface ThemeTokenCssAlias {\n variableName: string;\n axis: ThemeTokenCssAliasAxis;\n expectedType: ResolvedThemeToken['type'];\n format: ThemeTokenCssAliasFormat;\n}\n\ntype CssExtension = {\n gradient?: {\n kind?: 'linear' | 'radial';\n angle?: number;\n };\n};\n\nconst CSS_EXTENSION_KEY = 'com.infmonkeys.css';\nconst APPLIED_VARIABLES = new WeakMap<object, Set<string>>();\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction readCssExtension(extensions?: ThemeTokenExtensions): CssExtension | undefined {\n const extension = extensions?.[CSS_EXTENSION_KEY];\n return isRecord(extension) ? extension as CssExtension : undefined;\n}\n\nfunction formatNumber(value: number): string {\n return Number.isInteger(value) ? String(value) : String(Number(value.toFixed(6)));\n}\n\nfunction formatDimension(value: ThemeDimensionValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatDuration(value: ThemeDurationValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatColorComponent(value: number | 'none'): string {\n return value === 'none' ? value : formatNumber(value);\n}\n\nfunction hexToSrgb(hex: string): [number, number, number] {\n return [\n Number.parseInt(hex.slice(1, 3), 16) / 255,\n Number.parseInt(hex.slice(3, 5), 16) / 255,\n Number.parseInt(hex.slice(5, 7), 16) / 255,\n ];\n}\n\nfunction colorSrgbComponents(value: ThemeColorValue): [number, number, number] {\n if (value.colorSpace === 'srgb' && value.components.every((component) => typeof component === 'number')) {\n return value.components as [number, number, number];\n }\n if (value.hex) return hexToSrgb(value.hex);\n throw new TypeError(\n `Web semantic colors in ${value.colorSpace} require a six-digit hex fallback for hsl(var(--token)) consumers.`,\n );\n}\n\nfunction srgbToHsl([red, green, blue]: [number, number, number]): [number, number, number] {\n const maximum = Math.max(red, green, blue);\n const minimum = Math.min(red, green, blue);\n const lightness = (maximum + minimum) / 2;\n if (maximum === minimum) return [0, 0, lightness * 100];\n const delta = maximum - minimum;\n const saturation = lightness > 0.5\n ? delta / (2 - maximum - minimum)\n : delta / (maximum + minimum);\n let hue: number;\n if (maximum === red) hue = (green - blue) / delta + (green < blue ? 6 : 0);\n else if (maximum === green) hue = (blue - red) / delta + 2;\n else hue = (red - green) / delta + 4;\n return [(hue / 6) * 360, saturation * 100, lightness * 100];\n}\n\nfunction formatHslTriplet(value: ThemeColorValue): string {\n if (value.colorSpace === 'hsl' && value.components.every((component) => typeof component === 'number')) {\n const [hue, saturation, lightness] = value.components as [number, number, number];\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n }\n const [hue, saturation, lightness] = srgbToHsl(colorSrgbComponents(value));\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n}\n\nfunction formatColor(value: ThemeColorValue): string {\n const alpha = value.alpha ?? 1;\n if (value.hex && alpha === 1) return value.hex;\n const components = value.components.map(formatColorComponent).join(' ');\n const alphaSuffix = alpha === 1 ? '' : ` / ${formatNumber(alpha)}`;\n switch (value.colorSpace) {\n case 'srgb': {\n const rgb = value.components.map((component) => component === 'none' ? 'none' : formatNumber(component * 255));\n return `rgb(${rgb.join(' ')}${alphaSuffix})`;\n }\n case 'hsl':\n return `hsl(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'hwb':\n return `hwb(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'lab':\n case 'lch':\n case 'oklab':\n case 'oklch':\n return `${value.colorSpace}(${components}${alphaSuffix})`;\n default:\n return `color(${value.colorSpace} ${components}${alphaSuffix})`;\n }\n}\n\nfunction formatFontFamily(value: string | string[]): string {\n const families = Array.isArray(value) ? value : [value];\n const genericFamilies = new Set([\n 'serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui',\n 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong',\n ]);\n return families.map((family) => {\n if (genericFamilies.has(family) || /^[a-zA-Z][\\w-]*$/.test(family)) return family;\n return `\"${family.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"')}\"`;\n }).join(', ');\n}\n\nfunction formatShadow(value: unknown): string {\n const shadows = Array.isArray(value) ? value : [value];\n return shadows.map((shadow) => {\n if (!isRecord(shadow)) throw new TypeError('DTCG shadow values must be objects.');\n return [\n formatDimension(shadow.offsetX as ThemeDimensionValue),\n formatDimension(shadow.offsetY as ThemeDimensionValue),\n formatDimension(shadow.blur as ThemeDimensionValue),\n formatDimension(shadow.spread as ThemeDimensionValue),\n formatColor(shadow.color as ThemeColorValue),\n shadow.inset === true ? 'inset' : '',\n ].filter(Boolean).join(' ');\n }).join(', ');\n}\n\nfunction formatGradient(value: unknown, extensions?: ThemeTokenExtensions): string {\n if (!Array.isArray(value)) throw new TypeError('DTCG gradient values must be arrays.');\n const stops = value.map((stop) => {\n if (!isRecord(stop)) throw new TypeError('DTCG gradient stops must be objects.');\n return `${formatColor(stop.color as ThemeColorValue)} ${formatNumber(Number(stop.position) * 100)}%`;\n }).join(', ');\n const gradient = readCssExtension(extensions)?.gradient;\n if (gradient?.kind === 'radial') return `radial-gradient(${stops})`;\n return `linear-gradient(${formatNumber(gradient?.angle ?? 90)}deg, ${stops})`;\n}\n\nfunction formatTokenValue(token: ResolvedThemeToken): string {\n switch (token.type) {\n case 'color':\n return formatColor(token.value as ThemeColorValue);\n case 'dimension':\n return formatDimension(token.value as ThemeDimensionValue);\n case 'fontFamily':\n return formatFontFamily(token.value as string | string[]);\n case 'fontWeight':\n case 'number':\n return String(token.value);\n case 'duration':\n return formatDuration(token.value as ThemeDurationValue);\n case 'cubicBezier':\n return `cubic-bezier(${(token.value as number[]).map(formatNumber).join(', ')})`;\n case 'strokeStyle': {\n if (typeof token.value === 'string') return token.value;\n const value = token.value as { dashArray: ThemeDimensionValue[] };\n return value.dashArray.map(formatDimension).join(' ');\n }\n case 'border': {\n const value = token.value as { color: ThemeColorValue; width: ThemeDimensionValue; style: unknown };\n const styleToken: ResolvedThemeToken = { ...token, type: 'strokeStyle', value: value.style };\n return `${formatDimension(value.width)} ${formatTokenValue(styleToken)} ${formatColor(value.color)}`;\n }\n case 'transition': {\n const value = token.value as { duration: ThemeDurationValue; delay: ThemeDurationValue; timingFunction: number[] };\n return `${formatDuration(value.duration)} cubic-bezier(${value.timingFunction.map(formatNumber).join(', ')}) ${formatDuration(value.delay)}`;\n }\n case 'shadow':\n return formatShadow(token.value);\n case 'gradient':\n return formatGradient(token.value, token.extensions);\n case 'typography': {\n const value = token.value as {\n fontFamily: string | string[];\n fontSize: ThemeDimensionValue;\n fontWeight: string | number;\n lineHeight: number;\n };\n return `${value.fontWeight} ${formatDimension(value.fontSize)}/${formatNumber(value.lineHeight)} ${formatFontFamily(value.fontFamily)}`;\n }\n }\n}\n\nfunction toCssVariableName(path: string, prefix: string): string {\n const normalized = path\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/[^a-zA-Z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '')\n .toLowerCase();\n return `--${prefix}-${normalized}`;\n}\n\nfunction assertCssVariablePrefix(prefix: string): void {\n if (!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(prefix)) {\n throw new TypeError(\n 'Theme token variablePrefix must start with a letter and contain only letters, numbers, or hyphens.',\n );\n }\n}\n\nfunction selectModePath(\n paths: ReadonlySet<string>,\n basePath: string,\n colorMode: MonkeysThemeColorMode,\n): string | undefined {\n const contextualPath = `${basePath}.${colorMode}`;\n if (paths.has(contextualPath)) return contextualPath;\n return paths.has(basePath) ? basePath : undefined;\n}\n\nconst HSL_SEMANTIC_VARIABLES: Readonly<Record<string, string>> = {\n 'semantic.color.background': '--background',\n 'semantic.color.foreground': '--foreground',\n 'semantic.color.card': '--card',\n 'semantic.color.card-foreground': '--card-foreground',\n 'semantic.color.popover': '--popover',\n 'semantic.color.popover-foreground': '--popover-foreground',\n 'semantic.color.primary': '--primary',\n 'semantic.color.primary-foreground': '--primary-foreground',\n 'semantic.color.secondary': '--secondary',\n 'semantic.color.secondary-foreground': '--secondary-foreground',\n 'semantic.color.muted': '--muted',\n 'semantic.color.muted-foreground': '--muted-foreground',\n 'semantic.color.accent': '--accent',\n 'semantic.color.accent-foreground': '--accent-foreground',\n 'semantic.color.destructive': '--destructive',\n 'semantic.color.destructive-foreground': '--destructive-foreground',\n 'semantic.color.success': '--success',\n 'semantic.color.success-foreground': '--success-foreground',\n 'semantic.color.warning': '--warning',\n 'semantic.color.warning-foreground': '--warning-foreground',\n 'semantic.color.border': '--border',\n 'semantic.color.input': '--input',\n 'semantic.color.ring': '--ring',\n 'semantic.color.media-surface': '--media-surface',\n 'semantic.color.media-foreground': '--media-foreground',\n 'semantic.color.media-overlay': '--media-overlay',\n 'semantic.color.radar-canvas': '--radar-canvas',\n 'semantic.color.radar-panel': '--radar-panel',\n 'semantic.color.radar-border': '--radar-border',\n 'semantic.color.radar-shell-border': '--radar-shell-border',\n 'semantic.color.radar-grid': '--radar-grid',\n 'semantic.color.radar-axis': '--radar-axis',\n 'semantic.color.radar-series-one': '--radar-series-one',\n 'semantic.color.radar-series-two': '--radar-series-two',\n 'semantic.color.radar-series-three': '--radar-series-three',\n 'semantic.color.radar-series-four': '--radar-series-four',\n};\n\nconst THEME_TOKEN_CSS_ALIASES: Readonly<Record<string, ThemeTokenCssAlias>> = Object.freeze({\n ...Object.fromEntries(\n Object.entries(HSL_SEMANTIC_VARIABLES).map(([path, variableName]) => [path, {\n variableName,\n axis: 'colorMode',\n expectedType: 'color',\n format: 'hsl',\n }]),\n ),\n 'semantic.color.neocard': {\n variableName: '--neocard',\n axis: 'colorMode',\n expectedType: 'color',\n format: 'css',\n },\n 'semantic.radius.base': {\n variableName: '--radius',\n axis: 'colorMode',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.spacing.global': {\n variableName: '--global-spacing',\n axis: 'density',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.gradient.brand': {\n variableName: '--monkeys-gradient',\n axis: 'colorMode',\n expectedType: 'gradient',\n format: 'css',\n },\n 'semantic.font.body': {\n variableName: '--font-sans',\n axis: 'colorMode',\n expectedType: 'fontFamily',\n format: 'css',\n },\n});\n\nexport function resolveThemeTokenCssVariable(reference: string): string {\n const path = reference.startsWith('$') ? reference.slice(1).trim() : reference.trim();\n if (!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path)) {\n throw new TypeError(`Invalid Design Token path ${reference}.`);\n }\n const alias = THEME_TOKEN_CSS_ALIASES[path];\n if (alias) return alias.format === 'hsl' ? `hsl(var(${alias.variableName}))` : `var(${alias.variableName})`;\n return `var(${toCssVariableName(path, 'monkeys')})`;\n}\n\nexport function getThemeTokenCssValue(\n compiled: CompiledThemeTokens,\n basePath: string,\n): string | undefined {\n const path = selectModePath(new Set(Object.keys(compiled.cssValues)), basePath, compiled.colorMode);\n return path ? compiled.cssValues[path] : undefined;\n}\n\nexport function compileThemeTokens(\n input: ThemeTokens,\n options: CompileThemeTokensOptions = {},\n): CompiledThemeTokens {\n const resolved = resolveThemeTokens(input);\n const contract = resolved.document;\n const colorMode = options.colorMode ?? 'light';\n const density = options.density ?? 'default';\n const variablePrefix = options.variablePrefix ?? 'monkeys';\n assertCssVariablePrefix(variablePrefix);\n const values: Record<string, unknown> = {};\n const cssValues: Record<string, string> = {};\n const cssVariables: Record<string, string> = {};\n const canonicalVariableSources = new Map<string, string>();\n\n for (const [path, token] of resolved.tokens) {\n values[path] = token.value;\n const cssValue = formatTokenValue(token);\n cssValues[path] = cssValue;\n const variableName = toCssVariableName(path, variablePrefix);\n const existingPath = canonicalVariableSources.get(variableName);\n if (existingPath) {\n throw new TypeError(\n `Theme token paths ${existingPath} and ${path} both compile to ${variableName}. Rename one token.`,\n );\n }\n canonicalVariableSources.set(variableName, path);\n cssVariables[variableName] = cssValue;\n }\n\n const paths = new Set(resolved.tokens.keys());\n for (const [basePath, alias] of Object.entries(THEME_TOKEN_CSS_ALIASES)) {\n const axis = alias.axis === 'density' ? density : colorMode;\n const path = selectModePath(paths, basePath, axis);\n if (!path) continue;\n const token = resolved.tokens.get(path);\n if (!token || token.type !== alias.expectedType) {\n throw new TypeError(`${path} must be a ${alias.expectedType} token to drive ${alias.variableName}.`);\n }\n cssVariables[alias.variableName] = alias.format === 'hsl'\n ? formatHslTriplet(token.value as ThemeColorValue)\n : cssValues[path];\n }\n\n const cssText = Object.entries(cssVariables)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([name, value]) => `${name}:${value};`)\n .join('');\n\n return {\n contract,\n colorMode,\n density,\n values: Object.freeze(values),\n cssValues: Object.freeze(cssValues),\n cssVariables: Object.freeze(cssVariables),\n cssText,\n };\n}\n\nexport function applyThemeTokens(\n input: ThemeTokens,\n options: ApplyThemeTokensOptions = {},\n): CompiledThemeTokens {\n const compiled = compileThemeTokens(input, options);\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return compiled;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n const nextVariables = new Set(Object.keys(compiled.cssVariables));\n for (const name of previouslyApplied) {\n if (!nextVariables.has(name)) target.style.removeProperty(name);\n }\n for (const [name, value] of Object.entries(compiled.cssVariables)) {\n target.style.setProperty(name, value);\n }\n APPLIED_VARIABLES.set(target, nextVariables);\n\n if (options.themeId) target.dataset.monkeysTheme = options.themeId;\n else delete target.dataset.monkeysTheme;\n target.dataset.monkeysColorMode = compiled.colorMode;\n target.dataset.monkeysDensity = compiled.density;\n return compiled;\n}\n\nexport function clearThemeTokens(options: ClearThemeTokensOptions = {}): void {\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n for (const name of previouslyApplied) target.style.removeProperty(name);\n APPLIED_VARIABLES.delete(target);\n\n delete target.dataset.monkeysTheme;\n delete target.dataset.monkeysColorMode;\n delete target.dataset.monkeysDensity;\n}\n","import type { MonkeysLocale } from \"./types\";\n\nexport const enUS = {\n locale: \"en-US\",\n messages: {\n pagination: {\n navigation: \"Pagination\",\n first: \"First\",\n previous: \"Previous\",\n next: \"Next\",\n last: \"Last\",\n page: ({ page, pageCount }) => `Page ${page} of ${pageCount}`,\n currentPage: ({ page, pageCount }) =>\n `Page ${page} of ${pageCount}, current page`,\n emptyResults: \"0 results\",\n range: ({ start, end, total }) => `${start}-${end} of ${total}`,\n selected: ({ count }) => `${count} selected`,\n pageSize: \"Items per page\",\n loadBatchSize: \"Items per load\",\n perLoad: \"Items per load\",\n jumpToPage: \"Jump to page\",\n pages: \"pages\",\n clickToJump: \"Click to jump to a page\",\n },\n dialog: {\n close: \"Close dialog\",\n },\n dropdownMenu: {\n actions: \"Actions\",\n },\n loading: {\n spinner: \"Loading\",\n },\n layout: {\n resizePanels: \"Resize panels\",\n expandPanel: \"Expand\",\n collapsePanel: \"Collapse\",\n movePanel: \"Move\",\n moveBefore: \"Move earlier\",\n moveAfter: \"Move later\",\n },\n steps: {\n label: \"Progress\",\n current: \"Current\",\n completed: \"Completed\",\n error: \"Error\",\n disabled: \"Disabled\",\n },\n numberInput: {\n increment: \"Increase value\",\n decrement: \"Decrease value\",\n },\n passwordInput: {\n showPassword: \"Show password\",\n hidePassword: \"Hide password\",\n },\n multiSelect: {\n placeholder: \"Select options\",\n empty: \"No options\",\n removeOption: ({ value }) => `Remove ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `Drag column ${columnId}`,\n resizeColumn: ({ columnId }) => `Resize column ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `Sort column ${columnId}` : \"Sort column\",\n loadingRow: \"Loading table row\",\n },\n toolbar: {\n theme: {\n label: \"Appearance\",\n toggle: \"Toggle theme\",\n auto: \"Auto\",\n light: \"Light\",\n dark: \"Dark\",\n },\n language: {\n label: \"Language\",\n switch: \"Switch language\",\n },\n },\n toast: {\n errorTitle: \"Error\",\n warningTitle: \"Warning\",\n defaultErrorDescription: \"Something went wrong.\",\n defaultWarningDescription: \"Please check and try again.\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"More actions\",\n expand: \"Expand\",\n collapse: \"Collapse\",\n loading: \"Loading...\",\n empty: \"No views\",\n error: \"Unable to load views\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview' },\n collection: {\n label: \"Collection\",\n loading: \"Loading items\",\n empty: \"No items\",\n loadError: \"Unable to load items\",\n refreshError: \"Unable to refresh items\",\n retry: \"Retry\",\n loadingMore: \"Loading more items\",\n permission: \"You do not have permission to view this content\",\n offline: \"You appear to be offline\",\n requestAccess: \"Request access\",\n },\n interactiveTable: {\n columnActions: \"Column actions\",\n freezeColumn: \"Freeze to left\",\n freezeEndColumn: \"Freeze to right\",\n unfreezeColumn: \"Unfreeze from left\",\n unfreezeEndColumn: \"Unfreeze from right\",\n unfreezeAllColumns: \"Unfreeze all columns\",\n resetColumnWidth: \"Reset column width\",\n frozenColumnTitle: \"Frozen column\",\n },\n },\n agentWorkbench: {\n label: \"Session activity\",\n reasoning: \"Reasoning\",\n plan: \"Plan\",\n taskNoDetail: \"No additional details\",\n modes: { chat: \"Chat\", work: \"Work\" },\n composer: {\n send: \"Send message\",\n stop: \"Stop generating\",\n queue: \"Queue message\",\n attach: \"Add photos or files\",\n voice: \"Start voice input\",\n webSearch: \"Web search\",\n chatMode: \"Chat mode\",\n model: \"Model\",\n reasoning: \"Reasoning effort\",\n permissions: \"Permissions\",\n removeAttachment: \"Remove attachment\",\n editQueued: \"Edit queued message\",\n deleteQueued: \"Delete queued message\",\n moveUp: \"Move message up\",\n moveDown: \"Move message down\",\n queued: \"Queued messages\",\n uploading: \"Uploading\",\n uploadFailed: \"Upload failed\",\n retryAttachment: \"Retry attachment upload\",\n noModels: \"No models available\",\n message: \"Message\",\n attachmentOnly: \"Attachment\",\n reasoningOptions: {\n low: \"Low\",\n medium: \"Medium\",\n high: \"High\",\n xhigh: \"Extra high\",\n },\n permissionOptions: {\n \"approval-required\": \"Approval required\",\n \"auto-approve\": \"Auto approve\",\n \"full-access\": \"Full access\",\n },\n },\n quickStart: {\n label: \"Quick start\",\n back: \"Back\",\n addFile: \"Add file\",\n },\n tool: {\n input: \"Input\",\n output: \"Output\",\n status: {\n pending: \"Pending\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Error\",\n denied: \"Denied\",\n },\n },\n approval: {\n approve: \"Approve\",\n reject: \"Reject\",\n approved: \"Approved\",\n rejected: \"Rejected\",\n },\n artifact: {\n pending: \"Preparing\",\n ready: \"Ready\",\n failed: \"Failed\",\n open: ({ name }) => `Open ${name}`,\n },\n run: {\n stopping: \"Stopping...\",\n stoppedAfter: ({ duration }) => `You stopped after ${duration}`,\n },\n process: {\n running: \"Working\",\n queued: \"Queued\",\n waitingApproval: \"Waiting for approval\",\n failed: \"Failed\",\n stopped: \"Stopped\",\n processed: \"Processed\",\n processedFor: ({ duration }) => `Worked for ${duration}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} completed`,\n },\n artifactWorkspace: {\n outputs: \"Outputs\",\n sources: \"Sources\",\n viewAll: \"View all\",\n toggleSummary: \"Toggle files\",\n tabs: \"Open files\",\n closeTab: ({ name }) => `Close ${name}`,\n closeWorkspace: \"Close workspace\",\n download: ({ name }) => `Download ${name}`,\n openExternal: ({ name }) => `Open ${name} in a new window`,\n loading: \"Loading preview...\",\n failed: \"Preview unavailable\",\n retry: \"Try again\",\n },\n usage: {\n label: \"Context usage\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"Search agents and sessions\",\n searchSessions: \"Search sessions\",\n searchShortcut: \"Focus search\",\n clearSearch: \"Clear search\",\n tabsLabel: \"Agent workbench navigation\",\n agents: \"Agents\",\n sessions: \"Sessions\",\n newAgent: \"New Agent\",\n newSession: \"New Session\",\n capabilities: \"Capabilities & Extensions\",\n settings: \"Agent Settings\",\n allAgents: \"All Agents\",\n recentSessions: \"Recent Sessions\",\n chat: \"Chat\",\n work: \"Work\",\n chats: \"Chats\",\n builtIn: \"Built-in\",\n noDescription: \"No description\",\n loading: \"Loading...\",\n emptyAgents: \"No agents yet\",\n emptySessions: \"No sessions yet\",\n noResults: \"No matching results\",\n retry: \"Retry\",\n pin: \"Pin\",\n unpin: \"Unpin\",\n rename: \"Rename\",\n delete: \"Delete\",\n actions: \"Actions\",\n save: \"Save\",\n cancel: \"Cancel\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Failed\",\n contextUsage: ({ percent }) => `${percent}% context used`,\n },\n details: {\n title: \"Task details\",\n description: \"Summary and workspace activity\",\n duration: \"Duration\",\n updated: \"Updated\",\n model: \"Model\",\n mode: \"Mode\",\n permissions: \"Permissions\",\n tokenUsage: \"Token usage\",\n summary: \"Summary\",\n summaryEmpty: \"No summary is available yet.\",\n summaryFailed: \"The summary could not be generated.\",\n highlights: \"Highlights\",\n pendingItems: \"Pending items\",\n tabs: {\n label: \"Task detail views\",\n summary: \"Summary\",\n workspace: \"Workspace\",\n },\n status: {\n queued: \"Queued\",\n running: \"Running\",\n waiting_approval: \"Waiting for approval\",\n stopping: \"Stopping\",\n stopped: \"Stopped\",\n completed: \"Completed\",\n failed: \"Failed\",\n },\n state: {\n loading: {\n title: \"Loading task details\",\n description: \"Restoring the latest session activity.\",\n },\n empty: {\n title: \"No task selected\",\n description: \"Select a task to inspect its details.\",\n },\n error: {\n title: \"Unable to load task details\",\n description: \"Try again after the session is available.\",\n },\n },\n actions: {\n close: \"Close task details\",\n copySummary: \"Copy summary\",\n retry: \"Retry\",\n retrySummary: \"Retry summary\",\n resume: \"Resume\",\n continueInNewTask: \"Continue in new task\",\n editAndRerun: \"Edit and rerun\",\n export: \"Export\",\n },\n workspace: {\n diffs: \"Code changes\",\n files: \"Files\",\n terminals: \"Terminals\",\n tests: \"Tests\",\n artifacts: \"Artifacts\",\n exitCode: ({ code }) => `Exit code ${code}`,\n diffStatus: {\n added: \"Added\",\n modified: \"Modified\",\n deleted: \"Deleted\",\n renamed: \"Renamed\",\n },\n fileOperation: { upsert: \"Updated\", delete: \"Deleted\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import type { MonkeysLocale } from \"./types\";\n\nexport const zhCN = {\n locale: \"zh-CN\",\n messages: {\n pagination: {\n navigation: \"分页导航\",\n first: \"首页\",\n previous: \"上一页\",\n next: \"下一页\",\n last: \"末页\",\n page: ({ page, pageCount }) => `第 ${page} 页,共 ${pageCount} 页`,\n currentPage: ({ page, pageCount }) =>\n `第 ${page} 页,共 ${pageCount} 页,当前页`,\n emptyResults: \"共 0 条\",\n range: ({ start, end, total }) => `第 ${start}-${end} 条,共 ${total} 条`,\n selected: ({ count }) => `已选择 ${count} 项`,\n pageSize: \"每页显示数量\",\n loadBatchSize: \"每次加载数量\",\n perLoad: \"每次加载\",\n jumpToPage: \"跳转到页码\",\n pages: \"页\",\n clickToJump: \"点击跳转页码\",\n },\n dialog: {\n close: \"关闭对话框\",\n },\n dropdownMenu: {\n actions: \"操作\",\n },\n loading: {\n spinner: \"正在加载\",\n },\n layout: {\n resizePanels: \"调整面板大小\",\n expandPanel: \"展开\",\n collapsePanel: \"收起\",\n movePanel: \"移动\",\n moveBefore: \"向前移动\",\n moveAfter: \"向后移动\",\n },\n steps: {\n label: \"进度\",\n current: \"当前步骤\",\n completed: \"已完成\",\n error: \"错误\",\n disabled: \"已禁用\",\n },\n numberInput: {\n increment: \"增加数值\",\n decrement: \"减少数值\",\n },\n passwordInput: {\n showPassword: \"显示密码\",\n hidePassword: \"隐藏密码\",\n },\n multiSelect: {\n placeholder: \"请选择\",\n empty: \"暂无选项\",\n removeOption: ({ value }) => `移除 ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `拖动列 ${columnId}`,\n resizeColumn: ({ columnId }) => `调整列宽 ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `排序列 ${columnId}` : \"排序列\",\n loadingRow: \"正在加载表格行\",\n },\n toolbar: {\n theme: {\n label: \"外观\",\n toggle: \"切换主题\",\n auto: \"跟随系统\",\n light: \"浅色模式\",\n dark: \"深色模式\",\n },\n language: {\n label: \"语言\",\n switch: \"切换语言\",\n },\n },\n toast: {\n errorTitle: \"错误\",\n warningTitle: \"提示\",\n defaultErrorDescription: \"发生错误,请稍后重试。\",\n defaultWarningDescription: \"请检查后重试。\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"更多操作\",\n expand: \"展开\",\n collapse: \"收起\",\n loading: \"正在加载...\",\n empty: \"暂无视图\",\n error: \"无法加载视图\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: '缩小', zoomIn: '放大', zoomToFit: '适应画布', minimap: '图谱概览' },\n collection: {\n label: \"内容集合\",\n loading: \"正在加载内容\",\n empty: \"暂无内容\",\n loadError: \"无法加载内容\",\n refreshError: \"无法刷新内容\",\n retry: \"重试\",\n loadingMore: \"正在加载更多内容\",\n permission: \"你没有权限查看此内容\",\n offline: \"网络连接已断开\",\n requestAccess: \"申请权限\",\n },\n interactiveTable: {\n columnActions: \"列操作\",\n freezeColumn: \"固定到左侧\",\n freezeEndColumn: \"固定到右侧\",\n unfreezeColumn: \"取消左侧固定\",\n unfreezeEndColumn: \"取消右侧固定\",\n unfreezeAllColumns: \"取消全部固定\",\n resetColumnWidth: \"重置列宽\",\n frozenColumnTitle: \"已固定列\",\n },\n },\n agentWorkbench: {\n label: \"会话活动\",\n reasoning: \"思考过程\",\n plan: \"执行计划\",\n taskNoDetail: \"暂无更多详情\",\n modes: { chat: \"对话\", work: \"工作\" },\n composer: {\n send: \"发送消息\",\n stop: \"停止生成\",\n queue: \"排队发送\",\n attach: \"添加照片或文件\",\n voice: \"开始语音输入\",\n webSearch: \"联网搜索\",\n chatMode: \"对话模式\",\n model: \"模型\",\n reasoning: \"思考强度\",\n permissions: \"权限\",\n removeAttachment: \"移除附件\",\n editQueued: \"编辑排队消息\",\n deleteQueued: \"删除排队消息\",\n moveUp: \"上移消息\",\n moveDown: \"下移消息\",\n queued: \"排队消息\",\n uploading: \"上传中\",\n uploadFailed: \"上传失败\",\n retryAttachment: \"重试附件上传\",\n noModels: \"暂无可用模型\",\n message: \"消息\",\n attachmentOnly: \"附件\",\n reasoningOptions: {\n low: \"低\",\n medium: \"中\",\n high: \"高\",\n xhigh: \"最高\",\n },\n permissionOptions: {\n \"approval-required\": \"需要批准\",\n \"auto-approve\": \"自动批准\",\n \"full-access\": \"完全访问\",\n },\n },\n quickStart: {\n label: \"快速开始\",\n back: \"返回\",\n addFile: \"添加文件\",\n },\n tool: {\n input: \"输入\",\n output: \"输出\",\n status: {\n pending: \"等待中\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"错误\",\n denied: \"已拒绝\",\n },\n },\n approval: {\n approve: \"允许\",\n reject: \"拒绝\",\n approved: \"已允许\",\n rejected: \"已拒绝\",\n },\n artifact: {\n pending: \"准备中\",\n ready: \"已就绪\",\n failed: \"失败\",\n open: ({ name }) => `打开 ${name}`,\n },\n run: {\n stopping: \"正在停止...\",\n stoppedAfter: ({ duration }) => `你在 ${duration} 后停止了任务`,\n },\n process: {\n running: \"执行过程\",\n queued: \"排队中\",\n waitingApproval: \"等待审批\",\n failed: \"失败\",\n stopped: \"已停止\",\n processed: \"已处理\",\n processedFor: ({ duration }) =>\n `耗时 ${duration\n .replace(/(\\d+)h/g, \"$1小时\")\n .replace(/(\\d+)m/g, \"$1分钟\")\n .replace(/(\\d+)s/g, \"$1秒\")\n .replace(/\\s+/g, \"\")}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} 已完成`,\n },\n artifactWorkspace: {\n outputs: \"输出\",\n sources: \"来源\",\n viewAll: \"查看全部\",\n toggleSummary: \"切换文件摘要\",\n tabs: \"已打开文件\",\n closeTab: ({ name }) => `关闭 ${name}`,\n closeWorkspace: \"关闭工作区\",\n download: ({ name }) => `下载 ${name}`,\n openExternal: ({ name }) => `在新窗口打开 ${name}`,\n loading: \"正在加载预览...\",\n failed: \"预览不可用\",\n retry: \"重试\",\n },\n usage: {\n label: \"上下文用量\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"搜索智能体和会话\",\n searchSessions: \"搜索会话\",\n searchShortcut: \"聚焦搜索框\",\n clearSearch: \"清除搜索\",\n tabsLabel: \"智能体工作台导航\",\n agents: \"智能体\",\n sessions: \"会话\",\n newAgent: \"新建智能体\",\n newSession: \"新建会话\",\n capabilities: \"能力与扩展\",\n settings: \"智能体设置\",\n allAgents: \"全部智能体\",\n recentSessions: \"最近会话\",\n chat: \"对话\",\n work: \"工作\",\n chats: \"聊天\",\n builtIn: \"内置\",\n noDescription: \"暂无描述\",\n loading: \"加载中...\",\n emptyAgents: \"暂无智能体\",\n emptySessions: \"暂无会话\",\n noResults: \"没有匹配结果\",\n retry: \"重试\",\n pin: \"置顶\",\n unpin: \"取消置顶\",\n rename: \"重命名\",\n delete: \"删除\",\n actions: \"操作\",\n save: \"保存\",\n cancel: \"取消\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"失败\",\n contextUsage: ({ percent }) => `已使用 ${percent}% 上下文`,\n },\n details: {\n title: \"任务详情\",\n description: \"摘要与工作区活动\",\n duration: \"耗时\",\n updated: \"更新时间\",\n model: \"模型\",\n mode: \"模式\",\n permissions: \"权限\",\n tokenUsage: \"Token 用量\",\n summary: \"摘要\",\n summaryEmpty: \"暂时没有可用摘要。\",\n summaryFailed: \"摘要生成失败。\",\n highlights: \"重点\",\n pendingItems: \"待处理事项\",\n tabs: {\n label: \"任务详情视图\",\n summary: \"摘要\",\n workspace: \"工作区\",\n },\n status: {\n queued: \"排队中\",\n running: \"运行中\",\n waiting_approval: \"等待审批\",\n stopping: \"正在停止\",\n stopped: \"已停止\",\n completed: \"已完成\",\n failed: \"失败\",\n },\n state: {\n loading: {\n title: \"正在加载任务详情\",\n description: \"正在恢复最新的会话活动。\",\n },\n empty: {\n title: \"未选择任务\",\n description: \"选择任务后查看详细信息。\",\n },\n error: {\n title: \"无法加载任务详情\",\n description: \"会话恢复可用后请重试。\",\n },\n },\n actions: {\n close: \"关闭任务详情\",\n copySummary: \"复制摘要\",\n retry: \"重试\",\n retrySummary: \"重新生成摘要\",\n resume: \"继续运行\",\n continueInNewTask: \"在新任务中继续\",\n editAndRerun: \"编辑并重新运行\",\n export: \"导出\",\n },\n workspace: {\n diffs: \"代码变更\",\n files: \"文件\",\n terminals: \"终端\",\n tests: \"测试\",\n artifacts: \"产物\",\n exitCode: ({ code }) => `退出码 ${code}`,\n diffStatus: {\n added: \"新增\",\n modified: \"修改\",\n deleted: \"删除\",\n renamed: \"重命名\",\n },\n fileOperation: { upsert: \"已更新\", delete: \"已删除\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import { enUS } from './en-US';\nimport type {\n MonkeysBuiltInLocaleId,\n MonkeysLocale,\n MonkeysLocaleInput,\n MonkeysLocaleMessages,\n MonkeysLocaleMessagesOverride,\n MonkeysResolvedLocale,\n} from './types';\nimport { zhCN } from './zh-CN';\n\nconst BUILT_IN_LOCALES: Record<MonkeysBuiltInLocaleId, MonkeysLocale> = {\n 'en-US': enUS,\n 'zh-CN': zhCN,\n};\n\nfunction normalizeLocaleId(locale: unknown): string {\n if (typeof locale !== 'string' || !locale.trim()) {\n throw new TypeError('Monkeys locale must be a non-empty BCP 47 string.');\n }\n\n try {\n return Intl.getCanonicalLocales(locale)[0];\n } catch {\n throw new RangeError(\n `Monkeys locale \"${locale}\" is not a valid BCP 47 identifier.`,\n );\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction validateMessageOverride(\n value: unknown,\n schema: unknown,\n path: string,\n) {\n if (!isRecord(value) || !isRecord(schema)) {\n throw new TypeError(`${path} must be an object.`);\n }\n\n for (const [key, candidate] of Object.entries(value)) {\n if (candidate === undefined) continue;\n if (!(key in schema)) {\n throw new TypeError(`${path}.${key} is not a supported Monkeys message.`);\n }\n\n const expected = schema[key];\n const candidatePath = `${path}.${key}`;\n if (typeof expected === 'function') {\n if (typeof candidate !== 'function') {\n throw new TypeError(`${candidatePath} must be a function.`);\n }\n } else if (typeof expected === 'string') {\n if (typeof candidate !== 'string') {\n throw new TypeError(`${candidatePath} must be a string.`);\n }\n } else {\n validateMessageOverride(candidate, expected, candidatePath);\n }\n }\n}\n\nfunction assertMessagesOverride(\n value: unknown,\n path: string,\n): asserts value is MonkeysLocaleMessagesOverride {\n validateMessageOverride(value, enUS.messages, path);\n}\n\nfunction isBuiltInLocale(locale: string): locale is MonkeysBuiltInLocaleId {\n return locale === 'en-US' || locale === 'zh-CN';\n}\n\nfunction normalizeLocaleInput(input: MonkeysLocaleInput | undefined): {\n locale: string | undefined;\n messages: MonkeysLocaleMessagesOverride | undefined;\n hasExplicitLocale: boolean;\n} {\n if (input === undefined) {\n return {\n locale: undefined,\n messages: undefined,\n hasExplicitLocale: false,\n };\n }\n\n if (typeof input === 'string') {\n const locale = normalizeLocaleId(input);\n if (!isBuiltInLocale(locale)) {\n throw new RangeError(\n `Unsupported built-in Monkeys locale \"${locale}\". Provide a locale pack object for custom locales.`,\n );\n }\n return { locale, messages: undefined, hasExplicitLocale: true };\n }\n\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n throw new TypeError('Monkeys locale must be a locale id or locale pack object.');\n }\n\n const locale = normalizeLocaleId(input.locale);\n assertMessagesOverride(input.messages, 'Monkeys locale messages');\n\n return {\n locale,\n messages: input.messages,\n hasExplicitLocale: true,\n };\n}\n\nexport function mergeMonkeysLocaleMessages(\n base: MonkeysLocaleMessages,\n override?: MonkeysLocaleMessagesOverride,\n): MonkeysLocaleMessages {\n if (!override) return base;\n\n return {\n pagination: { ...base.pagination, ...override.pagination },\n dialog: { ...base.dialog, ...override.dialog },\n dropdownMenu: { ...base.dropdownMenu, ...override.dropdownMenu },\n loading: { ...base.loading, ...override.loading },\n layout: { ...base.layout, ...override.layout },\n steps: { ...base.steps, ...override.steps },\n numberInput: { ...base.numberInput, ...override.numberInput },\n passwordInput: { ...base.passwordInput, ...override.passwordInput },\n multiSelect: { ...base.multiSelect, ...override.multiSelect },\n table: { ...base.table, ...override.table },\n toolbar: {\n theme: { ...base.toolbar.theme, ...override.toolbar?.theme },\n language: { ...base.toolbar.language, ...override.toolbar?.language },\n },\n toast: { ...base.toast, ...override.toast },\n dataExplorer: {\n viewTree: {\n ...base.dataExplorer.viewTree,\n ...override.dataExplorer?.viewTree,\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview', ...base.workbench.relationshipGraph, ...override.workbench?.relationshipGraph },\n collection: {\n ...base.workbench.collection,\n ...override.workbench?.collection,\n },\n interactiveTable: {\n ...base.workbench.interactiveTable,\n ...override.workbench?.interactiveTable,\n },\n },\n agentWorkbench: {\n ...base.agentWorkbench,\n ...override.agentWorkbench,\n modes: {\n ...base.agentWorkbench.modes,\n ...override.agentWorkbench?.modes,\n },\n composer: {\n ...base.agentWorkbench.composer,\n ...override.agentWorkbench?.composer,\n },\n quickStart: {\n ...base.agentWorkbench.quickStart,\n ...override.agentWorkbench?.quickStart,\n },\n tool: {\n ...base.agentWorkbench.tool,\n ...override.agentWorkbench?.tool,\n status: {\n ...base.agentWorkbench.tool.status,\n ...override.agentWorkbench?.tool?.status,\n },\n },\n approval: {\n ...base.agentWorkbench.approval,\n ...override.agentWorkbench?.approval,\n },\n artifact: {\n ...base.agentWorkbench.artifact,\n ...override.agentWorkbench?.artifact,\n },\n run: {\n ...base.agentWorkbench.run,\n ...override.agentWorkbench?.run,\n },\n process: {\n ...base.agentWorkbench.process,\n ...override.agentWorkbench?.process,\n },\n artifactWorkspace: {\n ...base.agentWorkbench.artifactWorkspace,\n ...override.agentWorkbench?.artifactWorkspace,\n },\n usage: {\n ...base.agentWorkbench.usage,\n ...override.agentWorkbench?.usage,\n },\n navigation: {\n ...base.agentWorkbench.navigation,\n ...override.agentWorkbench?.navigation,\n },\n details: {\n ...base.agentWorkbench.details,\n ...override.agentWorkbench?.details,\n tabs: {\n ...base.agentWorkbench.details.tabs,\n ...override.agentWorkbench?.details?.tabs,\n },\n status: {\n ...base.agentWorkbench.details.status,\n ...override.agentWorkbench?.details?.status,\n },\n state: {\n loading: {\n ...base.agentWorkbench.details.state.loading,\n ...override.agentWorkbench?.details?.state?.loading,\n },\n empty: {\n ...base.agentWorkbench.details.state.empty,\n ...override.agentWorkbench?.details?.state?.empty,\n },\n error: {\n ...base.agentWorkbench.details.state.error,\n ...override.agentWorkbench?.details?.state?.error,\n },\n },\n actions: {\n ...base.agentWorkbench.details.actions,\n ...override.agentWorkbench?.details?.actions,\n },\n workspace: {\n ...base.agentWorkbench.details.workspace,\n ...override.agentWorkbench?.details?.workspace,\n diffStatus: {\n ...base.agentWorkbench.details.workspace.diffStatus,\n ...override.agentWorkbench?.details?.workspace?.diffStatus,\n },\n fileOperation: {\n ...base.agentWorkbench.details.workspace.fileOperation,\n ...override.agentWorkbench?.details?.workspace?.fileOperation,\n },\n },\n },\n },\n };\n}\n\nexport const defaultMonkeysLocale: MonkeysResolvedLocale = {\n locale: enUS.locale,\n messages: mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n ),\n};\n\nexport function resolveMonkeysLocale(\n input?: MonkeysLocaleInput,\n override?: MonkeysLocaleMessagesOverride,\n parent?: MonkeysResolvedLocale,\n): MonkeysResolvedLocale {\n if (override !== undefined) {\n assertMessagesOverride(override, 'MonkeysProvider messages');\n }\n const normalized = normalizeLocaleInput(input);\n const locale = normalized.locale ?? parent?.locale ?? enUS.locale;\n const builtInMessages = isBuiltInLocale(locale)\n ? BUILT_IN_LOCALES[locale].messages\n : undefined;\n let messages = mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n builtInMessages,\n );\n\n if (parent && (!normalized.hasExplicitLocale || parent.locale === locale)) {\n messages = mergeMonkeysLocaleMessages(messages, parent.messages);\n }\n\n messages = mergeMonkeysLocaleMessages(messages, normalized.messages);\n messages = mergeMonkeysLocaleMessages(messages, override);\n\n return { locale, messages };\n}\n","import {\n createContext,\n useContext,\n useMemo,\n type Context,\n} from 'react';\n\nimport type { AssetIconResolver, AssetImageResolver } from '../components/base/BaseAssetIcon';\nimport type { BaseAppearance } from '../components/base/types';\nimport type { DataExplorerAppearance } from '../components/data-explorer/types';\nimport {\n defaultMonkeysLocale,\n type MonkeysLocaleMessages,\n type MonkeysResolvedLocale,\n} from '../locale';\nimport type { CompiledThemeTokens } from '../theme-system';\n\nexport type MonkeysDirection = 'ltr' | 'rtl';\n\nexport interface MonkeysEnvironment {\n getDocument?: () => Document | null;\n getWindow?: () => Window | null;\n}\n\nexport type MonkeysPortalContainer =\n | Element\n | null\n | (() => Element | null);\n\nexport interface MonkeysPortalOptions {\n container?: MonkeysPortalContainer;\n disabled?: boolean;\n}\n\nexport type MonkeysLoadingStateVariant = 'spinner' | 'skeleton';\nexport type MonkeysEmptyStateVariant = 'default' | 'compact';\nexport type MonkeysStatusStateDensity = 'compact' | 'default' | 'comfortable';\n\nexport type MonkeysListFooterPaginationMode = 'auto' | 'pages' | 'compact';\nexport type MonkeysListFooterAlignment = 'start' | 'end' | 'space-between';\n\nexport interface MonkeysListFooterConfig {\n showTotal?: boolean;\n showPageSize?: boolean;\n pageSizeOptions?: number[];\n paginationMode?: MonkeysListFooterPaginationMode;\n alignment?: MonkeysListFooterAlignment;\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysStatusStatesConfig {\n loading?: { variant?: MonkeysLoadingStateVariant };\n empty?: { variant?: MonkeysEmptyStateVariant };\n error?: { showRetry?: boolean };\n permission?: { showRequestAccess?: boolean };\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysComponentAttributes {\n dir?: MonkeysDirection;\n 'data-monkeys-direction'?: MonkeysDirection;\n 'data-monkeys-locale'?: string;\n 'data-monkeys-theme'?: string;\n 'data-monkeys-theme-mode'?: string;\n}\n\ninterface MonkeysLocaleContextValue extends MonkeysResolvedLocale {\n provided: boolean;\n}\n\ninterface MonkeysThemeContextValue {\n provided: boolean;\n resolvedTheme?: CompiledThemeTokens;\n themeId?: string;\n baseAppearance?: BaseAppearance;\n dataExplorerAppearance?: DataExplorerAppearance;\n statusStates?: MonkeysStatusStatesConfig;\n listFooter?: MonkeysListFooterConfig;\n}\n\ninterface MonkeysDirectionContextValue {\n provided: boolean;\n direction?: MonkeysDirection;\n}\n\ninterface MonkeysEnvironmentContextValue {\n provided: boolean;\n environment: MonkeysEnvironment;\n portal: MonkeysPortalOptions;\n iconResolver?: AssetIconResolver;\n imageResolver?: AssetImageResolver;\n}\n\nconst EMPTY_ENVIRONMENT = Object.freeze({}) satisfies MonkeysEnvironment;\nconst EMPTY_PORTAL = Object.freeze({}) satisfies MonkeysPortalOptions;\n\ninterface MonkeysProviderContexts {\n locale: Context<MonkeysLocaleContextValue>;\n theme: Context<MonkeysThemeContextValue>;\n direction: Context<MonkeysDirectionContextValue>;\n environment: Context<MonkeysEnvironmentContextValue>;\n}\n\n// Every bundled public entry contains this module. Keep only the Context\n// identities in a realm-wide registry so root, provider, and component\n// subpaths interoperate in both CJS and ESM builds. Provider values remain in\n// React trees, so SSR requests are isolated. Bump the contract key only when\n// these Context value shapes become intentionally incompatible.\nconst MONKEYS_PROVIDER_CONTEXTS_KEY = Symbol.for(\n '@inf-monkeys-tech/monkeys-design/provider-context@1',\n);\n\ntype MonkeysProviderContextHost = typeof globalThis & {\n [MONKEYS_PROVIDER_CONTEXTS_KEY]?: MonkeysProviderContexts;\n};\n\nfunction createMonkeysProviderContexts(): MonkeysProviderContexts {\n return Object.freeze({\n locale: createContext<MonkeysLocaleContextValue>({\n ...defaultMonkeysLocale,\n provided: false,\n }),\n theme: createContext<MonkeysThemeContextValue>({\n provided: false,\n }),\n direction: createContext<MonkeysDirectionContextValue>({\n provided: false,\n }),\n environment: createContext<MonkeysEnvironmentContextValue>({\n provided: false,\n environment: EMPTY_ENVIRONMENT,\n portal: EMPTY_PORTAL,\n }),\n });\n}\n\nfunction getMonkeysProviderContexts(): MonkeysProviderContexts {\n const host = globalThis as MonkeysProviderContextHost;\n const existing = host[MONKEYS_PROVIDER_CONTEXTS_KEY];\n if (existing) return existing;\n\n const contexts = createMonkeysProviderContexts();\n Object.defineProperty(host, MONKEYS_PROVIDER_CONTEXTS_KEY, {\n value: contexts,\n enumerable: false,\n configurable: false,\n writable: false,\n });\n return contexts;\n}\n\nconst providerContexts = getMonkeysProviderContexts();\n\nexport const MonkeysLocaleContext = providerContexts.locale;\n\nexport const MonkeysThemeContext = providerContexts.theme;\n\nexport const MonkeysDirectionContext = providerContexts.direction;\n\nexport const MonkeysEnvironmentContext = providerContexts.environment;\n\nfunction mergeAppearance<T extends { slots?: object; styles?: object }>(\n inherited: T | undefined,\n explicit: T | undefined,\n): T | undefined {\n if (explicit === undefined) return inherited;\n if (inherited === undefined) return explicit;\n\n return {\n ...inherited,\n ...explicit,\n slots:\n inherited.slots || explicit.slots\n ? { ...inherited.slots, ...explicit.slots }\n : undefined,\n styles:\n inherited.styles || explicit.styles\n ? { ...inherited.styles, ...explicit.styles }\n : undefined,\n };\n}\n\nexport function useMonkeysLocale() {\n try {\n const context = useContext(MonkeysLocaleContext);\n return context ?? { ...defaultMonkeysLocale, provided: false };\n } catch {\n return { ...defaultMonkeysLocale, provided: false };\n }\n}\n\nexport function useMonkeysLocaleMessages(): MonkeysLocaleMessages {\n return useContext(MonkeysLocaleContext).messages;\n}\n\nexport function useMonkeysResolvedTheme() {\n return useContext(MonkeysThemeContext).resolvedTheme;\n}\n\nexport function useMonkeysBaseAppearance(\n explicit?: BaseAppearance,\n): BaseAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).baseAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysDataExplorerAppearance(\n explicit?: DataExplorerAppearance,\n): DataExplorerAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).dataExplorerAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysStatusStates(): MonkeysStatusStatesConfig {\n return useContext(MonkeysThemeContext).statusStates ?? {};\n}\n\nexport function useMonkeysListFooter(): MonkeysListFooterConfig {\n return useContext(MonkeysThemeContext).listFooter ?? {};\n}\n\nexport function useMonkeysDirection() {\n return useContext(MonkeysDirectionContext).direction;\n}\n\nexport function useMonkeysEnvironment() {\n return useContext(MonkeysEnvironmentContext).environment;\n}\n\nexport function useMonkeysPortalOptions() {\n return useContext(MonkeysEnvironmentContext).portal;\n}\n\nexport function useMonkeysComponentAttributes(): MonkeysComponentAttributes {\n const locale = useContext(MonkeysLocaleContext);\n const theme = useContext(MonkeysThemeContext);\n const direction = useContext(MonkeysDirectionContext);\n const providerActive = locale.provided || theme.provided || direction.provided;\n\n return useMemo(\n () =>\n providerActive\n ? {\n dir: direction.direction,\n 'data-monkeys-direction': direction.direction,\n 'data-monkeys-locale': locale.locale,\n 'data-monkeys-theme': theme.themeId,\n 'data-monkeys-theme-mode': theme.resolvedTheme?.colorMode,\n }\n : {},\n [\n direction.direction,\n locale.locale,\n providerActive,\n theme.resolvedTheme?.colorMode,\n theme.themeId,\n ],\n );\n}\n\nexport function useMonkeysAssetIconResolver(): AssetIconResolver | undefined {\n return useContext(MonkeysEnvironmentContext).iconResolver;\n}\nexport function useMonkeysAssetImageResolver(): AssetImageResolver | undefined {\n return useContext(MonkeysEnvironmentContext).imageResolver;\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.09803921568627451,\n 0.11372549019607843\n ],\n \"hex\": \"#17191D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12549019607843137,\n 0.13725490196078433,\n 0.1607843137254902\n ],\n \"hex\": \"#202329\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.16470588235294117,\n 0.1803921568627451,\n 0.21176470588235294\n ],\n \"hex\": \"#2A2E36\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9568627450980393,\n 0.9607843137254902,\n 0.9686274509803922\n ],\n \"hex\": \"#F4F5F7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.803921568627451,\n 0.8196078431372549,\n 0.8470588235294118\n ],\n \"hex\": \"#CDD1D8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7254901960784313,\n 0.7450980392156863,\n 0.7843137254901961\n ],\n \"hex\": \"#B9BEC8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5490196078431373,\n 0.6039215686274509,\n 0.6666666666666666\n ],\n \"hex\": \"#8C9AAA\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6549019607843137,\n 0.7098039215686275,\n 0.7843137254901961\n ],\n \"hex\": \"#A7B5C8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7254901960784313,\n 0.7803921568627451\n ],\n \"hex\": \"#ADB9C7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7137254901960784,\n 0.7686274509803922\n ],\n \"hex\": \"#ADB6C4\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7647058823529411,\n 0.8235294117647058,\n 0.9098039215686274\n ],\n \"hex\": \"#C3D2E8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9411764705882353,\n 0.5019607843137255,\n 0.5019607843137255\n ],\n \"hex\": \"#F08080\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6078431372549019,\n 0.1450980392156863,\n 0.1843137254901961\n ],\n \"hex\": \"#9B252F\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5176470588235295,\n 0.8588235294117647,\n 0.6784313725490196\n ],\n \"hex\": \"#84DBAD\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.47058823529411764,\n 0.47058823529411764,\n 0.47058823529411764\n ],\n \"hex\": \"#787878\",\n \"alpha\": 0.2\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7176470588235294,\n 0.7568627450980392,\n 0.8313725490196079\n ],\n \"hex\": \"#B7C1D4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.8\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.4\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5215686274509804,\n 0.6,\n 0.7098039215686275\n ],\n \"hex\": \"#8599B5\",\n \"alpha\": 0.35\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6431372549019608,\n 0.6901960784313725,\n 0.7686274509803922\n ],\n \"hex\": \"#A4B0C4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3215686274509804,\n 0.396078431372549,\n 0.49019607843137253\n ],\n \"hex\": \"#52657D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.21568627450980393,\n 0.2549019607843137,\n 0.3176470588235294\n ],\n \"hex\": \"#374151\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"detail\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"white\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"black\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n },\n \"radius\": {\n \"r16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享 radius.scale 刻度 24px\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享 radius.scale 刻度 999px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享 radius.scale 刻度 12px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 8px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 4px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享 radius.scale 刻度 16px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 10px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 20px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 2px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 18px\"\n }\n },\n \"r999\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 999,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n }\n },\n \"typography\": {\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"共享 typography.lineHeight 刻度 1.5\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": 1.4,\n \"$description\": \"共享 typography.lineHeight 刻度 1.4\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": 1.3,\n \"$description\": \"共享 typography.lineHeight 刻度 1.3\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"共享 typography.lineHeight 刻度 1.2\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": 500,\n \"$description\": \"共享 typography.weight 刻度 500\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": 600,\n \"$description\": \"共享 typography.weight 刻度 600\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": 700,\n \"$description\": \"共享 typography.weight 刻度 700\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": 800,\n \"$description\": \"共享 typography.weight 刻度 800\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": 200,\n \"$description\": \"共享 typography.weight 刻度 200\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": 400,\n \"$description\": \"共享 typography.weight 刻度 400\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 2px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 3px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 28px\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 42px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 14px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 24px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 18px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 40px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 16px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 20px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 22px\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 140px\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 85px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 34px\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 320,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 320px\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 160,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 160px\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 280,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 280px\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 32,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 32px\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 53,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 53px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 26px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 8px\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 62,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 62px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 10px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 4px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 5px\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 196,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 196px\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 480,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 480px\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1000,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1000px\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 660,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 660px\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 48,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 48px\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 100,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 100px\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 64,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 64px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 12px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 6px\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 168,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 168px\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 96px\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 56,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 56px\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1.5px\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 220,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 220px\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 379,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 379px\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 68,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 68px\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 108,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 108px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 70px\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 57,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 57px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 15px\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 244,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 244px\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 78,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 78px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 36px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 23px\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 117,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 117px\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 110,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 110px\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 156,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 156px\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 125,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 125px\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 121,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 121px\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 127,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 127px\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 55,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 55px\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 178px\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 497,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 497px\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 37,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 37px\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 60,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 60px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 7px\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 128,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 128px\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 290,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 290px\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 210,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 210px\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 231,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 231px\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 440,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 440px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 9px\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 190,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 190px\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 130,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 130px\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 200,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 200px\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 150,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 150px\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 350,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 350px\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 493,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 493px\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 17px\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 6px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 18px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 3px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 10px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 8px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 22px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 7px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 14px\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 84,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 84px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 4px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 2px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 12px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 5px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 26px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 16px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 24px\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 30px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 1px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 15px\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 13px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 20px\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 29,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 29px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 9px\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 11px\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 115,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 115px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 34px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 40px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 28px\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 44,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 44px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 23px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 70px\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 25,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 25px\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 19,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 19px\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 47,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 47px\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 240ms\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 800,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 800ms\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 180,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 180ms\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 140ms\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"共享 opacity 刻度 0.65\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"共享 opacity 刻度 0.5\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"共享 opacity 刻度 0.8\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": 0.4,\n \"$description\": \"共享 opacity 刻度 0.4\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 8px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 20px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 12px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 1px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 4px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 10px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 2px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 36px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 5px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 3px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 24px\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 80,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 80px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 15px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 28px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 14px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 6px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 9px\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 0.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 0.5px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 7px\"\n }\n },\n \"layer\": {\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 layer.local 刻度 2\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": 3,\n \"$description\": \"共享 layer.local 刻度 3\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": 1100,\n \"$description\": \"共享 layer.local 刻度 1100\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": 5,\n \"$description\": \"共享 layer.local 刻度 5\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"共享 layer.local 刻度 10\"\n }\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": 4,\n \"$description\": \"共享 lineClamp 刻度 4\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 lineClamp 刻度 2\"\n }\n }\n }\n },\n \"semantic\": {\n \"color\": {\n \"surface\": {\n \"page\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.page}\",\n \"$description\": \"surface.page,供组件共同引用\"\n }\n },\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.surface}\",\n \"$description\": \"surface.default,供组件共同引用\"\n }\n },\n \"raised\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.elevated}\",\n \"$description\": \"surface.raised,供组件共同引用\"\n }\n },\n \"control\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.control}\",\n \"$description\": \"surface.control,供组件共同引用\"\n }\n },\n \"header\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.header}\",\n \"$description\": \"header-background\"\n }\n },\n \"detail\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.detail}\",\n \"$description\": \"sidebar-background\"\n }\n }\n },\n \"text\": {\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.foreground}\",\n \"$description\": \"text.primary,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.muted}\",\n \"$description\": \"text.secondary,供组件共同引用\"\n }\n },\n \"tertiary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.subtle}\",\n \"$description\": \"text.tertiary,供组件共同引用\"\n }\n },\n \"onAction\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"主操作背景上的文字\"\n }\n }\n },\n \"brand\": {\n \"accent\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primary}\",\n \"$description\": \"brand.accent,供组件共同引用\"\n }\n },\n \"accentHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryHover}\",\n \"$description\": \"brand.accentHover,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violet}\",\n \"$description\": \"brand.secondary,供组件共同引用\"\n }\n }\n },\n \"status\": {\n \"danger\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.danger}\",\n \"$description\": \"status.danger,供组件共同引用\"\n }\n },\n \"dangerSurface\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.dangerBackground}\",\n \"$description\": \"status.dangerSurface,供组件共同引用\"\n }\n },\n \"success\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.success}\",\n \"$description\": \"status.success,供组件共同引用\"\n }\n }\n },\n \"border\": {\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.border}\",\n \"$description\": \"border.default,供组件共同引用\"\n }\n }\n },\n \"scrim\": {\n \"media\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.info}\",\n \"$description\": \"scrim.media,供组件共同引用\"\n }\n },\n \"backdrop\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.overlay}\",\n \"$description\": \"scrim.backdrop,供组件共同引用\"\n }\n },\n \"preview\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n },\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryAccessible}\",\n \"$description\": \"主操作色,需与 onAction 验证对比度\"\n }\n },\n \"focus\": {\n \"ring\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"键盘焦点色,可独立覆盖\"\n }\n }\n },\n \"action\": {\n \"primaryHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主操作悬停状态\"\n }\n }\n },\n \"effect\": {\n \"start\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"end\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"lightEdgeStart\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.lightEdgeBlue}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n }\n },\n \"sample\": {\n \"inkLight\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.white}\",\n \"$description\": \"sample-ink-light\"\n },\n \"inkDark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.black}\",\n \"$description\": \"sample-ink-dark\"\n }\n }\n },\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"system-ui\",\n \"sans-serif\"\n ],\n \"$description\": \"正文与控件字体\"\n },\n \"size\": {\n \"xs\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 12px\"\n },\n \"ui11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 11px\"\n },\n \"ui17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 17px\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 14px\"\n },\n \"ui22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 22px\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 20px\"\n },\n \"ui10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 10px\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 18px\"\n },\n \"ui28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 28px\"\n },\n \"ui42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 42px\"\n },\n \"base\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 16px\"\n },\n \"ui15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 15px\"\n },\n \"ui21\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 21,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 21px\"\n },\n \"ui13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 13px\"\n },\n \"4xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 36px\"\n },\n \"3xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 30px\"\n },\n \"ui9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 9px\"\n }\n }\n },\n \"ui\": {\n \"control\": {\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"sm 控件高度\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"md 控件高度\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"lg 控件高度\"\n }\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"sm 控件横向留白\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"md 控件横向留白\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"lg 控件横向留白\"\n }\n }\n },\n \"radius\": {\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"control 圆角语义,可独立覆盖\"\n },\n \"container\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"container 圆角语义,可独立覆盖\"\n },\n \"content\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"content 圆角语义,可独立覆盖\"\n },\n \"pill\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"pill 圆角语义,可独立覆盖\"\n }\n },\n \"spacing\": {\n \"fieldGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"fieldGap 共享间距\"\n },\n \"controlGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"controlGap 共享间距\"\n },\n \"sectionGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"sectionGap 共享间距\"\n },\n \"surfacePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"surfacePadding 共享间距\"\n },\n \"pagePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"pagePadding 共享间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"sm 图标尺寸\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"md 图标尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"lg 图标尺寸\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"xl 图标尺寸\"\n }\n },\n \"target\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"sm 图标点击区域\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"md 图标点击区域\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"lg 图标点击区域\"\n }\n }\n },\n \"opacity\": {\n \"disabled\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"disabled 共享状态透明度\"\n },\n \"busy\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"busy 共享状态透明度\"\n }\n },\n \"motion\": {\n \"pressDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"pressDuration 动效时长\"\n },\n \"popupDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"popupDuration 动效时长\"\n },\n \"revealDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"revealDuration 动效时长\"\n },\n \"spinnerDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"spinnerDuration 动效时长\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": 0.97,\n \"$description\": \"按下与浮层进入缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": 1.14,\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"通用毛玻璃模糊半径\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.25,\n \"$description\": \"通用毛玻璃饱和度\"\n }\n }\n }\n },\n \"component\": {\n \"ui\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.page.dark}\",\n \"$description\": \"surface.page(兼容 CSS 变量)\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.default.dark}\",\n \"$description\": \"surface.default(兼容 CSS 变量)\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.raised.dark}\",\n \"$description\": \"surface.raised(兼容 CSS 变量)\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"surface.control(兼容 CSS 变量)\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"text.primary(兼容 CSS 变量)\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"text.secondary(兼容 CSS 变量)\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.tertiary.dark}\",\n \"$description\": \"text.tertiary(兼容 CSS 变量)\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accent.dark}\",\n \"$description\": \"brand.accent(兼容 CSS 变量)\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accentHover.dark}\",\n \"$description\": \"brand.accentHover(兼容 CSS 变量)\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.secondary.dark}\",\n \"$description\": \"brand.secondary(兼容 CSS 变量)\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"status.danger(兼容 CSS 变量)\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.dangerSurface.dark}\",\n \"$description\": \"status.dangerSurface(兼容 CSS 变量)\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.success.dark}\",\n \"$description\": \"status.success(兼容 CSS 变量)\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.border.default.dark}\",\n \"$description\": \"border.default(兼容 CSS 变量)\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.media.dark}\",\n \"$description\": \"scrim.media(兼容 CSS 变量)\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.backdrop.dark}\",\n \"$description\": \"scrim.backdrop(兼容 CSS 变量)\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.focus.ring.dark}\",\n \"$description\": \"焦点环与聚焦描边\"\n },\n \"button\": {\n \"primary\": {\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主按钮背景\"\n },\n \"hover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.action.primaryHover.dark}\",\n \"$description\": \"主按钮悬停背景\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.onAction.dark}\",\n \"$description\": \"主操作文字\"\n }\n },\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=sm] min-height\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=lg] min-height\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.glass.blur}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 blur\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.glass.saturation}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 saturation\"\n }\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.controlGap}\",\n \"$description\": \"button gap 独立覆盖入口\"\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.sm}\",\n \"$description\": \"button paddingInline.sm 独立覆盖入口\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.md}\",\n \"$description\": \"button paddingInline.md 独立覆盖入口\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.lg}\",\n \"$description\": \"button paddingInline.lg 独立覆盖入口\"\n }\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{component.ui.density.default.buttonPaddingBlock}\",\n \"$description\": \"默认按钮纵向留白;尺寸变体可覆盖\"\n }\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.transparent}\",\n \"$description\": \"transparent\"\n },\n \"header-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.header.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sidebar-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.detail.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-light\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkLight}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkDark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.preview.dark}\",\n \"$description\": \"预览信息表面;保留当前 65% alpha\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"font\": {\n \"$type\": \"fontFamily\",\n \"$value\": \"{semantic.font.body}\",\n \"$description\": \"字体兼容入口\"\n },\n \"radius\": {\n \"panel\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"panel 圆角出口\"\n },\n \"card\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"card 圆角出口\"\n },\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"control 圆角出口\"\n },\n \"info\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.content}\",\n \"$description\": \"info 圆角出口\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s8}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s4}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s10}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s20}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s2}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s18}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n }\n }\n },\n \"motion\": {\n \"press\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.pressDuration}\",\n \"$description\": \"兼容按下时长\"\n },\n \"popup\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.popupDuration}\",\n \"$description\": \"兼容浮层时长\"\n },\n \"ease\": {\n \"$type\": \"cubicBezier\",\n \"$value\": [\n 0.2,\n 0.8,\n 0.2,\n 1\n ],\n \"$description\": \"component.ui.motion.ease\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.pressedScale}\",\n \"$description\": \"按钮与浮层缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.hoverBrightness}\",\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"controlHeight\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.height.md}\",\n \"$description\": \"常规控件高度兼容入口\"\n },\n \"layout\": {\n \"stackGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"stackGap 布局默认值;实例属性优先\"\n },\n \"sidebarWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 252,\n \"unit\": \"px\"\n },\n \"$description\": \"sidebarWidth 布局默认值;实例属性优先\"\n },\n \"cardMinWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"cardMinWidth 布局默认值;实例属性优先\"\n },\n \"gridGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"gridGap 布局默认值;实例属性优先\"\n }\n },\n \"layer\": {\n \"overlayBase\": {\n \"$type\": \"number\",\n \"$value\": 1200,\n \"$description\": \"overlayBase 弹层层级\"\n },\n \"nestingStep\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"nestingStep 弹层层级\"\n },\n \"contentOffset\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"contentOffset 弹层层级\"\n },\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s2}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s3}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s1100}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s5}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s10}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n }\n }\n },\n \"effect\": {\n \"hostHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"px\"\n },\n \"$description\": \"独立特效默认高度\"\n },\n \"chroma\": {\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.7,\n \"$description\": \"chroma 的 intensity;数值单位遵循 Shader API\"\n },\n \"momentum\": {\n \"$type\": \"number\",\n \"$value\": 23,\n \"$description\": \"chroma 的 momentum;数值单位遵循 Shader API\"\n },\n \"radius\": {\n \"$type\": \"number\",\n \"$value\": 6,\n \"$description\": \"chroma 的 radius;数值单位遵循 Shader API\"\n }\n },\n \"aurora\": {\n \"curtainCount\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"aurora 的 curtainCount;数值单位遵循 Shader API\"\n },\n \"height\": {\n \"$type\": \"number\",\n \"$value\": 81,\n \"$description\": \"aurora 的 height;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 64,\n \"$description\": \"aurora 的 intensity;数值单位遵循 Shader API\"\n },\n \"rayDensity\": {\n \"$type\": \"number\",\n \"$value\": 12,\n \"$description\": \"aurora 的 rayDensity;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"aurora 的 speed;数值单位遵循 Shader API\"\n },\n \"waviness\": {\n \"$type\": \"number\",\n \"$value\": 39,\n \"$description\": \"aurora 的 waviness;数值单位遵循 Shader API\"\n },\n \"rotation\": {\n \"$type\": \"number\",\n \"$value\": 180,\n \"$description\": \"aurora 的 rotation;数值单位遵循 Shader API\"\n }\n },\n \"lightEdge\": {\n \"thickness\": {\n \"$type\": \"number\",\n \"$value\": 0.48,\n \"$description\": \"lightEdge 的 thickness;数值单位遵循 Shader API\"\n },\n \"softness\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 softness;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.9,\n \"$description\": \"lightEdge 的 intensity;数值单位遵循 Shader API\"\n },\n \"bloom\": {\n \"$type\": \"number\",\n \"$value\": 0.2,\n \"$description\": \"lightEdge 的 bloom;数值单位遵循 Shader API\"\n },\n \"spots\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 spots;数值单位遵循 Shader API\"\n },\n \"spotSize\": {\n \"$type\": \"number\",\n \"$value\": 0.6,\n \"$description\": \"lightEdge 的 spotSize;数值单位遵循 Shader API\"\n },\n \"smoke\": {\n \"$type\": \"number\",\n \"$value\": 0.12,\n \"$description\": \"lightEdge 的 smoke;数值单位遵循 Shader API\"\n },\n \"smokeSize\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"lightEdge 的 smokeSize;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 0.45,\n \"$description\": \"lightEdge 的 speed;数值单位遵循 Shader API\"\n },\n \"glowBlur\": {\n \"$type\": \"number\",\n \"$value\": 4.5,\n \"$description\": \"lightEdge 的 glowBlur;数值单位遵循 Shader API\"\n },\n \"flowBlur\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 flowBlur;数值单位遵循 Shader API\"\n },\n \"shapeInset\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"lightEdge 的 shapeInset;数值单位遵循 Shader API\"\n }\n },\n \"bottomGlow\": {\n \"referenceWidth\": {\n \"$type\": \"dimension\",\n \"$value\": { \"value\": 730, \"unit\": \"px\" },\n \"$description\": \"bottomGlow 高度与模糊参数对应的基准容器宽度;实际光晕随容器宽度等比缩放\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.95,\n \"$description\": \"bottomGlow 底部光晕强度\"\n },\n \"height\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 260,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 光晕区域高度\"\n },\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 柔化模糊半径\"\n },\n \"duration\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"s\"\n },\n \"$description\": \"bottomGlow 光晕漂移动画时长\"\n }\n }\n },\n \"typography\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui11}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui22}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui10}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.lg}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui42}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui15}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s21\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui21}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui13}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.4xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.3xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui9}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n }\n },\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p5}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p4}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p3}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p2}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s500}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s600}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s700}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s800}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s200}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s400}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s2}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s3}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s42}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s18}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s40}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s22}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s140}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s85}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s34}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s320}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s160}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s280}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s32}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s53}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s26}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s8}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s62}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s10}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s4}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s196}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s480}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1000}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s660}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s48}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s100}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s64}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s6}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s168}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s96}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s56}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1p5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s220}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s379}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s68}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s108}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s70}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s57}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s15}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s244}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s78}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s23}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s117}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s110}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s156}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s125}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s121}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s127}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s55}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s178}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s497}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s37}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s60}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s7}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s128}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s290}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s210}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s231}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s440}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s9}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s190}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s130}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s200}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s150}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s350}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s493}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s17}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s8}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s84}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s2}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s12}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s5}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s26}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s30}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s1}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s15}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s13}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s29}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s9}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s115}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s34}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s40}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s28}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s44}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s23}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s70}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s25}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s19}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s47}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p65}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.disabled}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.busy}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p4}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s8}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s20}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s12}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s1}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s4}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s10}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s2}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s36}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s3}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s24}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s80}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s15}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s28}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s14}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s6}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s9}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s0p5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s7}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s4}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s2}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n }\n },\n \"material\": {\n \"control\": {\n \"background\": { \"$type\": \"color\", \"$value\": \"{component.ui.input.background}\", \"$description\": \"控件共用底材:以名称输入框为准,兼容现有 input.background 覆盖\" },\n \"border\": { \"$type\": \"color\", \"$value\": \"{component.ui.border}\", \"$description\": \"控件共用顶部柔和描边\" },\n \"highlight\": { \"$type\": \"color\", \"$value\": \"{component.ui.foreground}\", \"$description\": \"控件共用底部内高光颜色\" },\n \"highlightOffset\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s5}\", \"$description\": \"控件底部内高光向上偏移量\" },\n \"highlightBlur\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s9}\", \"$description\": \"控件底部内高光模糊半径\" },\n \"highlightSpread\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s8}\", \"$description\": \"控件底部内高光收缩量\" }\n }\n },\n \"input\": {\n \"tags\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-tag-input min-height\"\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"input.tags.gap 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"input.tags 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"input.tags 材质饱和度\"\n }\n }\n },\n \"paddingInline\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"input paddingInline 独立覆盖入口\"\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"input paddingBlock 独立覆盖入口\"\n },\n \"radius\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"input radius 独立覆盖入口\"\n },\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"input background 独立覆盖入口\"\n },\n \"placeholder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"input placeholder 独立覆盖入口\"\n },\n \"invalidBorder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"input invalidBorder 独立覆盖入口\"\n }\n },\n \"textarea\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-textarea min-height\"\n }\n },\n \"switch\": {\n \"height\": {\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.md 默认尺寸\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.sm 默认尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.lg 默认尺寸\"\n }\n }\n },\n \"colorSlider\": {\n \"thumbWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"colorSlider.thumbWidth 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"colorSlider 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.15,\n \"$description\": \"colorSlider 材质饱和度\"\n }\n }\n },\n \"card\": {\n \"dragHandle\": {\n \"size\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s24}\", \"$description\": \"卡片拖动手柄直径\" },\n \"offset\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s5}\", \"$description\": \"卡片拖动手柄距顶边与起始边的距离\" },\n \"iconSize\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s16}\", \"$description\": \"卡片拖动手柄六点图标尺寸\" },\n \"background\": { \"$type\": \"color\", \"$value\": \"{semantic.color.scrim.media.dark}\", \"$description\": \"卡片拖动手柄深色背景\" },\n \"foreground\": { \"$type\": \"color\", \"$value\": \"{semantic.color.sample.inkLight}\", \"$description\": \"卡片拖动手柄图标颜色\" }\n },\n \"actions\": {\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"card.actions 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"card.actions 材质饱和度\"\n }\n }\n },\n \"titleFontSize\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"card titleFontSize 独立覆盖入口\"\n }\n },\n \"panel\": {\n \"padding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.surfacePadding}\",\n \"$description\": \"panel padding 独立覆盖入口\"\n }\n },\n \"field\": {\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.fieldGap}\",\n \"$description\": \"field gap 独立覆盖入口\"\n }\n },\n \"tooltip\": {\n \"delay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 500,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip delay\"\n },\n \"skipDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 300,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip skipDelay\"\n },\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"tooltip 与触发器的间距\"\n }\n },\n \"scrollSurface\": {\n \"hideDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 700,\n \"unit\": \"ms\"\n },\n \"$description\": \"scrollSurface hideDelay\"\n }\n },\n \"menu\": {\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"menu 与触发器的间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"内置图标 12px,可独立于字体覆盖\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"内置图标 14px,可独立于字体覆盖\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"内置图标 16px,可独立于字体覆盖\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"内置图标 17px,可独立于字体覆盖\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"内置图标 28px,可独立于字体覆盖\"\n }\n }\n },\n \"density\": {\n \"compact\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"compact buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"compact inputPaddingBlock 密度留白\"\n }\n },\n \"default\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"default buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"default inputPaddingBlock 密度留白\"\n }\n },\n \"comfortable\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"comfortable buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"comfortable inputPaddingBlock 密度留白\"\n }\n }\n }\n }\n }\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.07450980392156863,\n 0.08235294117647059,\n 0.10196078431372549\n ],\n \"hex\": \"#13151A\"\n },\n \"$description\": \"seed.ui.color.page\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.10588235294117647,\n 0.15294117647058825\n ],\n \"hex\": \"#171B27\"\n },\n \"$description\": \"seed.ui.color.surface\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13333333333333333,\n 0.15294117647058825,\n 0.2196078431372549\n ],\n \"hex\": \"#222738\"\n },\n \"$description\": \"seed.ui.color.elevated\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"seed.ui.color.foreground\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7843137254901961,\n 0.7843137254901961,\n 0.7843137254901961\n ],\n \"hex\": \"#C8C8C8\"\n },\n \"$description\": \"seed.ui.color.muted\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6980392156862745,\n 0.6980392156862745,\n 0.6980392156862745\n ],\n \"hex\": \"#B2B2B2\"\n },\n \"$description\": \"seed.ui.color.subtle\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.28627450980392155,\n 0.4666666666666667,\n 0.9215686274509803\n ],\n \"hex\": \"#4977EB\"\n },\n \"$description\": \"seed.ui.color.primary\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.25882352941176473,\n 0.5215686274509804,\n 1\n ],\n \"hex\": \"#4285FF\"\n },\n \"$description\": \"seed.ui.color.lightEdgeBlue\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3803921568627451,\n 0.5450980392156862,\n 0.9568627450980393\n ],\n \"hex\": \"#618BF4\"\n },\n \"$description\": \"seed.ui.color.primaryHover\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5764705882352941,\n 0.36470588235294116,\n 1\n ],\n \"hex\": \"#935DFF\"\n },\n \"$description\": \"seed.ui.color.violet\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6627450980392157,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#A9BBFF\"\n },\n \"$description\": \"seed.ui.color.focus\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6862745098039216,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#AFBBFF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.border\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13725490196078433,\n 0.3411764705882353,\n 0.9176470588235294\n ],\n \"hex\": \"#2357EA\",\n \"alpha\": 0.35\n },\n \"$description\": \"seed.ui.color.blueGlow\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.4627450980392157,\n 0.19215686274509805,\n 1\n ],\n \"hex\": \"#7631FF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.violetGlow\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.23529411764705882,\n 0.38823529411764707,\n 0.8117647058823529\n ],\n \"hex\": \"#3C63CF\"\n },\n \"$description\": \"seed.ui.color.primaryAccessible\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12941176470588237,\n 0.32941176470588235,\n 0.8509803921568627\n ],\n \"hex\": \"#2154D9\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n }\n },\n \"semantic\": {\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"Inter\",\n \"Monkeys UI Sans\",\n \"Microsoft YaHei\",\n \"sans-serif\"\n ],\n \"$description\": \"BSD 字体栈\"\n }\n }\n }\n}\n","import type { ThemeTokens } from '../../theme-system';\n\nconst isGroup = (value: unknown): value is Record<string, unknown> => !!value && typeof value === 'object' && !Array.isArray(value);\n/** Token leaves are atomic; groups merge without mutating either document. */\nexport function mergeThemeTokens(base: ThemeTokens, override?: ThemeTokens): ThemeTokens {\n function merge(a: unknown, b: unknown): unknown {\n if (b === undefined) return a;\n if (!isGroup(a) || !isGroup(b) || '$value' in b || '$value' in a) return b;\n const result = { ...a };\n for (const key of Object.keys(b)) result[key] = merge(a[key], b[key]);\n return result;\n }\n return merge(base, override) as ThemeTokens;\n}\n\nexport function uiVariable(path: string) {\n return '--monkeys-ui-' + path.replace(/^component\\.ui\\./, '').replace(/([a-z0-9])([A-Z])/g, '$1-$2').replace(/\\./g, '-').toLowerCase();\n}\n","import type { ThemeTokens } from '../../theme-system';\nimport base from './base.json';\nimport bsd from './tenants/bsd.json';\nimport { mergeThemeTokens } from './config';\n\nexport const baseThemeTokens = base as ThemeTokens;\nexport const uiThemePresets = {\n bsd: { id: 'bsd', label: 'BSD', colorModes: ['dark'], tokens: bsd as ThemeTokens },\n 'neutral-demo': { id: 'neutral-demo', label: 'Neutral Demo(演示)', colorModes: ['dark'], tokens: {} as ThemeTokens },\n} as const;\n\n/** Every selection starts from base, never from the previous tenant's result. */\nexport function getTenantTheme(tenant = 'bsd', override?: ThemeTokens): ThemeTokens {\n if (!Object.prototype.hasOwnProperty.call(uiThemePresets, tenant)) throw new TypeError(`Unknown UI tenant: ${tenant}`);\n const preset = uiThemePresets[tenant as keyof typeof uiThemePresets];\n return mergeThemeTokens(mergeThemeTokens(baseThemeTokens, preset.tokens), override);\n}\n","import { createContext, useContext, useEffect, useMemo, useState, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport { compileThemeTokens, getThemeTokenCssValue, type ThemeTokens, type CompiledThemeTokens } from '../../theme-system';\nimport { useMonkeysDirection, useMonkeysEnvironment, useMonkeysPortalOptions, useMonkeysResolvedTheme, useMonkeysLocale } from '../../provider/context';\nimport { zhCN, type MonkeysResolvedLocale } from '../../locale';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { getTenantTheme } from './presets';\nimport { mergeThemeTokens, uiVariable } from './config';\nimport { durationMilliseconds } from '../internal';\nexport { mergeThemeTokens } from './config';\n\nexport const defaultThemeTokens = getTenantTheme('bsd');\nconst defaultResolvedTokens = compileThemeTokens(defaultThemeTokens, { colorMode: 'dark' });\n\n/** Uses the canonical compiler: no second token resolver or value formatter. */\nexport function compileUITheme(tokens: ThemeTokens): Record<string, string> {\n return variablesFromTheme(compileThemeTokens(tokens, { colorMode: 'dark' }));\n}\nfunction variablesFromTheme(compiled: CompiledThemeTokens): Record<string, string> {\n const variables: Record<string, string> = {};\n for (const path of Object.keys(compiled.cssValues).filter(path => path.startsWith('component.ui.'))) {\n const name = uiVariable(path);\n if (variables[name] !== undefined) throw new TypeError(`Duplicate UI variable: ${name}`);\n variables[name] = getThemeTokenCssValue(compiled, path)!;\n }\n for (const name of ['foreground', 'page', 'focus', 'button-primary-background', 'font']) {\n if (!variables['--monkeys-ui-' + name]) throw new TypeError(`Missing required UI token: ${name}`);\n }\n return variables;\n}\n\ninterface UITheme { tokens: ThemeTokens; compiled: CompiledThemeTokens; variables: Record<string, string>; dir: 'ltr' | 'rtl'; tenant: string; density: 'compact' | 'default' | 'comfortable' }\nconst UIThemeContext = createContext<UITheme | null>(null);\nconst PortalDepthContext = createContext(0);\nexport function useUIDirection(explicit?: 'ltr' | 'rtl') {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysDirection();\n const environment = useMonkeysEnvironment();\n const [documentDirection, setDocumentDirection] = useState<'ltr' | 'rtl'>();\n useEffect(() => {\n if (explicit || theme?.dir || inherited) return;\n const document = environment.getDocument?.() ?? globalThis.document;\n const root = document?.documentElement;\n if (!root) return;\n const update = () => setDocumentDirection(root.dir === 'rtl' ? 'rtl' : 'ltr');\n update(); const observer = new MutationObserver(update); observer.observe(root, { attributes: true, attributeFilter: ['dir'] });\n return () => observer.disconnect();\n }, [explicit, theme?.dir, inherited, environment]);\n return explicit ?? theme?.dir ?? inherited ?? documentDirection;\n}\nexport function useUILocale(): MonkeysResolvedLocale & { provided: boolean } { const locale = useMonkeysLocale(); return locale.provided ? locale : { ...zhCN, provided: false }; }\nexport function useTooltipScope() { return useContext(UIThemeContext) !== null; }\nconst inputDocuments = new WeakMap<Document, { count: number; dispose: () => void }>();\nfunction observeInput(document: Document) {\n const existing = inputDocuments.get(document);\n if (existing) { existing.count++; return () => releaseInput(document); }\n const root = document.documentElement;\n const previous = root.getAttribute('data-monkeys-ui-input');\n const pointer = () => root.setAttribute('data-monkeys-ui-input', 'pointer');\n const keyboard = () => root.setAttribute('data-monkeys-ui-input', 'keyboard');\n document.addEventListener('pointerdown', pointer, true);\n document.addEventListener('keydown', keyboard, true);\n inputDocuments.set(document, { count: 1, dispose: () => { document.removeEventListener('pointerdown', pointer, true); document.removeEventListener('keydown', keyboard, true); if (previous === null) root.removeAttribute('data-monkeys-ui-input'); else root.setAttribute('data-monkeys-ui-input', previous); } });\n return () => releaseInput(document);\n}\nfunction releaseInput(document: Document) { const entry = inputDocuments.get(document); if (entry && --entry.count === 0) { entry.dispose(); inputDocuments.delete(document); } }\nexport interface ThemeProviderProps extends HTMLAttributes<HTMLDivElement> { tokens?: ThemeTokens; tenant?: string; density?: 'compact' | 'default' | 'comfortable' }\nexport function ThemeProvider({ tokens, tenant, density, children, className, style, dir, ...rest }: ThemeProviderProps) {\n const parent = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n const inheritedDirection = useMonkeysDirection();\n const tenantId = tenant ?? parent?.tenant ?? 'bsd';\n const effectiveDensity = density ?? parent?.density ?? 'default';\n const document = useMemo(() => {\n const foundation = tenant ? getTenantTheme(tenant) : parent?.tokens ?? mergeThemeTokens(defaultThemeTokens, inherited?.contract);\n const dimensionAlias = (path: string) => ({ $type: 'dimension' as const, $value: `{${path}}` });\n const densityOverride: ThemeTokens | undefined = density === undefined && !tenant ? undefined : { component: { ui: {\n controlHeight: dimensionAlias(`semantic.ui.control.height.${effectiveDensity === 'compact' ? 'sm' : effectiveDensity === 'comfortable' ? 'lg' : 'md'}`),\n button: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.buttonPaddingBlock`) },\n input: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.inputPaddingBlock`) },\n } } };\n return mergeThemeTokens(mergeThemeTokens(foundation, densityOverride), tokens);\n }, [tenant, density, effectiveDensity, parent?.tokens, inherited?.contract, tokens]);\n const compiled = useMemo(() => compileThemeTokens(document, { colorMode: 'dark', density: effectiveDensity }), [document, effectiveDensity]);\n const variables = useMemo(() => variablesFromTheme(compiled), [compiled]);\n const direction = (dir === 'rtl' || dir === 'ltr' ? dir : parent?.dir ?? inheritedDirection ?? 'ltr');\n const context = useMemo(() => ({ tokens: document, compiled, variables, dir: direction, tenant: tenantId, density: effectiveDensity }), [document, compiled, variables, direction, tenantId, effectiveDensity]);\n return <UIThemeContext.Provider value={context}><TooltipPrimitive.Provider delayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.delay'])} skipDelayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.skipDelay'])}><div {...rest} dir={direction} data-monkeys-ui-tenant={tenantId} data-monkeys-ui-theme=\"dark\" className={['monkeys-ui-scope', className].filter(Boolean).join(' ')} style={{ ...variables, ...style } as CSSProperties}>{children}</div></TooltipPrimitive.Provider></UIThemeContext.Provider>;\n}\n\n/** JS renderers consume the same resolved document as CSS and Portal. */\nexport function useUIResolvedTokens() {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n return useMemo(() => theme?.compiled ?? (inherited?.contract ? compileThemeTokens(mergeThemeTokens(defaultThemeTokens, inherited.contract), { colorMode: 'dark' }) : defaultResolvedTokens), [theme?.compiled, inherited?.contract]);\n}\n\n/** Client-only host preserves the theme and direction across body portals. */\nexport function Portal({ children }: { children: ReactNode }) {\n const theme = useContext(UIThemeContext);\n const environment = useMonkeysEnvironment();\n const options = useMonkeysPortalOptions();\n const direction = useUIDirection();\n const depth = useContext(PortalDepthContext) + 1;\n const [host, setHost] = useState<Element | null>(null);\n useEffect(() => {\n const document = environment.getDocument?.() ?? globalThis.document;\n setHost(typeof options.container === 'function' ? options.container() : options.container ?? document?.body ?? null);\n return document ? observeInput(document) : undefined;\n }, [environment, options.container]);\n const baseLayer = Number(theme?.variables['--monkeys-ui-layer-overlay-base'] ?? defaultResolvedTokens.values['component.ui.layer.overlayBase']);\n const nestingStep = Number(theme?.variables['--monkeys-ui-layer-nesting-step'] ?? defaultResolvedTokens.values['component.ui.layer.nestingStep']);\n const content = <PortalDepthContext.Provider value={depth}><div className=\"monkeys-ui-scope monkeys-ui-portal\" dir={direction} data-monkeys-ui-tenant={theme?.tenant ?? 'bsd'} data-monkeys-ui-theme=\"dark\" style={{ ...theme?.variables, '--monkeys-ui-overlay-layer': baseLayer + depth * nestingStep } as CSSProperties}>{children}</div></PortalDepthContext.Provider>;\n return options.disabled ? content : host ? createPortal(content, host) : null;\n}\n","/** Host-supplied samples use white ink, switching to black on near-white backgrounds. */\nexport function sampleInk(color?: string) {\n if (!color || !/^#([\\da-f]{3}|[\\da-f]{6})$/i.test(color)) return 'light';\n const hex = color.slice(1).length === 3 ? [...color.slice(1)].map(value => value + value).join('') : color.slice(1);\n const channels = [0, 2, 4].map(index => {\n const value = parseInt(hex.slice(index, index + 2), 16) / 255;\n return value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4;\n });\n const luminance = channels[0] * 0.2126 + channels[1] * 0.7152 + channels[2] * 0.0722;\n // Preserve white labels on saturated swatches; reserve black for very light fills.\n return luminance >= 0.8 ? 'dark' : 'light';\n}\n","import { useEffect, useState } from 'react';\n\n/** SSR and accessibility modes use the static surface; preferences stay live. */\nexport function useShaderEnabled() {\n const [enabled, setEnabled] = useState(false);\n useEffect(() => {\n const motion = window.matchMedia('(prefers-reduced-motion: reduce)');\n const colors = window.matchMedia('(forced-colors: active)');\n const update = () => setEnabled(!motion.matches && !colors.matches);\n update();\n motion.addEventListener('change', update); colors.addEventListener('change', update);\n return () => { motion.removeEventListener('change', update); colors.removeEventListener('change', update); };\n }, []);\n return enabled;\n}\n","import { getThemeTokenCssValue, type CompiledThemeTokens } from '../../theme-system';\n\nexport function resolveEffectTokens(theme: CompiledThemeTokens) {\n const color = (name: string) => {\n const path = `semantic.color.effect.${name}.dark`;\n const value = theme.values[path] as { hex?: string } | undefined;\n return value?.hex ?? getThemeTokenCssValue(theme, path)!;\n };\n const number = (effect: string, name: string) => Number(theme.values[`component.ui.effect.${effect}.${name}`]);\n return {\n start: color('start'), end: color('end'), lightEdgeStart: color('lightEdgeStart'),\n chroma: { intensity: number('chroma', 'intensity'), momentum: number('chroma', 'momentum'), radius: number('chroma', 'radius') },\n aurora: { curtainCount: number('aurora', 'curtainCount'), height: number('aurora', 'height'), intensity: number('aurora', 'intensity'), rayDensity: number('aurora', 'rayDensity'), speed: number('aurora', 'speed'), waviness: number('aurora', 'waviness') },\n lightEdge: { thickness: number('lightEdge', 'thickness'), softness: number('lightEdge', 'softness'), intensity: number('lightEdge', 'intensity'), bloom: number('lightEdge', 'bloom'), spots: number('lightEdge', 'spots'), spotSize: number('lightEdge', 'spotSize'), smoke: number('lightEdge', 'smoke'), smokeSize: number('lightEdge', 'smokeSize'), speed: number('lightEdge', 'speed') },\n rotation: number('aurora', 'rotation'), glowBlur: number('lightEdge', 'glowBlur'), flowBlur: number('lightEdge', 'flowBlur'), shapeInset: number('lightEdge', 'shapeInset'),\n };\n}\n","import { useEffect, useId, useRef, useState, type ComponentProps } from 'react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\nexport type ButtonLightEdgeOptions = Partial<Pick<ComponentProps<ShaderModule['LightEdge']>,\n 'colorA' | 'colorB' | 'colorSpace' | 'thickness' | 'softness' | 'intensity' | 'bloom' | 'spots' | 'spotSize' | 'pulse' | 'smoke' | 'smokeSize' | 'speed' | 'seed'>>;\n\n/** Decorative only: the button owns sizing, clipping, focus, and pointer input. */\nexport function ButtonLightEdge(options: ButtonLightEdgeOptions) {\n const filterId = `button-light-edge-${useId().replace(/:/g, '')}`;\n const hostRef = useRef<HTMLSpanElement>(null);\n const [module, setModule] = useState<ShaderModule | null>(null);\n const enabled = useShaderEnabled();\n const theme = useUIResolvedTokens();\n const tokens = resolveEffectTokens(theme);\n const [ready, setReady] = useState(false);\n const [shape, setShape] = useState<Record<string, number | string> | null>(null);\n\n\n useEffect(() => {\n if (!enabled) return;\n let active = true;\n import('shaders/react').then(loaded => { if (active) setModule(loaded); }).catch(() => {});\n return () => { active = false; };\n }, [enabled]);\n\n useEffect(() => {\n const host = hostRef.current;\n const button = host?.closest('button');\n if (!button || !host) return;\n const update = () => {\n const width = host.clientWidth;\n const height = host.clientHeight;\n if (!width || !height) return;\n const radiusValue = getComputedStyle(button).borderTopLeftRadius;\n const radius = radiusValue.endsWith('%')\n ? Math.min(width, height) * parseFloat(radiusValue) / 100\n : parseFloat(radiusValue) || 0;\n const inset = tokens.shapeInset;\n setShape({ type: 'roundedRectSDF', radius: Math.max(0.01, width / (2 * height) - inset / height), height: Math.max(0.01, 0.5 - inset / height), rounding: Math.max(0, Math.min(radius - inset, height / 2 - inset)) / height });\n };\n update();\n const observer = new ResizeObserver(update);\n observer.observe(button);\n return () => observer.disconnect();\n }, [theme]);\n\n return <span ref={hostRef} className=\"monkeys-ui-button-light-edge-mask\" data-ready={ready || undefined}>\n <svg width=\"0\" height=\"0\" aria-hidden=\"true\" className=\"monkeys-ui-button-light-edge-defs\">\n <defs>\n {/* Composite a diffuse glow and a soft flow from the same canvas. */}\n <filter id={filterId} x=\"-30%\" y=\"-100%\" width=\"160%\" height=\"300%\" colorInterpolationFilters=\"sRGB\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.glowBlur} result=\"glow\" />\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.flowBlur} result=\"flow\" />\n <feMerge><feMergeNode in=\"glow\" /><feMergeNode in=\"flow\" /></feMerge>\n </filter>\n </defs>\n </svg>\n <span className=\"monkeys-ui-button-light-edge-flow\" style={{ filter: `url(#${filterId})` }}>\n <span className=\"monkeys-ui-button-light-edge-ambient\" />\n {enabled && module && shape ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)}>\n <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...tokens.lightEdge} {...options} stops={null} shape={shape} />\n </module.Shader> : null}\n </span>\n </span>;\n}\n","import { forwardRef, type HTMLAttributes } from 'react';\nimport * as ScrollArea from '@radix-ui/react-scroll-area';\nimport { useUIDirection, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds } from './internal';\n\ninterface ScrollSurfaceProps extends HTMLAttributes<HTMLElement> {\n as?: 'section' | 'aside';\n}\n\n/** Internal bento surface: native scrolling with transient, overlaid drag handles. */\nexport const ScrollSurface = forwardRef<HTMLElement, ScrollSurfaceProps>(function ScrollSurface({ as: Element = 'section', children, className, onScroll, dir, ...props }, ref) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const tokens = useUIResolvedTokens();\n const delay = durationMilliseconds(tokens.values['component.ui.scrollSurface.hideDelay']);\n return <ScrollArea.Root asChild type=\"scroll\" scrollHideDelay={delay} dir={direction}>\n <Element {...props} ref={ref} className={cx('monkeys-ui-scroll-surface', className)}>\n <ScrollArea.Viewport className=\"monkeys-ui-scroll-viewport\" tabIndex={0} role=\"group\" aria-labelledby={props['aria-labelledby']} aria-label={props['aria-labelledby'] ? undefined : props['aria-label'] ?? '滚动内容'} onScroll={onScroll}>\n {children}\n </ScrollArea.Viewport>\n <ScrollArea.Scrollbar orientation=\"vertical\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n <ScrollArea.Scrollbar orientation=\"horizontal\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n </Element>\n </ScrollArea.Root>;\n});\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactElement, type ReactNode, type RefObject } from 'react';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport * as AvatarPrimitive from '@radix-ui/react-avatar';\nimport { Button } from './controls';\nimport { Portal, useUIDirection, useUILocale, useTooltipScope, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds, useControllable } from './internal';\nimport { X } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\n\nexport interface TooltipProps { content: ReactNode; children: ReactElement; delayDuration?: number; side?: 'top' | 'bottom' | 'left' | 'right' }\nexport function Tooltip({ content, children, delayDuration, side = 'top' }: TooltipProps) {\n const scoped = useTooltipScope();\n const theme = useUIResolvedTokens();\n const milliseconds = (path: string) => durationMilliseconds(theme.values[path]);\n const tooltip = <TooltipPrimitive.Root delayDuration={delayDuration}><TooltipPrimitive.Trigger asChild>{children}</TooltipPrimitive.Trigger><Portal><TooltipPrimitive.Content side={side} sideOffset={Number((theme.values[\"component.ui.tooltip.sideOffset\"] as { value: number }).value)} className=\"monkeys-ui-tooltip\">{content}</TooltipPrimitive.Content></Portal></TooltipPrimitive.Root>;\n return scoped ? tooltip : <TooltipPrimitive.Provider delayDuration={delayDuration ?? milliseconds(\"component.ui.tooltip.delay\")} skipDelayDuration={milliseconds(\"component.ui.tooltip.skipDelay\")}>{tooltip}</TooltipPrimitive.Provider>;\n}\nexport interface MenuItem { id: string; label: ReactNode; disabled?: boolean; danger?: boolean; onSelect?: () => void }\nexport interface MenuProps { trigger: ReactElement; items: MenuItem[]; label?: string; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; onCloseAutoFocus?: (event: Event) => void }\nexport function Menu({ trigger, items, label, open, defaultOpen, onOpenChange, onCloseAutoFocus }: MenuProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const direction = useUIDirection();\n const theme = useUIResolvedTokens();\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown}><MenuPrimitive.Trigger asChild>{trigger}</MenuPrimitive.Trigger><Portal><MenuPrimitive.Content aria-label={label} sideOffset={(theme.values[\"component.ui.menu.sideOffset\"] as { value: number }).value} align=\"end\" onCloseAutoFocus={onCloseAutoFocus} className=\"monkeys-ui-menu\">{items.map(item => <MenuPrimitive.Item key={item.id} disabled={item.disabled} className=\"monkeys-ui-menu-item\" data-danger={item.danger || undefined} onSelect={item.onSelect}>{item.label}</MenuPrimitive.Item>)}</MenuPrimitive.Content></Portal></MenuPrimitive.Root>;\n}\nexport interface DialogProps { frame?: 'default' | 'bento'; size?: 'md' | 'xl'; scroll?: 'dialog' | 'body'; backdrop?: 'dim' | 'blur'; surface?: 'default' | 'gradient'; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; trigger?: ReactElement; title: ReactNode; description?: ReactNode; children?: ReactNode; actions?: ReactNode; initialFocusRef?: RefObject<HTMLElement>; restoreFocusRef?: RefObject<HTMLElement>; onCloseAutoFocus?: (event: Event) => void; className?: string; closeLabel?: string }\nexport function Dialog({ frame = 'default', size = 'md', scroll = 'dialog', backdrop = 'dim', surface = 'default', open, defaultOpen, onOpenChange, trigger, title, description, children, actions, initialFocusRef, restoreFocusRef, onCloseAutoFocus, className, closeLabel }: DialogProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const close = useRef<HTMLButtonElement>(null);\n const locale = useUILocale();\n return <DialogPrimitive.Root open={shown} onOpenChange={setShown}>{trigger ? <DialogPrimitive.Trigger asChild>{trigger}</DialogPrimitive.Trigger> : null}<Portal><DialogPrimitive.Overlay data-backdrop={backdrop} className=\"monkeys-ui-dialog-overlay\" /><DialogPrimitive.Content data-frame={frame} data-size={size} data-scroll={scroll} data-surface={surface} className={cx('monkeys-ui-dialog', className)} {...(description ? {} : { 'aria-describedby': undefined })} onOpenAutoFocus={event => {\n event.preventDefault();\n // Radix registers its dismissable layer after mounting. Focus marks the\n // dialog ready for keyboard input, so expose it after that registration.\n const button = close.current;\n button?.ownerDocument.defaultView?.requestAnimationFrame(() => {\n if (button.isConnected && button.closest('[role=\"dialog\"]')?.getAttribute('data-state') === 'open') (initialFocusRef?.current ?? button).focus();\n });\n }} onCloseAutoFocus={event => { onCloseAutoFocus?.(event); if (!event.defaultPrevented && restoreFocusRef?.current) { event.preventDefault(); restoreFocusRef.current.focus(); } }}><DialogPrimitive.Title className=\"monkeys-ui-dialog-title\">{title}</DialogPrimitive.Title>{description ? <DialogPrimitive.Description className=\"monkeys-ui-description\">{description}</DialogPrimitive.Description> : null}<DialogPrimitive.Close asChild><Button shape=\"icon\" ref={close} aria-label={closeLabel ?? locale.messages.dialog.close} className=\"monkeys-ui-dialog-close\"><X size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button></DialogPrimitive.Close>{scroll === 'body' ? <ScrollSurface className=\"monkeys-ui-dialog-body\" aria-label={typeof title === 'string' ? title + '内容' : '对话框内容'}>{children}</ScrollSurface> : children}{actions ? <div className=\"monkeys-ui-dialog-actions\">{actions}</div> : null}</DialogPrimitive.Content></Portal></DialogPrimitive.Root>;\n}\nexport interface BadgeProps extends HTMLAttributes<HTMLSpanElement> { tone?: 'neutral' | 'primary' | 'danger' | 'success' }\nexport function Badge({ tone = 'neutral', className, ...props }: BadgeProps) { return <span {...props} data-tone={tone} className={cx('monkeys-ui-badge', className)} />; }\nexport interface NoticeProps extends HTMLAttributes<HTMLDivElement> { tone?: 'neutral' | 'danger' | 'success'; action?: ReactNode }\nexport function Notice({ tone = 'neutral', action, children, className, ...props }: NoticeProps) { return <div role={tone === 'danger' ? 'alert' : 'status'} {...props} data-tone={tone} className={cx('monkeys-ui-notice', className)}><div>{children}</div>{action}</div>; }\nexport interface EmptyStateProps extends HTMLAttributes<HTMLDivElement> { title: string; description?: ReactNode; action?: ReactNode }\nexport function EmptyState({ title, description, action, className, ...props }: EmptyStateProps) { return <div {...props} className={cx('monkeys-ui-empty', className)}><strong>{title}</strong>{description ? <p>{description}</p> : null}{action}</div>; }\nexport interface LoadingStateProps extends HTMLAttributes<HTMLDivElement> { label?: string }\nexport function LoadingState({ label, className, ...props }: LoadingStateProps) { const locale = useUILocale(); return <div role=\"status\" aria-busy=\"true\" {...props} className={cx('monkeys-ui-loading', className)}><span className=\"monkeys-ui-inline-spinner\" aria-hidden=\"true\" />{label ?? locale.messages.loading.spinner}</div>; }\nexport interface AvatarProps extends AvatarPrimitive.AvatarProps { src?: string; alt: string; fallback?: ReactNode }\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(function Avatar({ src, alt, fallback, className, ...props }, ref) { return <AvatarPrimitive.Root {...props} ref={ref} className={cx('monkeys-ui-avatar', className)}><AvatarPrimitive.Image src={src} alt={alt} /><AvatarPrimitive.Fallback>{fallback ?? alt.slice(0, 1)}</AvatarPrimitive.Fallback></AvatarPrimitive.Root>; });\n","import { createContext } from 'react';\n\n/** Internal surface choice for compound controls embedded in a Bento workspace. */\nexport const PanelSurfaceContext = createContext<'catalog' | 'bento'>('catalog');\n","import { useEffect, useRef, useState, type ComponentProps, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { cx } from './internal';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\ntype AuroraShaderProps = ComponentProps<ShaderModule['Aurora']>;\ntype ChromaFlowShaderProps = ComponentProps<ShaderModule['ChromaFlow']>;\ntype LightEdgeShaderProps = ComponentProps<ShaderModule['LightEdge']>;\ntype EffectHostProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n onUnavailable?: (reason: string) => void;\n};\n\n/** One lifecycle and fallback surface for all public shader effects. */\nfunction ShaderEffect({ effect, className, style, onUnavailable, children, ...hostProps }: EffectHostProps & {\n effect: 'aurora' | 'chroma' | 'light-edge';\n children: (module: ShaderModule) => ReactNode;\n}) {\n const [module, setModule] = useState<ShaderModule | null>(null);\n const [ready, setReady] = useState(false);\n const enabled = useShaderEnabled();\n const unavailable = useRef(onUnavailable);\n useEffect(() => { unavailable.current = onUnavailable; }, [onUnavailable]);\n useEffect(() => {\n if (!enabled) { setReady(false); return; }\n let active = true;\n import('shaders/react').then(loaded => {\n if (active) setModule(loaded);\n }).catch(error => {\n if (active) unavailable.current?.(error instanceof Error ? error.message : String(error));\n });\n return () => { active = false; };\n }, [enabled]);\n const hostStyle: CSSProperties = { height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))', ...style, position: 'relative', overflow: 'hidden' };\n return <div {...hostProps} className={cx('monkeys-ui-shader-effect', className)} style={hostStyle}>\n {!ready ? <div aria-hidden=\"true\" className=\"monkeys-ui-shader-fallback\" data-effect={effect} /> : null}\n {enabled && module ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)} onUnavailable={reason => { setReady(false); unavailable.current?.(reason); }}>{children(module)}</module.Shader> : null}\n </div>;\n}\n\n/** Host identity, accessibility and events never become Shader component props. */\nfunction splitHostProps(props: Record<string, unknown>) {\n const host: Record<string, unknown> = {}; const shader: Record<string, unknown> = {};\n const native = new Set(['id', 'role', 'title', 'tabIndex', 'dir', 'lang', 'hidden', 'draggable', 'contentEditable', 'accessKey', 'translate', 'spellCheck', 'suppressHydrationWarning', 'slot']);\n for (const [key, value] of Object.entries(props)) (native.has(key) || key.startsWith('aria-') || key.startsWith('data-') || /^on[A-Z]/.test(key) ? host : shader)[key] = value;\n return { host, shader };\n}\n\nexport interface AuroraProps extends EffectHostProps, Partial<AuroraShaderProps> {}\nexport function Aurora({ className, style, onUnavailable, ...props }: AuroraProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"aurora\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.Aurora colorA={tokens.start} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface ChromaFlowProps extends EffectHostProps, Partial<ChromaFlowShaderProps> {}\nexport function ChromaFlow({ className, style, onUnavailable, ...props }: ChromaFlowProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"chroma\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface LightEdgeProps extends EffectHostProps, Partial<LightEdgeShaderProps> {}\nexport function LightEdge({ className, style, onUnavailable, ...props }: LightEdgeProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"light-edge\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\n/** A CSS fallback-first surface effect with a soft blue/violet glow anchored to the bottom edge. */\nexport interface BottomGlowProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Disable the very subtle drift while keeping the static glow. */\n animated?: boolean;\n}\n\nexport function BottomGlow({ className, style, animated = true, ...props }: BottomGlowProps) {\n const hostStyle: CSSProperties = {\n height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))',\n ...style,\n };\n return <div {...props} className={cx('monkeys-ui-bottom-glow', className)} data-animated={animated ? 'true' : 'false'} style={hostStyle} />;\n}\n","import { createContext, useContext, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, MouseSensor, TouchSensor, KeyboardSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable, horizontalListSortingStrategy, verticalListSortingStrategy, rectSortingStrategy, sortableKeyboardCoordinates } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\n\nexport interface CollectionReorder { activeId: string; overId: string; beforeIds: string[] }\nexport interface CollectionSortingProps {\n /** Authoritative records in this window. Absence keeps the ordinary grid behavior. */\n reorderItems?: { id: string; [key: string]: unknown }[];\n reorderAxis?: 'horizontal' | 'vertical' | 'grid';\n /** Optional record field whose equal values define compatible drop targets. */\n reorderGroupField?: string;\n reorderDisabled?: boolean;\n onReorder?: (change: CollectionReorder) => void;\n}\nconst Sorting = createContext(false);\nexport function canStartCollectionDrag(event: Event, activeNode?: HTMLElement | null) {\n const target = event.target as Element | null;\n if (!target?.closest) return false;\n const item = target.closest('[data-sortable-item]');\n if (activeNode && item !== activeNode) return false;\n if (!item || target.closest('[data-sortable-region]') !== item.closest('[data-sortable-region]')) return false;\n // The stretched card entry remains an activator; its menus and other controls do not.\n return !target.closest('button:not(.monkeys-ui-card-entry):not([data-reorder-activator]),a:not(.monkeys-ui-card-entry):not([data-reorder-activator]),input,textarea,select,video,audio,[contenteditable=\"true\"],[role=\"menuitem\"],[data-no-reorder]');\n}\nclass CardMouseSensor extends MouseSensor {\n static activators = [{ eventName: 'onMouseDown' as const, handler: ({ nativeEvent }: { nativeEvent: MouseEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.button === 0 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nclass CardTouchSensor extends TouchSensor {\n static activators = [{ eventName: 'onTouchStart' as const, handler: ({ nativeEvent }: { nativeEvent: TouchEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.touches.length === 1 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nexport function SortableCollection({ reorderItems, reorderAxis = 'horizontal', reorderGroupField, reorderDisabled, onReorder, children }: CollectionSortingProps & { children: ReactNode }) {\n const suppressClick = useRef(false);\n const sensors = useSensors(useSensor(CardMouseSensor, { activationConstraint: { distance: 8 } }), useSensor(CardTouchSensor, { activationConstraint: { delay: 250, tolerance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const enabled = !!onReorder && !reorderDisabled && !!reorderItems && reorderItems.length > 1;\n const ids = (reorderItems ?? []).map(item => item.id);\n const groups = new Map((reorderItems ?? []).map(item => [item.id, reorderGroupField ? item[reorderGroupField] : undefined]));\n const end = ({ active, over }: DragEndEvent) => {\n if (over && active.id !== over.id && ids.includes(String(active.id)) && ids.includes(String(over.id))) onReorder?.({ activeId: String(active.id), overId: String(over.id), beforeIds: ids });\n // dnd-kit suppresses the immediate document click; retain a capture guard for card navigation.\n setTimeout(() => { suppressClick.current = false; }, 0);\n };\n if (!enabled) return <Sorting.Provider value={false}>{children}</Sorting.Provider>;\n return <DndContext sensors={sensors} collisionDetection={args => closestCenter({ ...args, droppableContainers: args.droppableContainers.filter(target => !reorderGroupField || groups.get(String(target.id)) === groups.get(String(args.active.id))) })} onDragStart={() => { suppressClick.current = true; }} onDragCancel={() => { setTimeout(() => { suppressClick.current = false; }, 0); }} onDragEnd={end} accessibility={{ screenReaderInstructions: { draggable: '按空格开始排序,使用方向键在同组内移动,再按空格保存。按 Escape 取消。' } }}>\n <Sorting.Provider value={true}><SortableContext items={ids} strategy={reorderAxis === 'grid' ? rectSortingStrategy : reorderAxis === 'horizontal' ? horizontalListSortingStrategy : verticalListSortingStrategy}>\n <div data-sortable-region={reorderAxis} style={{ display: 'contents' }} onClickCapture={event => { if (suppressClick.current) { event.preventDefault(); event.stopPropagation(); } }}>{children}</div>\n </SortableContext></Sorting.Provider>\n </DndContext>;\n}\nexport function SortableCollectionItem({ itemId, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string; children?: ReactNode }) {\n const enabled = useContext(Sorting);\n return enabled ? <ActiveItem itemId={itemId} {...props}>{children}</ActiveItem> : <div {...props}>{children}</div>;\n}\nfunction ActiveItem({ itemId, style, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string }) {\n const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({ id: itemId });\n return <div {...props} ref={setNodeRef} {...attributes} {...listeners} data-sortable-item={itemId} style={{ ...style, transform: CSS.Transform.toString(transform), transition, position: 'relative', zIndex: isDragging ? 20 : undefined, opacity: isDragging ? .75 : undefined, cursor: isDragging ? 'grabbing' : 'grab' }}>{children}</div>;\n}\n","import { forwardRef, useContext, useId, useState, type AnchorHTMLAttributes, type ButtonHTMLAttributes, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, KeyboardSensor, PointerSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, rectSwappingStrategy, sortableKeyboardCoordinates, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { PanelSurfaceContext } from './panel-surface';\nimport { cx } from './internal';\nimport { Check, GripVertical, ImageOff } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { BottomGlow } from './effects';\nimport { SurfaceEffect } from './surface-effect';\nimport { Tooltip } from './overlays';\nimport { SortableCollection, type CollectionSortingProps } from './sortable-collection';\n\nexport interface PanelProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title?: ReactNode; actions?: ReactNode; density?: 'comfortable' | 'compact'; classNames?: { header?: string; body?: string }; children?: ReactNode }\nexport const Panel = forwardRef<HTMLElement, PanelProps>(function Panel({ title, actions, density = 'comfortable', classNames, className, children, ...props }, ref) {\n const id = useId();\n const surface = useContext(PanelSurfaceContext);\n if (surface === 'bento') return <section {...props} className={cx('monkeys-ui-bento-panel', className)} data-surface=\"bento\">\n <ScrollSurface ref={ref} aria-labelledby={title ? id : props['aria-labelledby']} className=\"monkeys-ui-bento-scroll\">\n {title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}\n <div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div>\n </ScrollSurface>\n </section>;\n return <ScrollSurface {...props} ref={ref} data-density={density} aria-labelledby={title ? id : props['aria-labelledby']} className={cx('monkeys-ui-panel', className)}>{title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}<div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div></ScrollSurface>;\n});\nexport interface PageShellProps extends HTMLAttributes<HTMLDivElement> { header?: ReactNode; classNames?: { main?: string } }\nexport function PageShell({ header, className, classNames, children, ...props }: PageShellProps) { return <div {...props} className={cx('monkeys-ui-page', className)}>{header}<main className={cx('monkeys-ui-page-main', classNames?.main)}>{children}</main></div>; }\nexport interface AppHeaderProps extends HTMLAttributes<HTMLElement> { logo: ReactNode; navigation?: ReactNode; account?: ReactNode }\nexport function AppHeader({ logo, navigation, account, className, ...props }: AppHeaderProps) { return <header {...props} className={cx('monkeys-ui-header', className)}><div className=\"monkeys-ui-header-logo\">{logo}</div><nav aria-label=\"主导航\" className=\"monkeys-ui-header-nav\">{navigation}</nav><div className=\"monkeys-ui-header-account\">{account}</div></header>; }\nexport interface SplitLayoutProps extends HTMLAttributes<HTMLDivElement> {\n primary?: ReactNode;\n /** Compatibility alias for primary. */\n sidebar?: ReactNode;\n side?: 'start' | 'end';\n direction?: 'horizontal' | 'vertical';\n /** Primary : remaining pane, after subtracting the gap. */\n ratio?: readonly [number, number];\n /** Width / height of the primary pane in vertical layouts; takes priority over ratio. */\n primaryAspectRatio?: number;\n minPrimarySize?: number | string;\n maxPrimarySize?: number | string;\n gap?: number | string;\n sidebarWidth?: string;\n}\nexport function SplitLayout({ primary, sidebar, side = 'start', direction = 'horizontal', ratio, primaryAspectRatio, minPrimarySize, maxPrimarySize, gap, sidebarWidth, children, className, style, ...props }: SplitLayoutProps) {\n const validRatio = ratio && ratio.every(value => Number.isFinite(value) && value > 0) && Number.isFinite(ratio[0] + ratio[1]);\n const share = validRatio ? ratio[0] / (ratio[0] + ratio[1]) : 0.5;\n const useAspectRatio = direction === 'vertical' && typeof primaryAspectRatio === 'number' && Number.isFinite(primaryAspectRatio) && primaryAspectRatio > 0;\n const dimension = (value: number | string | undefined) => typeof value === 'number' ? Math.max(0, value) + 'px' : value;\n return <div {...props} data-side={side} data-direction={direction} data-sizing={useAspectRatio ? 'aspect-ratio' : direction === 'horizontal' && !ratio && sidebarWidth === undefined ? 'responsive' : undefined} data-proportional={!!ratio || direction === 'vertical' ? true : undefined} className={cx('monkeys-ui-split', className)} style={{\n '--monkeys-ui-sidebar-width': sidebarWidth ?? 'var(--monkeys-ui-layout-sidebar-width,var(--monkeys-ui-default-layout-sidebar-width))',\n '--monkeys-ui-split-share': share,\n '--monkeys-ui-split-primary-aspect': useAspectRatio ? primaryAspectRatio : undefined,\n '--monkeys-ui-split-primary-min': dimension(minPrimarySize),\n '--monkeys-ui-split-primary-max': dimension(maxPrimarySize),\n '--monkeys-ui-split-gap': dimension(gap),\n ...style,\n } as CSSProperties}><div className=\"monkeys-ui-split-sidebar\">{primary !== undefined ? primary : sidebar}</div><div className=\"monkeys-ui-split-main\">{children}</div></div>;\n}\nexport interface CollectionToolbarProps extends HTMLAttributes<HTMLDivElement> { search?: ReactNode; filters?: ReactNode; actions?: ReactNode }\nexport function CollectionToolbar({ search, filters, actions, className, ...props }: CollectionToolbarProps) { return <div {...props} className={cx('monkeys-ui-toolbar', className)}><div className=\"monkeys-ui-toolbar-search\">{search}</div>{filters}<div className=\"monkeys-ui-toolbar-actions\">{actions}</div></div>; }\nexport interface CollectionSectionProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title: ReactNode; action?: ReactNode; lead?: ReactNode }\nexport function CollectionSection({ title, action, lead, children, className, ...props }: CollectionSectionProps) { const id = useId(); return <section {...props} aria-labelledby={id} data-layout={lead ? 'featured' : undefined} className={cx('monkeys-ui-collection', className)}><div className={cx('monkeys-ui-collection-heading', !!lead && !action && 'monkeys-ui-visually-hidden')}><h2 id={id} tabIndex={-1} className={lead ? 'monkeys-ui-visually-hidden' : undefined}>{title}</h2>{action}</div>{lead ? <div className=\"monkeys-ui-collection-row\"><div className=\"monkeys-ui-collection-lead\">{lead}</div><div className=\"monkeys-ui-collection-members\">{children}</div></div> : children}</section>; }\nexport interface CardGridProps extends HTMLAttributes<HTMLDivElement>, CollectionSortingProps { view?: 'grid' | 'list'; minCardWidth?: number; columnGap?: number }\nexport function CardGrid({ view = 'grid', minCardWidth, columnGap, className, style, children, reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder, ...props }: CardGridProps) { return <div {...props} role=\"list\" data-view={view} className={cx('monkeys-ui-card-grid', className)} style={{ '--monkeys-ui-card-width': minCardWidth === undefined ? 'var(--monkeys-ui-layout-card-min-width,var(--monkeys-ui-default-layout-card-min-width))' : minCardWidth + 'px', ...(columnGap !== undefined ? { '--monkeys-ui-grid-column-gap': columnGap + 'px' } : {}), ...style } as CSSProperties}><SortableCollection {...{reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder}}>{children}</SortableCollection></div>; }\nexport interface CardProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'content'> {\n title: ReactNode;\n variant?: 'card' | 'row' | 'detail' | 'preview' | 'content';\n /** Let a containing panel own the surface while preserving card content and interactions.\n * Add data-frame=\"bento\" to adapt detail borders and inset to the containing Bento tokens. */\n chrome?: 'card' | 'plain';\n selected?: boolean;\n onSelectedChange?: (selected: boolean) => void;\n size?: 'sm' | 'md' | 'lg';\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n image?: string;\n imageAlt?: string;\n imagePosition?: string;\n imageStyle?: CSSProperties;\n media?: ReactNode;\n mediaOverlay?: ReactNode;\n emptyMedia?: ReactNode;\n href?: string;\n onOpen?: () => void;\n header?: ReactNode;\n /** Opt out of the detail breadcrumb chip without changing its content or actions. */\n breadcrumbSurface?: 'default' | 'transparent';\n meta?: ReactNode;\n /** Revealed on hover/focus for compact layouts; always visible in detail. Supplied by the host. */\n description?: ReactNode;\n content?: ReactNode;\n stats?: StatItem[];\n actions?: ReactNode;\n /** Independent handle; host owns drag/keyboard behavior and ordering. Not rendered in detail/preview. */\n dragHandle?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'type'> & { 'aria-label': string; id?: string };\n navigation?: ReactNode;\n navigationLabel?: string;\n footer?: ReactNode;\n classNames?: { image?: string; content?: string; actions?: string; heading?: string; media?: string };\n}\n/** Presentation only. Fields, formatting, labels and action contents belong to the host. */\nexport const Card = forwardRef<HTMLElement, CardProps>(function Card({ title, variant = 'card', chrome = 'card', breadcrumbSurface = 'default', selected, onSelectedChange, size, headingLevel, image, imageAlt = '', imagePosition, imageStyle, media, mediaOverlay, emptyMedia, href, onOpen, header, meta, description, content, children, stats = [], actions, dragHandle, navigation, navigationLabel, footer, className, classNames, style, ...props }, ref) {\n const [failedSource, setFailedSource] = useState<string>();\n const id = useId();\n const detail = variant === 'detail';\n const hasDescription = description !== undefined && description !== null && description !== false && description !== '';\n const hasEntry = variant !== 'preview' && !!(onSelectedChange || href || onOpen);\n const descriptionId = id + '-description';\n const describedBy = [props['aria-describedby'], hasDescription ? descriptionId : undefined].filter(Boolean).join(' ') || undefined;\n const Heading = `h${headingLevel ?? (detail ? 1 : 3)}` as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n const tooltipTitle = detail && typeof title === 'string' && title.length > 0;\n const headingContent = <Heading id={id} className={cx('monkeys-ui-record-heading', classNames?.heading)} tabIndex={tooltipTitle ? 0 : undefined} title={!detail && typeof title === 'string' ? title : undefined}>{title}</Heading>;\n const heading = tooltipTitle ? <Tooltip content={title}>{headingContent}</Tooltip> : headingContent;\n const mediaContent = media ?? (image && failedSource !== image ? <img className={cx(detail ? 'monkeys-ui-sidebar-image' : 'monkeys-ui-record-card-image', classNames?.image)} src={image} alt={imageAlt} style={{ objectPosition: imagePosition, ...imageStyle }} onError={() => setFailedSource(image)} loading=\"lazy\" /> : emptyMedia ?? (!detail ? <div className=\"monkeys-ui-media-placeholder\" aria-label=\"暂无图片\"><ImageOff size={32} aria-hidden=\"true\" /></div> : null));\n const statistics = stats.length ? <StatGroup items={stats} /> : null;\n const body = content ?? children;\n const sortable = Boolean(dragHandle && variant !== 'preview' && variant !== 'detail');\n const dragId = dragHandle?.id ?? (typeof (props as Record<string, unknown>)['data-item-id'] === 'string' ? (props as Record<string, unknown>)['data-item-id'] as string : id);\n const sortableState = useSortable({ id: dragId, disabled: !sortable });\n const setCardRef = (node: HTMLElement | null) => { sortableState.setNodeRef(node); if (typeof ref === 'function') ref(node); else if (ref) ref.current = node; };\n const cardStyle = { ...style, ...(sortableState.transform ? { transform: CSS.Transform.toString(sortableState.transform), transition: sortableState.transition } : {}), ...(sortableState.isDragging ? { opacity: 0.5 } : {}) } as CSSProperties;\n const dragListeners = sortableState.listeners ?? {};\n const dragAttributes = sortableState.attributes;\n if (detail) return <ScrollSurface as=\"aside\" {...props} ref={ref} aria-labelledby={props['aria-label'] ? undefined : id} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-detail', className)}>\n <div className={cx('monkeys-ui-sidebar-media', classNames?.media)}>{mediaContent}{mediaOverlay}</div>\n <div className=\"monkeys-ui-sidebar-header\"><div className=\"monkeys-ui-breadcrumbs\" data-surface={breadcrumbSurface === 'transparent' ? 'transparent' : undefined}>{header}</div>{actions ? <div className={cx('monkeys-ui-sidebar-header-actions', classNames?.actions)}>{actions}</div> : null}</div>\n <div className={cx('monkeys-ui-sidebar-details', classNames?.content)}>\n <BottomGlow className=\"monkeys-ui-detail-bottom-glow\" style={{ height: '100%' }} aria-hidden=\"true\" />\n {heading}{meta ? <div className=\"monkeys-ui-sidebar-meta\">{meta}</div> : null}\n {description ? <div className=\"monkeys-ui-description\">{description}</div> : null}{body}{statistics}\n {navigation ? <nav aria-label={navigationLabel ?? '记录导航'} className=\"monkeys-ui-sidebar-navigation\">{navigation}</nav> : null}\n {footer ? <div className=\"monkeys-ui-sidebar-actions\">{footer}</div> : null}\n </div>\n </ScrollSurface>;\n return <article {...props} ref={setCardRef} style={cardStyle} aria-labelledby={props['aria-label'] ? undefined : id} aria-describedby={hasEntry ? props['aria-describedby'] : describedBy} tabIndex={props.tabIndex ?? (hasDescription && !hasEntry ? 0 : undefined)} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} data-selected={selected || undefined} data-size={size} data-preview={variant === 'preview' || undefined} data-dragging={sortableState.isDragging || undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-card', className)}>\n {variant === 'content' && !media && !image ? null : media !== undefined ? <div className={cx('monkeys-ui-record-media', classNames?.media)}>{mediaContent}</div> : mediaContent}\n {mediaOverlay ? <div className=\"monkeys-ui-media-overlay\">{mediaOverlay}</div> : null}{header}\n {hasEntry && (onSelectedChange ? <button type=\"button\" aria-pressed={selected ?? false} onClick={() => onSelectedChange(!selected)} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : href ? <a href={href} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : <button type=\"button\" onClick={onOpen} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" />)}\n {sortable ? <button {...dragHandle} {...dragAttributes} {...dragListeners} ref={sortableState.setActivatorNodeRef} type=\"button\" draggable={false} className={cx('monkeys-ui-card-drag-handle', dragHandle!.className)} onClick={event => { event.stopPropagation(); dragHandle!.onClick?.(event); }}><GripVertical aria-hidden=\"true\" /></button> : null}\n {selected ? <span className=\"monkeys-ui-card-selection-mark\" aria-hidden=\"true\"><Check size={14} /></span> : null}\n <div className={cx('monkeys-ui-card-info', classNames?.content)}>\n {heading}{meta}{body}{statistics}\n {hasDescription ? <div className=\"monkeys-ui-card-description\"><div className=\"monkeys-ui-card-description-clip\"><div id={descriptionId} className=\"monkeys-ui-description\">{description}</div></div></div> : null}\n </div>\n {actions ? <div className={cx('monkeys-ui-card-actions', classNames?.actions)}>{actions}</div> : null}{footer}\n </article>;\n});\nexport interface CardDragProviderProps { children: ReactNode; items: string[]; onMove?: (activeId: string, overId: string) => void }\n/** Shared dnd-kit boundary; hosts own persistence and list-specific reorder rules. */\nexport function CardDragProvider({ children, items, onMove }: CardDragProviderProps) {\n const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const handleEnd = ({ active, over }: DragEndEvent) => { if (over && active.id !== over.id) onMove?.(String(active.id), String(over.id)); };\n return <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleEnd}><SortableContext items={items} strategy={rectSwappingStrategy}>{children}</SortableContext></DndContext>;\n}\nexport interface StatItem { label: string; value: ReactNode }\nexport interface StatGroupProps extends HTMLAttributes<HTMLDListElement> {\n items: StatItem[];\n /** Opt into metric tiles with a fixed column count; rows grow with the items. */\n columns?: 2 | 3;\n}\nexport function StatGroup({ items, columns, className, ...props }: StatGroupProps) { return <dl {...props} data-columns={columns} className={cx('monkeys-ui-stats', className)}>{items.map(item => <div key={item.label}><dt>{item.label}</dt><dd>{item.value}</dd></div>)}</dl>; }\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { Button } from './controls';\nimport { Notice } from './overlays';\nimport { cx } from './internal';\nimport { Plus, X, ImageOff } from 'lucide-react';\n\nexport interface ImageFileRejection { file: File; reason: 'type' | 'size' | 'duplicate' }\nexport interface ImageValidationOptions { accept?: readonly string[]; maxFileBytes?: number; existingFiles?: ReadonlyArray<Pick<File, 'name' | 'size' | 'lastModified'>> }\nconst defaultAccept = ['image/jpeg', 'image/png'];\nconst identity = (file: Pick<File, 'name' | 'size' | 'lastModified'>) => `${file.name}:${file.size}:${file.lastModified}`;\n/** Shared by selection, drop and paste. Decoding is a separate host operation. */\nexport function validateImageFiles(files: readonly File[], { accept = defaultAccept, maxFileBytes = Infinity, existingFiles = [] }: ImageValidationOptions = {}) {\n const seen = new Set(existingFiles.map(identity));\n const accepted: File[] = [];\n const rejected: ImageFileRejection[] = [];\n for (const file of files) {\n const key = identity(file);\n const reason = !accept.some(type => type.endsWith('/*') ? file.type.startsWith(type.slice(0, -1)) : type === file.type) ? 'type' : file.size > maxFileBytes ? 'size' : seen.has(key) ? 'duplicate' : undefined;\n if (reason) rejected.push({ file, reason });\n else { seen.add(key); accepted.push(file); }\n }\n return { accepted, rejected };\n}\nexport interface UploadedImage { id: string; name: string; src?: string; status: 'pending' | 'ready' | 'error'; progress?: number; error?: string }\nexport interface UploadedImageItemProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'> { item: UploadedImage; onRemove?: () => void; onRetry?: () => void; onSelectCover?: () => void; cover?: boolean; disabled?: boolean }\nexport const UploadedImageItem = forwardRef<HTMLDivElement, UploadedImageItemProps>(function UploadedImageItem({ item, onRemove, onRetry, onSelectCover, cover, disabled, className, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-uploaded-image', className)} data-state={item.status} aria-label={item.name} aria-busy={item.status === 'pending'}>{item.src ? <img src={item.src} alt={item.name} /> : <ImageOff size={24} aria-hidden=\"true\" />}<div className=\"monkeys-ui-uploaded-info\"><span title={item.name}>{item.name}</span>{item.status === 'pending' ? <><span role=\"status\">上传中</span>{item.progress != null ? <progress aria-label={item.name + ' 上传进度'} value={item.progress} max={100} /> : null}</> : null}{item.status === 'error' ? <><span role=\"alert\">{item.error ?? '上传失败'}</span>{onRetry ? <Button size=\"sm\" disabled={disabled} onClick={onRetry}>重试</Button> : null}</> : null}{onSelectCover && item.status !== 'error' ? <Button size=\"sm\" disabled={disabled} aria-pressed={cover} onClick={onSelectCover}>{cover ? '封面' : '设为封面'}</Button> : null}</div>{onRemove ? <Button shape=\"icon\" aria-label={'移除 ' + item.name} className=\"monkeys-ui-upload-remove\" size=\"sm\" disabled={disabled} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface ImageUploadFieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>, ImageValidationOptions { label?: string; description?: ReactNode; items: UploadedImage[]; disabled?: boolean; onFilesSelected: (files: File[]) => void; onRejected?: (rejections: ImageFileRejection[]) => void; onRemove?: (id: string) => void; onRetry?: (id: string) => void; onSelectCover?: (id: string) => void; coverId?: string; error?: string }\nexport const ImageUploadField = forwardRef<HTMLDivElement, ImageUploadFieldProps>(function ImageUploadField({ id: explicitId, label = '上传图片', description, items, disabled, accept = defaultAccept, maxFileBytes, existingFiles, onFilesSelected, onRejected, onRemove, onRetry, onSelectCover, coverId, error, className, onDrop, onPaste, onDragOver, ...props }, ref) {\n const generated = useId(); const id = explicitId ?? generated;\n const input = useRef<HTMLInputElement>(null);\n function receive(files: File[]) { if (disabled) return; const result = validateImageFiles(files, { accept, maxFileBytes, existingFiles }); if (result.rejected.length) onRejected?.(result.rejected); if (result.accepted.length) onFilesSelected(result.accepted); }\n return <div {...props} ref={ref} id={id} role=\"group\" aria-label={label} aria-describedby={description ? id + '-description' : undefined} className={cx('monkeys-ui-upload', className)} onDragOver={event => { onDragOver?.(event); if (!disabled && event.dataTransfer.types.includes('Files')) event.preventDefault(); }} onDrop={event => { onDrop?.(event); if (!event.defaultPrevented && event.dataTransfer.files.length) { event.preventDefault(); receive(Array.from(event.dataTransfer.files)); } }} onPaste={event => { onPaste?.(event); if (!event.defaultPrevented && event.clipboardData.files.length) { event.preventDefault(); receive(Array.from(event.clipboardData.files)); } }}><div className=\"monkeys-ui-label\">{label}</div><div className=\"monkeys-ui-upload-items\"><Button className=\"monkeys-ui-upload-target\" variant=\"outline\" disabled={disabled} onClick={() => input.current?.click()} aria-describedby={description ? id + '-description' : undefined}><Plus size=\"var(--monkeys-ui-icon-size-s28,var(--monkeys-ui-default-icon-size-s28))\" aria-hidden=\"true\" /><span>选择、拖入或粘贴图片</span></Button><input className=\"monkeys-ui-visually-hidden\" ref={input} type=\"file\" tabIndex={-1} accept={accept.join(',')} multiple disabled={disabled} aria-label={label} onChange={event => { receive(Array.from(event.currentTarget.files ?? [])); event.currentTarget.value = ''; }} />{items.map(item => <UploadedImageItem key={item.id} item={item} disabled={disabled} cover={item.id === coverId} onRemove={onRemove ? () => onRemove(item.id) : undefined} onRetry={onRetry ? () => onRetry(item.id) : undefined} onSelectCover={onSelectCover ? () => onSelectCover(item.id) : undefined} />)}</div>{description ? <div className=\"monkeys-ui-description\" id={id + '-description'}>{description}</div> : null}{error ? <Notice tone=\"danger\">{error}</Notice> : null}</div>;\n});\n","import { useEffect, useRef, useState } from 'react';\nimport type * as Shaders from 'shaders/react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\nexport function SurfaceEffect({ variant }: { variant: 'banner' | 'chroma' }) {\n const enabled = useShaderEnabled();\n const tokens = resolveEffectTokens(useUIResolvedTokens());\n const [shaders, setShaders] = useState<typeof Shaders | null>(null);\n const [rendererState, setRendererState] = useState<'loading' | 'ready' | 'unavailable'>('loading');\n const surface = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!enabled || shaders) return;\n let active = true;\n import('shaders/react').then(module => {\n if (active) setShaders(module);\n }).catch(() => { if (active) setRendererState('unavailable'); });\n return () => { active = false; };\n }, [enabled, shaders]);\n\n useEffect(() => {\n const element = surface.current;\n const parent = element?.parentElement;\n if (!enabled || variant !== 'chroma' || rendererState === 'ready' || !element || !parent) return;\n // The decorative layer does not intercept input; listen on its content surface.\n const move = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n const bounds = element.getBoundingClientRect();\n element.style.setProperty('--monkeys-ui-surface-x', `${event.clientX - bounds.left}px`);\n element.style.setProperty('--monkeys-ui-surface-y', `${event.clientY - bounds.top}px`);\n element.dataset.pointerActive = '';\n };\n const leave = () => { delete element.dataset.pointerActive; };\n parent.addEventListener('pointerenter', move);\n parent.addEventListener('pointermove', move);\n parent.addEventListener('pointerleave', leave);\n return () => {\n parent.removeEventListener('pointerenter', move);\n parent.removeEventListener('pointermove', move);\n parent.removeEventListener('pointerleave', leave);\n leave();\n element.style.removeProperty('--monkeys-ui-surface-x');\n element.style.removeProperty('--monkeys-ui-surface-y');\n };\n }, [enabled, variant, rendererState]);\n\n return <div ref={surface} className={variant === 'banner' ? 'monkeys-ui-brand-banner-effect' : 'monkeys-ui-card-surface-effect'} data-monkeys-ui-brand-effect={variant === 'banner' ? '' : undefined} data-monkeys-ui-card-effect={variant === 'chroma' ? '' : undefined} data-renderer-state={enabled ? rendererState : 'disabled'} aria-hidden=\"true\">\n {enabled && variant === 'chroma' && rendererState !== 'ready' ? <div className=\"monkeys-ui-shader-fallback\" data-effect=\"surface-chroma\" /> : null}\n {enabled && shaders ? <shaders.Shader disableTelemetry onReady={() => setRendererState('ready')} onUnavailable={() => setRendererState('unavailable')} style={{ width: '100%', height: '100%' }}>\n <shaders.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...tokens.chroma} />\n {variant === 'banner' ? <shaders.Aurora colorA={tokens.start} colorB={tokens.end} colorSpace=\"hsl\" {...tokens.aurora} transform={{ rotation: tokens.rotation }} /> : null}\n </shaders.Shader> : null}\n </div>;\n}\n","import { forwardRef, useEffect, useRef, useState, type CSSProperties, type FormHTMLAttributes, type HTMLAttributes, type MouseEventHandler, type ReactNode } from 'react';\nimport { MoreHorizontal, Bookmark, LocateFixed } from 'lucide-react';\nimport { Button, SectionTitle, ToggleButton } from './controls';\nimport { Panel, type PanelProps } from './collection';\nimport { Badge, Menu, Notice, type MenuItem } from './overlays';\nimport { cx } from './internal';\nimport { SurfaceEffect } from './surface-effect';\nimport { SortableCollectionItem } from './sortable-collection';\n\nexport interface StackProps extends HTMLAttributes<HTMLDivElement> {\n direction?: 'vertical' | 'horizontal';\n gap?: number;\n wrap?: boolean;\n}\n/** Layout only: children keep their own semantics and keyboard order. */\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack({ direction = 'vertical', gap, wrap, className, style, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-stack', className)} data-direction={direction} style={{ flexDirection: direction === 'vertical' ? 'column' : 'row', gap: gap ?? 'var(--monkeys-ui-layout-stack-gap,var(--monkeys-ui-default-layout-stack-gap))', flexWrap: wrap ? 'wrap' : undefined, ...style }} />;\n});\n\nexport interface BreadcrumbItem {\n id: string;\n label: ReactNode;\n href?: string;\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLElement> { items: BreadcrumbItem[] }\nexport function Breadcrumbs({ items, className, 'aria-label': label = '面包屑', ...props }: BreadcrumbsProps) {\n return <nav {...props} aria-label={label} className={cx('monkeys-ui-breadcrumb-trail', className)}><ol>{items.map((item, index) => {\n const current = index === items.length - 1;\n return <li key={item.id}>{index > 0 ? <span aria-hidden=\"true\" className=\"monkeys-ui-breadcrumb-separator\">></span> : null}{current ? <span aria-current=\"page\">{item.label}</span> : item.href ? <a href={item.href}>{item.label}</a> : item.onClick ? <button type=\"button\" onClick={item.onClick}>{item.label}</button> : <span>{item.label}</span>}</li>;\n })}</ol></nav>;\n}\n\nexport interface BrandMarkProps extends HTMLAttributes<HTMLSpanElement> {\n label: string;\n image?: string;\n variant?: 'inline' | 'overlay';\n}\nexport function BrandMark({ label, image, variant = 'inline', className, ...props }: BrandMarkProps) {\n const [failedSource, setFailedSource] = useState<string>();\n return <span {...props} role=\"img\" aria-label={label} className={cx('monkeys-ui-brand-mark', className)} data-variant={variant}>{image && image !== failedSource ? <img src={image} alt=\"\" onError={() => setFailedSource(image)} /> : label}</span>;\n}\n\nexport interface BrandBannerProps extends PanelProps { description?: ReactNode; search?: ReactNode; caption?: ReactNode }\nexport function BrandBanner({ description, search, caption, children, className, ...props }: BrandBannerProps) {\n return <Panel {...props} className={cx('monkeys-ui-brand-banner', className)}><SurfaceEffect variant=\"banner\" />{description ? <p className=\"monkeys-ui-description\">{description}</p> : null}{search}{caption ? <div className=\"monkeys-ui-brand-caption\">{caption}</div> : null}{children}</Panel>;\n}\n\nexport interface CardGridItemProps extends HTMLAttributes<HTMLDivElement> { sortableId?: string }\nexport const CardGridItem = forwardRef<HTMLDivElement, CardGridItemProps>(function CardGridItem({ className, sortableId, ...props }, ref) {\n if (sortableId) return <SortableCollectionItem {...props} itemId={sortableId} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n return <div {...props} ref={ref} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n});\n\nexport interface CardActionsProps {\n label: string;\n monitored?: boolean;\n monitorPending?: boolean;\n onMonitoredChange?: (value: boolean) => void;\n favorite?: boolean;\n favoritePending?: boolean;\n onFavoriteChange?: (value: boolean) => void;\n menuItems?: MenuItem[];\n menuLabel?: string;\n onMenuCloseAutoFocus?: (event: Event) => void;\n}\n/** Host owns requests, optimistic rollback and the focus target after deletion. */\nexport function CardActions({ label, monitored, monitorPending, onMonitoredChange, favorite, favoritePending, onFavoriteChange, menuItems = [], menuLabel, onMenuCloseAutoFocus }: CardActionsProps) {\n return <>{onMonitoredChange ? <ToggleButton shape=\"icon\" aria-label={'监测 ' + label} data-monitored={monitored || undefined} size=\"sm\" variant=\"ghost\" checked={monitored ?? false} loading={monitorPending} onCheckedChange={onMonitoredChange}><LocateFixed size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={monitored ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{onFavoriteChange ? <ToggleButton shape=\"icon\" aria-label={'收藏 ' + label} size=\"sm\" variant=\"ghost\" checked={favorite ?? false} loading={favoritePending} onCheckedChange={onFavoriteChange}><Bookmark size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={favorite ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{menuItems.length ? <Menu label={menuLabel ?? label + ' 操作'} trigger={<Button shape=\"icon\" aria-label={'更多 ' + label}><MoreHorizontal size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button>} onCloseAutoFocus={onMenuCloseAutoFocus} items={menuItems} /> : null}</>;\n}\n\nexport interface FormPanelProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'title'> {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n}\n/** Ref and native form props are forwarded to the form, not the outer Panel. */\nexport const FormPanel = forwardRef<HTMLFormElement, FormPanelProps>(function FormPanel({ title, description, actions, children, className, ...props }, ref) {\n return <Panel className=\"monkeys-ui-form-panel\"><form {...props} ref={ref} className={className}><div className=\"monkeys-ui-form-header\"><div><SectionTitle as=\"h1\" indicator={false}>{title}</SectionTitle>{description ? <p>{description}</p> : null}</div>{actions ? <div className=\"monkeys-ui-form-actions\">{actions}</div> : null}</div><div className=\"monkeys-ui-form-body\">{children}</div></form></Panel>;\n});\n\nexport interface FormGridProps extends HTMLAttributes<HTMLDivElement> { variant?: 'standard' | 'compact' }\nexport function FormGrid({ variant = 'standard', className, children, ...props }: FormGridProps) {\n return <div {...props} className={cx('monkeys-ui-form-grid', className)} data-variant={variant}><div className=\"monkeys-ui-form-grid-content\">{children}</div></div>;\n}\n\nexport interface PreviewPanelProps extends PanelProps {\n state?: 'empty' | 'pending' | 'ready' | 'error';\n pendingLabel?: string;\n emptyMessage?: ReactNode;\n errorMessage?: ReactNode;\n}\n/** Scale the existing card as a whole; never maintain preview-only typography. */\nfunction PreviewMagnifier({ children }: { children: ReactNode }) {\n const frame = useRef<HTMLDivElement>(null);\n const stage = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState({ scale: 1, height: 0 });\n useEffect(() => {\n const host = frame.current!;\n const content = stage.current!;\n const measure = () => {\n const width = content.offsetWidth;\n if (!width || !host.clientWidth) return;\n const scale = host.clientWidth / width;\n const height = content.offsetHeight * scale;\n setSize(previous => previous.scale === scale && previous.height === height ? previous : { scale, height });\n };\n const observer = new ResizeObserver(measure);\n observer.observe(host);\n observer.observe(content);\n measure();\n return () => observer.disconnect();\n }, []);\n return <div ref={frame} className=\"monkeys-ui-preview-magnifier\" style={{ height: size.height, visibility: size.height ? undefined : 'hidden' }}><div ref={stage} className=\"monkeys-ui-preview-magnifier-stage\" style={{ transform: `scale(${size.scale})` }}>{children}</div></div>;\n}\n\n/** Generic preview surface. Supply children and all labels. */\nexport function PreviewPanel({ children, state = 'ready', pendingLabel, emptyMessage, errorMessage, className, ...props }: PreviewPanelProps) {\n return <Panel {...props} className={cx('monkeys-ui-preview-panel', className)}><div className=\"monkeys-ui-preview-panel-card\"><PreviewMagnifier>{children}</PreviewMagnifier>{state === 'pending' && pendingLabel ? <Badge>{pendingLabel}</Badge> : null}{state === 'empty' && emptyMessage ? <span className=\"monkeys-ui-description\">{emptyMessage}</span> : null}{state === 'error' && errorMessage ? <Notice tone=\"danger\">{errorMessage}</Notice> : null}</div></Panel>;\n}\n\nexport interface NoticeRegionProps extends HTMLAttributes<HTMLElement> { position?: 'bottom-end' | 'top-end' }\nexport function NoticeRegion({ position = 'bottom-end', className, 'aria-label': label = '通知', ...props }: NoticeRegionProps) {\n return <aside {...props} aria-label={label} className={cx('monkeys-ui-notice-region', className)} data-position={position} />;\n}\n","import { compileThemeTokens, type ThemeTokens } from '../../theme-system';\nimport { baseThemeTokens, getTenantTheme } from './presets';\nimport { uiVariable } from './config';\n\nexport interface UITokenEntry {\n path: string; category: string; component: string; type: string; description: string; reference?: string;\n value: unknown; baseValue: unknown; cssValue: string; variable?: string; overridden: boolean; status: 'canonical' | 'compatibility' | 'unused-in-library';\n}\n\n/** Catalog values are always derived from the actual merged documents. */\nexport function getUITokenCatalog(tenant = 'bsd', override?: ThemeTokens): UITokenEntry[] {\n const document = getTenantTheme(tenant, override);\n const compiled = compileThemeTokens(document, { colorMode: 'dark' });\n const foundation = compileThemeTokens(baseThemeTokens, { colorMode: 'dark' });\n const rows: UITokenEntry[] = [];\n function walk(group: unknown, path: string[] = []) {\n if (!group || typeof group !== 'object' || Array.isArray(group)) return;\n const node = group as Record<string, unknown>;\n if ('$value' in node) {\n const name = path.join('.');\n const reference = typeof node.$value === 'string' && /^\\{.+\\}$/.test(node.$value) ? node.$value.slice(1, -1) : undefined;\n const component = path[0] === 'component' && !['size', 'space', 'duration', 'opacity', 'typography', 'shadowSize', 'layer', 'motion', 'radius'].includes(path[2]) && path.length > 3 ? path[2] : 'Shared';\n const unused = ['seed.ui.color.focus', 'seed.ui.color.previewInfo', 'seed.ui.color.primaryHover', 'semantic.color.brand.accentHover.dark', 'component.ui.primaryHover'].includes(name);\n rows.push({ path: name, category: path[0] + ' / ' + path.slice(1, 3).join('.'), component, type: String(node.$type), description: String(node.$description ?? name), reference,\n value: compiled.values[name], baseValue: foundation.values[name], cssValue: compiled.cssValues[name] ?? '', variable: name.startsWith('component.ui.') ? uiVariable(name) : undefined,\n overridden: JSON.stringify(compiled.values[name]) !== JSON.stringify(foundation.values[name]), status: unused ? 'unused-in-library' : /^component\\.ui\\.(page|surface|elevated|foreground|muted|subtle|primary|primaryHover|violet|focus|danger|dangerBackground|success|control|border|info|previewInfo|blueGlow|violetGlow|transparent|overlay|font|controlHeight|header-background|sidebar-background|sample-ink-light|sample-ink-dark)$/.test(name) ? 'compatibility' : 'canonical' });\n return;\n }\n for (const [key, value] of Object.entries(node)) if (!key.startsWith('$')) walk(value, [...path, key]);\n }\n walk(document);\n return rows.sort((a, b) => a.path.localeCompare(b.path));\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/controls.tsx","../../../src/ui/internal.ts","../../../src/theme-system/theme-tokens.ts","../../../src/theme-system/bento-tokens.ts","../../../src/locale/en-US.ts","../../../src/locale/zh-CN.ts","../../../src/locale/resolve-locale.ts","../../../src/provider/context.ts","../../../src/ui/theme/base.json","../../../src/ui/theme/tenants/bsd.json","../../../src/ui/theme/config.ts","../../../src/ui/theme/presets.ts","../../../src/ui/theme/theme.tsx","../../../src/ui/sample-color.ts","../../../src/ui/motion.ts","../../../src/ui/theme/effect-tokens.ts","../../../src/ui/button-light-edge.tsx","../../../src/ui/scroll-surface.tsx","../../../src/components/runtime/BentoScope.tsx","../../../src/components/runtime/useBentoSurface.ts","../../../src/ui/overlays.tsx","../../../src/ui/panel-surface.ts","../../../src/ui/effects.tsx","../../../src/ui/sortable-collection.tsx","../../../src/ui/collection.tsx","../../../src/ui/upload.tsx","../../../src/ui/surface-effect.tsx","../../../src/ui/patterns.tsx","../../../src/ui/theme/token-catalog.ts"],"names":["cx","__name","values","durationMilliseconds","token","value","unit","useControllable","defaultValue","fallback","onChange","controlled","initial","useRef","warned","local","setLocal","useState","current","next","useFormReset","ref","reset","latest","useEffect","element","form","active","listener","event","CSS_EXTENSION_KEY","isRecord","readCssExtension","extensions","extension","formatNumber","formatDimension","formatDuration","formatColorComponent","hexToSrgb","hex","colorSrgbComponents","component","srgbToHsl","red","green","blue","maximum","minimum","lightness","delta","saturation","hue","formatHslTriplet","formatColor","alpha","components","alphaSuffix","formatFontFamily","families","genericFamilies","family","formatShadow","shadow","formatGradient","stops","stop","gradient","formatTokenValue","styleToken","toCssVariableName","path","prefix","normalized","assertCssVariablePrefix","selectModePath","paths","basePath","colorMode","contextualPath","HSL_SEMANTIC_VARIABLES","THEME_TOKEN_CSS_ALIASES","variableName","getThemeTokenCssValue","compiled","compileThemeTokens","input","options","resolved","resolveThemeTokens","contract","density","variablePrefix","cssValues","cssVariables","canonicalVariableSources","cssValue","existingPath","alias","axis","cssText","left","right","name","BENTO_STYLE_FIELDS","cache","resolveBentoTokens","theme","level","cached","sources","field","namespace","base","result","levels","enUS","page","pageCount","start","end","total","count","columnId","duration","completed","used","percent","code","zhCN","mergeMonkeysLocaleMessages","override","defaultMonkeysLocale","EMPTY_ENVIRONMENT","EMPTY_PORTAL","MONKEYS_PROVIDER_CONTEXTS_KEY","createMonkeysProviderContexts","createContext","getMonkeysProviderContexts","host","existing","contexts","providerContexts","MonkeysLocaleContext","MonkeysThemeContext","MonkeysDirectionContext","MonkeysEnvironmentContext","useMonkeysLocale","useContext","useMonkeysResolvedTheme","useMonkeysDirection","useMonkeysEnvironment","useMonkeysPortalOptions","base_default","bsd_default","isGroup","mergeThemeTokens","merge","a","b","key","uiVariable","baseThemeTokens","uiThemePresets","getTenantTheme","tenant","preset","defaultThemeTokens","defaultResolvedTokens","compileUITheme","tokens","variablesFromTheme","variables","UIThemeContext","PortalDepthContext","useUIDirection","explicit","inherited","environment","documentDirection","setDocumentDirection","root","update","observer","useUILocale","locale","useTooltipScope","inputDocuments","observeInput","document","releaseInput","previous","pointer","keyboard","entry","ThemeProvider","children","className","style","dir","rest","parent","inheritedDirection","tenantId","effectiveDensity","useMemo","foundation","dimensionAlias","densityOverride","direction","context","jsx","ii","useUIResolvedTokens","Portal","depth","setHost","baseLayer","nestingStep","content","createPortal","sampleInk","color","channels","index","useShaderEnabled","enabled","setEnabled","motion","colors","resolveEffectTokens","number","effect","ButtonLightEdge","filterId","useId","hostRef","module","setModule","ready","setReady","shape","setShape","loaded","button","width","height","radiusValue","radius","inset","jsxs","Button","forwardRef","variant","icon","tone","size","loading","lightEdge","toggle","checked","defaultChecked","onCheckedChange","required","type","onClick","onPointerDown","onKeyDown","props","pressed","setPressed","Switch","ToggleButton","ColorSlider","onValueChange","onValueCommit","disabled","readOnly","onPointerMove","onPointerCancel","onPointerUp","onKeyUp","useField","selected","setSelected","useImperativeHandle","option","motionEnabled","interaction","setInteraction","animated","sample","samples","setSamples","layer","position","location","fraction","item","t","background","locked","commit","FieldContext","Field","explicitId","label","labelAccessory","description","descriptionHidden","error","invalid","generated","id","isValidElement","describedBy","fieldLabel","Children","Fieldset","legend","Input","InputTagSelectionControl","InputTagsControl","InputSearchControl","InputNumberControl","nativeProps","mode","inputValue","onInputValueChange","removeLabel","placeholder","onCompositionStart","onCompositionEnd","tags","setTags","draft","setDraft","announcement","setAnnouncement","composing","initialTags","remove","_","tag","InputTag","onRemove","X","items","onAdd","onInvalid","add","group","Plus","Textarea","parseNumberValue","text","NumberInput","setText","SearchField","onSearch","clearLabel","clear","editor","Search","setValue","PickerTrigger","indicator","ChevronDown","Select","MultipleSelect","SingleSelect","_variant","fieldAttributes","ChevronUp","Check","open","defaultOpen","onOpenChange","shown","setShown","trigger","setValidationFailed","generatedId","triggerId","requiredId","validationFailed","selectedLabels","MonthYearPicker","month","defaultMonth","year","defaultYear","minYear","maxYear","onMonthChange","onYearChange","monthLabel","yearLabel","initialYear","selectedMonth","selectedYear","months","years","SegmentedControl","SectionTitle","Element","Tabs","ScrollSurface","onScroll","delay","BentoDepth","useBentoDepth","useBentoSurface","parentDepth","recipe","letter","Tooltip","delayDuration","side","scoped","milliseconds","tooltip","Menu","onCloseAutoFocus","fe","Dialog","frame","scroll","backdrop","surface","title","actions","initialFocusRef","restoreFocusRef","closeLabel","close","bento","Badge","Notice","action","EmptyState","LoadingState","Avatar","src","alt","PanelSurfaceContext","ShaderEffect","onUnavailable","hostProps","unavailable","hostStyle","reason","splitHostProps","shader","native","Aurora","ChromaFlow","LightEdge","BottomGlow","Sorting","canStartCollectionDrag","activeNode","target","_CardMouseSensor","MouseSensor","nativeEvent","_options","CardMouseSensor","_CardTouchSensor","TouchSensor","CardTouchSensor","SortableCollection","reorderItems","reorderAxis","reorderGroupField","reorderDisabled","onReorder","suppressClick","sensors","useSensors","useSensor","KeyboardSensor","sortableKeyboardCoordinates","ids","groups","over","DndContext","args","closestCenter","SortableContext","rectSortingStrategy","horizontalListSortingStrategy","verticalListSortingStrategy","SortableCollectionItem","itemId","ActiveItem","setNodeRef","attributes","listeners","transform","transition","isDragging","useSortable","CSS","Panel","classNames","PageShell","header","AppHeader","logo","navigation","account","SplitLayout","primary","sidebar","ratio","primaryAspectRatio","minPrimarySize","maxPrimarySize","gap","sidebarWidth","share","useAspectRatio","dimension","CollectionToolbar","search","filters","CollectionSection","lead","CardGrid","view","minCardWidth","columnGap","Card","chrome","breadcrumbSurface","onSelectedChange","headingLevel","image","imageAlt","imagePosition","imageStyle","media","mediaOverlay","emptyMedia","href","onOpen","meta","stats","dragHandle","navigationLabel","footer","failedSource","setFailedSource","detail","hasDescription","hasEntry","descriptionId","Heading","tooltipTitle","headingContent","heading","mediaContent","ImageOff","statistics","StatGroup","body","sortable","dragId","sortableState","setCardRef","node","cardStyle","dragListeners","dragAttributes","GripVertical","CardDragProvider","onMove","PointerSensor","rectSwappingStrategy","columns","defaultAccept","identity","file","validateImageFiles","files","accept","maxFileBytes","existingFiles","seen","accepted","rejected","UploadedImageItem","onRetry","onSelectCover","cover","Fragment","ImageUploadField","onFilesSelected","onRejected","coverId","onDrop","onPaste","onDragOver","receive","SurfaceEffect","shaders","setShaders","rendererState","setRendererState","move","bounds","leave","Stack","wrap","Breadcrumbs","BrandMark","BrandBanner","caption","CardGridItem","sortableId","CardActions","monitored","monitorPending","onMonitoredChange","favorite","favoritePending","onFavoriteChange","menuItems","menuLabel","onMenuCloseAutoFocus","LocateFixed","Bookmark","MoreHorizontal","FormPanel","FormGrid","PreviewMagnifier","stage","setSize","measure","scale","PreviewPanel","state","pendingLabel","emptyMessage","errorMessage","NoticeRegion","getUITokenCatalog","rows","walk","reference","unused"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAA,EAAA,CAAA,MAAA,CAAA,cAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,YAAA,CAAA,IAAA,CAAA,CAAA,CCCO,IAAMA,CAAAA,CAAKC,CAAAA,CAAA,IAAIC,CAAAA,GAA8CA,CAAAA,CAAO,OAAO,OAAO,CAAA,CAAE,IAAA,CAAK,GAAG,EAAjF,IAAA,CAAA,CAEX,SAASC,GAAqBC,CAAAA,CAAgB,CACnD,GAAM,CAAE,KAAA,CAAAC,CAAAA,CAAO,IAAA,CAAAC,CAAK,CAAA,CAAIF,CAAAA,CACxB,OAAOE,CAAAA,GAAS,GAAA,CAAMD,EAAQ,GAAA,CAAOA,CACvC,CAHgBJ,CAAAA,CAAAE,EAAAA,CAAA,wBAIT,SAASI,CAAAA,CAAmBF,EAAsBG,CAAAA,CAA6BC,CAAAA,CAAaC,EAA+B,CAChI,IAAMC,CAAAA,CAAaN,CAAAA,GAAU,OACvBO,CAAAA,CAAUC,MAAAA,CAAOF,CAAU,CAAA,CAC3BG,CAAAA,CAASD,OAAO,KAAK,CAAA,CACvB,OAAA,CAAQ,GAAA,CAAI,WAAa,YAAA,EAAgB,CAACC,EAAO,OAAA,GAAaT,CAAAA,GAAU,QAAaG,CAAAA,GAAiB,MAAA,EAAcI,CAAAA,CAAQ,OAAA,GAAYD,KAC1I,OAAA,CAAQ,KAAA,CAAM,wHAAwH,CAAA,CACtIG,CAAAA,CAAO,QAAU,IAAA,CAAA,CAEnB,GAAM,CAACC,CAAAA,CAAOC,CAAQ,EAAIC,QAAAA,CAAST,CAAAA,EAAgBC,CAAQ,CAAA,CACrDS,CAAAA,CAAUP,EAAaN,CAAAA,CAAQU,CAAAA,CAErC,OAAO,CAACG,EADOjB,CAAAA,CAACkB,CAAAA,EAAY,CAAOR,CAAAA,EAAYK,CAAAA,CAASG,CAAI,CAAA,CAAOA,CAAAA,GAASD,CAAAA,EAASR,CAAAA,GAAWS,CAAI,EAAG,CAAA,CAAxF,SACQ,CACzB,CAZgBlB,EAAAM,CAAAA,CAAA,iBAAA,CAAA,CAeT,SAASa,EAAAA,CAAoCC,EAAmBC,CAAAA,CAAmB,CACxF,IAAMC,CAAAA,CAASV,MAAAA,CAAOS,CAAK,CAAA,CAC3BC,CAAAA,CAAO,QAAUD,CAAAA,CACjBE,SAAAA,CAAU,IAAM,CACd,IAAMC,EAAUJ,CAAAA,CAAI,OAAA,CACdK,EAAOD,CAAAA,GAAY,MAAA,GAAUA,CAAAA,CAAWA,CAAAA,CAAwD,KAAOA,CAAAA,CAAQ,OAAA,CAAQ,MAAM,CAAA,CAAA,CACnI,GAAI,CAACC,CAAAA,CAAM,OACX,IAAIC,CAAAA,CAAS,KACPC,CAAAA,CAAW3B,CAAAA,CAAC4B,GAAiB,cAAA,CAAe,IAAM,CAAMF,CAAAA,EAAU,CAACE,CAAAA,CAAM,gBAAA,EAAkBN,EAAO,OAAA,GAAW,CAAC,CAAA,CAAnG,UAAA,CAAA,CACjB,OAAAG,CAAAA,CAAK,gBAAA,CAAiB,OAAA,CAASE,CAAQ,EAChC,IAAM,CAAED,EAAS,KAAA,CAAOD,CAAAA,CAAK,oBAAoB,OAAA,CAASE,CAAQ,EAAG,CAC9E,CAAC,EACH,CAZgB3B,EAAAmB,EAAAA,CAAA,cAAA,CAAA,CCiChB,IAAMU,EAAAA,CAAoB,qBAG1B,SAASC,EAAAA,CAAS1B,EAAkD,CAClE,OAAOA,IAAU,IAAA,EAAQ,OAAOA,GAAU,QAAA,EAAY,CAAC,MAAM,OAAA,CAAQA,CAAK,CAC5E,CAFSJ,EAAA8B,EAAAA,CAAA,UAAA,CAAA,CAIT,SAASC,EAAAA,CAAiBC,CAAAA,CAA6D,CACrF,IAAMC,CAAAA,CAAYD,CAAAA,GAAaH,EAAiB,EAChD,OAAOC,EAAAA,CAASG,CAAS,CAAA,CAAIA,CAAAA,CAA4B,MAC3D,CAHSjC,CAAAA,CAAA+B,EAAAA,CAAA,kBAAA,CAAA,CAKT,SAASG,CAAAA,CAAa9B,CAAAA,CAAuB,CAC3C,OAAO,MAAA,CAAO,UAAUA,CAAK,CAAA,CAAI,OAAOA,CAAK,CAAA,CAAI,OAAO,MAAA,CAAOA,CAAAA,CAAM,QAAQ,CAAC,CAAC,CAAC,CAClF,CAFSJ,CAAAA,CAAAkC,CAAAA,CAAA,gBAIT,SAASC,EAAAA,CAAgB/B,EAAoC,CAC3D,OAAO,GAAG8B,CAAAA,CAAa9B,CAAAA,CAAM,KAAK,CAAC,GAAGA,CAAAA,CAAM,IAAI,EAClD,CAFSJ,CAAAA,CAAAmC,GAAA,iBAAA,CAAA,CAIT,SAASC,EAAAA,CAAehC,CAAAA,CAAmC,CACzD,OAAO,CAAA,EAAG8B,EAAa9B,CAAAA,CAAM,KAAK,CAAC,CAAA,EAAGA,CAAAA,CAAM,IAAI,CAAA,CAClD,CAFSJ,EAAAoC,EAAAA,CAAA,gBAAA,CAAA,CAIT,SAASC,EAAAA,CAAqBjC,CAAAA,CAAgC,CAC5D,OAAOA,CAAAA,GAAU,MAAA,CAASA,CAAAA,CAAQ8B,EAAa9B,CAAK,CACtD,CAFSJ,CAAAA,CAAAqC,EAAAA,CAAA,wBAIT,SAASC,EAAAA,CAAUC,CAAAA,CAAuC,CACxD,OAAO,CACL,MAAA,CAAO,SAASA,CAAAA,CAAI,KAAA,CAAM,EAAG,CAAC,CAAA,CAAG,EAAE,CAAA,CAAI,IACvC,MAAA,CAAO,QAAA,CAASA,EAAI,KAAA,CAAM,CAAA,CAAG,CAAC,CAAA,CAAG,EAAE,CAAA,CAAI,GAAA,CACvC,OAAO,QAAA,CAASA,CAAAA,CAAI,MAAM,CAAA,CAAG,CAAC,EAAG,EAAE,CAAA,CAAI,GACzC,CACF,CANSvC,CAAAA,CAAAsC,EAAAA,CAAA,aAQT,SAASE,EAAAA,CAAoBpC,EAAkD,CAC7E,GAAIA,CAAAA,CAAM,UAAA,GAAe,QAAUA,CAAAA,CAAM,UAAA,CAAW,MAAOqC,CAAAA,EAAc,OAAOA,GAAc,QAAQ,CAAA,CACpG,OAAOrC,CAAAA,CAAM,WAEf,GAAIA,CAAAA,CAAM,IAAK,OAAOkC,EAAAA,CAAUlC,EAAM,GAAG,CAAA,CACzC,MAAM,IAAI,SAAA,CACR,0BAA0BA,CAAAA,CAAM,UAAU,oEAC5C,CACF,CARSJ,EAAAwC,EAAAA,CAAA,qBAAA,CAAA,CAUT,SAASE,EAAAA,CAAU,CAACC,CAAAA,CAAKC,CAAAA,CAAOC,CAAI,CAAA,CAAuD,CACzF,IAAMC,CAAAA,CAAU,IAAA,CAAK,GAAA,CAAIH,CAAAA,CAAKC,EAAOC,CAAI,CAAA,CACnCE,EAAU,IAAA,CAAK,GAAA,CAAIJ,EAAKC,CAAAA,CAAOC,CAAI,CAAA,CACnCG,CAAAA,CAAAA,CAAaF,EAAUC,CAAAA,EAAW,CAAA,CACxC,GAAID,CAAAA,GAAYC,CAAAA,CAAS,OAAO,CAAC,CAAA,CAAG,EAAGC,CAAAA,CAAY,GAAG,EACtD,IAAMC,CAAAA,CAAQH,EAAUC,CAAAA,CAClBG,CAAAA,CAAaF,EAAY,EAAA,CAC3BC,CAAAA,EAAS,CAAA,CAAIH,CAAAA,CAAUC,GACvBE,CAAAA,EAASH,CAAAA,CAAUC,GACnBI,CAAAA,CACJ,OAAIL,IAAYH,CAAAA,CAAKQ,CAAAA,CAAAA,CAAOP,CAAAA,CAAQC,CAAAA,EAAQI,GAASL,CAAAA,CAAQC,CAAAA,CAAO,EAAI,CAAA,CAAA,CAC/DC,CAAAA,GAAYF,EAAOO,CAAAA,CAAAA,CAAON,CAAAA,CAAOF,CAAAA,EAAOM,CAAAA,CAAQ,EACpDE,CAAAA,CAAAA,CAAOR,CAAAA,CAAMC,GAASK,CAAAA,CAAQ,CAAA,CAC5B,CAAEE,CAAAA,CAAM,CAAA,CAAK,IAAKD,CAAAA,CAAa,GAAA,CAAKF,EAAY,GAAG,CAC5D,CAdShD,CAAAA,CAAA0C,EAAAA,CAAA,aAgBT,SAASU,EAAAA,CAAiBhD,CAAAA,CAAgC,CACxD,GAAIA,CAAAA,CAAM,UAAA,GAAe,OAASA,CAAAA,CAAM,UAAA,CAAW,MAAOqC,CAAAA,EAAc,OAAOA,CAAAA,EAAc,QAAQ,EAAG,CACtG,GAAM,CAACU,CAAAA,CAAKD,CAAAA,CAAYF,CAAS,CAAA,CAAI5C,CAAAA,CAAM,UAAA,CAC3C,OAAO,GAAG8B,CAAAA,CAAaiB,CAAG,CAAC,CAAA,CAAA,EAAIjB,CAAAA,CAAagB,CAAU,CAAC,CAAA,EAAA,EAAKhB,EAAac,CAAS,CAAC,GACrF,CACA,GAAM,CAACG,CAAAA,CAAKD,CAAAA,CAAYF,CAAS,CAAA,CAAIN,EAAAA,CAAUF,EAAAA,CAAoBpC,CAAK,CAAC,CAAA,CACzE,OAAO,GAAG8B,CAAAA,CAAaiB,CAAG,CAAC,CAAA,CAAA,EAAIjB,CAAAA,CAAagB,CAAU,CAAC,KAAKhB,CAAAA,CAAac,CAAS,CAAC,CAAA,CAAA,CACrF,CAPShD,EAAAoD,EAAAA,CAAA,kBAAA,CAAA,CAST,SAASC,EAAAA,CAAYjD,EAAgC,CACnD,IAAMkD,EAAQlD,CAAAA,CAAM,KAAA,EAAS,EAC7B,GAAIA,CAAAA,CAAM,KAAOkD,CAAAA,GAAU,CAAA,CAAG,OAAOlD,CAAAA,CAAM,GAAA,CAC3C,IAAMmD,CAAAA,CAAanD,CAAAA,CAAM,WAAW,GAAA,CAAIiC,EAAoB,CAAA,CAAE,IAAA,CAAK,GAAG,CAAA,CAChEmB,CAAAA,CAAcF,IAAU,CAAA,CAAI,EAAA,CAAK,MAAMpB,CAAAA,CAAaoB,CAAK,CAAC,CAAA,CAAA,CAChE,OAAQlD,CAAAA,CAAM,UAAA,EACZ,KAAK,MAAA,CAEH,OAAO,CAAA,IAAA,EADKA,CAAAA,CAAM,UAAA,CAAW,GAAA,CAAKqC,GAAcA,CAAAA,GAAc,MAAA,CAAS,OAASP,CAAAA,CAAaO,CAAAA,CAAY,GAAG,CAAC,CAAA,CAC3F,KAAK,GAAG,CAAC,GAAGe,CAAW,CAAA,CAAA,CAAA,CAE3C,KAAK,KAAA,CACH,OAAO,OAAOnB,EAAAA,CAAqBjC,CAAAA,CAAM,UAAA,CAAW,CAAC,CAAC,CAAC,CAAA,CAAA,EAAIiC,GAAqBjC,CAAAA,CAAM,UAAA,CAAW,CAAC,CAAC,CAAC,CAAA,EAAA,EAAKiC,EAAAA,CAAqBjC,EAAM,UAAA,CAAW,CAAC,CAAC,CAAC,CAAA,CAAA,EAAIoD,CAAW,CAAA,CAAA,CAAA,CACnK,KAAK,KAAA,CACH,OAAO,OAAOnB,EAAAA,CAAqBjC,CAAAA,CAAM,WAAW,CAAC,CAAC,CAAC,CAAA,CAAA,EAAIiC,EAAAA,CAAqBjC,EAAM,UAAA,CAAW,CAAC,CAAC,CAAC,CAAA,EAAA,EAAKiC,GAAqBjC,CAAAA,CAAM,UAAA,CAAW,CAAC,CAAC,CAAC,CAAA,CAAA,EAAIoD,CAAW,IACnK,KAAK,KAAA,CACL,KAAK,KAAA,CACL,KAAK,QACL,KAAK,OAAA,CACH,OAAO,CAAA,EAAGpD,EAAM,UAAU,CAAA,CAAA,EAAImD,CAAU,CAAA,EAAGC,CAAW,IACxD,QACE,OAAO,CAAA,MAAA,EAASpD,CAAAA,CAAM,UAAU,CAAA,CAAA,EAAImD,CAAU,GAAGC,CAAW,CAAA,CAAA,CAChE,CACF,CAtBSxD,CAAAA,CAAAqD,EAAAA,CAAA,aAAA,CAAA,CAwBT,SAASI,EAAAA,CAAiBrD,CAAAA,CAAkC,CAC1D,IAAMsD,CAAAA,CAAW,MAAM,OAAA,CAAQtD,CAAK,CAAA,CAAIA,CAAAA,CAAQ,CAACA,CAAK,CAAA,CAChDuD,EAAkB,IAAI,GAAA,CAAI,CAC9B,OAAA,CAAS,YAAA,CAAc,WAAA,CAAa,SAAA,CAAW,UAAW,WAAA,CAC1D,UAAA,CAAY,gBAAiB,cAAA,CAAgB,YAAA,CAAc,OAAQ,OAAA,CAAS,UAC9E,CAAC,CAAA,CACD,OAAOD,CAAAA,CAAS,GAAA,CAAKE,GACfD,CAAAA,CAAgB,GAAA,CAAIC,CAAM,CAAA,EAAK,kBAAA,CAAmB,KAAKA,CAAM,CAAA,CAAUA,EACpE,CAAA,CAAA,EAAIA,CAAAA,CAAO,QAAQ,KAAA,CAAO,MAAM,EAAE,OAAA,CAAQ,IAAA,CAAM,KAAK,CAAC,GAC9D,CAAA,CAAE,IAAA,CAAK,IAAI,CACd,CAVS5D,EAAAyD,EAAAA,CAAA,kBAAA,CAAA,CAYT,SAASI,EAAAA,CAAazD,EAAwB,CAE5C,OAAA,CADgB,MAAM,OAAA,CAAQA,CAAK,EAAIA,CAAAA,CAAQ,CAACA,CAAK,CAAA,EACtC,IAAK0D,CAAAA,EAAW,CAC7B,GAAI,CAAChC,EAAAA,CAASgC,CAAM,CAAA,CAAG,MAAM,IAAI,SAAA,CAAU,qCAAqC,EAChF,OAAO,CACL3B,GAAgB2B,CAAAA,CAAO,OAA8B,EACrD3B,EAAAA,CAAgB2B,CAAAA,CAAO,OAA8B,CAAA,CACrD3B,GAAgB2B,CAAAA,CAAO,IAA2B,EAClD3B,EAAAA,CAAgB2B,CAAAA,CAAO,MAA6B,CAAA,CACpDT,EAAAA,CAAYS,CAAAA,CAAO,KAAwB,EAC3CA,CAAAA,CAAO,KAAA,GAAU,KAAO,OAAA,CAAU,EACpC,EAAE,MAAA,CAAO,OAAO,CAAA,CAAE,IAAA,CAAK,GAAG,CAC5B,CAAC,EAAE,IAAA,CAAK,IAAI,CACd,CAbS9D,CAAAA,CAAA6D,GAAA,cAAA,CAAA,CAeT,SAASE,GAAe3D,CAAAA,CAAgB4B,CAAAA,CAA2C,CACjF,GAAI,CAAC,MAAM,OAAA,CAAQ5B,CAAK,CAAA,CAAG,MAAM,IAAI,SAAA,CAAU,sCAAsC,EACrF,IAAM4D,CAAAA,CAAQ5D,EAAM,GAAA,CAAK6D,CAAAA,EAAS,CAChC,GAAI,CAACnC,EAAAA,CAASmC,CAAI,EAAG,MAAM,IAAI,UAAU,sCAAsC,CAAA,CAC/E,OAAO,CAAA,EAAGZ,GAAYY,CAAAA,CAAK,KAAwB,CAAC,CAAA,CAAA,EAAI/B,CAAAA,CAAa,OAAO+B,CAAAA,CAAK,QAAQ,EAAI,GAAG,CAAC,GACnG,CAAC,CAAA,CAAE,KAAK,IAAI,CAAA,CACNC,EAAWnC,EAAAA,CAAiBC,CAAU,CAAA,EAAG,QAAA,CAC/C,OAAIkC,CAAAA,EAAU,IAAA,GAAS,SAAiB,CAAA,gBAAA,EAAmBF,CAAK,IACzD,CAAA,gBAAA,EAAmB9B,CAAAA,CAAagC,CAAAA,EAAU,KAAA,EAAS,EAAE,CAAC,CAAA,KAAA,EAAQF,CAAK,CAAA,CAAA,CAC5E,CATShE,EAAA+D,EAAAA,CAAA,gBAAA,CAAA,CAWT,SAASI,EAAAA,CAAiBhE,EAAmC,CAC3D,OAAQA,EAAM,IAAA,EACZ,KAAK,OAAA,CACH,OAAOkD,GAAYlD,CAAAA,CAAM,KAAwB,EACnD,KAAK,WAAA,CACH,OAAOgC,EAAAA,CAAgBhC,CAAAA,CAAM,KAA4B,CAAA,CAC3D,KAAK,YAAA,CACH,OAAOsD,GAAiBtD,CAAAA,CAAM,KAA0B,EAC1D,KAAK,YAAA,CACL,KAAK,QAAA,CACH,OAAO,MAAA,CAAOA,CAAAA,CAAM,KAAK,CAAA,CAC3B,KAAK,WACH,OAAOiC,EAAAA,CAAejC,EAAM,KAA2B,CAAA,CACzD,KAAK,aAAA,CACH,OAAO,CAAA,aAAA,EAAiBA,CAAAA,CAAM,MAAmB,GAAA,CAAI+B,CAAY,EAAE,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA,CAAA,CAC/E,KAAK,cACH,OAAI,OAAO/B,EAAM,KAAA,EAAU,QAAA,CAAiBA,EAAM,KAAA,CACpCA,CAAAA,CAAM,KAAA,CACP,SAAA,CAAU,IAAIgC,EAAe,CAAA,CAAE,KAAK,GAAG,CAAA,CAEtD,KAAK,QAAA,CAAU,CACb,IAAM/B,CAAAA,CAAQD,EAAM,KAAA,CACdiE,CAAAA,CAAiC,CAAE,GAAGjE,CAAAA,CAAO,KAAM,aAAA,CAAe,KAAA,CAAOC,CAAAA,CAAM,KAAM,EAC3F,OAAO,CAAA,EAAG+B,GAAgB/B,CAAAA,CAAM,KAAK,CAAC,CAAA,CAAA,EAAI+D,EAAAA,CAAiBC,CAAU,CAAC,CAAA,CAAA,EAAIf,GAAYjD,CAAAA,CAAM,KAAK,CAAC,CAAA,CACpG,CACA,KAAK,YAAA,CAAc,CACjB,IAAMA,CAAAA,CAAQD,EAAM,KAAA,CACpB,OAAO,GAAGiC,EAAAA,CAAehC,CAAAA,CAAM,QAAQ,CAAC,CAAA,cAAA,EAAiBA,CAAAA,CAAM,cAAA,CAAe,IAAI8B,CAAY,CAAA,CAAE,KAAK,IAAI,CAAC,KAAKE,EAAAA,CAAehC,CAAAA,CAAM,KAAK,CAAC,EAC5I,CACA,KAAK,SACH,OAAOyD,EAAAA,CAAa1D,EAAM,KAAK,CAAA,CACjC,KAAK,UAAA,CACH,OAAO4D,EAAAA,CAAe5D,CAAAA,CAAM,MAAOA,CAAAA,CAAM,UAAU,EACrD,KAAK,YAAA,CAAc,CACjB,IAAMC,EAAQD,CAAAA,CAAM,KAAA,CAMpB,OAAO,CAAA,EAAGC,CAAAA,CAAM,UAAU,CAAA,CAAA,EAAI+B,EAAAA,CAAgB/B,CAAAA,CAAM,QAAQ,CAAC,CAAA,CAAA,EAAI8B,CAAAA,CAAa9B,EAAM,UAAU,CAAC,IAAIqD,EAAAA,CAAiBrD,CAAAA,CAAM,UAAU,CAAC,EACvI,CACF,CACF,CA3CSJ,CAAAA,CAAAmE,EAAAA,CAAA,oBA6CT,SAASE,EAAAA,CAAkBC,EAAcC,CAAAA,CAAwB,CAC/D,IAAMC,CAAAA,CAAaF,CAAAA,CAChB,QAAQ,oBAAA,CAAsB,OAAO,EACrC,OAAA,CAAQ,gBAAA,CAAkB,GAAG,CAAA,CAC7B,QAAQ,UAAA,CAAY,EAAE,EACtB,WAAA,EAAY,CACf,OAAO,CAAA,EAAA,EAAKC,CAAM,CAAA,CAAA,EAAIC,CAAU,EAClC,CAPSxE,CAAAA,CAAAqE,GAAA,mBAAA,CAAA,CAST,SAASI,GAAwBF,CAAAA,CAAsB,CACrD,GAAI,CAAC,0BAA0B,IAAA,CAAKA,CAAM,EACxC,MAAM,IAAI,UACR,oGACF,CAEJ,CANSvE,CAAAA,CAAAyE,EAAAA,CAAA,2BAQT,SAASC,EAAAA,CACPC,EACAC,CAAAA,CACAC,CAAAA,CACoB,CACpB,IAAMC,CAAAA,CAAiB,CAAA,EAAGF,CAAQ,IAAIC,CAAS,CAAA,CAAA,CAC/C,OAAIF,CAAAA,CAAM,GAAA,CAAIG,CAAc,CAAA,CAAUA,CAAAA,CAC/BH,CAAAA,CAAM,GAAA,CAAIC,CAAQ,CAAA,CAAIA,CAAAA,CAAW,MAC1C,CARS5E,CAAAA,CAAA0E,GAAA,gBAAA,CAAA,CAUT,IAAMK,EAAAA,CAA2D,CAC/D,4BAA6B,cAAA,CAC7B,2BAAA,CAA6B,eAC7B,qBAAA,CAAuB,QAAA,CACvB,iCAAkC,mBAAA,CAClC,wBAAA,CAA0B,YAC1B,mCAAA,CAAqC,sBAAA,CACrC,yBAA0B,WAAA,CAC1B,mCAAA,CAAqC,uBACrC,0BAAA,CAA4B,aAAA,CAC5B,sCAAuC,wBAAA,CACvC,sBAAA,CAAwB,SAAA,CACxB,iCAAA,CAAmC,qBACnC,uBAAA,CAAyB,UAAA,CACzB,mCAAoC,qBAAA,CACpC,4BAAA,CAA8B,gBAC9B,uCAAA,CAAyC,0BAAA,CACzC,wBAAA,CAA0B,WAAA,CAC1B,oCAAqC,sBAAA,CACrC,wBAAA,CAA0B,YAC1B,mCAAA,CAAqC,sBAAA,CACrC,wBAAyB,UAAA,CACzB,sBAAA,CAAwB,SAAA,CACxB,qBAAA,CAAuB,SACvB,8BAAA,CAAgC,iBAAA,CAChC,kCAAmC,oBAAA,CACnC,8BAAA,CAAgC,kBAChC,6BAAA,CAA+B,gBAAA,CAC/B,6BAA8B,eAAA,CAC9B,6BAAA,CAA+B,iBAC/B,mCAAA,CAAqC,sBAAA,CACrC,4BAA6B,cAAA,CAC7B,2BAAA,CAA6B,eAC7B,iCAAA,CAAmC,oBAAA,CACnC,iCAAA,CAAmC,oBAAA,CACnC,oCAAqC,sBAAA,CACrC,kCAAA,CAAoC,qBACtC,CAAA,CAEMC,EAAAA,CAAwE,OAAO,MAAA,CAAO,CAC1F,GAAG,MAAA,CAAO,YACR,MAAA,CAAO,OAAA,CAAQD,EAAsB,CAAA,CAAE,GAAA,CAAI,CAAC,CAACT,CAAAA,CAAMW,CAAY,CAAA,GAAM,CAACX,CAAAA,CAAM,CAC1E,aAAAW,CAAAA,CACA,IAAA,CAAM,YACN,YAAA,CAAc,OAAA,CACd,OAAQ,KACV,CAAC,CAAC,CACJ,CAAA,CACA,yBAA0B,CACxB,YAAA,CAAc,YACd,IAAA,CAAM,WAAA,CACN,YAAA,CAAc,OAAA,CACd,OAAQ,KACV,CAAA,CACA,uBAAwB,CACtB,YAAA,CAAc,WACd,IAAA,CAAM,WAAA,CACN,YAAA,CAAc,WAAA,CACd,OAAQ,KACV,CAAA,CACA,0BAA2B,CACzB,YAAA,CAAc,mBACd,IAAA,CAAM,SAAA,CACN,YAAA,CAAc,WAAA,CACd,OAAQ,KACV,CAAA,CACA,0BAA2B,CACzB,YAAA,CAAc,qBACd,IAAA,CAAM,WAAA,CACN,aAAc,UAAA,CACd,MAAA,CAAQ,KACV,CAAA,CACA,oBAAA,CAAsB,CACpB,YAAA,CAAc,aAAA,CACd,KAAM,WAAA,CACN,YAAA,CAAc,YAAA,CACd,MAAA,CAAQ,KACV,CACF,CAAC,EAYM,SAASC,EAAAA,CACdC,EACAP,CAAAA,CACoB,CACpB,IAAMN,CAAAA,CAAOI,GAAe,IAAI,GAAA,CAAI,OAAO,IAAA,CAAKS,CAAAA,CAAS,SAAS,CAAC,CAAA,CAAGP,CAAAA,CAAUO,CAAAA,CAAS,SAAS,CAAA,CAClG,OAAOb,EAAOa,CAAAA,CAAS,SAAA,CAAUb,CAAI,CAAA,CAAI,MAC3C,CANgBtE,CAAAA,CAAAkF,EAAAA,CAAA,yBAQT,SAASE,EAAAA,CACdC,EACAC,CAAAA,CAAqC,GAChB,CACrB,IAAMC,CAAAA,CAAWC,kBAAAA,CAAmBH,CAAK,CAAA,CACnCI,CAAAA,CAAWF,EAAS,QAAA,CACpBV,CAAAA,CAAYS,EAAQ,SAAA,EAAa,OAAA,CACjCI,CAAAA,CAAUJ,CAAAA,CAAQ,SAAW,SAAA,CAC7BK,CAAAA,CAAiBL,EAAQ,cAAA,EAAkB,SAAA,CACjDb,GAAwBkB,CAAc,CAAA,CACtC,IAAM1F,CAAAA,CAAkC,EAAC,CACnC2F,CAAAA,CAAoC,EAAC,CACrCC,CAAAA,CAAuC,EAAC,CACxCC,CAAAA,CAA2B,IAAI,GAAA,CAErC,OAAW,CAACxB,CAAAA,CAAMnE,CAAK,CAAA,GAAKoF,CAAAA,CAAS,OAAQ,CAC3CtF,CAAAA,CAAOqE,CAAI,CAAA,CAAInE,EAAM,KAAA,CACrB,IAAM4F,EAAW5B,EAAAA,CAAiBhE,CAAK,EACvCyF,CAAAA,CAAUtB,CAAI,CAAA,CAAIyB,CAAAA,CAClB,IAAMd,CAAAA,CAAeZ,EAAAA,CAAkBC,EAAMqB,CAAc,CAAA,CACrDK,EAAeF,CAAAA,CAAyB,GAAA,CAAIb,CAAY,CAAA,CAC9D,GAAIe,CAAAA,CACF,MAAM,IAAI,SAAA,CACR,CAAA,kBAAA,EAAqBA,CAAY,CAAA,KAAA,EAAQ1B,CAAI,oBAAoBW,CAAY,CAAA,mBAAA,CAC/E,EAEFa,CAAAA,CAAyB,GAAA,CAAIb,EAAcX,CAAI,CAAA,CAC/CuB,EAAaZ,CAAY,CAAA,CAAIc,EAC/B,CAEA,IAAMpB,CAAAA,CAAQ,IAAI,IAAIY,CAAAA,CAAS,MAAA,CAAO,MAAM,CAAA,CAC5C,IAAA,GAAW,CAACX,EAAUqB,CAAK,CAAA,GAAK,OAAO,OAAA,CAAQjB,EAAuB,EAAG,CACvE,IAAMkB,CAAAA,CAAOD,CAAAA,CAAM,OAAS,SAAA,CAAYP,CAAAA,CAAUb,EAC5CP,CAAAA,CAAOI,EAAAA,CAAeC,EAAOC,CAAAA,CAAUsB,CAAI,EACjD,GAAI,CAAC5B,EAAM,SACX,IAAMnE,EAAQoF,CAAAA,CAAS,MAAA,CAAO,IAAIjB,CAAI,CAAA,CACtC,GAAI,CAACnE,GAASA,CAAAA,CAAM,IAAA,GAAS8F,EAAM,YAAA,CACjC,MAAM,IAAI,SAAA,CAAU,CAAA,EAAG3B,CAAI,CAAA,WAAA,EAAc2B,EAAM,YAAY,CAAA,gBAAA,EAAmBA,EAAM,YAAY,CAAA,CAAA,CAAG,EAErGJ,CAAAA,CAAaI,CAAAA,CAAM,YAAY,CAAA,CAAIA,EAAM,MAAA,GAAW,KAAA,CAChD7C,GAAiBjD,CAAAA,CAAM,KAAwB,EAC/CyF,CAAAA,CAAUtB,CAAI,EACpB,CAEA,IAAM6B,EAAU,MAAA,CAAO,OAAA,CAAQN,CAAY,CAAA,CACxC,IAAA,CAAK,CAAC,CAACO,CAAI,CAAA,CAAG,CAACC,CAAK,CAAA,GAAMD,CAAAA,CAAK,cAAcC,CAAK,CAAC,EACnD,GAAA,CAAI,CAAC,CAACC,CAAAA,CAAMlG,CAAK,CAAA,GAAM,CAAA,EAAGkG,CAAI,CAAA,CAAA,EAAIlG,CAAK,GAAG,CAAA,CAC1C,IAAA,CAAK,EAAE,CAAA,CAEV,OAAO,CACL,QAAA,CAAAqF,EACA,SAAA,CAAAZ,CAAAA,CACA,QAAAa,CAAAA,CACA,MAAA,CAAQ,OAAO,MAAA,CAAOzF,CAAM,EAC5B,SAAA,CAAW,MAAA,CAAO,OAAO2F,CAAS,CAAA,CAClC,aAAc,MAAA,CAAO,MAAA,CAAOC,CAAY,CAAA,CACxC,QAAAM,CACF,CACF,CA1DgBnG,CAAAA,CAAAoF,EAAAA,CAAA,sBCpWT,IAAMmB,EAAAA,CAAqB,CAChC,YAAA,CACA,YACA,aAAA,CACA,aAAA,CACA,cACA,QAAA,CACA,QAAA,CACA,UACA,KACF,CAAA,CAOM/F,EAAAA,CAA4C,CAChD,WAAY,6BAAA,CACZ,SAAA,CAAW,oCACX,WAAA,CAAa,uCAAA,CACb,YAAa,KAAA,CACb,WAAA,CAAa,QACb,MAAA,CAAQ,wBAAA,CACR,OAAQ,MAAA,CACR,OAAA,CAAS,iCACT,GAAA,CAAK,gCACP,EACMgG,EAAAA,CAAQ,IAAI,OAAA,CAMX,SAASC,GACdC,CAAAA,CACAC,CAAAA,CACqB,CACrB,GAAI,CAAC,OAAO,aAAA,CAAcA,CAAK,CAAA,EAAKA,CAAAA,CAAQ,EAC1C,MAAM,IAAI,WAAW,8CAA8C,CAAA,CACrE,IAAMC,CAAAA,CAASF,CAAAA,EAASF,EAAAA,CAAM,GAAA,CAAIE,CAAK,CAAA,EAAG,GAAA,CAAIC,CAAK,CAAA,CACnD,GAAIC,EAAQ,OAAOA,CAAAA,CACnB,IAAM3G,CAAAA,CAAS,CAAE,GAAGO,EAAS,CAAA,CACvBqG,EAAU,MAAA,CAAO,WAAA,CACrBN,GAAmB,GAAA,CAAKO,CAAAA,EAAU,CAACA,CAAAA,CAAO,SAAS,CAAC,CACtD,EACA,IAAA,IAAWA,CAAAA,IAASP,GAAoB,CACtC,IAAML,CAAAA,CACJY,CAAAA,GAAU,WAAaA,CAAAA,GAAU,KAAA,CAC7BJ,GAAO,OAAA,CACPA,CAAAA,EAAO,UAGPK,CAAAA,CAAYD,CAAAA,GAAU,WAAA,CAAc,iBAAA,CAAoB,iBACxDnC,CAAAA,CAAQ,CACZ,GAAGoC,CAAS,CAAA,aAAA,EAAgBJ,CAAK,CAAA,CAAA,EAAIG,CAAK,GAC1C,CAAA,EAAGC,CAAS,YAAYD,CAAK,CAAA,CAC/B,EACA,IAAA,IAAWE,CAAAA,IAAQrC,EAAO,CACxB,IAAML,CAAAA,CACJ4B,CAAAA,EAAQQ,GAAO,SAAA,CAAU,CAAA,EAAGM,CAAI,CAAA,CAAA,EAAId,CAAI,EAAE,CAAA,GAAM,MAAA,CAC5C,CAAA,EAAGc,CAAI,IAAId,CAAI,CAAA,CAAA,CACfc,EACA5G,CAAAA,CAAQsG,CAAAA,EAAO,UAAUpC,CAAI,CAAA,CACnC,GAAIlE,CAAAA,GAAU,OAAW,CACvBH,CAAAA,CAAO6G,CAAK,CAAA,CAAI1G,CAAAA,CAChByG,EAAQC,CAAK,CAAA,CAAIxC,CAAAA,CACjB,KACF,CACF,CACF,CACA,IAAM2C,CAAAA,CAAS,MAAA,CAAO,OAAO,CAC3B,MAAA,CAAQ,MAAA,CAAO,MAAA,CAAOhH,CAAM,CAAA,CAC5B,OAAA,CAAS,OAAO,MAAA,CAAO4G,CAAO,CAChC,CAAC,CAAA,CACD,GAAIH,CAAAA,CAAO,CACT,IAAMQ,CAAAA,CAASV,GAAM,GAAA,CAAIE,CAAK,GAAK,IAAI,GAAA,CACvCQ,CAAAA,CAAO,GAAA,CAAIP,EAAOM,CAAM,CAAA,CACxBT,GAAM,GAAA,CAAIE,CAAAA,CAAOQ,CAAM,EACzB,CACA,OAAOD,CACT,CA/CgBjH,EAAAyG,EAAAA,CAAA,oBAAA,CAAA,CClCT,IAAMU,EAAAA,CAAO,CAClB,OAAQ,OAAA,CACR,QAAA,CAAU,CACR,UAAA,CAAY,CACV,UAAA,CAAY,YAAA,CACZ,MAAO,OAAA,CACP,QAAA,CAAU,WACV,IAAA,CAAM,MAAA,CACN,KAAM,MAAA,CACN,IAAA,CAAMnH,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAoH,CAAAA,CAAM,UAAAC,CAAU,CAAA,GAAM,QAAQD,CAAI,CAAA,IAAA,EAAOC,CAAS,CAAA,CAAA,CAArD,MAAA,CAAA,CACN,YAAarH,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAoH,CAAAA,CAAM,UAAAC,CAAU,CAAA,GAC9B,CAAA,KAAA,EAAQD,CAAI,OAAOC,CAAS,CAAA,cAAA,CAAA,CADjB,eAEb,YAAA,CAAc,WAAA,CACd,MAAOrH,CAAAA,CAAA,CAAC,CAAE,KAAA,CAAAsH,EAAO,GAAA,CAAAC,CAAAA,CAAK,MAAAC,CAAM,CAAA,GAAM,GAAGF,CAAK,CAAA,CAAA,EAAIC,CAAG,CAAA,IAAA,EAAOC,CAAK,CAAA,CAAA,CAAtD,OAAA,CAAA,CACP,SAAUxH,CAAAA,CAAA,CAAC,CAAE,KAAA,CAAAyH,CAAM,IAAM,CAAA,EAAGA,CAAK,YAAvB,UAAA,CAAA,CACV,QAAA,CAAU,iBACV,aAAA,CAAe,gBAAA,CACf,QAAS,gBAAA,CACT,UAAA,CAAY,cAAA,CACZ,KAAA,CAAO,QACP,WAAA,CAAa,yBACf,EACA,MAAA,CAAQ,CACN,MAAO,cACT,CAAA,CACA,YAAA,CAAc,CACZ,QAAS,SACX,CAAA,CACA,QAAS,CACP,OAAA,CAAS,SACX,CAAA,CACA,MAAA,CAAQ,CACN,YAAA,CAAc,gBACd,WAAA,CAAa,QAAA,CACb,cAAe,UAAA,CACf,SAAA,CAAW,OACX,UAAA,CAAY,cAAA,CACZ,UAAW,YACb,CAAA,CACA,MAAO,CACL,KAAA,CAAO,WACP,OAAA,CAAS,SAAA,CACT,UAAW,WAAA,CACX,KAAA,CAAO,OAAA,CACP,QAAA,CAAU,UACZ,CAAA,CACA,WAAA,CAAa,CACX,SAAA,CAAW,gBAAA,CACX,UAAW,gBACb,CAAA,CACA,aAAA,CAAe,CACb,aAAc,eAAA,CACd,YAAA,CAAc,eAChB,CAAA,CACA,WAAA,CAAa,CACX,WAAA,CAAa,gBAAA,CACb,KAAA,CAAO,YAAA,CACP,aAAczH,CAAAA,CAAA,CAAC,CAAE,KAAA,CAAAI,CAAM,IAAM,CAAA,OAAA,EAAUA,CAAK,GAA9B,cAAA,CAChB,CAAA,CACA,MAAO,CACL,UAAA,CAAYJ,EAAA,CAAC,CAAE,SAAA0H,CAAS,CAAA,GAAM,CAAA,YAAA,EAAeA,CAAQ,GAAzC,YAAA,CAAA,CACZ,YAAA,CAAc1H,EAAA,CAAC,CAAE,SAAA0H,CAAS,CAAA,GAAM,CAAA,cAAA,EAAiBA,CAAQ,GAA3C,cAAA,CAAA,CACd,UAAA,CAAY1H,EAAA,CAAC,CAAE,SAAA0H,CAAS,CAAA,GACtBA,CAAAA,CAAW,CAAA,YAAA,EAAeA,CAAQ,CAAA,CAAA,CAAK,aAAA,CAD7B,cAEZ,UAAA,CAAY,mBACd,EACA,OAAA,CAAS,CACP,MAAO,CACL,KAAA,CAAO,aACP,MAAA,CAAQ,cAAA,CACR,KAAM,MAAA,CACN,KAAA,CAAO,QACP,IAAA,CAAM,MACR,CAAA,CACA,QAAA,CAAU,CACR,KAAA,CAAO,UAAA,CACP,OAAQ,iBACV,CACF,EACA,KAAA,CAAO,CACL,UAAA,CAAY,OAAA,CACZ,aAAc,SAAA,CACd,uBAAA,CAAyB,wBACzB,yBAAA,CAA2B,6BAC7B,EACA,YAAA,CAAc,CACZ,QAAA,CAAU,CACR,QAAS,cAAA,CACT,MAAA,CAAQ,SACR,QAAA,CAAU,UAAA,CACV,QAAS,YAAA,CACT,KAAA,CAAO,WACP,KAAA,CAAO,sBACT,CACF,CAAA,CACA,SAAA,CAAW,CACT,iBAAA,CAAmB,CAAE,QAAS,UAAA,CAAY,MAAA,CAAQ,SAAA,CAAW,SAAA,CAAW,YAAa,OAAA,CAAS,gBAAiB,EAC/G,UAAA,CAAY,CACV,MAAO,YAAA,CACP,OAAA,CAAS,eAAA,CACT,KAAA,CAAO,WACP,SAAA,CAAW,sBAAA,CACX,aAAc,yBAAA,CACd,KAAA,CAAO,QACP,WAAA,CAAa,oBAAA,CACb,UAAA,CAAY,iDAAA,CACZ,QAAS,0BAAA,CACT,aAAA,CAAe,gBACjB,CAAA,CACA,gBAAA,CAAkB,CAChB,aAAA,CAAe,gBAAA,CACf,YAAA,CAAc,gBAAA,CACd,gBAAiB,iBAAA,CACjB,cAAA,CAAgB,qBAChB,iBAAA,CAAmB,qBAAA,CACnB,mBAAoB,sBAAA,CACpB,gBAAA,CAAkB,oBAAA,CAClB,iBAAA,CAAmB,eACrB,CACF,CAAA,CACA,eAAgB,CACd,KAAA,CAAO,mBACP,SAAA,CAAW,WAAA,CACX,IAAA,CAAM,MAAA,CACN,aAAc,uBAAA,CACd,KAAA,CAAO,CAAE,IAAA,CAAM,MAAA,CAAQ,KAAM,MAAO,CAAA,CACpC,QAAA,CAAU,CACR,KAAM,cAAA,CACN,IAAA,CAAM,kBACN,KAAA,CAAO,eAAA,CACP,OAAQ,qBAAA,CACR,KAAA,CAAO,oBACP,SAAA,CAAW,YAAA,CACX,SAAU,WAAA,CACV,KAAA,CAAO,QACP,SAAA,CAAW,kBAAA,CACX,YAAa,aAAA,CACb,gBAAA,CAAkB,mBAAA,CAClB,UAAA,CAAY,sBACZ,YAAA,CAAc,uBAAA,CACd,OAAQ,iBAAA,CACR,QAAA,CAAU,oBACV,MAAA,CAAQ,iBAAA,CACR,SAAA,CAAW,WAAA,CACX,aAAc,eAAA,CACd,eAAA,CAAiB,0BACjB,QAAA,CAAU,qBAAA,CACV,QAAS,SAAA,CACT,cAAA,CAAgB,YAAA,CAChB,gBAAA,CAAkB,CAChB,GAAA,CAAK,KAAA,CACL,OAAQ,QAAA,CACR,IAAA,CAAM,OACN,KAAA,CAAO,YACT,EACA,iBAAA,CAAmB,CACjB,oBAAqB,mBAAA,CACrB,cAAA,CAAgB,eAChB,aAAA,CAAe,aACjB,CACF,CAAA,CACA,UAAA,CAAY,CACV,KAAA,CAAO,cACP,IAAA,CAAM,MAAA,CACN,QAAS,UACX,CAAA,CACA,KAAM,CACJ,KAAA,CAAO,OAAA,CACP,MAAA,CAAQ,SACR,MAAA,CAAQ,CACN,QAAS,SAAA,CACT,OAAA,CAAS,UACT,SAAA,CAAW,WAAA,CACX,MAAA,CAAQ,OAAA,CACR,OAAQ,QACV,CACF,EACA,QAAA,CAAU,CACR,QAAS,SAAA,CACT,MAAA,CAAQ,SACR,QAAA,CAAU,UAAA,CACV,SAAU,UACZ,CAAA,CACA,SAAU,CACR,OAAA,CAAS,YACT,KAAA,CAAO,OAAA,CACP,MAAA,CAAQ,QAAA,CACR,KAAM1H,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,IAAM,CAAA,KAAA,EAAQA,CAAI,CAAA,CAAA,CAA1B,MAAA,CACR,EACA,GAAA,CAAK,CACH,SAAU,aAAA,CACV,YAAA,CAActG,EAAA,CAAC,CAAE,QAAA,CAAA2H,CAAS,IAAM,CAAA,kBAAA,EAAqBA,CAAQ,GAA/C,cAAA,CAChB,CAAA,CACA,QAAS,CACP,OAAA,CAAS,UACT,MAAA,CAAQ,QAAA,CACR,gBAAiB,sBAAA,CACjB,MAAA,CAAQ,SACR,OAAA,CAAS,SAAA,CACT,UAAW,WAAA,CACX,YAAA,CAAc3H,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA2H,CAAS,IAAM,CAAA,WAAA,EAAcA,CAAQ,GAAxC,cAAA,CAAA,CACd,cAAA,CAAgB3H,CAAAA,CAAA,CAAC,CAAE,SAAA,CAAA4H,CAAAA,CAAW,MAAAJ,CAAM,CAAA,GAClC,GAAGI,CAAS,CAAA,CAAA,EAAIJ,CAAK,CAAA,UAAA,CAAA,CADP,iBAElB,CAAA,CACA,iBAAA,CAAmB,CACjB,OAAA,CAAS,SAAA,CACT,QAAS,SAAA,CACT,OAAA,CAAS,WACT,aAAA,CAAe,cAAA,CACf,KAAM,YAAA,CACN,QAAA,CAAUxH,EAAA,CAAC,CAAE,KAAAsG,CAAK,CAAA,GAAM,CAAA,MAAA,EAASA,CAAI,GAA3B,UAAA,CAAA,CACV,cAAA,CAAgB,kBAChB,QAAA,CAAUtG,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,CAAA,GAAM,YAAYA,CAAI,CAAA,CAAA,CAA9B,YACV,YAAA,CAActG,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,CAAA,GAAM,QAAQA,CAAI,CAAA,gBAAA,CAAA,CAA1B,gBACd,OAAA,CAAS,oBAAA,CACT,OAAQ,qBAAA,CACR,KAAA,CAAO,WACT,CAAA,CACA,KAAA,CAAO,CACL,KAAA,CAAO,eAAA,CACP,QAAStG,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAA6H,CAAAA,CAAM,KAAA,CAAAL,CAAM,IAAM,CAAA,EAAGK,CAAI,MAAML,CAAK,CAAA,OAAA,CAAA,CAAvC,UACX,CAAA,CACA,UAAA,CAAY,CACV,MAAA,CAAQ,6BACR,cAAA,CAAgB,iBAAA,CAChB,eAAgB,cAAA,CAChB,WAAA,CAAa,eACb,SAAA,CAAW,4BAAA,CACX,MAAA,CAAQ,QAAA,CACR,SAAU,UAAA,CACV,QAAA,CAAU,YACV,UAAA,CAAY,aAAA,CACZ,aAAc,2BAAA,CACd,QAAA,CAAU,iBACV,SAAA,CAAW,YAAA,CACX,eAAgB,iBAAA,CAChB,IAAA,CAAM,OACN,IAAA,CAAM,MAAA,CACN,MAAO,OAAA,CACP,OAAA,CAAS,UAAA,CACT,aAAA,CAAe,iBACf,OAAA,CAAS,YAAA,CACT,YAAa,eAAA,CACb,aAAA,CAAe,kBACf,SAAA,CAAW,qBAAA,CACX,KAAA,CAAO,OAAA,CACP,IAAK,KAAA,CACL,KAAA,CAAO,QACP,MAAA,CAAQ,QAAA,CACR,OAAQ,QAAA,CACR,OAAA,CAAS,SAAA,CACT,IAAA,CAAM,OACN,MAAA,CAAQ,QAAA,CACR,QAAS,SAAA,CACT,SAAA,CAAW,YACX,MAAA,CAAQ,QAAA,CACR,YAAA,CAAcxH,CAAAA,CAAA,CAAC,CAAE,OAAA,CAAA8H,CAAQ,CAAA,GAAM,CAAA,EAAGA,CAAO,CAAA,cAAA,CAAA,CAA3B,cAAA,CAChB,CAAA,CACA,OAAA,CAAS,CACP,KAAA,CAAO,cAAA,CACP,YAAa,gCAAA,CACb,QAAA,CAAU,WACV,OAAA,CAAS,SAAA,CACT,KAAA,CAAO,OAAA,CACP,KAAM,MAAA,CACN,WAAA,CAAa,cACb,UAAA,CAAY,aAAA,CACZ,QAAS,SAAA,CACT,YAAA,CAAc,8BAAA,CACd,aAAA,CAAe,sCACf,UAAA,CAAY,YAAA,CACZ,aAAc,eAAA,CACd,IAAA,CAAM,CACJ,KAAA,CAAO,mBAAA,CACP,QAAS,SAAA,CACT,SAAA,CAAW,WACb,CAAA,CACA,MAAA,CAAQ,CACN,MAAA,CAAQ,QAAA,CACR,QAAS,SAAA,CACT,gBAAA,CAAkB,sBAAA,CAClB,QAAA,CAAU,WACV,OAAA,CAAS,SAAA,CACT,UAAW,WAAA,CACX,MAAA,CAAQ,QACV,CAAA,CACA,KAAA,CAAO,CACL,OAAA,CAAS,CACP,KAAA,CAAO,sBAAA,CACP,YAAa,wCACf,CAAA,CACA,MAAO,CACL,KAAA,CAAO,kBAAA,CACP,WAAA,CAAa,uCACf,CAAA,CACA,KAAA,CAAO,CACL,KAAA,CAAO,6BAAA,CACP,YAAa,2CACf,CACF,EACA,OAAA,CAAS,CACP,MAAO,oBAAA,CACP,WAAA,CAAa,eACb,KAAA,CAAO,OAAA,CACP,aAAc,eAAA,CACd,MAAA,CAAQ,QAAA,CACR,iBAAA,CAAmB,uBACnB,YAAA,CAAc,gBAAA,CACd,OAAQ,QACV,CAAA,CACA,UAAW,CACT,KAAA,CAAO,cAAA,CACP,KAAA,CAAO,QACP,SAAA,CAAW,WAAA,CACX,MAAO,OAAA,CACP,SAAA,CAAW,YACX,QAAA,CAAU9H,CAAAA,CAAA,CAAC,CAAE,KAAA+H,CAAK,CAAA,GAAM,aAAaA,CAAI,CAAA,CAAA,CAA/B,YACV,UAAA,CAAY,CACV,MAAO,OAAA,CACP,QAAA,CAAU,WACV,OAAA,CAAS,SAAA,CACT,QAAS,SACX,CAAA,CACA,cAAe,CAAE,MAAA,CAAQ,SAAA,CAAW,MAAA,CAAQ,SAAU,CACxD,CACF,CACF,CACF,CACF,ECxUO,IAAMC,EAAAA,CAAO,CAClB,MAAA,CAAQ,QACR,QAAA,CAAU,CACR,WAAY,CACV,UAAA,CAAY,2BACZ,KAAA,CAAO,cAAA,CACP,QAAA,CAAU,oBAAA,CACV,KAAM,oBAAA,CACN,IAAA,CAAM,eACN,IAAA,CAAMhI,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAoH,EAAM,SAAA,CAAAC,CAAU,IAAM,CAAA,OAAA,EAAKD,CAAI,uBAAQC,CAAS,CAAA,OAAA,CAAA,CAAnD,QACN,WAAA,CAAarH,CAAAA,CAAA,CAAC,CAAE,KAAAoH,CAAAA,CAAM,SAAA,CAAAC,CAAU,CAAA,GAC9B,CAAA,OAAA,EAAKD,CAAI,CAAA,oBAAA,EAAQC,CAAS,CAAA,+BAAA,CAAA,CADf,aAAA,CAAA,CAEb,aAAc,iBAAA,CACd,KAAA,CAAOrH,EAAA,CAAC,CAAE,MAAAsH,CAAAA,CAAO,GAAA,CAAAC,CAAAA,CAAK,KAAA,CAAAC,CAAM,CAAA,GAAM,CAAA,OAAA,EAAKF,CAAK,CAAA,CAAA,EAAIC,CAAG,uBAAQC,CAAK,CAAA,OAAA,CAAA,CAAzD,SACP,QAAA,CAAUxH,CAAAA,CAAA,CAAC,CAAE,KAAA,CAAAyH,CAAM,CAAA,GAAM,CAAA,mBAAA,EAAOA,CAAK,CAAA,OAAA,CAAA,CAA3B,UAAA,CAAA,CACV,QAAA,CAAU,sCAAA,CACV,cAAe,sCAAA,CACf,OAAA,CAAS,2BACT,UAAA,CAAY,gCAAA,CACZ,MAAO,QAAA,CACP,WAAA,CAAa,sCACf,CAAA,CACA,OAAQ,CACN,KAAA,CAAO,gCACT,CAAA,CACA,YAAA,CAAc,CACZ,OAAA,CAAS,cACX,CAAA,CACA,OAAA,CAAS,CACP,OAAA,CAAS,0BACX,EACA,MAAA,CAAQ,CACN,aAAc,sCAAA,CACd,WAAA,CAAa,eACb,aAAA,CAAe,cAAA,CACf,UAAW,cAAA,CACX,UAAA,CAAY,2BACZ,SAAA,CAAW,0BACb,EACA,KAAA,CAAO,CACL,KAAA,CAAO,cAAA,CACP,QAAS,0BAAA,CACT,SAAA,CAAW,qBACX,KAAA,CAAO,cAAA,CACP,SAAU,oBACZ,CAAA,CACA,WAAA,CAAa,CACX,UAAW,0BAAA,CACX,SAAA,CAAW,0BACb,CAAA,CACA,aAAA,CAAe,CACb,YAAA,CAAc,0BAAA,CACd,YAAA,CAAc,0BAChB,EACA,WAAA,CAAa,CACX,YAAa,oBAAA,CACb,KAAA,CAAO,2BACP,YAAA,CAAczH,CAAAA,CAAA,CAAC,CAAE,KAAA,CAAAI,CAAM,CAAA,GAAM,CAAA,aAAA,EAAMA,CAAK,CAAA,CAAA,CAA1B,cAAA,CAChB,EACA,KAAA,CAAO,CACL,UAAA,CAAYJ,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA0H,CAAS,CAAA,GAAM,CAAA,mBAAA,EAAOA,CAAQ,CAAA,CAAA,CAAjC,YAAA,CAAA,CACZ,YAAA,CAAc1H,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA0H,CAAS,CAAA,GAAM,CAAA,yBAAA,EAAQA,CAAQ,CAAA,CAAA,CAAlC,cAAA,CAAA,CACd,UAAA,CAAY1H,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA0H,CAAS,CAAA,GACtBA,CAAAA,CAAW,sBAAOA,CAAQ,CAAA,CAAA,CAAK,oBAAA,CADrB,YAAA,CAAA,CAEZ,WAAY,4CACd,CAAA,CACA,QAAS,CACP,KAAA,CAAO,CACL,KAAA,CAAO,cAAA,CACP,MAAA,CAAQ,0BAAA,CACR,KAAM,0BAAA,CACN,KAAA,CAAO,2BACP,IAAA,CAAM,0BACR,EACA,QAAA,CAAU,CACR,KAAA,CAAO,cAAA,CACP,OAAQ,0BACV,CACF,EACA,KAAA,CAAO,CACL,WAAY,cAAA,CACZ,YAAA,CAAc,cAAA,CACd,uBAAA,CAAyB,qEACzB,yBAAA,CAA2B,4CAC7B,EACA,YAAA,CAAc,CACZ,SAAU,CACR,OAAA,CAAS,2BACT,MAAA,CAAQ,cAAA,CACR,SAAU,cAAA,CACV,OAAA,CAAS,8BACT,KAAA,CAAO,0BAAA,CACP,MAAO,sCACT,CACF,CAAA,CACA,SAAA,CAAW,CACT,iBAAA,CAAmB,CAAE,QAAS,cAAA,CAAM,MAAA,CAAQ,eAAM,SAAA,CAAW,0BAAA,CAAQ,OAAA,CAAS,0BAAO,EACrF,UAAA,CAAY,CACV,MAAO,0BAAA,CACP,OAAA,CAAS,uCACT,KAAA,CAAO,0BAAA,CACP,SAAA,CAAW,sCAAA,CACX,aAAc,sCAAA,CACd,KAAA,CAAO,eACP,WAAA,CAAa,kDAAA,CACb,WAAY,8DAAA,CACZ,OAAA,CAAS,6CACT,aAAA,CAAe,0BACjB,EACA,gBAAA,CAAkB,CAChB,cAAe,oBAAA,CACf,YAAA,CAAc,iCACd,eAAA,CAAiB,gCAAA,CACjB,cAAA,CAAgB,sCAAA,CAChB,kBAAmB,sCAAA,CACnB,kBAAA,CAAoB,uCACpB,gBAAA,CAAkB,0BAAA,CAClB,kBAAmB,0BACrB,CACF,CAAA,CACA,cAAA,CAAgB,CACd,KAAA,CAAO,0BAAA,CACP,UAAW,0BAAA,CACX,IAAA,CAAM,2BACN,YAAA,CAAc,sCAAA,CACd,KAAA,CAAO,CAAE,KAAM,cAAA,CAAM,IAAA,CAAM,cAAK,CAAA,CAChC,QAAA,CAAU,CACR,IAAA,CAAM,0BAAA,CACN,KAAM,0BAAA,CACN,KAAA,CAAO,2BACP,MAAA,CAAQ,4CAAA,CACR,MAAO,sCAAA,CACP,SAAA,CAAW,2BACX,QAAA,CAAU,0BAAA,CACV,KAAA,CAAO,cAAA,CACP,UAAW,0BAAA,CACX,WAAA,CAAa,eACb,gBAAA,CAAkB,0BAAA,CAClB,WAAY,sCAAA,CACZ,YAAA,CAAc,sCAAA,CACd,MAAA,CAAQ,2BACR,QAAA,CAAU,0BAAA,CACV,OAAQ,0BAAA,CACR,SAAA,CAAW,qBACX,YAAA,CAAc,0BAAA,CACd,eAAA,CAAiB,sCAAA,CACjB,SAAU,sCAAA,CACV,OAAA,CAAS,eACT,cAAA,CAAgB,cAAA,CAChB,iBAAkB,CAChB,GAAA,CAAK,SACL,MAAA,CAAQ,QAAA,CACR,KAAM,QAAA,CACN,KAAA,CAAO,cACT,CAAA,CACA,iBAAA,CAAmB,CACjB,mBAAA,CAAqB,0BAAA,CACrB,cAAA,CAAgB,0BAAA,CAChB,cAAe,0BACjB,CACF,EACA,UAAA,CAAY,CACV,MAAO,0BAAA,CACP,IAAA,CAAM,cAAA,CACN,OAAA,CAAS,0BACX,CAAA,CACA,IAAA,CAAM,CACJ,KAAA,CAAO,cAAA,CACP,OAAQ,cAAA,CACR,MAAA,CAAQ,CACN,OAAA,CAAS,qBACT,OAAA,CAAS,oBAAA,CACT,UAAW,oBAAA,CACX,MAAA,CAAQ,eACR,MAAA,CAAQ,oBACV,CACF,CAAA,CACA,QAAA,CAAU,CACR,OAAA,CAAS,cAAA,CACT,OAAQ,cAAA,CACR,QAAA,CAAU,qBACV,QAAA,CAAU,oBACZ,CAAA,CACA,QAAA,CAAU,CACR,OAAA,CAAS,oBAAA,CACT,MAAO,oBAAA,CACP,MAAA,CAAQ,eACR,IAAA,CAAM1H,CAAAA,CAAA,CAAC,CAAE,KAAAsG,CAAK,CAAA,GAAM,gBAAMA,CAAI,CAAA,CAAA,CAAxB,OACR,CAAA,CACA,GAAA,CAAK,CACH,QAAA,CAAU,8BACV,YAAA,CAActG,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA2H,CAAS,CAAA,GAAM,CAAA,aAAA,EAAMA,CAAQ,CAAA,qCAAA,CAAA,CAAhC,cAAA,CAChB,EACA,OAAA,CAAS,CACP,QAAS,0BAAA,CACT,MAAA,CAAQ,qBACR,eAAA,CAAiB,0BAAA,CACjB,MAAA,CAAQ,cAAA,CACR,QAAS,oBAAA,CACT,SAAA,CAAW,qBACX,YAAA,CAAc3H,CAAAA,CAAA,CAAC,CAAE,QAAA,CAAA2H,CAAS,CAAA,GACxB,gBAAMA,CAAAA,CACH,OAAA,CAAQ,UAAW,gBAAM,CAAA,CACzB,QAAQ,SAAA,CAAW,gBAAM,CAAA,CACzB,OAAA,CAAQ,UAAW,UAAK,CAAA,CACxB,QAAQ,MAAA,CAAQ,EAAE,CAAC,CAAA,CAAA,CALV,cAAA,CAAA,CAMd,eAAgB3H,CAAAA,CAAA,CAAC,CAAE,SAAA,CAAA4H,CAAAA,CAAW,MAAAJ,CAAM,CAAA,GAClC,GAAGI,CAAS,CAAA,CAAA,EAAIJ,CAAK,CAAA,mBAAA,CAAA,CADP,iBAElB,CAAA,CACA,iBAAA,CAAmB,CACjB,OAAA,CAAS,cAAA,CACT,QAAS,cAAA,CACT,OAAA,CAAS,0BAAA,CACT,aAAA,CAAe,uCACf,IAAA,CAAM,gCAAA,CACN,SAAUxH,CAAAA,CAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,CAAA,GAAM,CAAA,aAAA,EAAMA,CAAI,CAAA,CAAA,CAAxB,UAAA,CAAA,CACV,eAAgB,gCAAA,CAChB,QAAA,CAAUtG,EAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,IAAM,CAAA,aAAA,EAAMA,CAAI,GAAxB,UAAA,CAAA,CACV,YAAA,CAActG,EAAA,CAAC,CAAE,IAAA,CAAAsG,CAAK,IAAM,CAAA,qCAAA,EAAUA,CAAI,GAA5B,cAAA,CAAA,CACd,OAAA,CAAS,0CACT,MAAA,CAAQ,gCAAA,CACR,KAAA,CAAO,cACT,EACA,KAAA,CAAO,CACL,MAAO,gCAAA,CACP,OAAA,CAAStG,EAAA,CAAC,CAAE,IAAA,CAAA6H,CAAAA,CAAM,MAAAL,CAAM,CAAA,GAAM,GAAGK,CAAI,CAAA,GAAA,EAAML,CAAK,CAAA,OAAA,CAAA,CAAvC,SAAA,CACX,EACA,UAAA,CAAY,CACV,OAAQ,kDAAA,CACR,cAAA,CAAgB,2BAChB,cAAA,CAAgB,gCAAA,CAChB,YAAa,0BAAA,CACb,SAAA,CAAW,kDAAA,CACX,MAAA,CAAQ,qBACR,QAAA,CAAU,cAAA,CACV,SAAU,gCAAA,CACV,UAAA,CAAY,2BACZ,YAAA,CAAc,gCAAA,CACd,QAAA,CAAU,gCAAA,CACV,UAAW,gCAAA,CACX,cAAA,CAAgB,2BAChB,IAAA,CAAM,cAAA,CACN,KAAM,cAAA,CACN,KAAA,CAAO,cAAA,CACP,OAAA,CAAS,eACT,aAAA,CAAe,0BAAA,CACf,QAAS,uBAAA,CACT,WAAA,CAAa,iCACb,aAAA,CAAe,0BAAA,CACf,UAAW,sCAAA,CACX,KAAA,CAAO,eACP,GAAA,CAAK,cAAA,CACL,MAAO,0BAAA,CACP,MAAA,CAAQ,qBACR,MAAA,CAAQ,cAAA,CACR,OAAA,CAAS,cAAA,CACT,KAAM,cAAA,CACN,MAAA,CAAQ,eACR,OAAA,CAAS,oBAAA,CACT,UAAW,oBAAA,CACX,MAAA,CAAQ,cAAA,CACR,YAAA,CAAcxH,EAAA,CAAC,CAAE,QAAA8H,CAAQ,CAAA,GAAM,sBAAOA,CAAO,CAAA,oBAAA,CAAA,CAA/B,cAAA,CAChB,CAAA,CACA,QAAS,CACP,KAAA,CAAO,2BACP,WAAA,CAAa,kDAAA,CACb,SAAU,cAAA,CACV,OAAA,CAAS,2BACT,KAAA,CAAO,cAAA,CACP,KAAM,cAAA,CACN,WAAA,CAAa,eACb,UAAA,CAAY,oBAAA,CACZ,QAAS,cAAA,CACT,YAAA,CAAc,wDAAA,CACd,aAAA,CAAe,6CACf,UAAA,CAAY,cAAA,CACZ,aAAc,gCAAA,CACd,IAAA,CAAM,CACJ,KAAA,CAAO,sCAAA,CACP,OAAA,CAAS,cAAA,CACT,UAAW,oBACb,CAAA,CACA,OAAQ,CACN,MAAA,CAAQ,qBACR,OAAA,CAAS,oBAAA,CACT,gBAAA,CAAkB,0BAAA,CAClB,SAAU,0BAAA,CACV,OAAA,CAAS,qBACT,SAAA,CAAW,oBAAA,CACX,OAAQ,cACV,CAAA,CACA,MAAO,CACL,OAAA,CAAS,CACP,KAAA,CAAO,kDAAA,CACP,YAAa,0EACf,CAAA,CACA,MAAO,CACL,KAAA,CAAO,gCAAA,CACP,WAAA,CAAa,0EACf,CAAA,CACA,KAAA,CAAO,CACL,KAAA,CAAO,kDAAA,CACP,YAAa,oEACf,CACF,CAAA,CACA,OAAA,CAAS,CACP,KAAA,CAAO,sCAAA,CACP,YAAa,0BAAA,CACb,KAAA,CAAO,eACP,YAAA,CAAc,sCAAA,CACd,MAAA,CAAQ,0BAAA,CACR,kBAAmB,4CAAA,CACnB,YAAA,CAAc,6CACd,MAAA,CAAQ,cACV,EACA,SAAA,CAAW,CACT,MAAO,0BAAA,CACP,KAAA,CAAO,eACP,SAAA,CAAW,cAAA,CACX,MAAO,cAAA,CACP,SAAA,CAAW,eACX,QAAA,CAAU9H,CAAAA,CAAA,CAAC,CAAE,KAAA+H,CAAK,CAAA,GAAM,sBAAOA,CAAI,CAAA,CAAA,CAAzB,YACV,UAAA,CAAY,CACV,KAAA,CAAO,cAAA,CACP,SAAU,cAAA,CACV,OAAA,CAAS,eACT,OAAA,CAAS,oBACX,EACA,aAAA,CAAe,CAAE,MAAA,CAAQ,oBAAA,CAAO,OAAQ,oBAAM,CAChD,CACF,CACF,CACF,CACF,CAAA,CC9NO,SAASE,GACdjB,CAAAA,CACAkB,CAAAA,CACuB,CACvB,OAAKA,CAAAA,CAEE,CACL,UAAA,CAAY,CAAE,GAAGlB,CAAAA,CAAK,UAAA,CAAY,GAAGkB,CAAAA,CAAS,UAAW,CAAA,CACzD,MAAA,CAAQ,CAAE,GAAGlB,CAAAA,CAAK,OAAQ,GAAGkB,CAAAA,CAAS,MAAO,CAAA,CAC7C,aAAc,CAAE,GAAGlB,EAAK,YAAA,CAAc,GAAGkB,EAAS,YAAa,CAAA,CAC/D,OAAA,CAAS,CAAE,GAAGlB,CAAAA,CAAK,OAAA,CAAS,GAAGkB,CAAAA,CAAS,OAAQ,EAChD,MAAA,CAAQ,CAAE,GAAGlB,CAAAA,CAAK,MAAA,CAAQ,GAAGkB,CAAAA,CAAS,MAAO,EAC7C,KAAA,CAAO,CAAE,GAAGlB,CAAAA,CAAK,KAAA,CAAO,GAAGkB,CAAAA,CAAS,KAAM,CAAA,CAC1C,WAAA,CAAa,CAAE,GAAGlB,CAAAA,CAAK,YAAa,GAAGkB,CAAAA,CAAS,WAAY,CAAA,CAC5D,cAAe,CAAE,GAAGlB,EAAK,aAAA,CAAe,GAAGkB,EAAS,aAAc,CAAA,CAClE,WAAA,CAAa,CAAE,GAAGlB,CAAAA,CAAK,WAAA,CAAa,GAAGkB,CAAAA,CAAS,WAAY,EAC5D,KAAA,CAAO,CAAE,GAAGlB,CAAAA,CAAK,MAAO,GAAGkB,CAAAA,CAAS,KAAM,CAAA,CAC1C,OAAA,CAAS,CACP,KAAA,CAAO,CAAE,GAAGlB,CAAAA,CAAK,QAAQ,KAAA,CAAO,GAAGkB,EAAS,OAAA,EAAS,KAAM,EAC3D,QAAA,CAAU,CAAE,GAAGlB,CAAAA,CAAK,QAAQ,QAAA,CAAU,GAAGkB,EAAS,OAAA,EAAS,QAAS,CACtE,CAAA,CACA,KAAA,CAAO,CAAE,GAAGlB,EAAK,KAAA,CAAO,GAAGkB,EAAS,KAAM,CAAA,CAC1C,aAAc,CACZ,QAAA,CAAU,CACR,GAAGlB,CAAAA,CAAK,aAAa,QAAA,CACrB,GAAGkB,EAAS,YAAA,EAAc,QAC5B,CACF,CAAA,CACA,SAAA,CAAW,CACT,iBAAA,CAAmB,CAAE,OAAA,CAAS,UAAA,CAAY,OAAQ,SAAA,CAAW,SAAA,CAAW,YAAa,OAAA,CAAS,gBAAA,CAAkB,GAAGlB,CAAAA,CAAK,UAAU,iBAAA,CAAmB,GAAGkB,EAAS,SAAA,EAAW,iBAAkB,EAC9L,UAAA,CAAY,CACV,GAAGlB,CAAAA,CAAK,UAAU,UAAA,CAClB,GAAGkB,EAAS,SAAA,EAAW,UACzB,EACA,gBAAA,CAAkB,CAChB,GAAGlB,CAAAA,CAAK,SAAA,CAAU,iBAClB,GAAGkB,CAAAA,CAAS,WAAW,gBACzB,CACF,EACA,cAAA,CAAgB,CACd,GAAGlB,CAAAA,CAAK,eACR,GAAGkB,CAAAA,CAAS,eACZ,KAAA,CAAO,CACL,GAAGlB,CAAAA,CAAK,cAAA,CAAe,KAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,KAC9B,EACA,QAAA,CAAU,CACR,GAAGlB,CAAAA,CAAK,cAAA,CAAe,QAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,QAC9B,EACA,UAAA,CAAY,CACV,GAAGlB,CAAAA,CAAK,cAAA,CAAe,WACvB,GAAGkB,CAAAA,CAAS,gBAAgB,UAC9B,CAAA,CACA,KAAM,CACJ,GAAGlB,EAAK,cAAA,CAAe,IAAA,CACvB,GAAGkB,CAAAA,CAAS,gBAAgB,IAAA,CAC5B,MAAA,CAAQ,CACN,GAAGlB,CAAAA,CAAK,eAAe,IAAA,CAAK,MAAA,CAC5B,GAAGkB,CAAAA,CAAS,gBAAgB,IAAA,EAAM,MACpC,CACF,CAAA,CACA,QAAA,CAAU,CACR,GAAGlB,CAAAA,CAAK,cAAA,CAAe,QAAA,CACvB,GAAGkB,CAAAA,CAAS,cAAA,EAAgB,QAC9B,CAAA,CACA,QAAA,CAAU,CACR,GAAGlB,CAAAA,CAAK,eAAe,QAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,QAC9B,EACA,GAAA,CAAK,CACH,GAAGlB,CAAAA,CAAK,cAAA,CAAe,GAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,GAC9B,EACA,OAAA,CAAS,CACP,GAAGlB,CAAAA,CAAK,cAAA,CAAe,OAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,OAC9B,EACA,iBAAA,CAAmB,CACjB,GAAGlB,CAAAA,CAAK,cAAA,CAAe,iBAAA,CACvB,GAAGkB,EAAS,cAAA,EAAgB,iBAC9B,EACA,KAAA,CAAO,CACL,GAAGlB,CAAAA,CAAK,cAAA,CAAe,MACvB,GAAGkB,CAAAA,CAAS,gBAAgB,KAC9B,CAAA,CACA,WAAY,CACV,GAAGlB,EAAK,cAAA,CAAe,UAAA,CACvB,GAAGkB,CAAAA,CAAS,gBAAgB,UAC9B,CAAA,CACA,QAAS,CACP,GAAGlB,EAAK,cAAA,CAAe,OAAA,CACvB,GAAGkB,CAAAA,CAAS,gBAAgB,OAAA,CAC5B,IAAA,CAAM,CACJ,GAAGlB,CAAAA,CAAK,eAAe,OAAA,CAAQ,IAAA,CAC/B,GAAGkB,CAAAA,CAAS,gBAAgB,OAAA,EAAS,IACvC,EACA,MAAA,CAAQ,CACN,GAAGlB,CAAAA,CAAK,cAAA,CAAe,QAAQ,MAAA,CAC/B,GAAGkB,EAAS,cAAA,EAAgB,OAAA,EAAS,MACvC,CAAA,CACA,KAAA,CAAO,CACL,OAAA,CAAS,CACP,GAAGlB,CAAAA,CAAK,eAAe,OAAA,CAAQ,KAAA,CAAM,QACrC,GAAGkB,CAAAA,CAAS,gBAAgB,OAAA,EAAS,KAAA,EAAO,OAC9C,CAAA,CACA,MAAO,CACL,GAAGlB,EAAK,cAAA,CAAe,OAAA,CAAQ,MAAM,KAAA,CACrC,GAAGkB,CAAAA,CAAS,cAAA,EAAgB,SAAS,KAAA,EAAO,KAC9C,EACA,KAAA,CAAO,CACL,GAAGlB,CAAAA,CAAK,cAAA,CAAe,QAAQ,KAAA,CAAM,KAAA,CACrC,GAAGkB,CAAAA,CAAS,cAAA,EAAgB,SAAS,KAAA,EAAO,KAC9C,CACF,CAAA,CACA,OAAA,CAAS,CACP,GAAGlB,EAAK,cAAA,CAAe,OAAA,CAAQ,QAC/B,GAAGkB,CAAAA,CAAS,gBAAgB,OAAA,EAAS,OACvC,CAAA,CACA,SAAA,CAAW,CACT,GAAGlB,CAAAA,CAAK,eAAe,OAAA,CAAQ,SAAA,CAC/B,GAAGkB,CAAAA,CAAS,cAAA,EAAgB,OAAA,EAAS,SAAA,CACrC,WAAY,CACV,GAAGlB,EAAK,cAAA,CAAe,OAAA,CAAQ,UAAU,UAAA,CACzC,GAAGkB,CAAAA,CAAS,cAAA,EAAgB,SAAS,SAAA,EAAW,UAClD,EACA,aAAA,CAAe,CACb,GAAGlB,CAAAA,CAAK,cAAA,CAAe,OAAA,CAAQ,SAAA,CAAU,cACzC,GAAGkB,CAAAA,CAAS,gBAAgB,OAAA,EAAS,SAAA,EAAW,aAClD,CACF,CACF,CACF,CACF,EAjIsBlB,CAkIxB,CAtIgBhH,EAAAiI,EAAAA,CAAA,4BAAA,CAAA,CAwIT,IAAME,EAAAA,CAA8C,CACzD,MAAA,CAAQhB,EAAAA,CAAK,OACb,QAAA,CAAUc,EAAAA,CACRd,GAAK,QACP,CACF,ECjKA,IAAMiB,EAAAA,CAAoB,OAAO,MAAA,CAAO,EAAE,CAAA,CACpCC,EAAAA,CAAe,OAAO,MAAA,CAAO,EAAE,CAAA,CAc/BC,EAAAA,CAAgC,MAAA,CAAO,GAAA,CAC3C,qDACF,CAAA,CAMA,SAASC,IAAyD,CAChE,OAAO,OAAO,MAAA,CAAO,CACnB,MAAA,CAAQC,aAAAA,CAAyC,CAC/C,GAAGL,EAAAA,CACH,SAAU,KACZ,CAAC,EACD,KAAA,CAAOK,aAAAA,CAAwC,CAC7C,QAAA,CAAU,KACZ,CAAC,CAAA,CACD,UAAWA,aAAAA,CAA4C,CACrD,SAAU,KACZ,CAAC,EACD,WAAA,CAAaA,aAAAA,CAA8C,CACzD,QAAA,CAAU,KAAA,CACV,YAAaJ,EAAAA,CACb,MAAA,CAAQC,EACV,CAAC,CACH,CAAC,CACH,CAlBSrI,CAAAA,CAAAuI,EAAAA,CAAA,iCAoBT,SAASE,EAAAA,EAAsD,CAC7D,IAAMC,CAAAA,CAAO,UAAA,CACPC,CAAAA,CAAWD,EAAKJ,EAA6B,CAAA,CACnD,GAAIK,CAAAA,CAAU,OAAOA,EAErB,IAAMC,CAAAA,CAAWL,EAAAA,EAA8B,CAC/C,cAAO,cAAA,CAAeG,CAAAA,CAAMJ,GAA+B,CACzD,KAAA,CAAOM,EACP,UAAA,CAAY,KAAA,CACZ,aAAc,KAAA,CACd,QAAA,CAAU,KACZ,CAAC,CAAA,CACMA,CACT,CAbS5I,CAAAA,CAAAyI,GAAA,4BAAA,CAAA,CAeT,IAAMI,EAAAA,CAAmBJ,EAAAA,GAEZK,EAAAA,CAAuBD,EAAAA,CAAiB,OAExCE,EAAAA,CAAsBF,EAAAA,CAAiB,MAEvCG,EAAAA,CAA0BH,EAAAA,CAAiB,SAAA,CAE3CI,EAAAA,CAA4BJ,GAAiB,WAAA,CAuBnD,SAASK,IAAmB,CACjC,GAAI,CAEF,OADgBC,UAAAA,CAAWL,EAAoB,CAAA,EAC7B,CAAE,GAAGX,EAAAA,CAAsB,SAAU,CAAA,CAAM,CAC/D,MAAQ,CACN,OAAO,CAAE,GAAGA,EAAAA,CAAsB,SAAU,KAAM,CACpD,CACF,CAPgBnI,CAAAA,CAAAkJ,GAAA,kBAAA,CAAA,CAaT,SAASE,EAAAA,EAA0B,CACxC,OAAOD,UAAAA,CAAWJ,EAAmB,EAAE,aACzC,CAFgB/I,EAAAoJ,EAAAA,CAAA,yBAAA,CAAA,CAgCT,SAASC,EAAAA,EAAsB,CACpC,OAAOF,UAAAA,CAAWH,EAAuB,CAAA,CAAE,SAC7C,CAFgBhJ,CAAAA,CAAAqJ,EAAAA,CAAA,qBAAA,CAAA,CAIT,SAASC,IAAwB,CACtC,OAAOH,WAAWF,EAAyB,CAAA,CAAE,WAC/C,CAFgBjJ,CAAAA,CAAAsJ,GAAA,uBAAA,CAAA,CAIT,SAASC,IAA0B,CACxC,OAAOJ,WAAWF,EAAyB,CAAA,CAAE,MAC/C,CAFgBjJ,CAAAA,CAAAuJ,EAAAA,CAAA,yBAAA,CAAA,CC3OhB,IAAAC,EAAAA,CAAA,CACE,KAAQ,CACN,EAAA,CAAM,CACJ,KAAA,CAAS,CACP,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,UAAA,CAAc,CACZ,mBACA,kBAAA,CACA,kBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,OAAA,CAAW,CACT,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,kBAAA,CACA,kBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,QAAA,CAAY,CACV,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,mBACA,iBAAA,CACA,kBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,UAAA,CAAc,CACZ,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,MAAA,CACd,UAAA,CAAc,CACZ,gBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,kBACA,iBACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,OAAA,CAAW,CACT,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,aAAA,CAAiB,CACf,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,YAAA,CAAgB,CACd,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,MAAA,CAAU,CACR,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,MAAA,CAAU,CACR,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,iBAAoB,CAClB,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,QAAW,CACT,KAAA,CAAS,QACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,iBAAA,CACA,kBACA,iBACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,EACA,OAAA,CAAW,CACT,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,kBAAA,CACA,mBACA,kBACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,EACX,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,kBACA,iBACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,EACX,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,CAAA,CACA,CAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,UACP,KAAA,CAAS,EACX,EACA,YAAA,CAAgB,4CAClB,CAAA,CACA,WAAA,CAAe,CACb,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,CAAA,CACA,CAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,UACP,KAAA,CAAS,EACX,EACA,YAAA,CAAgB,4CAClB,CAAA,CACA,QAAA,CAAY,CACV,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBACA,EAAA,CACA,iBACF,EACA,GAAA,CAAO,SAAA,CACP,MAAS,GACX,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,UAAA,CAAc,CACZ,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SAAA,CACP,MAAS,EACX,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,WAAA,CAAe,CACb,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,CAAA,CACA,EACA,CACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,CACX,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,CAAA,CACA,CAAA,CACA,CACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,GACX,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,iBAAA,CAAqB,CACnB,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,gBAAA,CACA,kBACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,kBAAA,CACA,kBACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,EACA,CAAA,CACA,CACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,EACA,KAAA,CAAS,CACP,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,UAAA,CAAc,CACZ,EACA,CAAA,CACA,CACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,4CAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,CAAA,CACA,CAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CACF,CAAA,CACA,OAAU,CACR,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,KAAA,CAAS,CACP,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,uBACV,YAAA,CAAgB,6CAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,uBAAA,CACV,YAAA,CAAgB,8CAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBAAA,CACV,aAAgB,6CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,sBAAA,CACV,aAAgB,6CAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6CAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6CAClB,CACF,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CACF,CAAA,CACA,UAAA,CAAc,CACZ,UAAA,CAAc,CACZ,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,YAAA,CAAgB,qDAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,qDAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,qDAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,aAAgB,qDAClB,CACF,EACA,MAAA,CAAU,CACR,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,aAAgB,iDAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,iDAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,GAAA,CACV,YAAA,CAAgB,iDAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,iDAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,aAAgB,iDAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,iDAClB,CACF,CACF,CAAA,CACA,IAAA,CAAQ,CACN,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,oCAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,oCAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,oCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,qCAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,oCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,oCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,oCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,uCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,oCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,oCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,oCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,CACF,CAAA,CACA,KAAA,CAAS,CACP,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,qCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,qCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,uCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,sCAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,IAAA,CAAQ,CACN,KAAA,CAAS,UAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,UAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,IAAA,CAAQ,CACN,MAAS,UAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,IAAA,CAAQ,CACN,MAAS,UAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,CACF,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,CACP,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,wCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,EAAA,CACV,YAAA,CAAgB,uCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,EAAA,CACV,aAAgB,uCAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,YAAA,CAAgB,uCAClB,CACF,CAAA,CACA,UAAA,CAAc,CACZ,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,2CAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,2CAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,0CAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,2CAClB,CAAA,CACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,0CAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,2CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,0CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,0CAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,2CAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,2CAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,2CAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,2CAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,2CAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,0CAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,4CAClB,CAAA,CACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,0CAClB,CACF,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,CACP,GAAM,CACJ,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,EACV,YAAA,CAAgB,yCAClB,EACA,EAAA,CAAM,CACJ,MAAS,QAAA,CACT,MAAA,CAAU,EACV,YAAA,CAAgB,yCAClB,EACA,KAAA,CAAS,CACP,MAAS,QAAA,CACT,MAAA,CAAU,KACV,YAAA,CAAgB,4CAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,yCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,aAAgB,0CAClB,CACF,CACF,CAAA,CACA,SAAA,CAAa,CACX,EAAA,CAAM,CACJ,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,uCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,uCAClB,CACF,CACF,CACF,CAAA,CACA,QAAA,CAAY,CACV,KAAA,CAAS,CACP,OAAA,CAAW,CACT,KAAQ,CACN,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,sBAAA,CACV,aAAgB,8DAClB,CACF,EACA,OAAA,CAAW,CACT,KAAQ,CACN,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,iEAClB,CACF,CAAA,CACA,MAAA,CAAU,CACR,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,gEAClB,CACF,CAAA,CACA,OAAA,CAAW,CACT,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,iEAClB,CACF,CAAA,CACA,OAAU,CACR,IAAA,CAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,wBAAA,CACV,aAAgB,mBAClB,CACF,EACA,MAAA,CAAU,CACR,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,yBACV,YAAA,CAAgB,oBAClB,CACF,CACF,CAAA,CACA,KAAQ,CACN,OAAA,CAAW,CACT,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,6BACV,YAAA,CAAgB,8DAClB,CACF,CAAA,CACA,UAAa,CACX,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,uBAAA,CACV,YAAA,CAAgB,gEAClB,CACF,EACA,QAAA,CAAY,CACV,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,wBAAA,CACV,YAAA,CAAgB,+DAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,qCACV,YAAA,CAAgB,wDAClB,CACF,CACF,CAAA,CACA,MAAS,CACP,MAAA,CAAU,CACR,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,8DAClB,CACF,CAAA,CACA,YAAe,CACb,IAAA,CAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,8BAAA,CACV,aAAgB,mEAClB,CACF,EACA,SAAA,CAAa,CACX,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,yBACV,YAAA,CAAgB,iEAClB,CACF,CACF,CAAA,CACA,MAAA,CAAU,CACR,OAAU,CACR,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,wBAAA,CACV,YAAA,CAAgB,+DAClB,CACF,EACA,aAAA,CAAiB,CACf,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,kCAAA,CACV,YAAA,CAAgB,sEAClB,CACF,CAAA,CACA,OAAA,CAAW,CACT,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,yBAAA,CACV,YAAA,CAAgB,gEAClB,CACF,CACF,EACA,MAAA,CAAU,CACR,QAAW,CACT,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,wBAAA,CACV,YAAA,CAAgB,gEAClB,CACF,CACF,EACA,KAAA,CAAS,CACP,KAAA,CAAS,CACP,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,sBAAA,CACV,aAAgB,6DAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,gEAClB,CACF,CAAA,CACA,QAAW,CACT,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,EACA,CAAA,CACA,CACF,EACA,GAAA,CAAO,SAAA,CACP,MAAS,GACX,CAAA,CACA,YAAA,CAAgB,4CAClB,CACF,CACF,CAAA,CACA,QAAW,CACT,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,mCAAA,CACV,aAAgB,oFAClB,CACF,EACA,KAAA,CAAS,CACP,KAAQ,CACN,IAAA,CAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,+BAAA,CACV,aAAgB,oEAClB,CACF,CACF,CAAA,CACA,MAAA,CAAU,CACR,YAAA,CAAgB,CACd,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,+BAAA,CACV,aAAgB,4CAClB,CACF,CACF,CAAA,CACA,OAAU,CACR,KAAA,CAAS,CACP,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,0BAAA,CACV,YAAA,CAAgB,6FAClB,CACF,CAAA,CACA,IAAO,CACL,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,4BAAA,CACV,aAAgB,6FAClB,CACF,EACA,cAAA,CAAkB,CAChB,KAAQ,CACN,KAAA,CAAS,QACT,MAAA,CAAU,+BAAA,CACV,aAAgB,6FAClB,CACF,CACF,CAAA,CACA,MAAA,CAAU,CACR,QAAA,CAAY,CACV,KAAA,CAAS,OAAA,CACT,OAAU,uBAAA,CACV,YAAA,CAAgB,kBAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,uBAAA,CACV,aAAgB,iBAClB,CACF,CACF,CAAA,CACA,IAAA,CAAQ,CACN,IAAA,CAAQ,CACN,KAAA,CAAS,YAAA,CACT,OAAU,CACR,WAAA,CACA,YACF,CAAA,CACA,YAAA,CAAgB,4CAClB,CAAA,CACA,IAAA,CAAQ,CACN,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,gDAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,gDAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,gDAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,gDAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,KAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,KAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,gDAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,+CAClB,CACF,CACF,CAAA,CACA,GAAM,CACJ,OAAA,CAAW,CACT,MAAA,CAAU,CACR,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,6BAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6BAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6BAClB,CACF,EACA,aAAA,CAAiB,CACf,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,yCAClB,EACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,yCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,yCAClB,CACF,CACF,EACA,MAAA,CAAU,CACR,QAAW,CACT,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,uBACV,YAAA,CAAgB,sEAClB,EACA,SAAA,CAAa,CACX,MAAS,WAAA,CACT,MAAA,CAAU,sBAAA,CACV,YAAA,CAAgB,wEAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,WAAA,CACT,OAAU,sBAAA,CACV,YAAA,CAAgB,sEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,uBAAA,CACV,aAAgB,mEAClB,CACF,EACA,OAAA,CAAW,CACT,SAAY,CACV,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mCAClB,CAAA,CACA,UAAA,CAAc,CACZ,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,qCAClB,EACA,UAAA,CAAc,CACZ,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,qCAClB,CAAA,CACA,cAAA,CAAkB,CAChB,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,aAAgB,yCAClB,CAAA,CACA,YAAe,CACb,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,sCAClB,CACF,EACA,IAAA,CAAQ,CACN,KAAQ,CACN,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,oBAAA,CACV,aAAgB,6BAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,6BAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,6BAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,6BAClB,CACF,CAAA,CACA,OAAU,CACR,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,yCAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,yCAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,yCAClB,CACF,CACF,CAAA,CACA,QAAW,CACT,QAAA,CAAY,CACV,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,aAAgB,qDAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,iDAClB,CACF,CAAA,CACA,MAAA,CAAU,CACR,aAAA,CAAiB,CACf,KAAA,CAAS,UAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,wCAClB,CAAA,CACA,aAAA,CAAiB,CACf,KAAA,CAAS,UAAA,CACT,MAAA,CAAU,yBAAA,CACV,aAAgB,wCAClB,CAAA,CACA,eAAkB,CAChB,KAAA,CAAS,WACT,MAAA,CAAU,yBAAA,CACV,YAAA,CAAgB,yCAClB,EACA,eAAA,CAAmB,CACjB,MAAS,UAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,0CAClB,EACA,YAAA,CAAgB,CACd,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,wDAClB,EACA,eAAA,CAAmB,CACjB,KAAA,CAAS,QAAA,CACT,OAAU,IAAA,CACV,YAAA,CAAgB,sCAClB,CACF,CAAA,CACA,MAAS,CACP,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,wDAClB,CAAA,CACA,WAAc,CACZ,KAAA,CAAS,SACT,MAAA,CAAU,IAAA,CACV,aAAgB,kDAClB,CACF,CACF,CACF,CAAA,CACA,UAAa,CACX,EAAA,CAAM,CACJ,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,oCAAA,CACV,YAAA,CAAgB,uDAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,OAAA,CACT,OAAU,uCAAA,CACV,YAAA,CAAgB,0DAClB,CAAA,CACA,SAAY,CACV,KAAA,CAAS,QACT,MAAA,CAAU,sCAAA,CACV,aAAgB,yDAClB,CAAA,CACA,OAAA,CAAW,CACT,MAAS,OAAA,CACT,MAAA,CAAU,wCACV,YAAA,CAAgB,0DAClB,EACA,UAAA,CAAc,CACZ,MAAS,OAAA,CACT,MAAA,CAAU,qCACV,YAAA,CAAgB,uDAClB,EACA,KAAA,CAAS,CACP,MAAS,OAAA,CACT,MAAA,CAAU,sCAAA,CACV,YAAA,CAAgB,yDAClB,CAAA,CACA,MAAA,CAAU,CACR,KAAA,CAAS,OAAA,CACT,OAAU,qCAAA,CACV,YAAA,CAAgB,wDAClB,CAAA,CACA,QAAW,CACT,KAAA,CAAS,QACT,MAAA,CAAU,oCAAA,CACV,aAAgB,uDAClB,CAAA,CACA,YAAA,CAAgB,CACd,MAAS,OAAA,CACT,MAAA,CAAU,0CACV,YAAA,CAAgB,4DAClB,EACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,wCACV,YAAA,CAAgB,0DAClB,EACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,qCAAA,CACV,YAAA,CAAgB,wDAClB,CAAA,CACA,gBAAA,CAAoB,CAClB,KAAA,CAAS,OAAA,CACT,OAAU,4CAAA,CACV,YAAA,CAAgB,+DAClB,CAAA,CACA,QAAW,CACT,KAAA,CAAS,QACT,MAAA,CAAU,sCAAA,CACV,aAAgB,yDAClB,CAAA,CACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,uCACV,YAAA,CAAgB,yDAClB,EACA,IAAA,CAAQ,CACN,MAAS,OAAA,CACT,MAAA,CAAU,oCACV,YAAA,CAAgB,sDAClB,EACA,OAAA,CAAW,CACT,MAAS,OAAA,CACT,MAAA,CAAU,sCAAA,CACV,YAAA,CAAgB,yDAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,OAAA,CACT,OAAU,kCAAA,CACV,YAAA,CAAgB,kDAClB,CAAA,CACA,OAAU,CACR,OAAA,CAAW,CACT,UAAA,CAAc,CACZ,MAAS,OAAA,CACT,MAAA,CAAU,+BAAA,CACV,YAAA,CAAgB,gCAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,OAAA,CACT,OAAU,2CAAA,CACV,YAAA,CAAgB,4CAClB,CAAA,CACA,UAAA,CAAc,CACZ,KAAA,CAAS,OAAA,CACT,OAAU,qCAAA,CACV,YAAA,CAAgB,gCAClB,CACF,CAAA,CACA,MAAA,CAAU,CACR,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,6CAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,KAAA,CAAS,EAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,6CAClB,CACF,EACA,KAAA,CAAS,CACP,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,0BAAA,CACV,aAAgB,gDAClB,CAAA,CACA,WAAc,CACZ,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,iCACV,YAAA,CAAgB,sDAClB,CACF,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,kCAAA,CACV,aAAgB,iDAClB,CAAA,CACA,cAAiB,CACf,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,wCAAA,CACV,aAAgB,8DAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,wCAAA,CACV,YAAA,CAAgB,8DAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,yCACV,YAAA,CAAgB,8DAClB,CACF,CAAA,CACA,aAAgB,CACd,KAAA,CAAS,YACT,MAAA,CAAU,mDAAA,CACV,aAAgB,kGAClB,CACF,CAAA,CACA,WAAA,CAAe,CACb,KAAA,CAAS,OAAA,CACT,OAAU,6BAAA,CACV,YAAA,CAAgB,aAClB,CAAA,CACA,mBAAA,CAAqB,CACnB,KAAA,CAAS,QACT,MAAA,CAAU,sCAAA,CACV,aAAgB,sCAClB,CAAA,CACA,qBAAsB,CACpB,KAAA,CAAS,QACT,MAAA,CAAU,sCAAA,CACV,aAAgB,sCAClB,CAAA,CACA,mBAAoB,CAClB,KAAA,CAAS,QACT,MAAA,CAAU,kCAAA,CACV,YAAA,CAAgB,sCAClB,EACA,iBAAA,CAAmB,CACjB,MAAS,OAAA,CACT,MAAA,CAAU,kCACV,YAAA,CAAgB,sCAClB,CAAA,CACA,WAAA,CAAe,CACb,KAAA,CAAS,OAAA,CACT,OAAU,qCAAA,CACV,YAAA,CAAgB,8EAClB,CAAA,CACA,QAAA,CAAY,CACV,KAAA,CAAS,QACT,MAAA,CAAU,0BAAA,CACV,aAAgB,iFAClB,CAAA,CACA,WAAc,CACZ,KAAA,CAAS,QACT,MAAA,CAAU,4BAAA,CACV,aAAgB,iFAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,aACT,MAAA,CAAU,sBAAA,CACV,YAAA,CAAgB,sCAClB,EACA,MAAA,CAAU,CACR,MAAS,CACP,KAAA,CAAS,YACT,MAAA,CAAU,gCAAA,CACV,YAAA,CAAgB,gCAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,iCACV,YAAA,CAAgB,+BAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,WAAA,CACT,OAAU,8BAAA,CACV,YAAA,CAAgB,kCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,8BAAA,CACV,YAAA,CAAgB,+BAClB,CAAA,CACA,KAAA,CAAS,CACP,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,sBAAA,CACV,YAAA,CAAgB,sCAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,uBAAA,CACV,aAAgB,sCAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,sBAAA,CACV,YAAA,CAAgB,sCAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,2EAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,2EAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,sBAAA,CACV,YAAA,CAAgB,sCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,4BAAA,CACV,aAAgB,2EAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,4BAAA,CACV,YAAA,CAAgB,2EAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,2EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,6BACV,YAAA,CAAgB,2EAClB,CACF,CACF,CAAA,CACA,MAAA,CAAU,CACR,MAAS,CACP,KAAA,CAAS,WACT,MAAA,CAAU,oCAAA,CACV,aAAgB,sCAClB,CAAA,CACA,KAAA,CAAS,CACP,MAAS,UAAA,CACT,MAAA,CAAU,qCACV,YAAA,CAAgB,sCAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,aAAA,CACT,OAAU,CACR,EAAA,CACA,GACA,EAAA,CACA,CACF,EACA,YAAA,CAAgB,0BAClB,EACA,YAAA,CAAgB,CACd,MAAS,QAAA,CACT,MAAA,CAAU,oCACV,YAAA,CAAgB,4CAClB,EACA,eAAA,CAAmB,CACjB,KAAA,CAAS,QAAA,CACT,OAAU,sCAAA,CACV,YAAA,CAAgB,sCAClB,CACF,CAAA,CACA,cAAiB,CACf,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,kCACV,YAAA,CAAgB,8DAClB,EACA,MAAA,CAAU,CACR,SAAY,CACV,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mFAClB,EACA,YAAA,CAAgB,CACd,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,uFAClB,CAAA,CACA,aAAgB,CACd,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,uFAClB,CAAA,CACA,OAAA,CAAW,CACT,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,kFAClB,CACF,CAAA,CACA,KAAA,CAAS,CACP,WAAA,CAAe,CACb,KAAA,CAAS,QAAA,CACT,OAAU,IAAA,CACV,YAAA,CAAgB,sCAClB,CAAA,CACA,WAAA,CAAe,CACb,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,aAAgB,sCAClB,CAAA,CACA,cAAiB,CACf,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,EACV,YAAA,CAAgB,wCAClB,EACA,KAAA,CAAS,CACP,GAAM,CACJ,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,0EAClB,EACA,EAAA,CAAM,CACJ,MAAS,QAAA,CACT,MAAA,CAAU,0BAAA,CACV,YAAA,CAAgB,0EAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,QAAA,CACT,OAAU,6BAAA,CACV,YAAA,CAAgB,0EAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,QAAA,CACT,OAAU,0BAAA,CACV,YAAA,CAAgB,0EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,SACT,MAAA,CAAU,2BAAA,CACV,aAAgB,0EAClB,CACF,CACF,CAAA,CACA,MAAA,CAAU,CACR,UAAA,CAAc,CACZ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,IACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,kDAClB,CAAA,CACA,MAAA,CAAU,CACR,SAAA,CAAa,CACX,MAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,8EAClB,EACA,QAAA,CAAY,CACV,MAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,6EAClB,CAAA,CACA,MAAA,CAAU,CACR,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,2EAClB,CACF,CAAA,CACA,MAAA,CAAU,CACR,aAAgB,CACd,KAAA,CAAS,SACT,MAAA,CAAU,CAAA,CACV,aAAgB,iFAClB,CAAA,CACA,MAAA,CAAU,CACR,MAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,2EAClB,EACA,SAAA,CAAa,CACX,MAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,8EAClB,EACA,UAAA,CAAc,CACZ,MAAS,QAAA,CACT,MAAA,CAAU,EAAA,CACV,YAAA,CAAgB,+EAClB,CAAA,CACA,KAAA,CAAS,CACP,KAAA,CAAS,QAAA,CACT,OAAU,EAAA,CACV,YAAA,CAAgB,0EAClB,CAAA,CACA,SAAY,CACV,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,aAAgB,6EAClB,CAAA,CACA,QAAA,CAAY,CACV,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,6EAClB,CACF,CAAA,CACA,SAAA,CAAa,CACX,SAAA,CAAa,CACX,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,iFAClB,EACA,QAAA,CAAY,CACV,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,gFAClB,CAAA,CACA,SAAA,CAAa,CACX,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,EAAA,CACV,aAAgB,iFAClB,CAAA,CACA,MAAS,CACP,KAAA,CAAS,SACT,MAAA,CAAU,EAAA,CACV,YAAA,CAAgB,6EAClB,EACA,KAAA,CAAS,CACP,MAAS,QAAA,CACT,MAAA,CAAU,EACV,YAAA,CAAgB,6EAClB,EACA,QAAA,CAAY,CACV,MAAS,QAAA,CACT,MAAA,CAAU,GACV,YAAA,CAAgB,gFAClB,EACA,KAAA,CAAS,CACP,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,6EAClB,CAAA,CACA,SAAA,CAAa,CACX,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,GAAA,CACV,aAAgB,iFAClB,CAAA,CACA,MAAS,CACP,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,YAAA,CAAgB,6EAClB,EACA,QAAA,CAAY,CACV,MAAS,QAAA,CACT,MAAA,CAAU,IACV,YAAA,CAAgB,gFAClB,EACA,QAAA,CAAY,CACV,MAAS,QAAA,CACT,MAAA,CAAU,EACV,YAAA,CAAgB,gFAClB,EACA,UAAA,CAAc,CACZ,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,kFAClB,CACF,CAAA,CACA,WAAc,CACZ,cAAA,CAAkB,CAChB,KAAA,CAAS,YACT,MAAA,CAAU,CAAE,MAAS,GAAA,CAAK,IAAA,CAAQ,IAAK,CAAA,CACvC,YAAA,CAAgB,iMAClB,CAAA,CACA,UAAa,CACX,KAAA,CAAS,SACT,MAAA,CAAU,GAAA,CACV,aAAgB,iDAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,GAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,iDAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,iDAClB,CAAA,CACA,SAAY,CACV,KAAA,CAAS,WACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,GACV,CAAA,CACA,aAAgB,6DAClB,CACF,CACF,CAAA,CACA,UAAA,CAAc,CACZ,IAAA,CAAQ,CACN,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,2BAAA,CACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,2BAAA,CACV,aAAgB,8EAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,2BAAA,CACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,yBAAA,CACV,aAAgB,8EAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,2BAAA,CACV,YAAA,CAAgB,8EAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,2BAAA,CACV,aAAgB,8EAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,4BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,8EAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,8EAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,0BAAA,CACV,YAAA,CAAgB,8EAClB,CACF,CAAA,CACA,UAAA,CAAc,CACZ,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,sCAAA,CACV,aAAgB,oFAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,uCACV,YAAA,CAAgB,oFAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,uCACV,YAAA,CAAgB,oFAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,sCAAA,CACV,YAAA,CAAgB,oFAClB,CACF,CAAA,CACA,OAAU,CACR,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,kCAAA,CACV,aAAgB,gFAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,SACT,MAAA,CAAU,kCAAA,CACV,YAAA,CAAgB,gFAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,mCACV,YAAA,CAAgB,gFAClB,EACA,IAAA,CAAQ,CACN,MAAS,QAAA,CACT,MAAA,CAAU,mCACV,YAAA,CAAgB,gFAClB,EACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,kCAAA,CACV,YAAA,CAAgB,gFAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,kCAAA,CACV,aAAgB,gFAClB,CACF,CACF,CAAA,CACA,IAAA,CAAQ,CACN,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,mBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,mBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,KAAA,CAAS,CACP,MAAS,WAAA,CACT,MAAA,CAAU,uBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,mEAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,oBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,mBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,mEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,mEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,mEAClB,CACF,CAAA,CACA,KAAA,CAAS,CACP,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,oEAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,sBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,oEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,aAAgB,oEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,oEAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,IAAA,CAAQ,CACN,KAAA,CAAS,UAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,uEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,UAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,uEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,UAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,uEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,WACT,MAAA,CAAU,yBAAA,CACV,aAAgB,uEAClB,CACF,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,CACP,MAAS,QAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,sEAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,gCAAA,CACV,YAAA,CAAgB,4CAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,OAAU,4BAAA,CACV,YAAA,CAAgB,4CAClB,CAAA,CACA,IAAA,CAAQ,CACN,KAAA,CAAS,QAAA,CACT,MAAA,CAAU,wBAAA,CACV,aAAgB,sEAClB,CACF,EACA,UAAA,CAAc,CACZ,GAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,yEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,0BAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,0BAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,yBAAA,CACV,aAAgB,yEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,yEAClB,EACA,EAAA,CAAM,CACJ,MAAS,WAAA,CACT,MAAA,CAAU,yBAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,0BAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,yBAAA,CACV,aAAgB,yEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,yEAClB,EACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,0BAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,0BAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,0BAAA,CACV,aAAgB,yEAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,2BACV,YAAA,CAAgB,yEAClB,EACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,yEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,yBAAA,CACV,aAAgB,yEAClB,CAAA,CACA,KAAQ,CACN,KAAA,CAAS,YACT,MAAA,CAAU,2BAAA,CACV,aAAgB,yEAClB,CAAA,CACA,GAAM,CACJ,KAAA,CAAS,YACT,MAAA,CAAU,yBAAA,CACV,aAAgB,yEAClB,CACF,CAAA,CACA,SAAA,CAAa,CACX,EAAA,CAAM,CACJ,MAAS,QAAA,CACT,MAAA,CAAU,yBACV,YAAA,CAAgB,wEAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,QAAA,CACT,OAAU,wBAAA,CACV,YAAA,CAAgB,wEAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,QAAW,CACT,UAAA,CAAc,CAAE,KAAA,CAAS,OAAA,CAAS,OAAU,iCAAA,CAAmC,YAAA,CAAgB,wJAA2C,CAAA,CAC1I,MAAA,CAAU,CAAE,KAAA,CAAS,OAAA,CAAS,OAAU,uBAAA,CAAyB,YAAA,CAAgB,8DAAa,CAAA,CAC9F,SAAA,CAAa,CAAE,KAAA,CAAS,QAAS,MAAA,CAAU,2BAAA,CAA6B,aAAgB,oEAAc,CAAA,CACtG,gBAAmB,CAAE,KAAA,CAAS,WAAA,CAAa,MAAA,CAAU,+BAAgC,YAAA,CAAgB,0EAAe,EACpH,aAAA,CAAiB,CAAE,MAAS,WAAA,CAAa,MAAA,CAAU,8BAAA,CAAgC,YAAA,CAAgB,oEAAc,CAAA,CACjH,eAAA,CAAmB,CAAE,KAAA,CAAS,WAAA,CAAa,OAAU,8BAAA,CAAgC,YAAA,CAAgB,8DAAa,CACpH,CACF,EACA,KAAA,CAAS,CACP,KAAQ,CACN,SAAA,CAAa,CACX,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,kCAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,CAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,yCAClB,CAAA,CACA,MAAS,CACP,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,qCAClB,CAAA,CACA,UAAA,CAAc,CACZ,KAAA,CAAS,QAAA,CACT,OAAU,CAAA,CACV,YAAA,CAAgB,2CAClB,CACF,CACF,CAAA,CACA,aAAA,CAAiB,CACf,KAAA,CAAS,WAAA,CACT,OAAU,qBAAA,CACV,YAAA,CAAgB,0DAClB,CAAA,CACA,YAAA,CAAgB,CACd,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,yDAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,+BACV,YAAA,CAAgB,mDAClB,EACA,UAAA,CAAc,CACZ,MAAS,OAAA,CACT,MAAA,CAAU,wCACV,YAAA,CAAgB,uDAClB,EACA,WAAA,CAAe,CACb,MAAS,OAAA,CACT,MAAA,CAAU,uCACV,YAAA,CAAgB,wDAClB,CAAA,CACA,aAAA,CAAiB,CACf,KAAA,CAAS,OAAA,CACT,OAAU,qCAAA,CACV,YAAA,CAAgB,0DAClB,CACF,CAAA,CACA,QAAA,CAAY,CACV,UAAa,CACX,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,aAAgB,iCAClB,CACF,EACA,MAAA,CAAU,CACR,OAAU,CACR,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,2CAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,GACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,2CAClB,CAAA,CACA,EAAA,CAAM,CACJ,KAAA,CAAS,WAAA,CACT,OAAU,CACR,KAAA,CAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,2CAClB,CACF,CACF,EACA,WAAA,CAAe,CACb,WAAc,CACZ,KAAA,CAAS,YACT,MAAA,CAAU,CACR,MAAS,EAAA,CACT,IAAA,CAAQ,IACV,CAAA,CACA,YAAA,CAAgB,iDAClB,CAAA,CACA,MAAS,CACP,IAAA,CAAQ,CACN,KAAA,CAAS,WAAA,CACT,OAAU,oBAAA,CACV,YAAA,CAAgB,sCAClB,CAAA,CACA,WAAc,CACZ,KAAA,CAAS,SACT,MAAA,CAAU,IAAA,CACV,aAAgB,4CAClB,CACF,CACF,CAAA,CACA,KAAQ,CACN,UAAA,CAAc,CACZ,IAAA,CAAQ,CAAE,MAAS,WAAA,CAAa,MAAA,CAAU,oBAAA,CAAsB,YAAA,CAAgB,kDAAW,CAAA,CAC3F,MAAA,CAAU,CAAE,KAAA,CAAS,WAAA,CAAa,OAAU,mBAAA,CAAqB,YAAA,CAAgB,kGAAmB,CAAA,CACpG,SAAY,CAAE,KAAA,CAAS,YAAa,MAAA,CAAU,oBAAA,CAAsB,aAAgB,0EAAe,CAAA,CACnG,UAAA,CAAc,CAAE,MAAS,OAAA,CAAS,MAAA,CAAU,oCAAqC,YAAA,CAAgB,8DAAa,EAC9G,UAAA,CAAc,CAAE,KAAA,CAAS,OAAA,CAAS,OAAU,kCAAA,CAAoC,YAAA,CAAgB,8DAAa,CAC/G,CAAA,CACA,QAAW,CACT,KAAA,CAAS,CACP,IAAA,CAAQ,CACN,MAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,uCAClB,EACA,UAAA,CAAc,CACZ,KAAA,CAAS,QAAA,CACT,OAAU,GAAA,CACV,YAAA,CAAgB,6CAClB,CACF,CACF,EACA,aAAA,CAAiB,CACf,KAAA,CAAS,WAAA,CACT,OAAU,yBAAA,CACV,YAAA,CAAgB,yDAClB,CACF,CAAA,CACA,MAAS,CACP,OAAA,CAAW,CACT,KAAA,CAAS,YACT,MAAA,CAAU,sCAAA,CACV,aAAgB,oDAClB,CACF,EACA,KAAA,CAAS,CACP,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,gCAAA,CACV,aAAgB,gDAClB,CACF,EACA,OAAA,CAAW,CACT,KAAA,CAAS,CACP,MAAS,UAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,eAClB,EACA,SAAA,CAAa,CACX,MAAS,UAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,mBAClB,EACA,UAAA,CAAc,CACZ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,CAAA,CACT,KAAQ,IACV,CAAA,CACA,aAAgB,oDAClB,CACF,EACA,aAAA,CAAiB,CACf,SAAA,CAAa,CACX,MAAS,UAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,GAAA,CACT,KAAQ,IACV,CAAA,CACA,YAAA,CAAgB,yBAClB,CACF,CAAA,CACA,IAAA,CAAQ,CACN,UAAA,CAAc,CACZ,MAAS,WAAA,CACT,MAAA,CAAU,CACR,KAAA,CAAS,EACT,IAAA,CAAQ,IACV,EACA,YAAA,CAAgB,iDAClB,CACF,CAAA,CACA,IAAA,CAAQ,CACN,IAAA,CAAQ,CACN,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,yBAAA,CACV,aAAgB,qFAClB,CAAA,CACA,GAAA,CAAO,CACL,MAAS,WAAA,CACT,MAAA,CAAU,0BACV,YAAA,CAAgB,qFAClB,EACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,OAAU,2BAAA,CACV,YAAA,CAAgB,qFAClB,CAAA,CACA,GAAA,CAAO,CACL,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,2BAAA,CACV,aAAgB,qFAClB,CAAA,CACA,IAAO,CACL,KAAA,CAAS,YACT,MAAA,CAAU,2BAAA,CACV,aAAgB,qFAClB,CACF,CACF,CAAA,CACA,OAAA,CAAW,CACT,OAAA,CAAW,CACT,mBAAsB,CACpB,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,qBACV,YAAA,CAAgB,qDAClB,EACA,iBAAA,CAAqB,CACnB,MAAS,WAAA,CACT,MAAA,CAAU,oBAAA,CACV,YAAA,CAAgB,oDAClB,CACF,CAAA,CACA,QAAW,CACT,kBAAA,CAAsB,CACpB,KAAA,CAAS,WAAA,CACT,MAAA,CAAU,oBAAA,CACV,aAAgB,qDAClB,CAAA,CACA,kBAAqB,CACnB,KAAA,CAAS,YACT,MAAA,CAAU,oBAAA,CACV,aAAgB,oDAClB,CACF,EACA,WAAA,CAAe,CACb,mBAAsB,CACpB,KAAA,CAAS,YACT,MAAA,CAAU,qBAAA,CACV,YAAA,CAAgB,yDAClB,EACA,iBAAA,CAAqB,CACnB,MAAS,WAAA,CACT,MAAA,CAAU,sBACV,YAAA,CAAgB,wDAClB,CACF,CACF,CACF,CACF,CACF,ECr0HA,IAAAC,EAAAA,CAAA,CACE,IAAA,CAAQ,CACN,EAAA,CAAM,CACJ,MAAS,CACP,IAAA,CAAQ,CACN,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,mBACA,kBAAA,CACA,kBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,oBAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBAAA,CACA,kBAAA,CACA,kBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,uBAClB,CAAA,CACA,QAAA,CAAY,CACV,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,kBAAA,CACA,kBAAA,CACA,iBACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,aAAgB,wBAClB,CAAA,CACA,WAAc,CACZ,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,CAAA,CACA,EACA,CACF,CAAA,CACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,0BAClB,EACA,KAAA,CAAS,CACP,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,qBAClB,EACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,UAAA,CAAc,CACZ,kBACA,iBAAA,CACA,iBACF,EACA,GAAA,CAAO,SACT,EACA,YAAA,CAAgB,sBAClB,CAAA,CACA,OAAA,CAAW,CACT,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,kBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,uBAClB,CAAA,CACA,aAAA,CAAiB,CACf,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,mBACA,iBAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,6BAClB,CAAA,CACA,YAAA,CAAgB,CACd,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,aAAgB,4BAClB,CAAA,CACA,OAAU,CACR,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,kBAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,sBAClB,CAAA,CACA,MAAS,CACP,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,kBACA,CACF,CAAA,CACA,IAAO,SACT,CAAA,CACA,aAAgB,qBAClB,CAAA,CACA,MAAA,CAAU,CACR,MAAS,OAAA,CACT,MAAA,CAAU,CACR,UAAA,CAAc,MAAA,CACd,WAAc,CACZ,iBAAA,CACA,kBACA,CACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,EACX,CAAA,CACA,YAAA,CAAgB,sBAClB,CAAA,CACA,QAAA,CAAY,CACV,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,kBAAA,CACA,iBAAA,CACA,iBACF,CAAA,CACA,IAAO,SAAA,CACP,KAAA,CAAS,GACX,CAAA,CACA,YAAA,CAAgB,wBAClB,CAAA,CACA,UAAA,CAAc,CACZ,KAAA,CAAS,QACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,iBAAA,CACA,kBAAA,CACA,CACF,CAAA,CACA,GAAA,CAAO,UACP,KAAA,CAAS,EACX,EACA,YAAA,CAAgB,0BAClB,EACA,iBAAA,CAAqB,CACnB,KAAA,CAAS,OAAA,CACT,OAAU,CACR,UAAA,CAAc,OACd,UAAA,CAAc,CACZ,mBACA,kBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,iCAClB,CAAA,CACA,MAAA,CAAU,CACR,KAAA,CAAS,OAAA,CACT,MAAA,CAAU,CACR,WAAc,MAAA,CACd,UAAA,CAAc,CACZ,kBAAA,CACA,kBAAA,CACA,iBACF,CAAA,CACA,GAAA,CAAO,SACT,CAAA,CACA,YAAA,CAAgB,4CAClB,CACF,CACF,CACF,CAAA,CACA,QAAA,CAAY,CACV,IAAA,CAAQ,CACN,IAAA,CAAQ,CACN,MAAS,YAAA,CACT,MAAA,CAAU,CACR,OAAA,CACA,iBAAA,CACA,kBACA,YACF,CAAA,CACA,YAAA,CAAgB,wBAClB,CACF,CACF,CACF,ECtOA,IAAMC,EAAAA,CAAU1J,EAACI,CAAAA,EAAqD,CAAC,CAACA,CAAAA,EAAS,OAAOA,CAAAA,EAAU,QAAA,EAAY,CAAC,KAAA,CAAM,OAAA,CAAQA,CAAK,CAAA,CAAlH,SAAA,CAAA,CAET,SAASuJ,EAAAA,CAAiB3C,CAAAA,CAAmBkB,EAAqC,CACvF,SAAS0B,EAAMC,CAAAA,CAAYC,CAAAA,CAAqB,CAC9C,GAAIA,CAAAA,GAAM,MAAA,CAAW,OAAOD,EAC5B,GAAI,CAACH,GAAQG,CAAC,CAAA,EAAK,CAACH,EAAAA,CAAQI,CAAC,CAAA,EAAK,QAAA,GAAYA,GAAK,QAAA,GAAYD,CAAAA,CAAG,OAAOC,CAAAA,CACzE,IAAM7C,EAAS,CAAE,GAAG4C,CAAE,CAAA,CACtB,QAAWE,CAAAA,IAAO,MAAA,CAAO,KAAKD,CAAC,CAAA,CAAG7C,EAAO8C,CAAG,CAAA,CAAIH,CAAAA,CAAMC,CAAAA,CAAEE,CAAG,CAAA,CAAGD,CAAAA,CAAEC,CAAG,CAAC,CAAA,CACpE,OAAO9C,CACT,CANS,OAAAjH,CAAAA,CAAA4J,EAAA,OAAA,CAAA,CAOFA,CAAAA,CAAM5C,EAAMkB,CAAQ,CAC7B,CATgBlI,CAAAA,CAAA2J,EAAAA,CAAA,kBAAA,CAAA,CAWT,SAASK,GAAW1F,CAAAA,CAAc,CACvC,OAAO,eAAA,CAAkBA,CAAAA,CAAK,QAAQ,kBAAA,CAAoB,EAAE,CAAA,CAAE,OAAA,CAAQ,qBAAsB,OAAO,CAAA,CAAE,QAAQ,KAAA,CAAO,GAAG,EAAE,WAAA,EAC3H,CAFgBtE,CAAAA,CAAAgK,EAAAA,CAAA,cCVT,IAAMC,EAAAA,CAAkBT,GAClBU,EAAAA,CAAiB,CAC5B,IAAK,CAAE,EAAA,CAAI,KAAA,CAAO,KAAA,CAAO,MAAO,UAAA,CAAY,CAAC,MAAM,CAAA,CAAG,MAAA,CAAQT,EAAmB,CAAA,CACjF,cAAA,CAAgB,CAAE,EAAA,CAAI,eAAgB,KAAA,CAAO,sCAAA,CAAoB,WAAY,CAAC,MAAM,EAAG,MAAA,CAAQ,EAAkB,CACnH,EAGO,SAASU,EAAAA,CAAeC,EAAS,KAAA,CAAOlC,CAAAA,CAAqC,CAClF,GAAI,CAAC,OAAO,SAAA,CAAU,cAAA,CAAe,KAAKgC,EAAAA,CAAgBE,CAAM,EAAG,MAAM,IAAI,UAAU,CAAA,mBAAA,EAAsBA,CAAM,CAAA,CAAE,CAAA,CACrH,IAAMC,CAAAA,CAASH,EAAAA,CAAeE,CAAqC,CAAA,CACnE,OAAOT,GAAiBA,EAAAA,CAAiBM,EAAAA,CAAiBI,CAAAA,CAAO,MAAM,EAAGnC,CAAQ,CACpF,CAJgBlI,CAAAA,CAAAmK,EAAAA,CAAA,kBCDT,IAAMG,GAAqBH,EAAAA,CAAe,KAAK,EAChDI,EAAAA,CAAwBnF,EAAAA,CAAmBkF,GAAoB,CAAE,SAAA,CAAW,MAAO,CAAC,EAGnF,SAASE,EAAAA,CAAeC,CAAAA,CAA6C,CAC1E,OAAOC,EAAAA,CAAmBtF,GAAmBqF,CAAAA,CAAQ,CAAE,SAAA,CAAW,MAAO,CAAC,CAAC,CAC7E,CAFgBzK,CAAAA,CAAAwK,EAAAA,CAAA,kBAGhB,SAASE,EAAAA,CAAmBvF,CAAAA,CAAuD,CACjF,IAAMwF,CAAAA,CAAoC,GAC1C,IAAA,IAAWrG,CAAAA,IAAQ,OAAO,IAAA,CAAKa,CAAAA,CAAS,SAAS,CAAA,CAAE,OAAOb,CAAAA,EAAQA,CAAAA,CAAK,WAAW,eAAe,CAAC,EAAG,CACnG,IAAMgC,CAAAA,CAAO0D,EAAAA,CAAW1F,CAAI,CAAA,CAC5B,GAAIqG,EAAUrE,CAAI,CAAA,GAAM,OAAW,MAAM,IAAI,SAAA,CAAU,CAAA,uBAAA,EAA0BA,CAAI,CAAA,CAAE,CAAA,CACvFqE,EAAUrE,CAAI,CAAA,CAAIpB,GAAsBC,CAAAA,CAAUb,CAAI,EACxD,CACA,QAAWgC,CAAAA,IAAQ,CAAC,aAAc,MAAA,CAAQ,OAAA,CAAS,4BAA6B,MAAM,CAAA,CACpF,GAAI,CAACqE,EAAU,eAAA,CAAkBrE,CAAI,EAAG,MAAM,IAAI,UAAU,CAAA,2BAAA,EAA8BA,CAAI,EAAE,CAAA,CAElG,OAAOqE,CACT,CAXS3K,CAAAA,CAAA0K,GAAA,oBAAA,CAAA,CAcT,IAAME,GAAiBpC,aAAAA,CAA8B,IAAI,CAAA,CACnDqC,EAAAA,CAAqBrC,cAAc,CAAC,CAAA,CACnC,SAASsC,CAAAA,CAAeC,CAAAA,CAA0B,CACvD,IAAMrE,CAAAA,CAAQyC,UAAAA,CAAWyB,EAAc,EACjCI,CAAAA,CAAY3B,EAAAA,GACZ4B,CAAAA,CAAc3B,EAAAA,GACd,CAAC4B,CAAAA,CAAmBC,CAAoB,CAAA,CAAInK,UAAwB,CAC1E,OAAAO,UAAU,IAAM,CACd,GAAIwJ,CAAAA,EAAYrE,CAAAA,EAAO,KAAOsE,CAAAA,CAAW,OAEzC,IAAMI,CAAAA,CAAAA,CADWH,CAAAA,CAAY,eAAc,EAAK,UAAA,CAAW,WACpC,eAAA,CACvB,GAAI,CAACG,CAAAA,CAAM,OACX,IAAMC,CAAAA,CAASrL,EAAA,IAAMmL,CAAAA,CAAqBC,EAAK,GAAA,GAAQ,KAAA,CAAQ,KAAA,CAAQ,KAAK,EAA7D,QAAA,CAAA,CACfC,CAAAA,GAAU,IAAMC,CAAAA,CAAW,IAAI,gBAAA,CAAiBD,CAAM,CAAA,CAAG,OAAAC,EAAS,OAAA,CAAQF,CAAAA,CAAM,CAAE,UAAA,CAAY,IAAA,CAAM,gBAAiB,CAAC,KAAK,CAAE,CAAC,CAAA,CACvH,IAAME,CAAAA,CAAS,UAAA,EACxB,CAAA,CAAG,CAACP,EAAUrE,CAAAA,EAAO,GAAA,CAAKsE,CAAAA,CAAWC,CAAW,CAAC,CAAA,CAC1CF,CAAAA,EAAYrE,GAAO,GAAA,EAAOsE,CAAAA,EAAaE,CAChD,CAfgBlL,CAAAA,CAAA8K,CAAAA,CAAA,gBAAA,CAAA,CAgBT,SAASS,EAAAA,EAA6D,CAAE,IAAMC,CAAAA,CAAStC,EAAAA,GAAoB,OAAOsC,CAAAA,CAAO,QAAA,CAAWA,CAAAA,CAAS,CAAE,GAAGxD,EAAAA,CAAM,SAAU,KAAM,CAAG,CAAlKhI,CAAAA,CAAAuL,EAAAA,CAAA,aAAA,CAAA,CACT,SAASE,IAAkB,CAAE,OAAOtC,WAAWyB,EAAc,CAAA,GAAM,IAAM,CAAhE5K,CAAAA,CAAAyL,EAAAA,CAAA,iBAAA,CAAA,CAChB,IAAMC,EAAAA,CAAiB,IAAI,QAC3B,SAASC,EAAAA,CAAaC,EAAoB,CACxC,IAAMjD,CAAAA,CAAW+C,EAAAA,CAAe,IAAIE,CAAQ,CAAA,CAC5C,GAAIjD,CAAAA,CAAY,OAAAA,EAAS,KAAA,EAAA,CAAgB,IAAMkD,EAAAA,CAAaD,CAAQ,EACpE,IAAMR,CAAAA,CAAOQ,EAAS,eAAA,CAChBE,CAAAA,CAAWV,EAAK,YAAA,CAAa,uBAAuB,EACpDW,CAAAA,CAAU/L,CAAAA,CAAA,IAAMoL,CAAAA,CAAK,YAAA,CAAa,wBAAyB,SAAS,CAAA,CAA1D,WACVY,CAAAA,CAAWhM,CAAAA,CAAA,IAAMoL,CAAAA,CAAK,aAAa,uBAAA,CAAyB,UAAU,EAA3D,UAAA,CAAA,CACjB,OAAAQ,EAAS,gBAAA,CAAiB,aAAA,CAAeG,CAAAA,CAAS,IAAI,EACtDH,CAAAA,CAAS,gBAAA,CAAiB,UAAWI,CAAAA,CAAU,IAAI,EACnDN,EAAAA,CAAe,GAAA,CAAIE,CAAAA,CAAU,CAAE,MAAO,CAAA,CAAG,OAAA,CAAS5L,EAAA,IAAM,CAAE4L,EAAS,mBAAA,CAAoB,aAAA,CAAeG,EAAS,IAAI,CAAA,CAAGH,EAAS,mBAAA,CAAoB,SAAA,CAAWI,EAAU,IAAI,CAAA,CAAOF,IAAa,IAAA,CAAMV,CAAAA,CAAK,eAAA,CAAgB,uBAAuB,EAAQA,CAAAA,CAAK,YAAA,CAAa,wBAAyBU,CAAQ,EAAG,EAA9P,SAAA,CAAgQ,CAAC,CAAA,CAC5S,IAAMD,GAAaD,CAAQ,CACpC,CAXS5L,CAAAA,CAAA2L,EAAAA,CAAA,gBAYT,SAASE,EAAAA,CAAaD,CAAAA,CAAoB,CAAE,IAAMK,CAAAA,CAAQP,EAAAA,CAAe,IAAIE,CAAQ,CAAA,CAAOK,GAAS,EAAEA,CAAAA,CAAM,QAAU,CAAA,GAAKA,CAAAA,CAAM,SAAQ,CAAGP,EAAAA,CAAe,OAAOE,CAAQ,CAAA,EAAK,CAAvK5L,CAAAA,CAAA6L,EAAAA,CAAA,cAAA,CAAA,CAEF,SAASK,GAAc,CAAE,MAAA,CAAAzB,EAAQ,MAAA,CAAAL,CAAAA,CAAQ,QAAA1E,CAAAA,CAAS,QAAA,CAAAyG,CAAAA,CAAU,SAAA,CAAAC,EAAW,KAAA,CAAAC,CAAAA,CAAO,IAAAC,CAAAA,CAAK,GAAGC,CAAK,CAAA,CAAuB,CACvH,IAAMC,CAAAA,CAASrD,WAAWyB,EAAc,CAAA,CAClCI,EAAY5B,EAAAA,EAAwB,CACpCqD,EAAqBpD,EAAAA,EAAoB,CACzCqD,EAAWtC,CAAAA,EAAUoC,CAAAA,EAAQ,QAAU,KAAA,CACvCG,CAAAA,CAAmBjH,GAAW8G,CAAAA,EAAQ,OAAA,EAAW,UACjDZ,CAAAA,CAAWgB,OAAAA,CAAQ,IAAM,CAC7B,IAAMC,CAAAA,CAAazC,CAAAA,CAASD,GAAeC,CAAM,CAAA,CAAIoC,GAAQ,MAAA,EAAU7C,EAAAA,CAAiBW,EAAAA,CAAoBU,CAAAA,EAAW,QAAQ,CAAA,CACzH8B,CAAAA,CAAiB9M,EAACsE,CAAAA,GAAkB,CAAE,MAAO,WAAA,CAAsB,MAAA,CAAQ,CAAA,CAAA,EAAIA,CAAI,GAAI,CAAA,CAAA,CAAtE,gBAAA,CAAA,CACjByI,EAA2CrH,CAAAA,GAAY,MAAA,EAAa,CAAC0E,CAAAA,CAAS,MAAA,CAAY,CAAE,SAAA,CAAW,CAAE,GAAI,CACjH,aAAA,CAAe0C,EAAe,CAAA,2BAAA,EAA8BH,CAAAA,GAAqB,UAAY,IAAA,CAAOA,CAAAA,GAAqB,aAAA,CAAgB,IAAA,CAAO,IAAI,CAAA,CAAE,CAAA,CACtJ,OAAQ,CAAE,YAAA,CAAcG,EAAe,CAAA,qBAAA,EAAwBH,CAAgB,CAAA,mBAAA,CAAqB,CAAE,EACtG,KAAA,CAAO,CAAE,aAAcG,CAAAA,CAAe,CAAA,qBAAA,EAAwBH,CAAgB,CAAA,kBAAA,CAAoB,CAAE,CACtG,CAAE,CAAE,CAAA,CACJ,OAAOhD,GAAiBA,EAAAA,CAAiBkD,CAAAA,CAAYE,CAAe,CAAA,CAAGtC,CAAM,CAC/E,CAAA,CAAG,CAACL,EAAQ1E,CAAAA,CAASiH,CAAAA,CAAkBH,GAAQ,MAAA,CAAQxB,CAAAA,EAAW,SAAUP,CAAM,CAAC,CAAA,CAC7EtF,CAAAA,CAAWyH,QAAQ,IAAMxH,EAAAA,CAAmBwG,EAAU,CAAE,SAAA,CAAW,OAAQ,OAAA,CAASe,CAAiB,CAAC,CAAA,CAAG,CAACf,CAAAA,CAAUe,CAAgB,CAAC,CAAA,CACrIhC,CAAAA,CAAYiC,QAAQ,IAAMlC,EAAAA,CAAmBvF,CAAQ,CAAA,CAAG,CAACA,CAAQ,CAAC,EAClE6H,CAAAA,CAAaV,CAAAA,GAAQ,OAASA,CAAAA,GAAQ,KAAA,CAAQA,EAAME,CAAAA,EAAQ,GAAA,EAAOC,GAAsB,KAAA,CACzFQ,CAAAA,CAAUL,QAAQ,KAAO,CAAE,OAAQhB,CAAAA,CAAU,QAAA,CAAAzG,CAAAA,CAAU,SAAA,CAAAwF,EAAW,GAAA,CAAKqC,CAAAA,CAAW,OAAQN,CAAAA,CAAU,OAAA,CAASC,CAAiB,CAAA,CAAA,CAAI,CAACf,CAAAA,CAAUzG,CAAAA,CAAUwF,EAAWqC,CAAAA,CAAWN,CAAAA,CAAUC,CAAgB,CAAC,CAAA,CAC9M,OAAOO,GAAAA,CAACtC,EAAAA,CAAe,QAAA,CAAf,CAAwB,MAAOqC,CAAAA,CAAS,QAAA,CAAAC,IAAkBC,EAAA,CAAA,QAAA,CAAjB,CAA0B,cAAejN,EAAAA,CAAqBiF,CAAAA,CAAS,MAAA,CAAO,4BAA4B,CAAC,CAAA,CAAG,iBAAA,CAAmBjF,GAAqBiF,CAAAA,CAAS,MAAA,CAAO,gCAAgC,CAAC,CAAA,CAAG,QAAA,CAAA+H,GAAAA,CAAC,OAAK,GAAGX,CAAAA,CAAM,IAAKS,CAAAA,CAAW,wBAAA,CAAwBN,EAAU,uBAAA,CAAsB,MAAA,CAAO,SAAA,CAAW,CAAC,mBAAoBN,CAAS,CAAA,CAAE,OAAO,OAAO,CAAA,CAAE,KAAK,GAAG,CAAA,CAAG,KAAA,CAAO,CAAE,GAAGzB,CAAAA,CAAW,GAAG0B,CAAM,CAAA,CAAqB,QAAA,CAAAF,EAAS,CAAA,CAAM,CAAA,CAA4B,CACjgB,CArBgBnM,CAAAA,CAAAkM,GAAA,eAAA,CAAA,CAwBT,SAASkB,IAAsB,CACpC,IAAM1G,EAAQyC,UAAAA,CAAWyB,EAAc,CAAA,CACjCI,CAAAA,CAAY5B,IAAwB,CAC1C,OAAOwD,QAAQ,IAAMlG,CAAAA,EAAO,WAAasE,CAAAA,EAAW,QAAA,CAAW5F,EAAAA,CAAmBuE,EAAAA,CAAiBW,GAAoBU,CAAAA,CAAU,QAAQ,EAAG,CAAE,SAAA,CAAW,MAAO,CAAC,CAAA,CAAIT,EAAAA,CAAAA,CAAwB,CAAC7D,GAAO,QAAA,CAAUsE,CAAAA,EAAW,QAAQ,CAAC,CACrO,CAJgBhL,CAAAA,CAAAoN,EAAAA,CAAA,uBAOT,SAASC,EAAAA,CAAO,CAAE,QAAA,CAAAlB,CAAS,EAA4B,CAC5D,IAAMzF,EAAQyC,UAAAA,CAAWyB,EAAc,CAAA,CACjCK,CAAAA,CAAc3B,IAAsB,CACpChE,CAAAA,CAAUiE,IAAwB,CAClCyD,CAAAA,CAAYlC,GAAe,CAC3BwC,CAAAA,CAAQnE,UAAAA,CAAW0B,EAAkB,EAAI,CAAA,CACzC,CAACnC,EAAM6E,CAAO,CAAA,CAAIvM,SAAyB,IAAI,CAAA,CACrDO,SAAAA,CAAU,IAAM,CACd,IAAMqK,CAAAA,CAAWX,EAAY,WAAA,IAAc,EAAK,WAAW,QAAA,CAC3D,OAAAsC,EAAQ,OAAOjI,CAAAA,CAAQ,WAAc,UAAA,CAAaA,CAAAA,CAAQ,WAAU,CAAIA,CAAAA,CAAQ,WAAasG,CAAAA,EAAU,IAAA,EAAQ,IAAI,CAAA,CAC5GA,EAAWD,EAAAA,CAAaC,CAAQ,EAAI,MAC7C,CAAA,CAAG,CAACX,CAAAA,CAAa3F,CAAAA,CAAQ,SAAS,CAAC,EACnC,IAAMkI,CAAAA,CAAY,OAAO9G,CAAAA,EAAO,SAAA,CAAU,iCAAiC,CAAA,EAAK6D,EAAAA,CAAsB,MAAA,CAAO,gCAAgC,CAAC,CAAA,CACxIkD,CAAAA,CAAc,OAAO/G,CAAAA,EAAO,SAAA,CAAU,iCAAiC,CAAA,EAAK6D,EAAAA,CAAsB,OAAO,gCAAgC,CAAC,EAC1ImD,CAAAA,CAAUR,GAAAA,CAACrC,GAAmB,QAAA,CAAnB,CAA4B,MAAOyC,CAAAA,CAAO,QAAA,CAAAJ,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,oCAAA,CAAqC,GAAA,CAAKF,EAAW,wBAAA,CAAwBtG,CAAAA,EAAO,QAAU,KAAA,CAAO,uBAAA,CAAsB,MAAA,CAAO,KAAA,CAAO,CAAE,GAAGA,CAAAA,EAAO,UAAW,4BAAA,CAA8B8G,CAAAA,CAAYF,EAAQG,CAAY,CAAA,CAAqB,QAAA,CAAAtB,CAAAA,CAAS,EAAM,CAAA,CAC5U,OAAO7G,EAAQ,QAAA,CAAWoI,CAAAA,CAAUhF,EAAOiF,YAAAA,CAAaD,CAAAA,CAAShF,CAAI,CAAA,CAAI,IAC3E,CAhBgB1I,CAAAA,CAAAqN,EAAAA,CAAA,UCjGT,SAASO,EAAAA,CAAUC,CAAAA,CAAgB,CACxC,GAAI,CAACA,CAAAA,EAAS,CAAC,6BAAA,CAA8B,IAAA,CAAKA,CAAK,CAAA,CAAG,OAAO,OAAA,CACjE,IAAMtL,EAAMsL,CAAAA,CAAM,KAAA,CAAM,CAAC,CAAA,CAAE,MAAA,GAAW,EAAI,CAAC,GAAGA,EAAM,KAAA,CAAM,CAAC,CAAC,CAAA,CAAE,GAAA,CAAIzN,GAASA,CAAAA,CAAQA,CAAK,EAAE,IAAA,CAAK,EAAE,CAAA,CAAIyN,CAAAA,CAAM,MAAM,CAAC,CAAA,CAC5GC,EAAW,CAAC,CAAA,CAAG,EAAG,CAAC,CAAA,CAAE,GAAA,CAAIC,CAAAA,EAAS,CACtC,IAAM3N,CAAAA,CAAQ,SAASmC,CAAAA,CAAI,KAAA,CAAMwL,EAAOA,CAAAA,CAAQ,CAAC,CAAA,CAAG,EAAE,EAAI,GAAA,CAC1D,OAAO3N,GAAS,MAAA,CAAUA,CAAAA,CAAQ,QAAUA,CAAAA,CAAQ,IAAA,EAAS,QAAU,GACzE,CAAC,EAGD,OAFkB0N,CAAAA,CAAS,CAAC,CAAA,CAAI,KAAA,CAASA,EAAS,CAAC,CAAA,CAAI,KAAA,CAASA,CAAAA,CAAS,CAAC,CAAA,CAAI,KAAA,EAE1D,GAAM,MAAA,CAAS,OACrC,CAVgB9N,CAAAA,CAAA4N,EAAAA,CAAA,WAAA,CAAA,CCET,SAASI,EAAAA,EAAmB,CACjC,GAAM,CAACC,CAAAA,CAASC,CAAU,EAAIlN,QAAAA,CAAS,KAAK,EAC5C,OAAAO,SAAAA,CAAU,IAAM,CACd,IAAM4M,CAAAA,CAAS,MAAA,CAAO,WAAW,kCAAkC,CAAA,CAC7DC,EAAS,MAAA,CAAO,UAAA,CAAW,yBAAyB,CAAA,CACpD/C,CAAAA,CAASrL,CAAAA,CAAA,IAAMkO,EAAW,CAACC,CAAAA,CAAO,SAAW,CAACC,CAAAA,CAAO,OAAO,CAAA,CAAnD,QAAA,CAAA,CACf,OAAA/C,CAAAA,GACA8C,CAAAA,CAAO,gBAAA,CAAiB,SAAU9C,CAAM,CAAA,CAAG+C,EAAO,gBAAA,CAAiB,QAAA,CAAU/C,CAAM,CAAA,CAC5E,IAAM,CAAE8C,CAAAA,CAAO,mBAAA,CAAoB,SAAU9C,CAAM,CAAA,CAAG+C,EAAO,mBAAA,CAAoB,QAAA,CAAU/C,CAAM,EAAG,CAC7G,CAAA,CAAG,EAAE,CAAA,CACE4C,CACT,CAXgBjO,CAAAA,CAAAgO,EAAAA,CAAA,kBAAA,CAAA,CCDT,SAASK,GAAoB3H,CAAAA,CAA4B,CAC9D,IAAMmH,CAAAA,CAAQ7N,CAAAA,CAACsG,GAAiB,CAC9B,IAAMhC,CAAAA,CAAO,CAAA,sBAAA,EAAyBgC,CAAI,CAAA,KAAA,CAAA,CAE1C,OADcI,EAAM,MAAA,CAAOpC,CAAI,GACjB,GAAA,EAAOY,EAAAA,CAAsBwB,EAAOpC,CAAI,CACxD,EAJc,OAAA,CAAA,CAKRgK,CAAAA,CAAStO,EAAA,CAACuO,CAAAA,CAAgBjI,IAAiB,MAAA,CAAOI,CAAAA,CAAM,MAAA,CAAO,CAAA,oBAAA,EAAuB6H,CAAM,CAAA,CAAA,EAAIjI,CAAI,EAAE,CAAC,CAAA,CAA9F,UACf,OAAO,CACL,KAAA,CAAOuH,CAAAA,CAAM,OAAO,CAAA,CAAG,GAAA,CAAKA,EAAM,KAAK,CAAA,CAAG,eAAgBA,CAAAA,CAAM,gBAAgB,CAAA,CAChF,MAAA,CAAQ,CAAE,SAAA,CAAWS,CAAAA,CAAO,SAAU,WAAW,CAAA,CAAG,SAAUA,CAAAA,CAAO,QAAA,CAAU,UAAU,CAAA,CAAG,MAAA,CAAQA,EAAO,QAAA,CAAU,QAAQ,CAAE,CAAA,CAC/H,MAAA,CAAQ,CAAE,YAAA,CAAcA,CAAAA,CAAO,QAAA,CAAU,cAAc,EAAG,MAAA,CAAQA,CAAAA,CAAO,SAAU,QAAQ,CAAA,CAAG,UAAWA,CAAAA,CAAO,QAAA,CAAU,WAAW,CAAA,CAAG,WAAYA,CAAAA,CAAO,QAAA,CAAU,YAAY,CAAA,CAAG,KAAA,CAAOA,EAAO,QAAA,CAAU,OAAO,CAAA,CAAG,QAAA,CAAUA,EAAO,QAAA,CAAU,UAAU,CAAE,CAAA,CAC7P,SAAA,CAAW,CAAE,SAAA,CAAWA,CAAAA,CAAO,YAAa,WAAW,CAAA,CAAG,SAAUA,CAAAA,CAAO,WAAA,CAAa,UAAU,CAAA,CAAG,SAAA,CAAWA,EAAO,WAAA,CAAa,WAAW,CAAA,CAAG,KAAA,CAAOA,EAAO,WAAA,CAAa,OAAO,EAAG,KAAA,CAAOA,CAAAA,CAAO,YAAa,OAAO,CAAA,CAAG,QAAA,CAAUA,CAAAA,CAAO,YAAa,UAAU,CAAA,CAAG,MAAOA,CAAAA,CAAO,WAAA,CAAa,OAAO,CAAA,CAAG,SAAA,CAAWA,CAAAA,CAAO,WAAA,CAAa,WAAW,CAAA,CAAG,KAAA,CAAOA,EAAO,WAAA,CAAa,OAAO,CAAE,CAAA,CAC7X,QAAA,CAAUA,EAAO,QAAA,CAAU,UAAU,EAAG,QAAA,CAAUA,CAAAA,CAAO,YAAa,UAAU,CAAA,CAAG,SAAUA,CAAAA,CAAO,WAAA,CAAa,UAAU,CAAA,CAAG,WAAYA,CAAAA,CAAO,WAAA,CAAa,YAAY,CAC5K,CACF,CAdgBtO,CAAAA,CAAAqO,EAAAA,CAAA,qBAAA,CAAA,CCQT,SAASG,EAAAA,CAAgBlJ,EAAiC,CAC/D,IAAMmJ,CAAAA,CAAW,CAAA,kBAAA,EAAqBC,OAAM,CAAE,OAAA,CAAQ,KAAM,EAAE,CAAC,GACzDC,CAAAA,CAAU/N,MAAAA,CAAwB,IAAI,CAAA,CACtC,CAACgO,EAAQC,CAAS,CAAA,CAAI7N,SAA8B,IAAI,CAAA,CACxDiN,EAAUD,EAAAA,EAAiB,CAC3BtH,CAAAA,CAAQ0G,EAAAA,GACR3C,CAAAA,CAAS4D,EAAAA,CAAoB3H,CAAK,CAAA,CAClC,CAACoI,EAAOC,CAAQ,CAAA,CAAI/N,QAAAA,CAAS,KAAK,EAClC,CAACgO,CAAAA,CAAOC,CAAQ,CAAA,CAAIjO,QAAAA,CAAiD,IAAI,CAAA,CAG/E,OAAAO,SAAAA,CAAU,IAAM,CACd,GAAI,CAAC0M,EAAS,OACd,IAAIvM,EAAS,IAAA,CACb,OAAA,OAAO,eAAe,CAAA,CAAE,IAAA,CAAKwN,GAAU,CAAMxN,CAAAA,EAAQmN,EAAUK,CAAM,EAAG,CAAC,CAAA,CAAE,KAAA,CAAM,IAAM,CAAC,CAAC,CAAA,CAClF,IAAM,CAAExN,CAAAA,CAAS,MAAO,CACjC,CAAA,CAAG,CAACuM,CAAO,CAAC,EAEZ1M,SAAAA,CAAU,IAAM,CACd,IAAMmH,CAAAA,CAAOiG,EAAQ,OAAA,CACfQ,CAAAA,CAASzG,CAAAA,EAAM,OAAA,CAAQ,QAAQ,CAAA,CACrC,GAAI,CAACyG,CAAAA,EAAU,CAACzG,EAAM,OACtB,IAAM2C,CAAAA,CAASrL,CAAAA,CAAA,IAAM,CACnB,IAAMoP,EAAQ1G,CAAAA,CAAK,WAAA,CACb2G,EAAS3G,CAAAA,CAAK,YAAA,CACpB,GAAI,CAAC0G,GAAS,CAACC,CAAAA,CAAQ,OACvB,IAAMC,CAAAA,CAAc,iBAAiBH,CAAM,CAAA,CAAE,mBAAA,CACvCI,CAAAA,CAASD,EAAY,QAAA,CAAS,GAAG,EACnC,IAAA,CAAK,GAAA,CAAIF,EAAOC,CAAM,CAAA,CAAI,UAAA,CAAWC,CAAW,EAAI,GAAA,CACpD,UAAA,CAAWA,CAAW,CAAA,EAAK,CAAA,CACzBE,EAAQ/E,CAAAA,CAAO,UAAA,CACrBwE,EAAS,CAAE,IAAA,CAAM,iBAAkB,MAAA,CAAQ,IAAA,CAAK,IAAI,GAAA,CAAMG,CAAAA,EAAS,EAAIC,CAAAA,CAAAA,CAAUG,CAAAA,CAAQH,CAAM,CAAA,CAAG,OAAQ,IAAA,CAAK,GAAA,CAAI,IAAM,EAAA,CAAMG,CAAAA,CAAQH,CAAM,CAAA,CAAG,QAAA,CAAU,IAAA,CAAK,GAAA,CAAI,EAAG,IAAA,CAAK,GAAA,CAAIE,EAASC,CAAAA,CAAOH,CAAAA,CAAS,EAAIG,CAAK,CAAC,CAAA,CAAIH,CAAO,CAAC,EAChO,CAAA,CAVe,UAWfhE,CAAAA,EAAO,CACP,IAAMC,CAAAA,CAAW,IAAI,eAAeD,CAAM,CAAA,CAC1C,OAAAC,CAAAA,CAAS,OAAA,CAAQ6D,CAAM,CAAA,CAChB,IAAM7D,EAAS,UAAA,EACxB,CAAA,CAAG,CAAC5E,CAAK,CAAC,CAAA,CAEH+I,KAAC,MAAA,CAAA,CAAK,GAAA,CAAKd,EAAS,SAAA,CAAU,mCAAA,CAAoC,YAAA,CAAYG,CAAAA,EAAS,OAC5F,QAAA,CAAA,CAAA5B,GAAAA,CAAC,OAAI,KAAA,CAAM,GAAA,CAAI,OAAO,GAAA,CAAI,aAAA,CAAY,MAAA,CAAO,SAAA,CAAU,oCACrD,QAAA,CAAAA,GAAAA,CAAC,QAEC,QAAA,CAAAuC,IAAAA,CAAC,UAAO,EAAA,CAAIhB,CAAAA,CAAU,EAAE,MAAA,CAAO,CAAA,CAAE,QAAQ,KAAA,CAAM,MAAA,CAAO,OAAO,MAAA,CAAO,yBAAA,CAA0B,OAC5F,QAAA,CAAA,CAAAvB,GAAAA,CAAC,gBAAA,CAAA,CAAe,EAAA,CAAG,gBAAgB,YAAA,CAAczC,CAAAA,CAAO,SAAU,MAAA,CAAO,MAAA,CAAO,EAChFyC,GAAAA,CAAC,gBAAA,CAAA,CAAe,EAAA,CAAG,eAAA,CAAgB,aAAczC,CAAAA,CAAO,QAAA,CAAU,OAAO,MAAA,CAAO,CAAA,CAChFgF,KAAC,SAAA,CAAA,CAAQ,QAAA,CAAA,CAAAvC,GAAAA,CAAC,aAAA,CAAA,CAAY,GAAG,MAAA,CAAO,CAAA,CAAEA,IAAC,aAAA,CAAA,CAAY,EAAA,CAAG,OAAO,CAAA,CAAA,CAAE,CAAA,CAAA,CAC7D,EACF,CAAA,CACF,CAAA,CACAuC,KAAC,MAAA,CAAA,CAAK,SAAA,CAAU,oCAAoC,KAAA,CAAO,CAAE,OAAQ,CAAA,KAAA,EAAQhB,CAAQ,CAAA,CAAA,CAAI,CAAA,CACvF,UAAAvB,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,sCAAA,CAAuC,CAAA,CACtDe,GAAWW,CAAAA,EAAUI,CAAAA,CAAQ9B,GAAAA,CAAC0B,CAAAA,CAAO,OAAP,CAAc,gBAAA,CAAgB,KAAC,KAAA,CAAO,CAAE,MAAO,MAAA,CAAQ,MAAA,CAAQ,MAAO,CAAA,CAAG,QAAS,IAAMG,CAAAA,CAAS,IAAI,CAAA,CAClI,QAAA,CAAA7B,IAAC0B,CAAAA,CAAO,SAAA,CAAP,CAAiB,MAAA,CAAQnE,CAAAA,CAAO,eAAgB,MAAA,CAAQA,CAAAA,CAAO,IAAM,GAAGA,CAAAA,CAAO,UAAY,GAAGnF,CAAAA,CAAS,KAAA,CAAO,IAAA,CAAM,MAAO0J,CAAAA,CAAO,CAAA,CACrI,EAAmB,IAAA,CAAA,CACrB,CAAA,CAAA,CACF,CACF,CAzDgBhP,CAAAA,CAAAwO,EAAAA,CAAA,iBAAA,CAAA,ChBMT,IAAMkB,GAASC,UAAAA,CAA2C3P,CAAAA,CAAA,SAAgB,CAAE,QAAA4P,CAAAA,CAAS,KAAA,CAAAZ,EAAQ,SAAA,CAAW,IAAA,CAAAa,EAAM,IAAA,CAAAC,CAAAA,CAAO,UAAW,IAAA,CAAAC,CAAAA,CAAO,KAAM,OAAA,CAAAC,CAAAA,CAAU,MAAO,SAAA,CAAAC,CAAAA,CAAY,MAAO,MAAA,CAAAC,CAAAA,CAAS,KAAA,CAAO,OAAA,CAAAC,EAAS,cAAA,CAAAC,CAAAA,CAAgB,gBAAAC,CAAAA,CAAiB,QAAA,CAAAC,EAAU,IAAA,CAAAC,CAAAA,CAAO,QAAA,CAAU,SAAA,CAAAnE,EAAW,QAAA,CAAAD,CAAAA,CAAU,QAAAqE,CAAAA,CAAS,aAAA,CAAAC,EAAe,SAAA,CAAAC,CAAAA,CAAW,GAAGC,CAAM,EAAGvP,CAAAA,CAAK,CACpV,IAAM4L,CAAAA,CAAYlC,CAAAA,GACZ,CAAC8F,CAAAA,CAASC,CAAU,CAAA,CAAIvQ,CAAAA,CAAgB6P,EAASC,CAAAA,CAAgB,KAAA,CAAOC,CAAe,CAAA,CAC7F,OAAIT,IAAY,QAAA,CAAiB1C,GAAAA,CAAC4D,EAAAA,CAAA,CAAQ,GAAGH,CAAAA,CAAO,GAAA,CAAKvP,EAAK,IAAA,CAAMmP,CAAAA,CAAM,MAAOI,CAAAA,CAAM,KAAA,GAAU,MAAA,CAAY,MAAA,CAAY,OAAOA,CAAAA,CAAM,KAAK,EAAG,QAAA,CAAUL,CAAAA,CAAU,QAASH,CAAAA,CAAS,cAAA,CAAgBC,CAAAA,CAAgB,eAAA,CAAiBC,EAAiB,SAAA,CAAWtQ,CAAAA,CAAG,2BAA4BqM,CAAS,CAAA,CAAG,eAAa,QAAA,CAAS,WAAA,CAAU,SAAA,CAAU,WAAA,CAAW2D,EAAM,YAAA,CAAYY,CAAAA,CAAM,YAAY,CAAA,GAAM,OAAOxE,GAAa,QAAA,CAAWA,CAAAA,CAAW,MAAA,CAAA,CAAY,WAAA,CAAW6D,GAAW,MAAA,CAAW,eAAA,CAAeA,GAAWW,CAAAA,CAAM,eAAe,EAAG,aAAA,CAAeF,CAAAA,CAAe,SAAA,CAAWC,CAAAA,CAAW,QAAS9O,CAAAA,EAAS,CAAE,GAAIoO,CAAAA,EAAWW,CAAAA,CAAM,eAAe,CAAA,GAAM,IAAA,EAAQA,CAAAA,CAAM,eAAe,IAAM,MAAA,CAAQ,CAAE/O,EAAM,cAAA,EAAe,CAAG,MAAQ,CAAE4O,CAAAA,GAAU5O,CAAK,EAAG,CAAA,CAAG,EACnuB6N,IAAAA,CAAC,QAAA,CAAA,CAAQ,GAAGkB,CAAAA,CAAO,GAAA,CAAKA,EAAM,GAAA,EAAO3D,CAAAA,CAAW,GAAA,CAAK5L,CAAAA,CAAK,KAAMmP,CAAAA,CAAM,SAAA,CAAWxQ,EAAG,mBAAA,CAAqBqM,CAAS,EAAG,iBAAA,CAAiB6D,CAAAA,CAAY,IAAA,CAAO,MAAA,CAAW,aAAYjB,CAAAA,CAAO,cAAA,CAAcY,IAAYZ,CAAAA,GAAU,MAAA,CAAS,QAAUA,CAAAA,GAAU,MAAA,CAAS,SAAA,CAAY,OAAA,CAAA,CAAU,YAAWc,CAAAA,CAAM,WAAA,CAAWC,EAAM,aAAA,CAAenO,CAAAA,EAAS,CAAEA,CAAAA,CAAM,aAAA,CAAc,QAAQ,KAAA,CAAQ,SAAA,CAAW6O,IAAgB7O,CAAK,EAAG,EAAG,SAAA,CAAWA,CAAAA,EAAS,CAAEA,CAAAA,CAAM,aAAA,CAAc,OAAA,CAAQ,KAAA,CAAQ,WAAY8O,CAAAA,GAAY9O,CAAK,EAAG,CAAA,CAAG,cAAA,CAAcsO,EAASU,CAAAA,CAAUD,CAAAA,CAAM,cAAc,CAAA,CAAG,YAAWX,CAAAA,EAAW,MAAA,CAAW,gBAAeA,CAAAA,EAAWW,CAAAA,CAAM,eAAe,CAAA,CAAG,OAAA,CAAS/O,CAAAA,EAAS,CAAE,GAAIoO,CAAAA,EAAWW,CAAAA,CAAM,eAAe,CAAA,GAAM,IAAA,EAAQA,EAAM,eAAe,CAAA,GAAM,OAAQ,CAAE/O,CAAAA,CAAM,gBAAe,CAAG,MAAQ,CAAE4O,CAAAA,GAAU5O,CAAK,EAAOsO,CAAAA,EAAU,CAACtO,CAAAA,CAAM,gBAAA,EAAkBiP,EAAW,CAACD,CAAO,EAAG,CAAA,CAAI,QAAA,CAAA,CAAAX,EAAY/C,GAAAA,CAAC,MAAA,CAAA,CAAK,SAAA,CAAU,8BAAA,CAA+B,cAAY,MAAA,CAAO,QAAA,CAAAA,IAACsB,EAAAA,CAAA,CAAiB,GAAIyB,CAAAA,GAAc,IAAA,CAAO,EAAC,CAAIA,EAAY,CAAA,CAAE,CAAA,CAAU,KAAKR,IAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,yBAAA,CAA0B,cAAA,CAAcO,GAAW,MAAA,CAAY,QAAA,CAAA,CAAAH,EAAO3C,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,wBAAA,CAAyB,aAAA,CAAY,OAAQ,QAAA,CAAA2C,CAAAA,CAAK,CAAA,CAAU,IAAA,CAAM1D,GAAS,CAAA,CAAQ6D,CAAAA,CAAU9C,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,4BAA4B,aAAA,CAAY,MAAA,CAAO,CAAA,CAAK,IAAA,CAAA,CAAK,CACrxC,CAAA,CALiE,QAAA,CAKhE,EAGY6D,EAAAA,CAAepB,UAAAA,CAAiD3P,EAAA,SAAsB2Q,CAAAA,CAAOvP,CAAAA,CAAK,CAC7G,OAAO8L,GAAAA,CAACwC,EAAAA,CAAA,CAAQ,GAAGiB,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,MAAA,CAAM,KAAC,CAC7C,CAAA,CAF6E,eAE5E,CAAA,CAWY4P,EAAAA,CAAcrB,WAA+C3P,CAAAA,CAAA,SAAqB,CAAE,OAAA,CAAAsF,CAAAA,CAAS,KAAA,CAAAlF,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,aAAA,CAAAC,CAAAA,CAAe,SAAAC,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,SAAA,CAAAhF,EAAW,KAAA,CAAAC,CAAAA,CAAO,cAAAoE,CAAAA,CAAe,aAAA,CAAAY,EAAe,eAAA,CAAAC,CAAAA,CAAiB,SAAA,CAAAZ,CAAAA,CAAW,YAAAa,CAAAA,CAAa,OAAA,CAAAC,EAAS,GAAA,CAAAlF,CAAAA,CAAK,KAAAhG,CAAAA,CAAM,GAAGqK,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CAC7S,IAAM0F,CAAAA,CAAQ2K,GAASd,CAAK,CAAA,CACtB3D,EAAYlC,CAAAA,CAAewB,CAAAA,GAAQ,KAAA,EAASA,CAAAA,GAAQ,MAAQA,CAAAA,CAAM,MAAS,EAC3E,CAACoF,CAAAA,CAAUC,CAAW,CAAA,CAAIrR,CAAAA,CAAgBF,CAAAA,CAAOG,CAAAA,CAAc+E,EAAQ,CAAC,CAAA,EAAG,IAAM,EAAA,CAAI2L,CAAa,EAClG5L,CAAAA,CAAQzE,MAAAA,CAAyB,IAAI,CAAA,CACrCD,EAAUC,MAAAA,CAAOL,CAAAA,EAAgB+E,EAAQ,CAAC,CAAA,EAAG,IAAM,EAAE,CAAA,CAC3DsM,oBAAoBxQ,CAAAA,CAAK,IAAMiE,EAAM,OAAA,CAAU,EAAE,CAAA,CACjDlE,EAAAA,CAAakE,EAAO,IAAM,CAAMjF,CAAAA,GAAU,MAAA,EAAWuR,EAAYhR,CAAAA,CAAQ,OAAO,EAAG,CAAC,CAAA,CACpF,IAAMoN,CAAAA,CAAQ,IAAA,CAAK,GAAA,CAAI,CAAA,CAAGzI,EAAQ,SAAA,CAAUuM,CAAAA,EAAUA,EAAO,EAAA,GAAOH,CAAQ,CAAC,CAAA,CACvEG,CAAAA,CAASvM,CAAAA,CAAQyI,CAAK,EACtB+D,EAAAA,CAAgB9D,EAAAA,GAChB,CAAC+D,EAAAA,CAAaC,CAAc,CAAA,CAAIhR,QAAAA,CAA0C,UAAU,CAAA,CACpF+K,EAAUnL,MAAAA,CAAoD,IAAI,EAClEqR,CAAAA,CAAWH,EAAAA,EAAiBC,KAAgB,SAAA,EAAa,CAACZ,CAAAA,EAAY,CAACC,EAEvEc,CAAAA,CAAS,CAAE,MAAOL,CAAAA,EAAQ,KAAA,CAAO,MAAOA,CAAAA,EAAQ,KAAM,CAAA,CACtD,CAACM,EAASC,CAAU,CAAA,CAAIpR,SAAS,CAAE,MAAA,CAAQ,CAACkR,CAAAA,CAAQA,CAAM,CAAA,CAAG,MAAA,CAAQ,CAAE,CAAC,CAAA,CACxEjR,EAAUkR,CAAAA,CAAQ,MAAA,CAAOA,EAAQ,MAAM,CAAA,CAC7C,GAAIlR,CAAAA,CAAQ,KAAA,GAAUiR,EAAO,KAAA,EAASjR,CAAAA,CAAQ,QAAUiR,CAAAA,CAAO,KAAA,CAAO,CACpE,IAAMxQ,CAAAA,CAAS,CAAA,CAAIyQ,CAAAA,CAAQ,OAC3BC,CAAAA,CAAW,CAAE,OAAQD,CAAAA,CAAQ,MAAA,CAAO,IAAI,CAACE,CAAAA,CAAOtE,EAAAA,GAAUA,EAAAA,GAAUrM,EAASwQ,CAAAA,CAASG,CAAK,EAAG,MAAA,CAAA3Q,CAAO,CAAC,EACxG,CACA,IAAM4Q,CAAAA,CAAWhN,EAAQ,MAAA,CAAS,CAAA,CAAIyI,GAASzI,CAAAA,CAAQ,MAAA,CAAS,GAAK,EAAA,CAE/DiN,EAAAA,CAAWvS,EAACwS,CAAAA,EAAqB,CAAA,KAAA,EAAQA,EAAW,GAAG,CAAA,IAAA,EAAO,GAAMA,CAAQ,CAAA,iGAAA,CAAA,CAAjE,YACXtO,EAAAA,CAAWoB,CAAAA,CAAQ,GAAA,CAAI,CAACmN,EAAM1E,CAAAA,GAAU,CAC5C,IAAM2E,EAAAA,CAAIpN,CAAAA,CAAQ,OAAS,CAAA,CAAIyI,CAAAA,EAASzI,CAAAA,CAAQ,MAAA,CAAS,GAAK,CAAA,CAC9D,OAAO,GAAGmN,CAAAA,CAAK,KAAK,IAAIF,EAAAA,CAASG,EAAC,CAAC,CAAA,CACrC,CAAC,CAAA,CACKC,EAAAA,CAAarN,EAAQ,MAAA,CAAS,CAAA,CAAI,sBAAsB0H,CAAAA,GAAc,KAAA,CAAQ,OAAS,OAAO,CAAA,EAAA,EAAK9I,GAAS,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA,CAAA,CAAM2N,CAAAA,EAAQ,MACpIe,EAAAA,CAASzB,CAAAA,EAAYC,CAAAA,EAAY9L,CAAAA,CAAQ,OAAS,CAAA,CAClDuN,EAAAA,CAAS7S,EAACqF,CAAAA,EAA4B,CAC1C,IAAMnE,CAAAA,CAAOoE,CAAAA,CAAQ,MAAA,CAAOD,CAAAA,CAAM,KAAK,CAAC,CAAA,CACpC,CAACuN,EAAAA,EAAU1R,CAAAA,EAAMgQ,IAAgBhQ,CAAAA,CAAK,EAAE,EAC9C,CAAA,CAHe,UAIf,OAAOuO,IAAAA,CAAC,OAAI,SAAA,CAAW1P,CAAAA,CAAG,0BAA2BqM,CAAS,CAAA,CAAG,gBAAe6F,CAAAA,EAAY,MAAA,CAAW,gBAAed,CAAAA,EAAY7L,CAAAA,CAAQ,SAAW,CAAA,EAAK,MAAA,CAAW,IAAK0H,CAAAA,CAAW,KAAA,CAAOX,CAAAA,CAC1L,QAAA,CAAA,CAAAa,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,gCAAgC,KAAA,CAAO,CAAE,WAAAyF,EAAW,CAAA,CAAG,aAAA,CAAY,MAAA,CAAO,EAC1FzF,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,oCAAA,CAAqC,KAAA,CAAO,CAAE,SAAA,CAAW,CAAA,WAAA,EAAA,CAAeF,CAAAA,GAAc,KAAA,CAAQ,GAAK,CAAA,EAAKsF,CAAAA,CAAW,GAAG,CAAA,EAAA,CAAK,CAAA,CAAG,cAAY,MAAA,CACxJ,QAAA,CAAApF,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,gCAAgC,UAAA,CAAUU,EAAAA,CAAUiE,GAAQ,KAAK,CAAA,CAAG,MAAO,CAAE,oCAAA,CAAsCA,CAAAA,EAAQ,KAAM,EAC9I,QAAA,CAAAM,CAAAA,CAAQ,OAAO,GAAA,CAAI,CAACE,EAAOtE,CAAAA,GAAUb,GAAAA,CAAC,MAAA,CAAA,CAAiB,SAAA,CAAU,iCAAiC,aAAA,CAAaa,CAAAA,GAAUoE,EAAQ,MAAA,CAAQ,UAAA,CAAUvE,GAAUyE,CAAAA,CAAM,KAAK,CAAA,CAAG,KAAA,CAAO,CAAE,oCAAA,CAAsCA,CAAAA,CAAM,KAAM,CAAA,CAAoB,QAAA,CAAAnF,IAAC,MAAA,CAAA,CAAK,SAAA,CAAWa,IAAUoE,CAAAA,CAAQ,MAAA,CAAS,gCAAkC,wCAAA,CAA2C,QAAA,CAAAE,EAAM,KAAA,CAAM,CAAA,CAAA,CAA/UtE,CAAsV,CAAO,CAAA,CAChZ,CAAA,CACF,CAAA,CACAb,IAAC,OAAA,CAAA,CAAO,GAAGyD,EAAQ,GAAG7J,CAAAA,CAAO,IAAKzB,CAAAA,CAAO,IAAA,CAAK,OAAA,CAAQ,GAAA,CAAK2H,EAAW,GAAA,CAAK,CAAA,CAAG,IAAK,IAAA,CAAK,GAAA,CAAI,EAAG1H,CAAAA,CAAQ,MAAA,CAAS,CAAC,CAAA,CAAG,KAAM,CAAA,CAAG,KAAA,CAAOyI,EAAO,QAAA,CAAUoD,CAAAA,EAAY7L,EAAQ,MAAA,GAAW,CAAA,CAAG,gBAAe8L,CAAAA,EAAY,MAAA,CAAW,iBAAgBS,CAAAA,EAAQ,KAAA,EAAS,GAAI,SAAA,CAAU,+BAAA,CAAgC,cAAejQ,CAAAA,EAAS,CAClU6O,CAAAA,GAAgB7O,CAAK,EACjBwP,CAAAA,EAAUxP,CAAAA,CAAM,gBAAe,CAC/B,CAACgR,IAAU,CAAChR,CAAAA,CAAM,gBAAA,EAAoBA,CAAAA,CAAM,YAAc,KAAA,EAASA,CAAAA,CAAM,SAAW,CAAA,GACtFmK,CAAAA,CAAQ,QAAU,CAAE,EAAA,CAAInK,CAAAA,CAAM,SAAA,CAAW,EAAGA,CAAAA,CAAM,OAAA,CAAS,EAAGA,CAAAA,CAAM,OAAQ,EAC5EoQ,CAAAA,CAAe,SAAS,CAAA,EAE5B,CAAA,CAAG,cAAepQ,CAAAA,EAAS,CACzByP,IAAgBzP,CAAK,CAAA,CACrB,IAAM0F,CAAAA,CAAQyE,CAAAA,CAAQ,OAAA,CAClBzE,CAAAA,EAAO,KAAO1F,CAAAA,CAAM,SAAA,EAAa,KAAK,KAAA,CAAMA,CAAAA,CAAM,QAAU0F,CAAAA,CAAM,CAAA,CAAG1F,CAAAA,CAAM,OAAA,CAAU0F,EAAM,CAAC,CAAA,CAAI,GAAG0K,CAAAA,CAAe,MAAM,EAC9H,CAAA,CAAG,eAAA,CAAiBpQ,CAAAA,EAAS,CAAEmK,EAAQ,OAAA,CAAU,IAAA,CAAMiG,EAAe,UAAU,CAAA,CAAGV,IAAkB1P,CAAK,EAAG,EAAG,SAAA,CAAWA,CAAAA,EAAS,CAAEmK,CAAAA,CAAQ,OAAA,CAAU,KAAMiG,CAAAA,CAAe,UAAU,EAAGtB,CAAAA,GAAY9O,CAAK,CAAA,CAAOwP,CAAAA,EAAY,CAAC,WAAA,CAAY,YAAA,CAAa,UAAU,WAAA,CAAY,MAAA,CAAO,MAAM,QAAA,CAAS,UAAU,CAAA,CAAE,QAAA,CAASxP,EAAM,GAAG,CAAA,EAAGA,EAAM,cAAA,GAAkB,EAAG,QAAA,CAAUA,CAAAA,EAAS,CAAE,GAAI,CAACgR,EAAAA,CAAQ,CAAE,IAAM1R,CAAAA,CAAOoE,CAAAA,CAAQ,OAAO1D,CAAAA,CAAM,MAAA,CAAO,KAAK,CAAC,CAAA,CAAOV,GAAMyQ,CAAAA,CAAYzQ,CAAAA,CAAK,EAAE,EAAG,CAAE,EAAG,WAAA,CAAaU,CAAAA,EAAS,CAAEmK,CAAAA,CAAQ,QAAU,IAAA,CAAMwF,CAAAA,GAAc3P,CAAK,CAAA,CAAQA,CAAAA,CAAM,kBAAkBiR,EAAAA,CAAOjR,CAAAA,CAAM,aAAa,EAAG,EAAG,OAAA,CAASA,CAAAA,EAAS,CAAE4P,CAAAA,GAAU5P,CAAK,EAAO,CAACA,CAAAA,CAAM,gBAAA,EAAoB,CAAC,YAAY,YAAA,CAAa,SAAA,CAAU,YAAY,MAAA,CAAO,KAAA,CAAM,SAAS,UAAU,CAAA,CAAE,SAASA,CAAAA,CAAM,GAAG,GAAGiR,EAAAA,CAAOjR,CAAAA,CAAM,aAAa,EAAG,CAAA,CAAG,EACzyB0E,CAAAA,CAAO4G,GAAAA,CAAC,OAAA,CAAA,CAAM,IAAA,CAAK,SAAS,IAAA,CAAM5G,CAAAA,CAAM,KAAMqK,CAAAA,CAAM,IAAA,CAAM,MAAOkB,CAAAA,EAAQ,EAAA,EAAM,EAAA,CAAI,QAAA,CAAUV,GAAY7L,CAAAA,CAAQ,MAAA,GAAW,EAAG,CAAA,CAAK,IAAA,CAAA,CACvI,CACF,CAAA,CAxD0E,aAAA,CAwDzE,CAAA,CAGKwN,EAAAA,CAAetK,cAAwC,IAAI,EACjE,SAASiJ,EAAAA,CAASd,CAAAA,CAA+J,CAC/K,IAAM7J,CAAAA,CAAQqC,WAAW2J,EAAY,CAAA,CAC/B9F,EAAYlC,CAAAA,CAAe6F,CAAAA,CAAM,MAAQ,KAAA,EAASA,CAAAA,CAAM,MAAQ,KAAA,CAAQA,CAAAA,CAAM,GAAA,CAAM,MAAS,EACnG,OAAO,CAAE,GAAI7J,CAAAA,EAAO,EAAA,EAAM6J,EAAM,EAAA,CAAI,GAAA,CAAKA,CAAAA,CAAM,GAAA,EAAO3D,EAAW,kBAAA,CAAoB,CAAClG,GAAO,WAAA,CAAa6J,CAAAA,CAAM,kBAAkB,CAAC,CAAA,CAAE,MAAA,CAAO,OAAO,EAAE,IAAA,CAAK,GAAG,GAAK,MAAA,CAAW,cAAA,CAAgBA,EAAM,cAAc,CAAA,EAAK7J,GAAO,OAAA,CAAS,QAAA,CAAU6J,EAAM,QAAA,EAAY7J,CAAAA,EAAO,QAAS,CACpR,CAJS9G,EAAAyR,EAAAA,CAAA,UAAA,CAAA,CAMF,SAASsB,EAAAA,CAAM,CAAE,EAAA,CAAIC,CAAAA,CAAY,MAAAC,CAAAA,CAAO,cAAA,CAAAC,EAAgB,WAAA,CAAAC,CAAAA,CAAa,iBAAA,CAAAC,CAAAA,CAAmB,MAAAC,CAAAA,CAAO,OAAA,CAAAC,EAAS,QAAA,CAAAhD,CAAAA,CAAU,UAAAlE,CAAAA,CAAW,QAAA,CAAAD,CAAAA,CAAU,GAAGwE,CAAM,CAAA,CAAe,CACpK,IAAM4C,CAAAA,CAAY7E,KAAAA,GACZ8E,CAAAA,CAAKR,CAAAA,GAAeS,eAAgCtH,CAAQ,CAAA,CAAIA,EAAS,KAAA,CAAM,EAAA,CAAK,SAAcoH,CAAAA,CAClGG,CAAAA,CAAc,CAACP,CAAAA,CAAcK,CAAAA,CAAK,cAAA,CAAiB,EAAA,CAAIH,EAAQG,CAAAA,CAAK,QAAA,CAAW,EAAE,CAAA,CAAE,MAAA,CAAO,OAAO,CAAA,CAAE,IAAA,CAAK,GAAG,CAAA,EAAK,OAChHG,CAAAA,CAAalE,IAAAA,CAAC,SAAM,SAAA,CAAU,kBAAA,CAAmB,QAAS+D,CAAAA,CAAK,QAAA,CAAA,CAAAP,CAAAA,CAAO3C,CAAAA,CAAWpD,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,sBAAsB,aAAA,CAAY,MAAA,CAAO,cAAE,CAAA,CAAU,IAAA,CAAA,CAAK,EACjK,OAAOuC,IAAAA,CAAC,OAAK,GAAGkB,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,kBAAA,CAAoBqM,CAAS,CAAA,CAC9D,QAAA,CAAA,CAAA8G,CAAAA,CAAiBzD,IAAAA,CAAC,OAAI,SAAA,CAAU,yBAAA,CAA0B,YAAU,WAAA,CAAa,QAAA,CAAA,CAAAkE,EAAYT,CAAAA,CAAAA,CAAe,CAAA,CAASS,CAAAA,CACvHzG,GAAAA,CAAC4F,GAAa,QAAA,CAAb,CAAsB,MAAO,CAAE,EAAA,CAAAU,EAAI,WAAA,CAAAE,CAAAA,CAAa,OAAA,CAASJ,CAAAA,EAAW,CAAC,CAACD,CAAAA,CAAO,SAAA/C,CAAS,CAAA,CAAI,SAAAsD,QAAAA,CAAS,IAAA,CAAKzH,CAAQ,CAAA,CAAE,EACjHgH,CAAAA,CAAcjG,GAAAA,CAAC,OAAI,EAAA,CAAIsG,CAAAA,CAAK,eAAgB,SAAA,CAAWJ,CAAAA,CAAoB,4BAAA,CAA+B,wBAAA,CAA2B,SAAAD,CAAAA,CAAY,CAAA,CAAS,KAC3JE,CAAAA,CAAQnG,GAAAA,CAAC,OAAI,EAAA,CAAIsG,CAAAA,CAAK,QAAA,CAAU,SAAA,CAAU,mBAAmB,IAAA,CAAK,OAAA,CAAS,SAAAH,CAAAA,CAAM,CAAA,CAAS,MAC7F,CACF,CAXgBrT,CAAAA,CAAA+S,EAAAA,CAAA,SAaT,SAASc,EAAAA,CAAS,CAAE,MAAA,CAAAC,CAAAA,CAAQ,SAAA3H,CAAAA,CAAU,SAAA,CAAAC,EAAW,GAAGuE,CAAM,EAAkB,CAAE,OAAOlB,KAAC,UAAA,CAAA,CAAU,GAAGkB,EAAO,SAAA,CAAW5Q,CAAAA,CAAG,qBAAA,CAAuBqM,CAAS,EAAI,QAAA,CAAA,CAAA0H,CAAAA,EAAU,KAAO5G,GAAAA,CAAC,QAAA,CAAA,CAAQ,SAAA4G,CAAAA,CAAO,CAAA,CAAY,IAAA,CAAM3H,CAAAA,CAAAA,CAAS,CAAa,CAA5NnM,CAAAA,CAAA6T,GAAA,UAAA,CAAA,CAyBT,IAAME,GAAQpE,UAAAA,CAAyC3P,CAAAA,CAAA,SAAe2Q,CAAAA,CAAOvP,EAAK,CACvF,IAAM0F,EAAQ2K,EAAAA,CAASd,CAAK,EAC5B,GAAIA,CAAAA,CAAM,UAAY,MAAA,CAAQ,OAAOA,EAAM,IAAA,GAAS,QAAA,CAAWzD,IAAC8G,EAAAA,CAAA,CAA0B,GAAGrD,CAAAA,CAAO,GAAA,CAAKvP,CAAAA,CAAK,CAAA,CAAK8L,IAAC+G,EAAAA,CAAA,CAAkB,GAAGtD,CAAAA,CAAO,GAAA,CAAKvP,EAAK,CAAA,CAC1J,GAAIuP,CAAAA,CAAM,OAAA,GAAY,SAAU,OAAOzD,GAAAA,CAACgH,GAAA,CAAoB,GAAGvD,EAAO,GAAA,CAAKvP,CAAAA,CAAK,CAAA,CAChF,GAAIuP,EAAM,OAAA,GAAY,QAAA,CAAU,OAAOzD,GAAAA,CAACiH,EAAAA,CAAA,CAAoB,GAAGxD,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,CAAA,CAChF,GAAM,CAAE,OAAA,CAAAwO,EAAS,SAAA,CAAAxD,CAAAA,CAAW,GAAGgI,CAAY,CAAA,CAAIzD,CAAAA,CAC/C,OAAOzD,IAAC,OAAA,CAAA,CAAO,GAAGkH,EAAc,GAAGtN,CAAAA,CAAO,UAAW/G,CAAAA,CAAG,kBAAA,CAAoBqM,CAAS,CAAA,CAAG,IAAKhL,CAAAA,CAAK,CACpG,EAP8D,OAAA,CAO7D,CAAA,CACK6S,GAAmBtE,UAAAA,CAA6C3P,CAAAA,CAAA,SAA0B,CAC9F,QAAA4P,CAAAA,CAAS,IAAA,CAAAyE,EAAM,KAAA,CAAAjU,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,UAAA,CAAAqD,CAAAA,CAAY,mBAAAC,CAAAA,CAAoB,WAAA,CAAAC,EAAc,cAAA,CAAM,IAAA,CAAAlO,EAAM,IAAA,CAAA7E,CAAAA,CAAM,SAAA,CAAA2K,CAAAA,CAAW,MAAAC,CAAAA,CAC9H,QAAA,CAAA8E,EAAU,QAAA,CAAAC,CAAAA,CAAU,YAAAqD,CAAAA,CAAc,kDAAA,CAAY,QAAA,CAAAhU,CAAAA,CAAU,UAAAiQ,CAAAA,CAAW,kBAAA,CAAAgE,EAAoB,gBAAA,CAAAC,CAAAA,CAAkB,GAAGhE,CAC9G,CAAA,CAAGvP,CAAAA,CAAK,CACN,IAAM0F,CAAAA,CAAQ2K,EAAAA,CAASd,CAAK,CAAA,CACtB,CAACiE,EAAMC,CAAO,CAAA,CAAIvU,EAAgBF,CAAAA,CAAOG,CAAAA,CAAc,EAAC,CAAG0Q,CAAa,EACxE,CAAC6D,CAAAA,CAAOC,CAAQ,CAAA,CAAIzU,CAAAA,CAAgBgU,CAAAA,CAAY,MAAA,CAAW,GAAIC,CAAkB,CAAA,CACjF,CAACS,CAAAA,CAAcC,EAAe,EAAIjU,QAAAA,CAAS,EAAE,CAAA,CAC7CkU,EAAAA,CAAYtU,OAAO,KAAK,CAAA,CACxByE,EAAQzE,MAAAA,CAAyB,IAAI,EACrCgS,CAAAA,CAASzB,CAAAA,EAAYC,CAAAA,CAC3BQ,mBAAAA,CAAoBxQ,EAAK,IAAMiE,CAAAA,CAAM,QAAU,EAAE,EACjD,IAAM8P,CAAAA,CAAcvU,OAAOL,CAAAA,EAAgB,EAAE,CAAA,CAC7CY,EAAAA,CAAakE,EAAO,IAAM,CAAMjF,IAAU,MAAA,EAAWyU,CAAAA,CAAQM,CAAAA,CAAY,OAAO,EAAGJ,CAAAA,CAAS,EAAE,EAAG,CAAC,CAAA,CAClGxT,UAAU,IAAM,CACd8D,CAAAA,CAAM,OAAA,EAAS,kBAAkByB,CAAAA,CAAM,QAAA,EAAY8N,EAAK,MAAA,GAAW,CAAA,CAAI,yDAAc,EAAE,EACzF,CAAA,CAAG,CAAC9N,EAAM,QAAA,CAAU8N,CAAAA,CAAK,MAAM,CAAC,CAAA,CAChC,IAAMQ,CAAAA,CAASpV,CAAAA,CAAC+N,GAAkB,CAC5B6E,CAAAA,GACJiC,EAAQD,CAAAA,CAAK,MAAA,CAAO,CAACS,CAAAA,CAAGpU,CAAAA,GAAYA,IAAY8M,CAAK,CAAC,CAAA,CACtDkH,EAAAA,CAAgB,GAAGT,CAAW,CAAA,CAAA,EAAII,EAAK7G,CAAK,CAAC,EAAE,CAAA,CAC/C1I,CAAAA,CAAM,OAAA,EAAS,KAAA,IACjB,CAAA,CALe,QAAA,CAAA,CAMf,OAAOoK,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAW1P,CAAAA,CAAG,sBAAA,CAAwBqM,CAAS,CAAA,CAAG,MAAOC,CAAAA,CAAO,GAAA,CAAKvF,EAAM,GAAA,CAAK,cAAA,CAAc8I,EAAS,eAAA,CAAeuB,CAAAA,EAAY,MAAA,CAAW,eAAA,CAAeC,GAAY,MAAA,CAAW,cAAA,CAActK,EAAM,cAAc,CAAA,EAAK,OAAW,OAAA,CAASlF,CAAAA,EAAS,CAC7P,CAACuP,GAAY,CAAEvP,CAAAA,CAAM,OAAuB,OAAA,CAAQ,QAAQ,GAAGyD,CAAAA,CAAM,OAAA,EAAS,KAAA,GACpF,EACG,QAAA,CAAA,CAAAuP,CAAAA,CAAK,IAAI,CAACU,CAAAA,CAAKvH,IAAUb,GAAAA,CAACqI,EAAAA,CAAA,CAAiC,KAAA,CAAOD,EAAK,QAAA,CAAU1C,CAAAA,CAAQ,YAAa4B,CAAAA,CAAa,QAAA,CAAU,IAAMY,CAAAA,CAAOrH,CAAK,GAAvG,CAAA,EAAGA,CAAK,IAAIuH,CAAG,CAAA,CAA2F,CAAE,CAAA,CACrJpI,GAAAA,CAAC,SAAO,GAAGyD,CAAAA,CAAQ,GAAG7J,CAAAA,CAAO,IAAKzB,CAAAA,CAAO,IAAA,CAAM5D,EAAM,IAAA,CAAK,MAAA,CAAO,UAAU,6BAAA,CAA8B,QAAA,CAAU0P,CAAAA,CAAU,QAAA,CAAUC,EAAU,WAAA,CAAaqD,CAAAA,CAAa,MAAOK,CAAAA,CAAO,QAAA,CAAUhO,EAAM,QAAA,EAAY8N,CAAAA,CAAK,MAAA,GAAW,CAAA,CAAG,gBAAe9N,CAAAA,CAAM,QAAA,EAAY,OAAW,QAAA,CAAUlF,CAAAA,EAAS,CACjSgR,CAAAA,GACJmC,CAAAA,CAASnT,EAAM,MAAA,CAAO,KAAK,EAC3BnB,CAAAA,GAAWmB,CAAK,GAClB,CAAA,CAAG,kBAAA,CAAoBA,GAAS,CAAEsT,EAAAA,CAAU,OAAA,CAAU,IAAA,CAAMR,IAAqB9S,CAAK,EAAG,EAAG,gBAAA,CAAkBA,CAAAA,EAAS,CAAEsT,EAAAA,CAAU,OAAA,CAAU,KAAA,CAAOP,CAAAA,GAAmB/S,CAAK,EAAG,CAAA,CAAG,UAAWA,CAAAA,EAAS,CAEpM,GADA8O,CAAAA,GAAY9O,CAAK,CAAA,CACb,EAAAA,EAAM,gBAAA,EAAoBgR,CAAAA,EAAUsC,GAAU,OAAA,EAAWtT,CAAAA,CAAM,YAAY,WAAA,EAAeA,CAAAA,CAAM,UAAY,GAAA,CAAA,CAChH,GAAIA,EAAM,GAAA,GAAQ,OAAA,CAAS,CACzBA,CAAAA,CAAM,cAAA,GACN,IAAMV,CAAAA,CAAO4T,CAAAA,CAAM,IAAA,GACf5T,CAAAA,EAAQ,CAAC0T,EAAK,QAAA,CAAS1T,CAAI,IAC7B2T,CAAAA,CAAQ,CAAC,GAAGD,CAAAA,CAAM1T,CAAI,CAAC,CAAA,CACvB+T,GAAgB/T,CAAI,CAAA,CAAA,CAEtB6T,EAAS,EAAE,EACb,CAAA,KAAWnT,CAAAA,CAAM,MAAQ,WAAA,EAAekT,CAAAA,GAAU,IAAMF,CAAAA,CAAK,MAAA,GAC3DhT,EAAM,cAAA,EAAe,CACrBwT,EAAOR,CAAAA,CAAK,MAAA,CAAS,CAAC,CAAA,EAE1B,CAAA,CAAG,EACFtO,CAAAA,CAAOsO,CAAAA,CAAK,IAAI,CAACU,CAAAA,CAAKvH,CAAAA,GAAUb,GAAAA,CAAC,SAAkB,IAAA,CAAK,QAAA,CAAS,KAAM5G,CAAAA,CAAM,IAAA,CAAM7E,EAAM,KAAA,CAAO6T,CAAAA,CAAK,QAAA,CAAUnE,CAAAA,CAAAA,CAAnEpD,CAA6E,CAAE,CAAA,CAAI,KAChIb,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,4BAAA,CAA6B,WAAA,CAAU,QAAA,CAAS,aAAA,CAAY,OAAQ,QAAA,CAAA8H,CAAAA,CAAa,GACnG,CACF,CAAA,CAlDsE,mBAkDrE,EAED,SAASO,GAAS,CAAE,KAAA,CAAAtC,EAAO,QAAA,CAAA9B,CAAAA,CAAU,YAAAqD,CAAAA,CAAa,QAAA,CAAAgB,CAAS,CAAA,CAAsF,CAC/I,OAAO/F,IAAAA,CAAC,QAAK,SAAA,CAAU,sBAAA,CAAuB,UAAAvC,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,2BAAA,CAA4B,KAAA,CAAO+F,CAAAA,CAAQ,QAAA,CAAAA,EAAM,CAAA,CAAQuC,CAAAA,CAAWtI,IAAC,QAAA,CAAA,CAAO,IAAA,CAAK,SAAS,SAAA,CAAU,6BAAA,CAA8B,QAAA,CAAUiE,CAAAA,CAAU,aAAY,CAAA,EAAGqD,CAAW,IAAIvB,CAAK,CAAA,CAAA,CAAI,QAASuC,CAAAA,CAAU,QAAA,CAAAtI,IAACuI,GAAAA,CAAA,CAAE,KAAK,yEAAA,CAA0E,aAAA,CAAY,OAAO,CAAA,CAAE,CAAA,CAAY,MAAK,CACxY,CAFSzV,CAAAA,CAAAuV,EAAAA,CAAA,YAGT,IAAMvB,EAAAA,CAA2BrE,WAAqD3P,CAAAA,CAAA,SAAkC,CACtH,OAAA,CAAA4P,CAAAA,CAAS,IAAA,CAAAyE,CAAAA,CAAM,MAAApB,CAAAA,CAAO,KAAA,CAAAyC,EAAO,KAAA,CAAAC,CAAAA,CAAO,SAAAH,CAAAA,CAAU,WAAA,CAAAhB,CAAAA,CAAc,cAAA,CAAM,KAAAlO,CAAAA,CAAM,IAAA,CAAA7E,EAAM,QAAA,CAAA0P,CAAAA,CAAU,SAAAC,CAAAA,CAAU,SAAA,CAAAhF,EAAW,KAAA,CAAAC,CAAAA,CAAO,UAAAuJ,CAAAA,CAAW,GAAGjF,CACpI,CAAA,CAAGvP,CAAAA,CAAK,CACN,IAAM0F,CAAAA,CAAQ2K,EAAAA,CAASd,CAAK,EACtBtL,CAAAA,CAAQzE,MAAAA,CAAyB,IAAI,CAAA,CACrCiV,CAAAA,CAAMjV,OAA0B,IAAI,CAAA,CACpCkV,CAAAA,CAAQlV,MAAAA,CAAuB,IAAI,CAAA,CACnC,CAACoU,EAAcC,CAAe,CAAA,CAAIjU,SAAS,EAAE,CAAA,CAC7C4R,CAAAA,CAASzB,CAAAA,EAAYC,EAC3B,OAAAQ,mBAAAA,CAAoBxQ,EAAK,IAAMiE,CAAAA,CAAM,QAAU,EAAE,CAAA,CACjD9D,SAAAA,CAAU,IAAM,CAAE8D,CAAAA,CAAM,SAAS,iBAAA,CAAkByB,CAAAA,CAAM,UAAY,CAAC4O,CAAAA,CAAM,MAAA,CAAS,wDAAA,CAAc,EAAE,EAAG,CAAA,CAAG,CAAC5O,CAAAA,CAAM,QAAA,CAAU4O,EAAM,MAAM,CAAC,CAAA,CAClIjG,IAAAA,CAAC,OAAI,GAAA,CAAKqG,CAAAA,CAAO,KAAK,OAAA,CAAQ,YAAA,CAAY7C,EAAO,kBAAA,CAAkBnM,CAAAA,CAAM,kBAAkB,CAAA,CAAG,gBAAeA,CAAAA,CAAM,QAAA,EAAY,OAAW,cAAA,CAAcA,CAAAA,CAAM,cAAc,CAAA,CAAG,QAAA,CAAU,GAAI,GAAA,CAAKA,CAAAA,CAAM,IAAK,SAAA,CAAW/G,CAAAA,CAAG,uBAAwBqM,CAAS,CAAA,CAAG,YAAWiI,CAAAA,CAAM,YAAA,CAAY,CAACqB,CAAAA,CAAM,OAAQ,eAAA,CAAevE,CAAAA,EAAY,OAAW,eAAA,CAAeC,CAAAA,EAAY,OAAW,cAAA,CAActK,CAAAA,CAAM,cAAc,CAAA,EAAK,OAAW,KAAA,CAAOuF,CAAAA,CACrb,UAAAoD,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,6BAAA,CAA8B,QAAA,CAAA,CAAAvC,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,kBAAA,CAAoB,QAAA,CAAA+F,EAAM,CAAA,CAAQ0C,CAAAA,CAAQzI,IAAC,QAAA,CAAA,CAAO,GAAA,CAAK2I,EAAK,IAAA,CAAK,QAAA,CAAS,UAAU,0BAAA,CAA2B,QAAA,CAAUjD,EAAQ,YAAA,CAAY,cAAA,CAAOK,EAAO,OAAA,CAAS0C,CAAAA,CAAO,QAAA,CAAAzI,GAAAA,CAAC6I,KAAA,CAAK,aAAA,CAAY,OAAO,CAAA,CAAE,CAAA,CAAY,MAAK,CAAA,CACnRL,CAAAA,CAAM,MAAA,CAASxI,GAAAA,CAAC,OAAI,SAAA,CAAU,4BAAA,CAA8B,SAAAwI,CAAAA,CAAM,GAAA,CAAIjD,GAAQvF,GAAAA,CAACqI,EAAAA,CAAA,CAAuB,KAAA,CAAO9C,EAAK,KAAA,CAAO,QAAA,CAAUG,EAAQ,WAAA,CAAa4B,CAAAA,CAAa,SAAUgB,CAAAA,CAAW,IAAM,CAAM5C,CAAAA,GAAgB4C,CAAAA,CAAS/C,EAAK,EAAE,CAAA,CAAGwC,EAAgB,CAAA,EAAGT,CAAW,IAAI/B,CAAAA,CAAK,KAAK,CAAA,CAAE,CAAA,CAAA,CAAIoD,EAAI,OAAA,EAAWC,CAAAA,CAAM,UAAU,KAAA,EAAM,EAAG,EAAI,MAAA,CAAA,CAA1OrD,CAAAA,CAAK,EAAgP,CAAE,EAAE,CAAA,CAAS,IAAA,CAChWvF,IAAC,OAAA,CAAA,CAAO,GAAGyD,EAAQ,GAAG7J,CAAAA,CAAO,GAAA,CAAKzB,CAAAA,CAAO,KAAM5D,CAAAA,CAAM,IAAA,CAAK,OAAO,SAAA,CAAU,4BAAA,CAA6B,cAAY,MAAA,CAAO,QAAA,CAAU,GAAI,KAAA,CAAOiU,CAAAA,CAAM,OAAS,UAAA,CAAa,EAAA,CAAI,SAAU,IAAM,CAAC,EAAG,QAAA,CAAUvE,CAAAA,CAAU,QAAA,CAAUrK,CAAAA,CAAM,SAAU,SAAA,CAAWlF,CAAAA,EAAS,CAAEgU,CAAAA,GAAYhU,CAAK,EAAGA,CAAAA,CAAM,cAAA,EAAe,CAAA,CAAIiU,CAAAA,CAAI,SAAWC,CAAAA,CAAM,OAAA,GAAU,QAAS,CAAA,CAAG,EAC/VxP,CAAAA,CAAOoP,CAAAA,CAAM,GAAA,CAAIjD,CAAAA,EAAQvF,IAAC,OAAA,CAAA,CAAoB,IAAA,CAAK,SAAS,IAAA,CAAM5G,CAAAA,CAAM,KAAM7E,CAAAA,CAAM,KAAA,CAAOgR,EAAK,EAAA,CAAI,QAAA,CAAUtB,GAAzEsB,CAAAA,CAAK,EAA8E,CAAE,CAAA,CAAI,IAAA,CAC/HvF,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,4BAAA,CAA6B,WAAA,CAAU,SAAS,aAAA,CAAY,MAAA,CAAQ,SAAA8H,CAAAA,CAAa,CAAA,CAAA,CACnG,CACF,CAAA,CAlBsF,0BAAA,CAkBrF,CAAA,CACYgB,EAAAA,CAAWrG,WAA6E3P,CAAAA,CAAA,SAAkB,CAAE,SAAA,CAAAoM,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CAAE,IAAM0F,CAAAA,CAAQ2K,EAAAA,CAASd,CAAK,CAAA,CAAG,OAAOzD,IAAC,UAAA,CAAA,CAAU,GAAGyD,EAAQ,GAAG7J,CAAAA,CAAO,IAAK1F,CAAAA,CAAK,SAAA,CAAWrB,EAAG,qBAAA,CAAuBqM,CAAS,EAAG,CAAI,CAAA,CAAvL,UAAA,CAAwL,EACtR,SAAS6J,EAAAA,CAAiBC,CAAAA,CAA6B,CAAE,OAAO,sBAAA,CAAuB,KAAKA,CAAAA,CAAK,IAAA,EAAM,CAAA,EAAK,OAAO,QAAA,CAAS,MAAA,CAAOA,CAAI,CAAC,CAAA,CAAI,OAAOA,CAAI,CAAA,CAAI,IAAM,CAAxJlW,EAAAiW,EAAAA,CAAA,kBAAA,CAAA,KAGHE,EAAAA,CAAcxG,UAAAA,CAA+C3P,EAAA,SAAqB2Q,CAAAA,CAAOvP,EAAK,CACzG,OAAO8L,IAAC6G,EAAAA,CAAA,CAAO,GAAGpD,CAAAA,CAAO,OAAA,CAAQ,SAAS,GAAA,CAAKvP,CAAAA,CAAK,CACtD,CAAA,CAF0E,cAEzE,CAAA,CACK+S,EAAAA,CAAqBxE,WAA+C3P,CAAAA,CAAA,SAA4B,CAAE,OAAA,CAAA4P,CAAAA,CAAS,KAAA,CAAAxP,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,QAAA,CAAAxQ,CAAAA,CAAU,GAAGkQ,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CAC9K,GAAM,CAAC8U,CAAAA,CAAME,CAAO,CAAA,CAAI9V,CAAAA,CAAgBF,EAAOG,CAAAA,CAAc,EAAA,CAAIW,CAAAA,EAAQ+P,CAAAA,GAAgB/P,EAAM,CAAE,WAAA,CAAa+U,GAAiB/U,CAAI,CAAE,CAAC,CAAC,CAAA,CACjImE,CAAAA,CAAQzE,MAAAA,CAAyB,IAAI,CAAA,CACrCD,CAAAA,CAAUC,OAAOL,CAAAA,EAAgB,EAAE,EACzC,OAAAqR,mBAAAA,CAAoBxQ,CAAAA,CAAK,IAAMiE,EAAM,OAAA,CAAU,EAAE,CAAA,CACjDlE,EAAAA,CAAakE,EAAO,IAAM,CAAMjF,CAAAA,GAAU,MAAA,EAAWgW,EAAQzV,CAAAA,CAAQ,OAAO,EAAG,CAAC,CAAA,CACzEuM,IAAC6G,EAAAA,CAAA,CAAO,GAAGpD,CAAAA,CAAO,OAAA,CAAQ,UAAU,IAAA,CAAK,MAAA,CAAO,UAAU,SAAA,CAAU,KAAA,CAAOuF,EAAM,QAAA,CAAUtU,CAAAA,EAAS,CAAEwU,CAAAA,CAAQxU,EAAM,MAAA,CAAO,KAAK,EAAGnB,CAAAA,GAAWmB,CAAK,EAAG,CAAA,CAAG,GAAA,CAAKyD,CAAAA,CAAO,CAC9K,EAP0E,oBAAA,CAOzE,CAAA,CAGYgR,GAAc1G,UAAAA,CAA+C3P,CAAAA,CAAA,SAAqB2Q,CAAAA,CAAOvP,CAAAA,CAAK,CACzG,OAAO8L,IAAC6G,EAAAA,CAAA,CAAO,GAAGpD,CAAAA,CAAO,OAAA,CAAQ,SAAS,GAAA,CAAKvP,CAAAA,CAAK,CACtD,CAAA,CAF0E,aAAA,CAEzE,EACK8S,EAAAA,CAAqBvE,UAAAA,CAA+C3P,EAAA,SAA4B,CAAE,QAAA4P,CAAAA,CAAS,KAAA,CAAAxP,CAAAA,CAAO,YAAA,CAAAG,EAAc,aAAA,CAAA0Q,CAAAA,CAAe,SAAAxQ,CAAAA,CAAU,QAAA,CAAA6V,EAAU,UAAA,CAAAC,CAAAA,CAAa,0BAAA,CAAQ,SAAA,CAAAnK,EAAW,SAAA,CAAAsE,CAAAA,CAAW,mBAAAgE,CAAAA,CAAoB,gBAAA,CAAAC,EAAkB,QAAA,CAAAxD,CAAAA,CAAU,QAAA,CAAAC,CAAAA,CAAU,GAAGT,CAAM,CAAA,CAAGvP,EAAK,CAC7R,GAAM,CAAC8U,CAAAA,CAAME,CAAO,EAAI9V,CAAAA,CAAgBF,CAAAA,CAAOG,EAAc,EAAA,CAAI0Q,CAAa,EACxEiE,CAAAA,CAAYtU,MAAAA,CAAO,KAAK,CAAA,CACxByE,CAAAA,CAAQzE,MAAAA,CAAyB,IAAI,EAC3CgR,mBAAAA,CAAoBxQ,CAAAA,CAAK,IAAMiE,CAAAA,CAAM,OAAA,CAAU,EAAE,CAAA,CACjD,IAAM1E,CAAAA,CAAUC,OAAOL,CAAAA,EAAgB,EAAE,EACzCY,EAAAA,CAAakE,CAAAA,CAAO,IAAM,CAAMjF,CAAAA,GAAU,MAAA,EAAWgW,CAAAA,CAAQzV,EAAQ,OAAO,EAAG,CAAC,CAAA,CAChF,IAAM6V,EAAQxW,CAAAA,CAAA,IAAM,CAClB,IAAMyW,CAAAA,CAASpR,EAAM,OAAA,CACrB,GAAI8L,GAAYC,CAAAA,EAAY,CAACqF,EAAQ,OAEtB,MAAA,CAAO,wBAAA,CAAyBA,CAAAA,CAAO,cAAc,WAAA,CAAa,gBAAA,CAAiB,UAAW,OAAO,CAAA,CAAG,IAChH,IAAA,CAAKA,CAAAA,CAAQ,EAAE,CAAA,CACtBA,EAAO,aAAA,CAAc,IAAI,MAAM,OAAA,CAAS,CAAE,QAAS,IAAK,CAAC,CAAC,CAAA,CAC1DA,EAAO,KAAA,GACT,EARc,OAAA,CAAA,CASd,OAAOhH,KAAC,KAAA,CAAA,CAAI,SAAA,CAAW1P,EAAG,mBAAA,CAAqBqM,CAAS,EAAG,QAAA,CAAA,CAAAc,GAAAA,CAACwJ,OAAA,CAAO,IAAA,CAAK,0EAA0E,aAAA,CAAY,MAAA,CAAO,CAAA,CAAExJ,GAAAA,CAAC6G,GAAA,CAAO,GAAGpD,EAAO,OAAA,CAAQ,SAAA,CAAU,IAAKtL,CAAAA,CAAO,IAAA,CAAK,QAAA,CAAS,QAAA,CAAU8L,EAAU,QAAA,CAAUC,CAAAA,CAAU,MAAO8E,CAAAA,CAAM,QAAA,CAAUtU,GAAS,CAAM,CAACuP,CAAAA,EAAY,CAACC,IAAYgF,CAAAA,CAAQxU,CAAAA,CAAM,OAAO,KAAK,CAAA,CAAGnB,IAAWmB,CAAK,CAAA,EAAK,EAAG,kBAAA,CAAoBA,CAAAA,EAAS,CAAEsT,CAAAA,CAAU,OAAA,CAAU,KAAMR,CAAAA,GAAqB9S,CAAK,EAAG,CAAA,CAAG,gBAAA,CAAkBA,CAAAA,EAAS,CAAEsT,EAAU,OAAA,CAAU,KAAA,CAAOP,IAAmB/S,CAAK,EAAG,EAAG,SAAA,CAAWA,CAAAA,EAAS,CAAE8O,CAAAA,GAAY9O,CAAK,CAAA,CAAO,CAACA,EAAM,gBAAA,EAAoBA,CAAAA,CAAM,MAAQ,OAAA,EAAW,CAACuP,CAAAA,EAAY,CAACC,GAAY,CAAC8D,CAAAA,CAAU,SAAW,CAACtT,CAAAA,CAAM,YAAY,WAAA,EAAeA,CAAAA,CAAM,UAAY,GAAA,GAAOA,CAAAA,CAAM,gBAAe,CAAG0U,CAAAA,GAAWJ,CAAI,CAAA,EAAK,CAAA,CAAG,EAAGA,CAAAA,CAAOhJ,GAAAA,CAACwC,EAAAA,CAAA,CAAO,MAAM,MAAA,CAAO,YAAA,CAAY6G,EAAY,IAAA,CAAK,IAAA,CAAK,SAAUpF,CAAAA,EAAYC,CAAAA,CAAU,OAAA,CAASoF,CAAAA,CAAO,SAAAtJ,GAAAA,CAACuI,GAAAA,CAAA,CAAE,IAAA,CAAK,yEAAA,CAA0E,cAAY,MAAA,CAAO,CAAA,CAAE,CAAA,CAAY,IAAA,CAAA,CAAK,CACxhC,CAAA,CAjB0E,oBAAA,CAiBzE,EAEY3E,EAAAA,CAASnB,UAAAA,CAA2C3P,EAAA,SAAgB,CAAE,OAAA,CAAAmQ,CAAAA,CAAS,eAAAC,CAAAA,CAAgB,eAAA,CAAAC,EAAiB,SAAA,CAAAjE,CAAAA,CAAW,cAAAqE,CAAAA,CAAe,SAAA,CAAAC,CAAAA,CAAW,GAAGC,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CACjL,IAAM0F,CAAAA,CAAQ2K,GAASd,CAAK,CAAA,CACtB,CAACvQ,CAAAA,CAAOuW,CAAQ,CAAA,CAAIrW,CAAAA,CAAgB6P,EAASC,CAAAA,CAAgB,KAAA,CAAOC,CAAe,CAAA,CACzF,OAAOnD,GAAAA,CAAiB,EAAA,CAAA,IAAA,CAAhB,CAAsB,GAAGyD,CAAAA,CAAQ,GAAG7J,CAAAA,CAAO,GAAA,CAAK1F,EAAK,OAAA,CAAShB,CAAAA,CAAO,gBAAiBuW,CAAAA,CAAU,aAAA,CAAe/U,GAAS,CAAEA,CAAAA,CAAM,cAAc,OAAA,CAAQ,KAAA,CAAQ,UAAW6O,CAAAA,GAAgB7O,CAAK,EAAG,CAAA,CAAG,UAAWA,CAAAA,EAAS,CAAEA,EAAM,aAAA,CAAc,OAAA,CAAQ,MAAQ,UAAA,CAAY8O,CAAAA,GAAY9O,CAAK,EAAG,EAAG,SAAA,CAAW7B,CAAAA,CAAG,oBAAqBqM,CAAS,CAAA,CAAG,SAAAc,GAAAA,CAAiB,EAAA,CAAA,KAAA,CAAhB,CAAsB,SAAA,CAAU,0BAA0B,CAAA,CAAE,CACvZ,EAJiE,QAAA,CAIhE,CAAA,CAIY0J,GAAgBjH,UAAAA,CAAkD3P,CAAAA,CAAA,SAAuB,CAAE,SAAA,CAAA6W,EAAY3J,GAAAA,CAAC4J,WAAAA,CAAA,CAAY,IAAA,CAAM,EAAA,CAAI,EAAI,SAAA,CAAA1K,CAAAA,CAAW,QAAA,CAAAD,CAAAA,CAAU,KAAAoE,CAAAA,CAAO,QAAA,CAAU,GAAGI,CAAM,CAAA,CAAGvP,EAAK,CACpM,OAAOqO,IAAAA,CAAC,QAAA,CAAA,CAAQ,GAAGkB,CAAAA,CAAO,GAAA,CAAKvP,EAAK,IAAA,CAAMmP,CAAAA,CAAM,UAAWxQ,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAC,MAAA,CAAA,CAAK,UAAU,kBAAA,CAAoB,QAAA,CAAAf,EAAS,CAAA,CAAOe,GAAAA,CAAC,QAAK,SAAA,CAAU,UAAA,CAAW,cAAY,MAAA,CAAQ,QAAA,CAAA2J,EAAU,CAAA,CAAA,CAAO,CACrN,EAF+E,eAAA,CAE9E,CAAA,CAKYE,EAAAA,CAASpH,UAAAA,CAA2C3P,EAAA,SAAgB2Q,CAAAA,CAAOvP,EAAK,CAC3F,OAAIuP,EAAM,OAAA,GAAY,UAAA,CAAmBzD,GAAAA,CAAC8J,EAAAA,CAAA,CAAgB,GAAGrG,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,CAAA,CACvE8L,IAAC+J,EAAAA,CAAA,CAAc,GAAGtG,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,CAC5C,EAHiE,QAAA,CAGhE,CAAA,CACK6V,GAAetH,UAAAA,CAAiD3P,CAAAA,CAAA,SAAsB,CAAE,OAAA,CAAAsF,EAAS,WAAA,CAAAmP,CAAAA,CAAa,UAAArI,CAAAA,CAAW,KAAA,CAAAC,EAAO,EAAA,CAAAmH,CAAAA,CAAI,YAAA,CAAcP,CAAAA,CAAO,mBAAoBS,CAAAA,CAAa,cAAA,CAAgBJ,EAAS,KAAA,CAAAlT,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,CAAAA,CAAe,OAAA,CAASiG,EAAU,GAAGvG,CAAM,EAAGvP,CAAAA,CAAK,CAC/R,IAAM0F,CAAAA,CAAQ2K,EAAAA,CAAS,CAAE,EAAA,CAAA+B,EAAI,GAAA,CAAK7C,CAAAA,CAAM,IAAK,kBAAA,CAAoB+C,CAAAA,CAAa,eAAgBJ,CAAAA,CAAS,QAAA,CAAU3C,EAAM,QAAS,CAAC,EAC3H,CAACe,CAAAA,CAAUC,CAAW,CAAA,CAAIrR,CAAAA,CAAgBF,EAAOG,CAAAA,CAAc,EAAA,CAAI0Q,CAAa,CAAA,CAChFjE,EAAYlC,CAAAA,CAAe6F,CAAAA,CAAM,GAAG,CAAA,CACpCnF,CAAAA,CAASD,IAAY,CACrB,CAAE,QAAA,CAAA+E,CAAAA,CAAU,GAAG6G,CAAgB,CAAA,CAAIrQ,EACzC,OAAO2I,IAAAA,CAAiB,OAAhB,CAAsB,GAAGkB,CAAAA,CAAO,GAAA,CAAK3D,EAAW,QAAA,CAAUsD,CAAAA,CAAU,MAAOoB,CAAAA,CAAU,aAAA,CAAeC,EAAa,QAAA,CAAA,CAAAlC,IAAAA,CAAiB,UAAhB,CAAwB,GAAA,CAAKrO,EAAM,GAAG+V,CAAAA,CAAiB,gBAAe7G,CAAAA,EAAY,MAAA,CAAW,aAAY2C,CAAAA,CAAO,SAAA,CAAWlT,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAG,KAAA,CAAOC,EAAO,QAAA,CAAA,CAAAa,GAAAA,CAAiB,QAAhB,CAAsB,WAAA,CAAauH,CAAAA,EAAejJ,CAAAA,CAAO,SAAS,WAAA,CAAY,WAAA,CAAa,EAAE0B,GAAAA,CAAiB,CAAA,CAAA,IAAA,CAAhB,CAAqB,aAAA,CAAY,MAAA,CAAO,QAAA,CAAAA,GAAAA,CAAC4J,YAAA,CAAY,IAAA,CAAK,0EAA0E,CAAA,CAAE,CAAA,CAAA,CAAuB,EAA0B5J,GAAAA,CAACG,EAAAA,CAAA,CAAO,QAAA,CAAAoC,IAAAA,CAAiB,UAAhB,CAAwB,SAAA,CAAU,4BAA4B,QAAA,CAAS,QAAA,CAAS,WAAY,CAAA,CAAG,QAAA,CAAA,CAAAvC,GAAAA,CAAiB,CAAA,CAAA,cAAA,CAAhB,CAA+B,QAAA,CAAAA,GAAAA,CAACkK,UAAA,CAAU,IAAA,CAAK,0EAA0E,aAAA,CAAY,MAAA,CAAO,CAAA,CAAE,CAAA,CAAiClK,IAAiB,CAAA,CAAA,QAAA,CAAhB,CAA0B,SAAA5H,CAAAA,CAAQ,GAAA,CAAIuM,GAAUpC,IAAAA,CAAiB,CAAA,CAAA,IAAA,CAAhB,CAAwC,KAAA,CAAOoC,EAAO,KAAA,CAAO,QAAA,CAAUA,EAAO,QAAA,CAAU,SAAA,CAAU,yBAAyB,QAAA,CAAA,CAAA3E,GAAAA,CAAiB,CAAA,CAAA,QAAA,CAAhB,CAA0B,SAAA2E,CAAAA,CAAO,KAAA,CAAM,EAA2B3E,GAAAA,CAAiB,CAAA,CAAA,aAAA,CAAhB,CAA8B,QAAA,CAAAA,GAAAA,CAACmK,KAAAA,CAAA,CAAM,KAAK,yEAAA,CAA0E,aAAA,CAAY,OAAO,CAAA,CAAE,CAAA,CAAA,CAAA,CAA9SxF,EAAO,KAAuU,CAAuB,CAAA,CAAE,CAAA,CAA2B3E,IAAiB,CAAA,CAAA,gBAAA,CAAhB,CAAiC,SAAAA,GAAAA,CAAC4J,WAAAA,CAAA,CAAY,IAAA,CAAK,yEAAA,CAA0E,aAAA,CAAY,MAAA,CAAO,EAAE,CAAA,CAAA,CAAmC,CAAA,CAA0B,GAAS,CAC9/C,CAAA,CAPsE,eAOrE,CAAA,CACKE,EAAAA,CAAiBrH,WAAmD3P,CAAAA,CAAA,SAAwB,CAAE,OAAA,CAAAsF,CAAAA,CAAS,YAAAmP,CAAAA,CAAa,SAAA,CAAArI,EAAW,KAAA,CAAAC,CAAAA,CAAO,EAAA,CAAAmH,CAAAA,CAAI,aAAcP,CAAAA,CAAO,kBAAA,CAAoBS,EAAa,cAAA,CAAgBJ,CAAAA,CAAS,MAAAlT,CAAAA,CAAO,YAAA,CAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,IAAA,CAAAqG,CAAAA,CAAM,YAAAC,CAAAA,CAAa,YAAA,CAAAC,EAAc,GAAG7G,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CACnT,IAAM0F,CAAAA,CAAQ2K,GAAS,CAAE,EAAA,CAAA+B,EAAI,GAAA,CAAK7C,CAAAA,CAAM,IAAK,kBAAA,CAAoB+C,CAAAA,CAAa,eAAgBJ,CAAAA,CAAS,QAAA,CAAU3C,EAAM,QAAS,CAAC,EAC3H,CAACe,CAAAA,CAAUC,CAAW,CAAA,CAAIrR,EAAgBF,CAAAA,CAAOG,CAAAA,CAAc,EAAC,CAAG0Q,CAAa,EAChF,CAACwG,CAAAA,CAAOC,CAAQ,CAAA,CAAIpX,EAAgBgX,CAAAA,CAAMC,CAAAA,CAAa,MAAOC,CAAY,CAAA,CAC1EG,EAAU/W,MAAAA,CAA0B,IAAI,CAAA,CACxCyE,CAAAA,CAAQzE,OAAyB,IAAI,CAAA,CACrCD,EAAUC,MAAAA,CAAOL,CAAAA,EAAgB,EAAE,CAAA,CACzCqR,oBAAoBxQ,CAAAA,CAAK,IAAMuW,EAAQ,OAAA,CAAU,EAAE,CAAA,CACnDxW,EAAAA,CAAakE,EAAO,IAAM,CAAMjF,CAAAA,GAAU,MAAA,EAAWuR,EAAYhR,CAAAA,CAAQ,OAAO,EAAG+W,CAAAA,CAAS,KAAK,EAAGE,CAAAA,CAAoB,KAAK,EAAG,CAAC,EACjI,IAAM5K,CAAAA,CAAYlC,EAAe6F,CAAAA,CAAM,GAAG,EACpCnF,CAAAA,CAASD,EAAAA,EAAY,CACrB,CAAE,SAAA+E,CAAAA,CAAU,GAAG6G,EAAgB,CAAA,CAAIrQ,CAAAA,CACnC+Q,GAAcnJ,KAAAA,EAAM,CACpBoJ,EAAYhR,CAAAA,CAAM,EAAA,EAAM+Q,GACxBE,CAAAA,CAAaF,EAAAA,CAAc,YAC3B,CAACG,CAAAA,CAAkBJ,CAAmB,CAAA,CAAI5W,QAAAA,CAAS,KAAK,CAAA,CAC9DO,UAAU,IAAM,CAAA,CAAMmQ,EAAS,MAAA,EAAU,CAACpB,IAAUsH,CAAAA,CAAoB,KAAK,EAAG,CAAA,CAAG,CAAClG,CAAAA,CAAS,MAAA,CAAQpB,CAAQ,CAAC,CAAA,CAC9G,IAAM2H,CAAAA,CAAiB3S,CAAAA,CAAQ,MAAA,CAAOuM,CAAAA,EAAUH,EAAS,QAAA,CAASG,CAAAA,CAAO,KAAK,CAAC,CAAA,CAAE,IAAIA,CAAAA,EAAUA,CAAAA,CAAO,KAAK,CAAA,CACrG3B,CAAAA,CAASlQ,EAAC6R,CAAAA,EAAyB,CACnCA,EAAO,QAAA,EAAYlB,CAAAA,CAAM,UAC7BgB,CAAAA,CAAYD,CAAAA,CAAS,QAAA,CAASG,CAAAA,CAAO,KAAK,CAAA,CAAIH,CAAAA,CAAS,OAAOtR,CAAAA,EAASA,CAAAA,GAAUyR,EAAO,KAAK,CAAA,CAAI,CAAC,GAAGH,EAAUG,CAAAA,CAAO,KAAK,CAAC,EAC9H,CAAA,CAHe,UAIf,OAAOpC,IAAAA,CAAe,EAAA,CAAA,IAAA,CAAd,CAAmB,IAAKzC,CAAAA,CAAW,IAAA,CAAMyK,EAAO,YAAA,CAAcC,CAAAA,CAAU,MAAO,KAAA,CACrF,QAAA,CAAA,CAAAxK,IAAe,EAAA,CAAA,OAAA,CAAd,CAAsB,QAAO,IAAA,CAAC,QAAA,CAAAuC,KAAC,QAAA,CAAA,CAAO,GAAA,CAAKkI,EAAS,IAAA,CAAK,QAAA,CAAU,GAAGR,EAAAA,CAAiB,GAAIW,CAAAA,CAAW,YAAA,CAAY7E,EAAO,kBAAA,CAAkB,CAACnM,EAAM,kBAAkB,CAAA,CAAGwJ,CAAAA,CAAWyH,CAAAA,CAAa,EAAE,CAAA,CAAE,MAAA,CAAO,OAAO,CAAA,CAAE,IAAA,CAAK,GAAG,CAAA,EAAK,MAAA,CAAW,cAAA,CAAcjR,CAAAA,CAAM,cAAc,CAAA,EAAKkR,CAAAA,EAAoB,OAAW,QAAA,CAAUrH,CAAAA,CAAM,SAAU,SAAA,CAAW5Q,CAAAA,CAAG,oBAAqBqM,CAAS,CAAA,CAAG,MAAOC,CAAAA,CAAO,cAAA,CAAa,WAAW,kBAAA,CAAkB,CAAC4L,EAAe,MAAA,EAAU,MAAA,CAC3c,QAAA,CAAA,CAAA/K,GAAAA,CAAC,QAAK,SAAA,CAAU,yBAAA,CAA2B,SAAA+K,CAAAA,CAAe,MAAA,CAASA,EAAe,IAAA,CAAK,QAAG,CAAA,CAAKxD,CAAAA,EAAejJ,EAAO,QAAA,CAAS,WAAA,CAAY,YAAa,CAAA,CAAO0B,GAAAA,CAAC4J,YAAA,CAAY,IAAA,CAAK,yEAAA,CAA0E,aAAA,CAAY,OAAO,CAAA,CAAA,CAC/Q,CAAA,CAAS,EACT5J,GAAAA,CAACG,EAAAA,CAAA,CAAO,QAAA,CAAAH,GAAAA,CAAe,EAAA,CAAA,OAAA,CAAd,CAAsB,aAAY+F,CAAAA,CAAO,iBAAA,CAAiBA,EAAQ,MAAA,CAAY6E,CAAAA,CAAW,WAAY,CAAA,CAAG,KAAA,CAAM,OAAA,CAAQ,SAAA,CAAU,+DACtI,QAAA,CAAAxS,CAAAA,CAAQ,IAAIuM,CAAAA,EAAUpC,IAAAA,CAAe,gBAAd,CAA8C,OAAA,CAASiC,CAAAA,CAAS,QAAA,CAASG,EAAO,KAAK,CAAA,CAAG,SAAUA,CAAAA,CAAO,QAAA,CAAU,SAAUjQ,CAAAA,EAAS,CAAEA,CAAAA,CAAM,cAAA,GAAkBsO,CAAAA,CAAO2B,CAAM,EAAG,CAAA,CAAG,SAAA,CAAU,yBACnN,QAAA,CAAA,CAAA3E,GAAAA,CAAC,QAAM,QAAA,CAAA2E,CAAAA,CAAO,MAAM,CAAA,CAAO3E,GAAAA,CAAe,iBAAd,CAA4B,QAAA,CAAAA,IAACmK,KAAAA,CAAA,CAAM,IAAA,CAAK,yEAAA,CAA0E,cAAY,MAAA,CAAO,CAAA,CAAE,IAD7GxF,CAAAA,CAAO,KAE/D,CAA6B,CAAA,CAC/B,CAAA,CAAwB,CAAA,CACvBvB,CAAAA,CAAWpD,IAAC,MAAA,CAAA,CAAK,EAAA,CAAI6K,EAAY,SAAA,CAAU,4BAAA,CAA8B,SAAAvM,CAAAA,CAAO,MAAA,CAAO,UAAA,CAAW,IAAI,EAAI,8DAAA,CAAe,uCAAA,CAAwC,EAAU,IAAA,CAC5K0B,GAAAA,CAAC,SAAM,GAAA,CAAK7H,CAAAA,CAAO,KAAK,MAAA,CAAO,SAAA,CAAU,6BAA6B,aAAA,CAAY,MAAA,CAAO,SAAU,EAAA,CAAI,IAAA,CAAMsL,EAAM,IAAA,CAAM,YAAA,CAAcA,CAAAA,CAAM,YAAA,CAAc,MAAOe,CAAAA,CAAS,MAAA,CAAS,WAAa,EAAA,CAAI,QAAA,CAAU,IAAM,CAAC,CAAA,CAAG,QAAA,CAAUf,CAAAA,CAAM,SAAU,QAAA,CAAUL,CAAAA,CAAU,UAAW1O,CAAAA,EAAS,CAAEA,EAAM,cAAA,EAAe,CAAGgW,CAAAA,CAAoB,IAAI,EAAGD,CAAAA,CAAQ,OAAA,EAAS,QAAS,CAAA,CAAG,EAC5WhH,CAAAA,CAAM,IAAA,CAAOe,EAAS,GAAA,CAAIe,CAAAA,EAAQvF,IAAC,OAAA,CAAA,CAAiB,IAAA,CAAK,SAAS,IAAA,CAAMyD,CAAAA,CAAM,KAAM,IAAA,CAAMA,CAAAA,CAAM,IAAA,CAAM,KAAA,CAAO8B,EAAM,QAAA,CAAU9B,CAAAA,CAAM,UAArF8B,CAA+F,CAAE,EAAI,IAAA,CAAA,CACtJ,CACF,CAAA,CAnC0E,gBAAA,CAmCzE,EAgBM,SAASyF,EAAAA,CAAgB,CAAE,KAAA,CAAAC,CAAAA,CAAO,aAAAC,CAAAA,CAAe,CAAA,CAAG,IAAA,CAAAC,CAAAA,CAAM,YAAAC,CAAAA,CAAa,OAAA,CAAAC,EAAU,IAAA,CAAM,OAAA,CAAAC,EAAU,IAAA,CAAM,aAAA,CAAAC,EAAe,YAAA,CAAAC,CAAAA,CAAc,WAAAC,CAAAA,CAAa,cAAA,CAAM,UAAAC,CAAAA,CAAY,cAAA,CAAM,SAAAzH,CAAAA,CAAU,SAAA,CAAA/E,CAAAA,CAAW,GAAA,CAAAE,EAAK,YAAA,CAAc2G,CAAAA,CAAQ,eAAM,GAAGtC,CAAM,EAAyB,CACtQ,IAAM3D,CAAAA,CAAYlC,CAAAA,CAAewB,IAAQ,KAAA,EAASA,CAAAA,GAAQ,MAAQA,CAAAA,CAAM,MAAS,EACjF,GAAI,CAAC,MAAA,CAAO,SAAA,CAAUiM,CAAO,CAAA,EAAK,CAAC,OAAO,SAAA,CAAUC,CAAO,GAAKD,CAAAA,CAAU,CAAA,EAAKC,EAAU,IAAA,EAAQD,CAAAA,CAAUC,EAAS,MAAM,IAAI,WAAW,sEAAiE,CAAA,CAC1M,IAAMK,CAAAA,CAAcP,CAAAA,EAAeC,CAAAA,CAC7BO,CAAAA,CAAgBX,GAASC,CAAAA,CACzBW,CAAAA,CAAeV,GAAQQ,CAAAA,CAC7B,GAAI,CAAC,MAAA,CAAO,SAAA,CAAUC,CAAa,CAAA,EAAKA,EAAgB,CAAA,EAAKA,CAAAA,CAAgB,GAAI,MAAM,IAAI,WAAW,iDAAiD,CAAA,CACvJ,GAAI,CAAC,OAAO,SAAA,CAAUC,CAAY,GAAKA,CAAAA,CAAeR,CAAAA,EAAWQ,EAAeP,CAAAA,CAAS,MAAM,IAAI,UAAA,CAAW,2DAA2D,EACzK,IAAMQ,CAAAA,CAAS,MAAM,IAAA,CAAK,CAAE,OAAQ,EAAG,CAAA,CAAG,CAAC3D,CAAAA,CAAGtH,KAAW,CAAE,KAAA,CAAO,OAAOA,CAAAA,CAAQ,CAAC,EAAG,KAAA,CAAO,CAAA,EAAGA,CAAAA,CAAQ,CAAC,QAAI,CAAA,CAAE,CAAA,CACxGkL,EAAQ,KAAA,CAAM,IAAA,CAAK,CAAE,MAAA,CAAQT,CAAAA,CAAUD,CAAAA,CAAU,CAAE,EAAG,CAAClD,CAAAA,CAAGtH,KAAW,CAAE,KAAA,CAAO,OAAOwK,CAAAA,CAAUxK,CAAK,EAAG,KAAA,CAAO,MAAA,CAAOwK,EAAUxK,CAAK,CAAE,EAAE,CAAA,CAC9I,OAAO0B,KAAC,KAAA,CAAA,CAAK,GAAGkB,CAAAA,CAAO,IAAA,CAAK,QAAQ,YAAA,CAAYsC,CAAAA,CAAO,IAAKjG,CAAAA,CAAW,SAAA,CAAWjN,EAAG,8BAAA,CAAgCqM,CAAS,CAAA,CAAG,QAAA,CAAA,CAAAc,IAAC6J,EAAAA,CAAA,CAAO,aAAY4B,CAAAA,CAAY,GAAA,CAAK3L,EAAW,OAAA,CAASgM,CAAAA,CAAQ,KAAA,CAAOb,CAAAA,GAAU,OAAY,MAAA,CAAY,MAAA,CAAOA,CAAK,CAAA,CAAG,YAAA,CAAcA,IAAU,MAAA,CAAY,MAAA,CAAOC,CAAY,CAAA,CAAI,OAAW,aAAA,CAAehY,CAAAA,EAASqY,IAAgB,MAAA,CAAOrY,CAAK,CAAC,CAAA,CAAG,QAAA,CAAU+Q,CAAAA,CAAU,CAAA,CAAEjE,IAAC6J,EAAAA,CAAA,CAAO,aAAY6B,CAAAA,CAAW,GAAA,CAAK5L,EAAW,OAAA,CAASiM,CAAAA,CAAO,KAAA,CAAOZ,CAAAA,GAAS,OAAY,MAAA,CAAY,MAAA,CAAOA,CAAI,CAAA,CAAG,YAAA,CAAcA,IAAS,MAAA,CAAY,MAAA,CAAOQ,CAAW,CAAA,CAAI,OAAW,aAAA,CAAezY,CAAAA,EAASsY,IAAe,MAAA,CAAOtY,CAAK,CAAC,CAAA,CAAG,QAAA,CAAU+Q,EAAU,CAAA,CAAA,CAAE,CACtpB,CAXgBnR,CAAAA,CAAAkY,EAAAA,CAAA,mBAcT,SAASgB,EAAAA,CAAiB,CAAE,KAAA,CAAAxD,CAAAA,CAAO,KAAA,CAAAtV,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,SAAA,CAAA7E,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAA0B,CAC1H,GAAM,CAACe,CAAAA,CAAUC,CAAW,EAAIrR,CAAAA,CAAgBF,CAAAA,CAAOG,EAAcmV,CAAAA,CAAM,CAAC,CAAA,EAAG,KAAA,EAAS,GAAIzE,CAAa,CAAA,CACnGjE,EAAYlC,CAAAA,CAAe6F,CAAAA,CAAM,GAAG,CAAA,CAC1C,OAAOzD,IAAa,EAAA,CAAA,IAAA,CAAZ,CAAkB,GAAGyD,CAAAA,CAAO,GAAA,CAAK3D,EAAW,IAAA,CAAK,QAAA,CAAS,MAAO0E,CAAAA,CAAU,aAAA,CAAexQ,CAAAA,EAAQ,CAAMA,GAAMyQ,CAAAA,CAAYzQ,CAAI,EAAG,CAAA,CAAG,SAAA,CAAWnB,EAAG,sBAAA,CAAwBqM,CAAS,CAAA,CAAI,QAAA,CAAAsJ,EAAM,GAAA,CAAIjD,CAAAA,EAAQvF,IAAa,EAAA,CAAA,IAAA,CAAZ,CAAiB,KAAK,QAAA,CAA0B,KAAA,CAAOuF,CAAAA,CAAK,KAAA,CAAO,aAAYA,CAAAA,CAAK,SAAA,CAAW,SAAUA,CAAAA,CAAK,QAAA,CAAU,UAAU,oBAAA,CAAsB,QAAA,CAAAA,EAAK,KAAA,CAAA,CAAzHA,CAAAA,CAAK,KAA0H,CAAmB,CAAA,CAAE,CAC5Y,CAJgBzS,CAAAA,CAAAkZ,GAAA,kBAAA,CAAA,CAUT,SAASC,EAAAA,CAAa,CAAE,GAAIC,CAAAA,CAAU,IAAA,CAAM,UAAAvC,CAAAA,CAAY,IAAA,CAAM,UAAAzK,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAsB,CAC7G,OAAOzD,GAAAA,CAACkM,EAAA,CAAS,GAAGzI,EAAO,SAAA,CAAW5Q,CAAAA,CAAG,0BAAA,CAA4BqM,CAAS,EAAG,gBAAA,CAAgByK,CAAAA,CAAW,CAC9G,CAFgB7W,CAAAA,CAAAmZ,GAAA,cAAA,CAAA,CAKT,SAASE,GAAK,CAAE,KAAA,CAAA3D,EAAO,KAAA,CAAAtV,CAAAA,CAAO,aAAAG,CAAAA,CAAc,aAAA,CAAA0Q,EAAe,SAAA,CAAA7E,CAAAA,CAAW,YAAA,CAAc6G,CAAAA,CAAO,GAAGtC,CAAM,CAAA,CAAc,CACvH,GAAM,CAACe,EAAUC,CAAW,CAAA,CAAIrR,CAAAA,CAAgBF,CAAAA,CAAOG,EAAcmV,CAAAA,CAAM,CAAC,GAAG,KAAA,EAAS,EAAA,CAAIzE,CAAa,CAAA,CACnGjE,CAAAA,CAAYlC,CAAAA,CAAe6F,CAAAA,CAAM,GAAG,CAAA,CAC1C,OAAOlB,KAAe,EAAA,CAAA,IAAA,CAAd,CAAoB,GAAGkB,CAAAA,CAAO,GAAA,CAAK3D,EAAW,KAAA,CAAO0E,CAAAA,CAAU,cAAeC,CAAAA,CAAa,SAAA,CAAW5R,EAAG,iBAAA,CAAmBqM,CAAS,EAAG,QAAA,CAAA,CAAAc,GAAAA,CAAe,EAAA,CAAA,IAAA,CAAd,CAAmB,aAAY+F,CAAAA,CAAO,SAAA,CAAU,sBAAuB,QAAA,CAAAyC,CAAAA,CAAM,IAAIjD,CAAAA,EAAQvF,GAAAA,CAAe,EAAA,CAAA,OAAA,CAAd,CAAsB,KAAK,QAAA,CAA0B,KAAA,CAAOuF,EAAK,KAAA,CAAO,YAAA,CAAYA,EAAK,SAAA,CAAW,QAAA,CAAUA,CAAAA,CAAK,QAAA,CAAU,UAAU,gBAAA,CAAiB,QAAA,CAAAvF,IAACiM,EAAAA,CAAA,CAAa,GAAG,MAAA,CAAO,SAAA,CAAWzH,IAAae,CAAAA,CAAK,KAAA,CAAQ,SAAAA,CAAAA,CAAK,KAAA,CAAM,GAAvLA,CAAAA,CAAK,KAAiM,CAAwB,CAAA,CAAE,CAAA,CAAsBiD,CAAAA,CAAM,GAAA,CAAIjD,GAAQvF,GAAAA,CAAe,EAAA,CAAA,OAAA,CAAd,CAAuC,KAAA,CAAOuF,CAAAA,CAAK,MAAO,SAAA,CAAU,sBAAA,CAAwB,QAAA,CAAAA,CAAAA,CAAK,SAAtEA,CAAAA,CAAK,KAAyE,CAAwB,CAAA,CAAA,CAAE,CAClqB,CAJgBzS,CAAAA,CAAAqZ,EAAAA,CAAA,MAAA,CAAA,CiBvWT,IAAMC,EAAAA,CAAgB3J,UAAAA,CAA4C3P,EAAA,SAAuB,CAAE,GAAIoZ,CAAAA,CAAU,SAAA,CAAW,QAAA,CAAAjN,CAAAA,CAAU,UAAAC,CAAAA,CAAW,QAAA,CAAAmN,EAAU,GAAA,CAAAjN,CAAAA,CAAK,GAAGqE,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CAC9K,IAAM4L,CAAAA,CAAYlC,CAAAA,CAAewB,IAAQ,KAAA,EAASA,CAAAA,GAAQ,MAAQA,CAAAA,CAAM,MAAS,CAAA,CAC3E7B,CAAAA,CAAS2C,IAAoB,CAC7BoM,CAAAA,CAAQtZ,GAAqBuK,CAAAA,CAAO,MAAA,CAAO,sCAAsC,CAAC,CAAA,CACxF,OAAOyC,GAAAA,CAAY,QAAX,CAAgB,OAAA,CAAO,KAAC,IAAA,CAAK,QAAA,CAAS,gBAAiBsM,CAAAA,CAAO,GAAA,CAAKxM,CAAAA,CACzE,QAAA,CAAAyC,KAAC2J,CAAAA,CAAA,CAAS,GAAGzI,CAAAA,CAAO,GAAA,CAAKvP,EAAK,SAAA,CAAWrB,CAAAA,CAAG,4BAA6BqM,CAAS,CAAA,CAChF,UAAAc,GAAAA,CAAY,EAAA,CAAA,QAAA,CAAX,CAAoB,SAAA,CAAU,4BAAA,CAA6B,SAAU,CAAA,CAAG,IAAA,CAAK,OAAA,CAAQ,iBAAA,CAAiByD,EAAM,iBAAiB,CAAA,CAAG,aAAYA,CAAAA,CAAM,iBAAiB,EAAI,MAAA,CAAYA,CAAAA,CAAM,YAAY,CAAA,EAAK,2BAAQ,QAAA,CAAU4I,CAAAA,CAC1N,SAAApN,CAAAA,CACH,CAAA,CACAe,IAAY,EAAA,CAAA,SAAA,CAAX,CAAqB,WAAA,CAAY,UAAA,CAAW,UAAU,sBAAA,CAAuB,aAAA,CAAY,OAAO,QAAA,CAAAA,GAAAA,CAAY,SAAX,CAAiB,SAAA,CAAU,0BAA0B,CAAA,CAAE,CAAA,CACzJA,IAAY,EAAA,CAAA,SAAA,CAAX,CAAqB,YAAY,YAAA,CAAa,SAAA,CAAU,uBAAuB,aAAA,CAAY,MAAA,CAAO,QAAA,CAAAA,GAAAA,CAAY,SAAX,CAAiB,SAAA,CAAU,0BAA0B,CAAA,CAAE,CAAA,CAAA,CAC7J,EACF,CACF,CAAA,CAbyE,eAAA,CAaxE,CAAA,CCpBD,IAAMnD,EAAAA,CAAM,OAAO,GAAA,CAAI,gDAAgD,EACjErB,EAAAA,CAAO,UAAA,CACP+Q,GAAa/Q,EAAAA,CAAKqB,EAAG,IAAMrB,EAAAA,CAAKqB,EAAG,EAAIvB,aAAAA,CAAc,CAAC,GAErD,SAASkR,EAAAA,EAAwB,CACtC,OAAOvQ,UAAAA,CAAWsQ,EAAU,CAC9B,CAFgBzZ,CAAAA,CAAA0Z,EAAAA,CAAA,iBCKT,SAASC,EAAAA,EAAkB,CAChC,IAAMC,CAAAA,CAAcF,EAAAA,EAAc,CAC5B/S,EAAQiT,CAAAA,CAAc,CAAA,CACtBC,EAASpT,EAAAA,CAAmB2C,EAAAA,GAA2BzC,CAAK,CAAA,CAC5DgE,CAAAA,CAAY,MAAA,CAAO,YACvBpE,EAAAA,CAAmB,GAAA,CAAKO,GAAU,CAChC,CAAA,gBAAA,EAAmBA,EAAM,OAAA,CAAQ,QAAA,CAAWgT,GAAW,CAAA,CAAA,EAAIA,CAAAA,CAAO,aAAa,CAAA,CAAE,CAAC,CAAA,CAAA,CAClFD,CAAAA,CAAO,OAAO/S,CAAK,CACrB,CAAC,CACH,EACA,OAAO,CAAE,YAAA8S,CAAAA,CAAa,KAAA,CAAAjT,EAAO,SAAA,CAAAgE,CAAU,CACzC,CAXgB3K,EAAA2Z,EAAAA,CAAA,iBAAA,CAAA,CCCT,SAASI,EAAAA,CAAQ,CAAE,OAAA,CAAArM,CAAAA,CAAS,SAAAvB,CAAAA,CAAU,aAAA,CAAA6N,EAAe,IAAA,CAAAC,CAAAA,CAAO,KAAM,CAAA,CAAiB,CACxF,IAAMC,CAAAA,CAASzO,EAAAA,GACT/E,CAAAA,CAAQ0G,EAAAA,GACR+M,CAAAA,CAAena,CAAAA,CAACsE,CAAAA,EAAiBpE,EAAAA,CAAqBwG,EAAM,MAAA,CAAOpC,CAAI,CAAC,CAAA,CAAzD,cAAA,CAAA,CACf8V,EAAU3K,IAAAA,CAAkB,EAAA,CAAA,IAAA,CAAjB,CAAsB,aAAA,CAAeuK,EAAe,QAAA,CAAA,CAAA9M,GAAAA,CAAkB,WAAjB,CAAyB,OAAA,CAAO,KAAE,QAAA,CAAAf,CAAAA,CAAS,CAAA,CAA2Be,GAAAA,CAACG,GAAA,CAAO,QAAA,CAAAH,IAAkB,EAAA,CAAA,OAAA,CAAjB,CAAyB,KAAM+M,CAAAA,CAAM,UAAA,CAAY,OAAQvT,CAAAA,CAAM,MAAA,CAAO,iCAAiC,CAAA,CAAwB,KAAK,EAAG,SAAA,CAAU,oBAAA,CAAsB,SAAAgH,CAAAA,CAAQ,CAAA,CAA2B,CAAA,CAAA,CAAS,CAAA,CACxW,OAAOwM,CAAAA,CAASE,CAAAA,CAAUlN,IAAkB,EAAA,CAAA,QAAA,CAAjB,CAA0B,cAAe8M,CAAAA,EAAiBG,CAAAA,CAAa,4BAA4B,CAAA,CAAG,kBAAmBA,CAAAA,CAAa,gCAAgC,EAAI,QAAA,CAAAC,CAAAA,CAAQ,CAC/M,CANgBpa,CAAAA,CAAA+Z,EAAAA,CAAA,SAAA,CAAA,CAST,SAASM,EAAAA,CAAK,CAAE,QAAA1C,CAAAA,CAAS,KAAA,CAAAjC,EAAO,KAAA,CAAAzC,CAAAA,CAAO,KAAAqE,CAAAA,CAAM,WAAA,CAAAC,EAAa,YAAA,CAAAC,CAAAA,CAAc,iBAAA8C,CAAiB,CAAA,CAAc,CAC5G,GAAM,CAAC7C,CAAAA,CAAOC,CAAQ,EAAIpX,CAAAA,CAAgBgX,CAAAA,CAAMC,EAAa,KAAA,CAAOC,CAAY,EAC1ExK,CAAAA,CAAYlC,CAAAA,EAAe,CAC3BpE,CAAAA,CAAQ0G,IAAoB,CAClC,OAAOqC,KAAe8K,EAAA,CAAA,IAAA,CAAd,CAAmB,IAAKvN,CAAAA,CAAW,IAAA,CAAMyK,CAAAA,CAAO,YAAA,CAAcC,EAAU,QAAA,CAAA,CAAAxK,GAAAA,CAAeqN,WAAd,CAAsB,OAAA,CAAO,KAAE,QAAA,CAAA5C,CAAAA,CAAQ,CAAA,CAAwBzK,GAAAA,CAACG,GAAA,CAAO,QAAA,CAAAH,IAAeqN,EAAA,CAAA,OAAA,CAAd,CAAsB,aAAYtH,CAAAA,CAAO,UAAA,CAAavM,CAAAA,CAAM,MAAA,CAAO,8BAA8B,CAAA,CAAwB,KAAA,CAAO,MAAM,KAAA,CAAM,gBAAA,CAAkB4T,EAAkB,SAAA,CAAU,iBAAA,CAAmB,QAAA,CAAA5E,CAAAA,CAAM,IAAIjD,CAAAA,EAAQvF,GAAAA,CAAeqN,QAAd,CAAiC,QAAA,CAAU9H,EAAK,QAAA,CAAU,SAAA,CAAU,sBAAA,CAAuB,aAAA,CAAaA,EAAK,MAAA,EAAU,MAAA,CAAW,SAAUA,CAAAA,CAAK,QAAA,CAAW,SAAAA,CAAAA,CAAK,KAAA,CAAA,CAAzIA,EAAK,EAA0I,CAAqB,EAAE,CAAA,CAAwB,CAAA,CAAA,CAAS,CAC1lB,CALgBzS,CAAAA,CAAAqa,GAAA,MAAA,CAAA,CAOT,SAASG,EAAAA,CAAO,CAAE,MAAAC,CAAAA,CAAQ,SAAA,CAAW,KAAA1K,CAAAA,CAAO,IAAA,CAAM,OAAA2K,CAAAA,CAAS,QAAA,CAAU,QAAA,CAAAC,CAAAA,CAAW,MAAO,OAAA,CAAAC,CAAAA,CAAU,UAAW,IAAA,CAAAtD,CAAAA,CAAM,YAAAC,CAAAA,CAAa,YAAA,CAAAC,CAAAA,CAAc,OAAA,CAAAG,EAAS,KAAA,CAAAkD,CAAAA,CAAO,YAAA1H,CAAAA,CAAa,QAAA,CAAAhH,EAAU,OAAA,CAAA2O,CAAAA,CAAS,gBAAAC,CAAAA,CAAiB,eAAA,CAAAC,EAAiB,gBAAA,CAAAV,CAAAA,CAAkB,UAAAlO,CAAAA,CAAW,UAAA,CAAA6O,CAAW,CAAA,CAAgB,CAC5R,GAAM,CAACxD,EAAOC,CAAQ,CAAA,CAAIpX,EAAgBgX,CAAAA,CAAMC,CAAAA,CAAa,MAAOC,CAAY,CAAA,CAC1E0D,CAAAA,CAAQta,MAAAA,CAA0B,IAAI,CAAA,CACtC4K,CAAAA,CAASD,IAAY,CACrB4P,CAAAA,CAAQxB,IAAgB,CAC9B,OAAOlK,IAAAA,CAAiB,CAAA,CAAA,IAAA,CAAhB,CAAqB,IAAA,CAAMgI,CAAAA,CAAO,aAAcC,CAAAA,CAAW,QAAA,CAAA,CAAAC,EAAUzK,GAAAA,CAAiB,CAAA,CAAA,OAAA,CAAhB,CAAwB,OAAA,CAAO,IAAA,CAAE,SAAAyK,CAAAA,CAAQ,CAAA,CAA6B,KAAKlI,IAAAA,CAACpC,EAAAA,CAAA,CAAO,QAAA,CAAA,CAAAH,GAAAA,CAAiB,CAAA,CAAA,OAAA,CAAhB,CAAwB,gBAAeyN,CAAAA,CAAU,SAAA,CAAU,4BAA4B,CAAA,CAAElL,IAAAA,CAAiB,UAAhB,CAAwB,YAAA,CAAYgL,CAAAA,CAAO,WAAA,CAAW1K,EAAM,aAAA,CAAa2K,CAAAA,CAAQ,eAAcE,CAAAA,CAAS,KAAA,CAAOH,IAAU,OAAA,CAAUU,CAAAA,CAAM,SAAA,CAAY,MAAA,CAAW,UAAWpb,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAI,GAAI+G,EAAc,EAAC,CAAI,CAAE,kBAAA,CAAoB,MAAU,EAAI,eAAA,CAAiBvR,CAAAA,EAAS,CAC/hBA,CAAAA,CAAM,cAAA,GAGN,IAAMuN,CAAAA,CAAS+L,CAAAA,CAAM,OAAA,CACrB/L,GAAQ,aAAA,CAAc,WAAA,EAAa,sBAAsB,IAAM,CACzDA,EAAO,WAAA,EAAeA,CAAAA,CAAO,OAAA,CAAQ,iBAAiB,GAAG,YAAA,CAAa,YAAY,IAAM,MAAA,EAAA,CAAS4L,CAAAA,EAAiB,SAAW5L,CAAAA,EAAQ,KAAA,GAC3I,CAAC,EACH,CAAA,CAAG,gBAAA,CAAkBvN,GAAS,CAAE0Y,CAAAA,GAAmB1Y,CAAK,CAAA,CAAO,CAACA,EAAM,gBAAA,EAAoBoZ,CAAAA,EAAiB,UAAWpZ,CAAAA,CAAM,cAAA,GAAkBoZ,CAAAA,CAAgB,OAAA,CAAQ,OAAM,EAAK,CAAA,CAAG,QAAA,CAAA,CAAA9N,GAAAA,CAAiB,QAAhB,CAAsB,SAAA,CAAU,0BAA2B,QAAA,CAAA2N,CAAAA,CAAM,EAAyB1H,CAAAA,CAAcjG,GAAAA,CAAiB,CAAA,CAAA,WAAA,CAAhB,CAA4B,UAAU,wBAAA,CAA0B,QAAA,CAAAiG,EAAY,CAAA,CAAiC,IAAA,CAAKjG,IAAiB,CAAA,CAAA,KAAA,CAAhB,CAAsB,OAAA,CAAO,IAAA,CAAC,SAAAA,GAAAA,CAACwC,EAAAA,CAAA,CAAO,KAAA,CAAM,MAAA,CAAO,IAAKwL,CAAAA,CAAO,YAAA,CAAYD,GAAczP,CAAAA,CAAO,QAAA,CAAS,OAAO,KAAA,CAAO,SAAA,CAAU,0BAA0B,QAAA,CAAA0B,GAAAA,CAACuI,IAAA,CAAE,IAAA,CAAK,yEAAA,CAA0E,aAAA,CAAY,OAAO,CAAA,CAAE,CAAA,CAAS,EAAyBiF,CAAAA,GAAW,MAAA,CAASxN,IAACoM,EAAAA,CAAA,CAAc,SAAA,CAAU,wBAAA,CAAyB,aAAY,OAAOuB,CAAAA,EAAU,SAAWA,CAAAA,CAAQ,cAAA,CAAO,iCAAU,QAAA,CAAA1O,CAAAA,CAAS,CAAA,CAAmBA,CAAAA,CAAU2O,EAAU5N,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,2BAAA,CAA6B,QAAA,CAAA4N,EAAQ,CAAA,CAAS,IAAA,CAAA,CAAK,GAA0B,CAAA,CAAA,CAAS,CACn9B,CAdgB9a,CAAAA,CAAAwa,EAAAA,CAAA,UAgBT,SAASY,EAAAA,CAAM,CAAE,IAAA,CAAAtL,CAAAA,CAAO,SAAA,CAAW,SAAA,CAAA1D,EAAW,GAAGuE,CAAM,EAAe,CAAE,OAAOzD,IAAC,MAAA,CAAA,CAAM,GAAGyD,CAAAA,CAAO,WAAA,CAAWb,EAAM,SAAA,CAAW/P,CAAAA,CAAG,mBAAoBqM,CAAS,CAAA,CAAG,CAAI,CAA1JpM,CAAAA,CAAAob,EAAAA,CAAA,OAAA,CAAA,CAET,SAASC,EAAAA,CAAO,CAAE,KAAAvL,CAAAA,CAAO,SAAA,CAAW,OAAAwL,CAAAA,CAAQ,QAAA,CAAAnP,CAAAA,CAAU,SAAA,CAAAC,EAAW,GAAGuE,CAAM,EAAgB,CAAE,OAAOlB,KAAC,KAAA,CAAA,CAAI,IAAA,CAAMK,CAAAA,GAAS,QAAA,CAAW,QAAU,QAAA,CAAW,GAAGa,EAAO,WAAA,CAAWb,CAAAA,CAAM,UAAW/P,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAC,KAAA,CAAA,CAAK,SAAAf,CAAAA,CAAS,CAAA,CAAOmP,GAAO,CAAQ,CAA7Ptb,CAAAA,CAAAqb,EAAAA,CAAA,UAET,SAASE,EAAAA,CAAW,CAAE,KAAA,CAAAV,CAAAA,CAAO,YAAA1H,CAAAA,CAAa,MAAA,CAAAmI,EAAQ,SAAA,CAAAlP,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAoB,CAAE,OAAOlB,IAAAA,CAAC,OAAK,GAAGkB,CAAAA,CAAO,SAAA,CAAW5Q,CAAAA,CAAG,mBAAoBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAC,QAAA,CAAA,CAAQ,SAAA2N,CAAAA,CAAM,CAAA,CAAU1H,CAAAA,CAAcjG,GAAAA,CAAC,KAAG,QAAA,CAAAiG,CAAAA,CAAY,EAAO,IAAA,CAAMmI,CAAAA,CAAAA,CAAO,CAAQ,CAA3Otb,CAAAA,CAAAub,EAAAA,CAAA,YAAA,CAAA,CAET,SAASC,EAAAA,CAAa,CAAE,MAAAvI,CAAAA,CAAO,SAAA,CAAA7G,EAAW,GAAGuE,CAAM,EAAsB,CAAE,IAAMnF,EAASD,EAAAA,EAAY,CAAG,OAAOkE,IAAAA,CAAC,KAAA,CAAA,CAAI,KAAK,QAAA,CAAS,WAAA,CAAU,MAAA,CAAQ,GAAGkB,EAAO,SAAA,CAAW5Q,CAAAA,CAAG,qBAAsBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAC,MAAA,CAAA,CAAK,SAAA,CAAU,2BAAA,CAA4B,cAAY,MAAA,CAAO,CAAA,CAAG+F,GAASzH,CAAAA,CAAO,QAAA,CAAS,QAAQ,OAAA,CAAA,CAAQ,CAAQ,CAAzTxL,CAAAA,CAAAwb,GAAA,cAAA,CAAA,CAET,IAAMC,GAAS9L,UAAAA,CAAyC3P,CAAAA,CAAA,SAAgB,CAAE,GAAA,CAAA0b,EAAK,GAAA,CAAAC,CAAAA,CAAK,SAAAnb,CAAAA,CAAU,SAAA,CAAA4L,EAAW,GAAGuE,CAAM,EAAGvP,CAAAA,CAAK,CAAE,OAAOqO,IAAAA,CAAiB,QAAhB,CAAsB,GAAGkB,EAAO,GAAA,CAAKvP,CAAAA,CAAK,UAAWrB,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAiB,EAAA,CAAA,KAAA,CAAhB,CAAsB,GAAA,CAAKwO,CAAAA,CAAK,IAAKC,CAAAA,CAAK,CAAA,CAAEzO,GAAAA,CAAiB,EAAA,CAAA,QAAA,CAAhB,CAA0B,QAAA,CAAA1M,CAAAA,EAAYmb,EAAI,KAAA,CAAM,CAAA,CAAG,CAAC,CAAA,CAAE,CAAA,CAAA,CAA2B,CAAyB,CAAA,CAA7T,QAAA,CAA8T,EClDtX,IAAMC,EAAAA,CAAsBpT,cAAmC,SAAS,CAAA,CCY/E,SAASqT,EAAAA,CAAa,CAAE,OAAAtN,CAAAA,CAAQ,SAAA,CAAAnC,CAAAA,CAAW,KAAA,CAAAC,EAAO,aAAA,CAAAyP,CAAAA,CAAe,SAAA3P,CAAAA,CAAU,GAAG4P,CAAU,CAAA,CAGrF,CACD,GAAM,CAACnN,CAAAA,CAAQC,CAAS,CAAA,CAAI7N,QAAAA,CAA8B,IAAI,CAAA,CACxD,CAAC8N,EAAOC,CAAQ,CAAA,CAAI/N,QAAAA,CAAS,KAAK,EAClCiN,CAAAA,CAAUD,EAAAA,GACVgO,CAAAA,CAAcpb,MAAAA,CAAOkb,CAAa,CAAA,CACxCva,SAAAA,CAAU,IAAM,CAAEya,EAAY,OAAA,CAAUF,EAAe,EAAG,CAACA,CAAa,CAAC,CAAA,CACzEva,SAAAA,CAAU,IAAM,CACd,GAAI,CAAC0M,CAAAA,CAAS,CAAEc,CAAAA,CAAS,KAAK,EAAG,MAAQ,CACzC,IAAIrN,CAAAA,CAAS,IAAA,CACb,cAAO,eAAe,CAAA,CAAE,KAAKwN,CAAAA,EAAU,CACjCxN,GAAQmN,CAAAA,CAAUK,CAAM,EAC9B,CAAC,EAAE,KAAA,CAAMmE,CAAAA,EAAS,CACZ3R,CAAAA,EAAQsa,CAAAA,CAAY,UAAU3I,CAAAA,YAAiB,KAAA,CAAQA,CAAAA,CAAM,OAAA,CAAU,OAAOA,CAAK,CAAC,EAC1F,CAAC,CAAA,CACM,IAAM,CAAE3R,CAAAA,CAAS,MAAO,CACjC,EAAG,CAACuM,CAAO,CAAC,CAAA,CACZ,IAAMgO,EAA2B,CAAE,MAAA,CAAQ,mFAAA,CAAqF,GAAG5P,EAAO,QAAA,CAAU,UAAA,CAAY,SAAU,QAAS,CAAA,CACnL,OAAOoD,IAAAA,CAAC,KAAA,CAAA,CAAK,GAAGsM,CAAAA,CAAW,UAAWhc,CAAAA,CAAG,0BAAA,CAA4BqM,CAAS,CAAA,CAAG,KAAA,CAAO6P,EACrF,QAAA,CAAA,CAACnN,CAAAA,CAAiG,IAAA,CAAzF5B,GAAAA,CAAC,OAAI,aAAA,CAAY,MAAA,CAAO,UAAU,4BAAA,CAA6B,aAAA,CAAaqB,EAAQ,CAAA,CAC7FN,CAAAA,EAAWW,CAAAA,CAAS1B,GAAAA,CAAC0B,EAAO,MAAA,CAAP,CAAc,iBAAgB,IAAA,CAAC,KAAA,CAAO,CAAE,KAAA,CAAO,MAAA,CAAQ,OAAQ,MAAO,CAAA,CAAG,QAAS,IAAMG,CAAAA,CAAS,IAAI,CAAA,CAAG,aAAA,CAAemN,GAAU,CAAEnN,CAAAA,CAAS,KAAK,CAAA,CAAGiN,EAAY,OAAA,GAAUE,CAAM,EAAG,CAAA,CAAI,QAAA,CAAA/P,EAASyC,CAAM,CAAA,CAAE,CAAA,CAAmB,IAAA,CAAA,CACnP,CACF,CAxBS5O,CAAAA,CAAA6b,GAAA,cAAA,CAAA,CA2BT,SAASM,GAAexL,CAAAA,CAAgC,CACtD,IAAMjI,CAAAA,CAAgC,EAAC,CAAS0T,CAAAA,CAAkC,EAAC,CAC7EC,CAAAA,CAAS,IAAI,GAAA,CAAI,CAAC,KAAM,MAAA,CAAQ,OAAA,CAAS,WAAY,KAAA,CAAO,MAAA,CAAQ,SAAU,WAAA,CAAa,iBAAA,CAAmB,YAAa,WAAA,CAAa,YAAA,CAAc,0BAAA,CAA4B,MAAM,CAAC,CAAA,CAC/L,IAAA,GAAW,CAACtS,CAAAA,CAAK3J,CAAK,IAAK,MAAA,CAAO,OAAA,CAAQuQ,CAAK,CAAA,CAAA,CAAI0L,EAAO,GAAA,CAAItS,CAAG,GAAKA,CAAAA,CAAI,UAAA,CAAW,OAAO,CAAA,EAAKA,CAAAA,CAAI,UAAA,CAAW,OAAO,GAAK,UAAA,CAAW,IAAA,CAAKA,CAAG,CAAA,CAAIrB,CAAAA,CAAO0T,GAAQrS,CAAG,CAAA,CAAI3J,EACzK,OAAO,CAAE,KAAAsI,CAAAA,CAAM,MAAA,CAAA0T,CAAO,CACxB,CALSpc,EAAAmc,EAAAA,CAAA,gBAAA,CAAA,CAQF,SAASG,EAAAA,CAAO,CAAE,SAAA,CAAAlQ,CAAAA,CAAW,MAAAC,CAAAA,CAAO,aAAA,CAAAyP,EAAe,GAAGnL,CAAM,CAAA,CAAgB,CACjF,GAAM,CAAE,IAAA,CAAAjI,EAAM,MAAA,CAAA0T,CAAO,EAAID,EAAAA,CAAexL,CAAK,CAAA,CAASlG,CAAAA,CAAS4D,GAAoBjB,EAAAA,EAAqB,EACxG,OAAOF,GAAAA,CAAC2O,GAAA,CAAc,GAAGnT,EAAM,MAAA,CAAO,QAAA,CAAS,UAAW0D,CAAAA,CAAW,KAAA,CAAOC,EAAO,aAAA,CAAeyP,CAAAA,CAAgB,SAAAlN,CAAAA,EAAU1B,GAAAA,CAAC0B,CAAAA,CAAO,MAAA,CAAP,CAAc,MAAA,CAAQnE,CAAAA,CAAO,MAAO,MAAA,CAAQA,CAAAA,CAAO,IAAM,GAAG2R,CAAAA,CAAQ,CAAA,CAAG,CACtM,CAHgBpc,CAAAA,CAAAsc,EAAAA,CAAA,UAMT,SAASC,EAAAA,CAAW,CAAE,SAAA,CAAAnQ,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,cAAAyP,CAAAA,CAAe,GAAGnL,CAAM,CAAA,CAAoB,CACzF,GAAM,CAAE,IAAA,CAAAjI,EAAM,MAAA,CAAA0T,CAAO,EAAID,EAAAA,CAAexL,CAAK,EAASlG,CAAAA,CAAS4D,EAAAA,CAAoBjB,IAAqB,CAAA,CACxG,OAAOF,GAAAA,CAAC2O,GAAA,CAAc,GAAGnT,EAAM,MAAA,CAAO,QAAA,CAAS,UAAW0D,CAAAA,CAAW,KAAA,CAAOC,CAAAA,CAAO,aAAA,CAAeyP,EAAgB,QAAA,CAAAlN,CAAAA,EAAU1B,IAAC0B,CAAAA,CAAO,UAAA,CAAP,CAAkB,SAAA,CAAWnE,CAAAA,CAAO,KAAA,CAAO,OAAA,CAASA,EAAO,GAAA,CAAM,GAAG2R,EAAQ,CAAA,CAAG,CAC9M,CAHgBpc,CAAAA,CAAAuc,EAAAA,CAAA,cAMT,SAASC,EAAAA,CAAU,CAAE,SAAA,CAAApQ,CAAAA,CAAW,MAAAC,CAAAA,CAAO,aAAA,CAAAyP,EAAe,GAAGnL,CAAM,CAAA,CAAmB,CACvF,GAAM,CAAE,IAAA,CAAAjI,EAAM,MAAA,CAAA0T,CAAO,EAAID,EAAAA,CAAexL,CAAK,CAAA,CAASlG,CAAAA,CAAS4D,GAAoBjB,EAAAA,EAAqB,EACxG,OAAOF,GAAAA,CAAC2O,GAAA,CAAc,GAAGnT,CAAAA,CAAM,MAAA,CAAO,aAAa,SAAA,CAAW0D,CAAAA,CAAW,MAAOC,CAAAA,CAAO,aAAA,CAAeyP,EAAgB,QAAA,CAAAlN,CAAAA,EAAU1B,IAAC0B,CAAAA,CAAO,SAAA,CAAP,CAAiB,MAAA,CAAQnE,CAAAA,CAAO,eAAgB,MAAA,CAAQA,CAAAA,CAAO,IAAM,GAAG2R,CAAAA,CAAQ,CAAA,CAAG,CACtN,CAHgBpc,CAAAA,CAAAwc,EAAAA,CAAA,aAWT,SAASC,EAAAA,CAAW,CAAE,SAAA,CAAArQ,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,SAAA4F,CAAAA,CAAW,IAAA,CAAM,GAAGtB,CAAM,CAAA,CAAoB,CAC3F,IAAMsL,CAAAA,CAA2B,CAC/B,MAAA,CAAQ,oFACR,GAAG5P,CACL,EACA,OAAOa,GAAAA,CAAC,OAAK,GAAGyD,CAAAA,CAAO,SAAA,CAAW5Q,CAAAA,CAAG,yBAA0BqM,CAAS,CAAA,CAAG,gBAAe6F,CAAAA,CAAW,MAAA,CAAS,QAAS,KAAA,CAAOgK,CAAAA,CAAW,CAC3I,CANgBjc,EAAAyc,EAAAA,CAAA,YAAA,CAAA,CC1DhB,IAAMC,EAAAA,CAAUlU,aAAAA,CAAc,KAAK,CAAA,CAC5B,SAASmU,EAAAA,CAAuB/a,CAAAA,CAAcgb,EAAiC,CACpF,IAAMC,EAASjb,CAAAA,CAAM,MAAA,CACrB,GAAI,CAACib,CAAAA,EAAQ,OAAA,CAAS,OAAO,OAC7B,IAAMpK,CAAAA,CAAOoK,EAAO,OAAA,CAAQ,sBAAsB,EAElD,OADID,CAAAA,EAAcnK,IAASmK,CAAAA,EACvB,CAACnK,GAAQoK,CAAAA,CAAO,OAAA,CAAQ,wBAAwB,CAAA,GAAMpK,CAAAA,CAAK,QAAQ,wBAAwB,CAAA,CAAU,KAAA,CAElG,CAACoK,EAAO,OAAA,CAAQ,6NAA6N,CACtP,CARgB7c,CAAAA,CAAA2c,GAAA,wBAAA,CAAA,CAShB,IAAMG,EAAAA,CAAN,MAAMA,WAAwBC,WAAY,GAAA/c,CAAAA,CAAA8c,EAAAA,CAAA,mBAApCA,EAAAA,CACG,UAAA,CAAa,CAAC,CAAE,UAAW,aAAA,CAAwB,OAAA,CAAS9c,EAAA,CAAC,CAAE,YAAAgd,CAAY,CAAA,CAAgCC,EAAmBhQ,CAAAA,GAAoE+P,CAAAA,CAAY,SAAW,CAAA,EAAKL,EAAAA,CAAuBK,EAAa/P,CAAAA,EAAS,MAAA,CAAO,KAAK,OAAO,CAAA,CAAlO,SAAA,CAAoO,CAAC,EAD1S,IAAMiQ,EAAAA,CAANJ,GAGMK,EAAAA,CAAN,MAAMA,WAAwBC,WAAY,EAE1C,CAF0Cpd,CAAAA,CAAAmd,GAAA,iBAAA,CAAA,CAApCA,EAAAA,CACG,WAAa,CAAC,CAAE,UAAW,cAAA,CAAyB,OAAA,CAASnd,CAAAA,CAAA,CAAC,CAAE,WAAA,CAAAgd,CAAY,EAAgCC,CAAAA,CAAmBhQ,CAAAA,GAAoE+P,EAAY,OAAA,CAAQ,MAAA,GAAW,GAAKL,EAAAA,CAAuBK,CAAAA,CAAa/P,GAAS,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,CAA1O,SAAA,CAA4O,CAAC,CAAA,CADnT,IAAMoQ,EAAAA,CAANF,EAAAA,CAGO,SAASG,EAAAA,CAAmB,CAAE,aAAAC,CAAAA,CAAc,WAAA,CAAAC,EAAc,YAAA,CAAc,iBAAA,CAAAC,CAAAA,CAAmB,eAAA,CAAAC,EAAiB,SAAA,CAAAC,CAAAA,CAAW,SAAAxR,CAAS,CAAA,CAAqD,CAC1L,IAAMyR,CAAAA,CAAgBhd,MAAAA,CAAO,KAAK,EAC5Bid,CAAAA,CAAUC,UAAAA,CAAWC,UAAUb,EAAAA,CAAiB,CAAE,qBAAsB,CAAE,QAAA,CAAU,CAAE,CAAE,CAAC,EAAGa,SAAAA,CAAUV,EAAAA,CAAiB,CAAE,oBAAA,CAAsB,CAAE,MAAO,GAAA,CAAK,SAAA,CAAW,CAAE,CAAE,CAAC,CAAA,CAAGU,SAAAA,CAAUC,eAAgB,CAAE,gBAAA,CAAkBC,2BAA4B,CAAC,CAAC,CAAA,CAC5PhQ,CAAAA,CAAU,CAAC,CAAC0P,CAAAA,EAAa,CAACD,CAAAA,EAAmB,CAAC,CAACH,CAAAA,EAAgBA,CAAAA,CAAa,MAAA,CAAS,CAAA,CACrFW,GAAOX,CAAAA,EAAgB,IAAI,GAAA,CAAI9K,CAAAA,EAAQA,EAAK,EAAE,CAAA,CAC9C0L,EAAS,IAAI,GAAA,CAAA,CAAKZ,GAAgB,EAAC,EAAG,IAAI9K,CAAAA,EAAQ,CAACA,EAAK,EAAA,CAAIgL,CAAAA,CAAoBhL,CAAAA,CAAKgL,CAAiB,EAAI,MAAS,CAAC,CAAC,CAAA,CACrHlW,CAAAA,CAAMvH,EAAA,CAAC,CAAE,MAAA,CAAA0B,CAAAA,CAAQ,KAAA0c,CAAK,CAAA,GAAoB,CAC1CA,CAAAA,EAAQ1c,CAAAA,CAAO,KAAO0c,CAAAA,CAAK,EAAA,EAAMF,CAAAA,CAAI,QAAA,CAAS,OAAOxc,CAAAA,CAAO,EAAE,CAAC,CAAA,EAAKwc,CAAAA,CAAI,SAAS,MAAA,CAAOE,CAAAA,CAAK,EAAE,CAAC,CAAA,EAAGT,IAAY,CAAE,QAAA,CAAU,OAAOjc,CAAAA,CAAO,EAAE,EAAG,MAAA,CAAQ,MAAA,CAAO0c,CAAAA,CAAK,EAAE,EAAG,SAAA,CAAWF,CAAI,CAAC,CAAA,CAE3L,UAAA,CAAW,IAAM,CAAEN,CAAAA,CAAc,OAAA,CAAU,MAAO,EAAG,CAAC,EACxD,EAJY,KAAA,CAAA,CAKZ,OAAK3P,EACEf,GAAAA,CAACmR,UAAAA,CAAA,CAAW,OAAA,CAASR,EAAS,kBAAA,CAAoBS,CAAAA,EAAQC,cAAc,CAAE,GAAGD,EAAM,mBAAA,CAAqBA,CAAAA,CAAK,mBAAA,CAAoB,MAAA,CAAOzB,GAAU,CAACY,CAAAA,EAAqBU,EAAO,GAAA,CAAI,MAAA,CAAOtB,EAAO,EAAE,CAAC,CAAA,GAAMsB,CAAAA,CAAO,IAAI,MAAA,CAAOG,CAAAA,CAAK,OAAO,EAAE,CAAC,CAAC,CAAE,CAAC,CAAA,CAAG,WAAA,CAAa,IAAM,CAAEV,CAAAA,CAAc,QAAU,KAAM,CAAA,CAAG,aAAc,IAAM,CAAE,UAAA,CAAW,IAAM,CAAEA,CAAAA,CAAc,OAAA,CAAU,MAAO,CAAA,CAAG,CAAC,EAAG,CAAA,CAAG,SAAA,CAAWrW,EAAK,aAAA,CAAe,CAAE,yBAA0B,CAAE,SAAA,CAAW,oMAA0C,CAAE,CAAA,CACnf,SAAA2F,GAAAA,CAACwP,EAAAA,CAAQ,QAAA,CAAR,CAAiB,MAAO,IAAA,CAAM,QAAA,CAAAxP,IAACsR,eAAAA,CAAA,CAAgB,MAAON,CAAAA,CAAK,QAAA,CAAUV,CAAAA,GAAgB,MAAA,CAASiB,oBAAsBjB,CAAAA,GAAgB,YAAA,CAAekB,8BAAgCC,2BAAAA,CAClL,QAAA,CAAAzR,IAAC,KAAA,CAAA,CAAI,sBAAA,CAAsBsQ,CAAAA,CAAa,KAAA,CAAO,CAAE,OAAA,CAAS,UAAW,EAAG,cAAA,CAAgB5b,CAAAA,EAAS,CAAMgc,CAAAA,CAAc,OAAA,GAAWhc,EAAM,cAAA,EAAe,CAAGA,EAAM,eAAA,EAAgB,EAAK,EAAI,QAAA,CAAAuK,CAAAA,CAAS,EAClM,CAAA,CAAkB,CAAA,CACpB,CAAA,CALqBe,GAAAA,CAACwP,GAAQ,QAAA,CAAR,CAAiB,MAAO,KAAA,CAAQ,QAAA,CAAAvQ,EAAS,CAMjE,CAjBgBnM,CAAAA,CAAAsd,EAAAA,CAAA,sBAkBT,SAASsB,EAAAA,CAAuB,CAAE,MAAA,CAAAC,CAAAA,CAAQ,SAAA1S,CAAAA,CAAU,GAAGwE,CAAM,CAAA,CAA8E,CAEhJ,OADgBxH,UAAAA,CAAWuT,EAAO,CAAA,CACjBxP,GAAAA,CAAC4R,GAAA,CAAW,MAAA,CAAQD,EAAS,GAAGlO,CAAAA,CAAQ,SAAAxE,CAAAA,CAAS,CAAA,CAAgBe,IAAC,KAAA,CAAA,CAAK,GAAGyD,EAAQ,QAAA,CAAAxE,CAAAA,CAAS,CAC9G,CAHgBnM,EAAA4e,EAAAA,CAAA,wBAAA,CAAA,CAIhB,SAASE,EAAAA,CAAW,CAAE,OAAAD,CAAAA,CAAQ,KAAA,CAAAxS,CAAAA,CAAO,QAAA,CAAAF,EAAU,GAAGwE,CAAM,EAAwD,CAC9G,GAAM,CAAE,UAAA,CAAAoO,CAAAA,CAAY,UAAA,CAAAC,CAAAA,CAAY,UAAAC,CAAAA,CAAW,SAAA,CAAAC,EAAW,UAAA,CAAAC,CAAAA,CAAY,WAAAC,CAAW,CAAA,CAAIC,YAAY,CAAE,EAAA,CAAIR,CAAO,CAAC,CAAA,CAC3G,OAAO3R,GAAAA,CAAC,KAAA,CAAA,CAAK,GAAGyD,CAAAA,CAAO,GAAA,CAAKoO,CAAAA,CAAa,GAAGC,EAAa,GAAGC,CAAAA,CAAW,qBAAoBJ,CAAAA,CAAQ,KAAA,CAAO,CAAE,GAAGxS,CAAAA,CAAO,SAAA,CAAWiT,GAAAA,CAAI,UAAU,QAAA,CAASJ,CAAS,EAAG,UAAA,CAAAC,CAAAA,CAAY,SAAU,UAAA,CAAY,MAAA,CAAQC,CAAAA,CAAa,EAAA,CAAK,OAAW,OAAA,CAASA,CAAAA,CAAa,IAAM,MAAA,CAAW,MAAA,CAAQA,EAAa,UAAA,CAAa,MAAO,EAAI,QAAA,CAAAjT,CAAAA,CAAS,CAC1U,CAHSnM,CAAAA,CAAA8e,GAAA,YAAA,CAAA,KCvCIS,EAAAA,CAAQ5P,UAAAA,CAAoC3P,EAAA,SAAe,CAAE,MAAA6a,CAAAA,CAAO,OAAA,CAAAC,CAAAA,CAAS,OAAA,CAAApV,EAAU,aAAA,CAAe,UAAA,CAAA8Z,EAAY,SAAA,CAAApT,CAAAA,CAAW,SAAAD,CAAAA,CAAU,GAAGwE,CAAM,CAAA,CAAGvP,EAAK,CACnK,IAAMoS,EAAK9E,KAAAA,EAAM,CAEjB,OADgBvF,UAAAA,CAAWyS,EAAmB,IAC9B,OAAA,CAAgB1O,GAAAA,CAAC,WAAS,GAAGyD,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,wBAAA,CAA0BqM,CAAS,CAAA,CAAG,cAAA,CAAa,OAAA,CACnH,QAAA,CAAAqD,KAAC6J,EAAAA,CAAA,CAAc,IAAKlY,CAAAA,CAAK,iBAAA,CAAiByZ,EAAQrH,CAAAA,CAAK7C,CAAAA,CAAM,iBAAiB,CAAA,CAAG,UAAU,yBAAA,CACxF,QAAA,CAAA,CAAAkK,GAASC,CAAAA,CAAUrL,IAAAA,CAAC,OAAI,SAAA,CAAW1P,CAAAA,CAAG,yBAAA,CAA2Byf,CAAAA,EAAY,MAAM,CAAA,CAAI,QAAA,CAAA,CAAA3E,EAAQ3N,GAAAA,CAAC,IAAA,CAAA,CAAG,GAAIsG,CAAAA,CAAK,QAAA,CAAAqH,EAAM,CAAA,CAAQ,IAAA,CAAMC,GAAQ,CAAA,CAAS,IAAA,CAClJ5N,IAAC,KAAA,CAAA,CAAI,SAAA,CAAWnN,EAAG,uBAAA,CAAyByf,CAAAA,EAAY,IAAI,CAAA,CAAI,SAAArT,CAAAA,CAAS,CAAA,CAAA,CAC3E,EACF,CAAA,CACOsD,IAAAA,CAAC6J,GAAA,CAAe,GAAG3I,CAAAA,CAAO,GAAA,CAAKvP,EAAK,cAAA,CAAcsE,CAAAA,CAAS,kBAAiBmV,CAAAA,CAAQrH,CAAAA,CAAK7C,EAAM,iBAAiB,CAAA,CAAG,SAAA,CAAW5Q,CAAAA,CAAG,mBAAoBqM,CAAS,CAAA,CAAI,UAAAyO,CAAAA,EAASC,CAAAA,CAAUrL,KAAC,KAAA,CAAA,CAAI,SAAA,CAAW1P,CAAAA,CAAG,yBAAA,CAA2Byf,GAAY,MAAM,CAAA,CAAI,UAAA3E,CAAAA,CAAQ3N,GAAAA,CAAC,MAAG,EAAA,CAAIsG,CAAAA,CAAK,QAAA,CAAAqH,CAAAA,CAAM,EAAQ,IAAA,CAAMC,CAAAA,CAAAA,CAAQ,EAAS,IAAA,CAAK5N,GAAAA,CAAC,OAAI,SAAA,CAAWnN,CAAAA,CAAG,uBAAA,CAAyByf,CAAAA,EAAY,IAAI,CAAA,CAAI,QAAA,CAAArT,EAAS,CAAA,CAAA,CAAM,CAChZ,EAVyD,OAAA,CAUxD,EAEM,SAASsT,EAAAA,CAAU,CAAE,MAAA,CAAAC,CAAAA,CAAQ,UAAAtT,CAAAA,CAAW,UAAA,CAAAoT,EAAY,QAAA,CAAArT,CAAAA,CAAU,GAAGwE,CAAM,CAAA,CAAmB,CAAE,OAAOlB,IAAAA,CAAC,OAAK,GAAGkB,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,iBAAA,CAAmBqM,CAAS,CAAA,CAAI,UAAAsT,CAAAA,CAAOxS,GAAAA,CAAC,QAAK,SAAA,CAAWnN,CAAAA,CAAG,uBAAwByf,CAAAA,EAAY,IAAI,CAAA,CAAI,QAAA,CAAArT,EAAS,CAAA,CAAA,CAAO,CAAQ,CAAvPnM,CAAAA,CAAAyf,EAAAA,CAAA,aAET,SAASE,EAAAA,CAAU,CAAE,IAAA,CAAAC,EAAM,UAAA,CAAAC,CAAAA,CAAY,QAAAC,CAAAA,CAAS,SAAA,CAAA1T,EAAW,GAAGuE,CAAM,EAAmB,CAAE,OAAOlB,KAAC,QAAA,CAAA,CAAQ,GAAGkB,EAAO,SAAA,CAAW5Q,CAAAA,CAAG,oBAAqBqM,CAAS,CAAA,CAAG,QAAA,CAAA,CAAAc,GAAAA,CAAC,OAAI,SAAA,CAAU,wBAAA,CAA0B,SAAA0S,CAAAA,CAAK,CAAA,CAAM1S,IAAC,KAAA,CAAA,CAAI,YAAA,CAAW,oBAAA,CAAM,SAAA,CAAU,wBAAyB,QAAA,CAAA2S,CAAAA,CAAW,EAAM3S,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,2BAAA,CAA6B,QAAA,CAAA4S,CAAAA,CAAQ,CAAA,CAAA,CAAM,CAAW,CAA5V9f,CAAAA,CAAA2f,GAAA,WAAA,CAAA,CAgBT,SAASI,GAAY,CAAE,OAAA,CAAAC,EAAS,OAAA,CAAAC,CAAAA,CAAS,KAAAhG,CAAAA,CAAO,OAAA,CAAS,UAAAjN,CAAAA,CAAY,YAAA,CAAc,MAAAkT,CAAAA,CAAO,kBAAA,CAAAC,CAAAA,CAAoB,cAAA,CAAAC,EAAgB,cAAA,CAAAC,CAAAA,CAAgB,IAAAC,CAAAA,CAAK,YAAA,CAAAC,EAAc,QAAA,CAAApU,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,MAAAC,CAAAA,CAAO,GAAGsE,CAAM,CAAA,CAAqB,CAEhO,IAAM6P,CAAAA,CADaN,CAAAA,EAASA,CAAAA,CAAM,KAAA,CAAM9f,GAAS,MAAA,CAAO,QAAA,CAASA,CAAK,CAAA,EAAKA,CAAAA,CAAQ,CAAC,CAAA,EAAK,MAAA,CAAO,SAAS8f,CAAAA,CAAM,CAAC,EAAIA,CAAAA,CAAM,CAAC,CAAC,CAAA,CACjGA,CAAAA,CAAM,CAAC,CAAA,EAAKA,CAAAA,CAAM,CAAC,CAAA,CAAIA,EAAM,CAAC,CAAA,CAAA,CAAK,GACxDO,CAAAA,CAAiBzT,CAAAA,GAAc,YAAc,OAAOmT,CAAAA,EAAuB,QAAA,EAAY,MAAA,CAAO,SAASA,CAAkB,CAAA,EAAKA,EAAqB,CAAA,CACnJO,CAAAA,CAAY1gB,EAACI,CAAAA,EAAuC,OAAOA,CAAAA,EAAU,QAAA,CAAW,KAAK,GAAA,CAAI,CAAA,CAAGA,CAAK,CAAA,CAAI,IAAA,CAAOA,EAAhG,WAAA,CAAA,CAClB,OAAOqP,KAAC,KAAA,CAAA,CAAK,GAAGkB,EAAO,WAAA,CAAWsJ,CAAAA,CAAM,iBAAgBjN,CAAAA,CAAW,aAAA,CAAayT,EAAiB,cAAA,CAAiBzT,CAAAA,GAAc,YAAA,EAAgB,CAACkT,GAASK,CAAAA,GAAiB,MAAA,CAAY,aAAe,MAAA,CAAW,mBAAA,CAAqBL,GAASlT,CAAAA,GAAc,UAAA,CAAa,IAAA,CAAO,MAAA,CAAW,UAAWjN,CAAAA,CAAG,kBAAA,CAAoBqM,CAAS,CAAA,CAAG,KAAA,CAAO,CAC/U,4BAAA,CAA8BmU,CAAAA,EAAgB,uFAAA,CAC9C,0BAAA,CAA4BC,EAC5B,mCAAA,CAAqCC,CAAAA,CAAiBN,EAAqB,MAAA,CAC3E,gCAAA,CAAkCO,EAAUN,CAAc,CAAA,CAC1D,iCAAkCM,CAAAA,CAAUL,CAAc,EAC1D,wBAAA,CAA0BK,CAAAA,CAAUJ,CAAG,CAAA,CACvC,GAAGjU,CACL,CAAA,CAAoB,QAAA,CAAA,CAAAa,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,0BAAA,CAA4B,QAAA,CAAA8S,IAAY,MAAA,CAAYA,CAAAA,CAAUC,EAAQ,CAAA,CAAM/S,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,wBAAyB,QAAA,CAAAf,CAAAA,CAAS,GAAM,CACxK,CAdgBnM,EAAA+f,EAAAA,CAAA,aAAA,CAAA,CAgBT,SAASY,EAAAA,CAAkB,CAAE,MAAA,CAAAC,CAAAA,CAAQ,QAAAC,CAAAA,CAAS,OAAA,CAAA/F,EAAS,SAAA,CAAA1O,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAA2B,CAAE,OAAOlB,IAAAA,CAAC,OAAK,GAAGkB,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,oBAAA,CAAsBqM,CAAS,CAAA,CAAG,UAAAc,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,2BAAA,CAA6B,QAAA,CAAA0T,EAAO,CAAA,CAAOC,CAAAA,CAAQ3T,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,4BAAA,CAA8B,QAAA,CAAA4N,EAAQ,CAAA,CAAA,CAAM,CAAQ,CAA3S9a,CAAAA,CAAA2gB,EAAAA,CAAA,mBAAA,CAAA,CAET,SAASG,GAAkB,CAAE,KAAA,CAAAjG,EAAO,MAAA,CAAAS,CAAAA,CAAQ,KAAAyF,CAAAA,CAAM,QAAA,CAAA5U,CAAAA,CAAU,SAAA,CAAAC,EAAW,GAAGuE,CAAM,EAA2B,CAAE,IAAM6C,EAAK9E,KAAAA,EAAM,CAAG,OAAOe,IAAAA,CAAC,WAAS,GAAGkB,CAAAA,CAAO,kBAAiB6C,CAAAA,CAAI,aAAA,CAAauN,EAAO,UAAA,CAAa,MAAA,CAAW,SAAA,CAAWhhB,CAAAA,CAAG,wBAAyBqM,CAAS,CAAA,CAAG,UAAAqD,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAW1P,CAAAA,CAAG,+BAAA,CAAiC,CAAC,CAACghB,GAAQ,CAACzF,CAAAA,EAAU,4BAA4B,CAAA,CAAG,QAAA,CAAA,CAAApO,IAAC,IAAA,CAAA,CAAG,EAAA,CAAIsG,EAAI,QAAA,CAAU,EAAA,CAAI,UAAWuN,CAAAA,CAAO,4BAAA,CAA+B,OAAY,QAAA,CAAAlG,CAAAA,CAAM,EAAMS,CAAAA,CAAAA,CAAO,CAAA,CAAOyF,CAAAA,CAAOtR,IAAAA,CAAC,OAAI,SAAA,CAAU,2BAAA,CAA4B,UAAAvC,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,4BAAA,CAA8B,QAAA,CAAA6T,CAAAA,CAAK,CAAA,CAAM7T,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,gCAAiC,QAAA,CAAAf,CAAAA,CAAS,GAAM,CAAA,CAASA,CAAAA,CAAAA,CAAS,CAAY,CAAvqBnM,EAAA8gB,EAAAA,CAAA,mBAAA,CAAA,CAET,SAASE,EAAAA,CAAS,CAAE,KAAAC,CAAAA,CAAO,MAAA,CAAQ,aAAAC,CAAAA,CAAc,SAAA,CAAAC,EAAW,SAAA,CAAA/U,CAAAA,CAAW,MAAAC,CAAAA,CAAO,QAAA,CAAAF,EAAU,YAAA,CAAAoR,CAAAA,CAAc,WAAA,CAAAC,CAAAA,CAAa,kBAAAC,CAAAA,CAAmB,eAAA,CAAAC,EAAiB,SAAA,CAAAC,CAAAA,CAAW,GAAGhN,CAAM,CAAA,CAAkB,CAAE,OAAOzD,IAAC,KAAA,CAAA,CAAK,GAAGyD,EAAO,IAAA,CAAK,MAAA,CAAO,YAAWsQ,CAAAA,CAAM,SAAA,CAAWlhB,CAAAA,CAAG,sBAAA,CAAwBqM,CAAS,CAAA,CAAG,KAAA,CAAO,CAAE,yBAAA,CAA2B8U,CAAAA,GAAiB,OAAY,yFAAA,CAA4FA,CAAAA,CAAe,KAAM,GAAIC,CAAAA,GAAc,OAAY,CAAE,8BAAA,CAAgCA,EAAY,IAAK,CAAA,CAAI,EAAC,CAAI,GAAG9U,CAAM,CAAA,CAAoB,SAAAa,GAAAA,CAACoQ,EAAAA,CAAA,CAAwB,YAAA,CAAAC,CAAAA,CAAc,YAAAC,CAAAA,CAAa,iBAAA,CAAAC,CAAAA,CAAmB,eAAA,CAAAC,EAAiB,SAAA,CAAAC,CAAAA,CAAa,SAAAxR,CAAAA,CAAS,CAAA,CAAqB,CAAQ,CAAhtBnM,CAAAA,CAAAghB,EAAAA,CAAA,UAAA,CAAA,KAqCHI,EAAAA,CAAOzR,UAAAA,CAAmC3P,EAAA,SAAc,CAAE,MAAA6a,CAAAA,CAAO,OAAA,CAAAjL,EAAU,MAAA,CAAQ,MAAA,CAAAyR,EAAS,MAAA,CAAQ,iBAAA,CAAAC,EAAoB,SAAA,CAAW,QAAA,CAAA5P,EAAU,gBAAA,CAAA6P,CAAAA,CAAkB,IAAA,CAAAxR,CAAAA,CAAM,aAAAyR,CAAAA,CAAc,KAAA,CAAAC,EAAO,QAAA,CAAAC,CAAAA,CAAW,GAAI,aAAA,CAAAC,CAAAA,CAAe,UAAA,CAAAC,CAAAA,CAAY,MAAAC,CAAAA,CAAO,YAAA,CAAAC,EAAc,UAAA,CAAAC,CAAAA,CAAY,KAAAC,CAAAA,CAAM,MAAA,CAAAC,CAAAA,CAAQ,MAAA,CAAAvC,EAAQ,IAAA,CAAAwC,CAAAA,CAAM,YAAA/O,CAAAA,CAAa,OAAA,CAAAzF,EAAS,QAAA,CAAAvB,CAAAA,CAAU,MAAAgW,CAAAA,CAAQ,GAAI,OAAA,CAAArH,CAAAA,CAAS,WAAAsH,CAAAA,CAAY,UAAA,CAAAvC,EAAY,eAAA,CAAAwC,CAAAA,CAAiB,MAAA,CAAAC,EAAAA,CAAQ,UAAAlW,EAAAA,CAAW,UAAA,CAAAoT,EAAY,KAAA,CAAAnT,CAAAA,CAAO,GAAGsE,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CACjc,GAAM,CAACmhB,CAAAA,CAAcC,CAAe,CAAA,CAAIxhB,QAAAA,GAClCwS,CAAAA,CAAK9E,KAAAA,EAAM,CACX+T,CAAAA,CAAS7S,IAAY,QAAA,CACrB8S,EAAAA,CAA8CvP,GAAgB,IAAA,EAAQA,CAAAA,GAAgB,OAASA,CAAAA,GAAgB,EAAA,CAC/GwP,GAAW/S,CAAAA,GAAY,SAAA,EAAa,CAAC,EAAE2R,CAAAA,EAAoBS,GAAQC,CAAAA,CAAAA,CACnEW,EAAAA,CAAgBpP,EAAK,cAAA,CACrBE,EAAAA,CAAc,CAAC/C,CAAAA,CAAM,kBAAkB,CAAA,CAAG+R,EAAAA,CAAiBE,GAAgB,MAAS,CAAA,CAAE,OAAO,OAAO,CAAA,CAAE,IAAA,CAAK,GAAG,GAAK,MAAA,CACnHC,EAAAA,CAAU,IAAIrB,CAAAA,GAAiBiB,CAAAA,CAAS,EAAI,CAAA,CAAE,CAAA,CAAA,CAC9CK,CAAAA,CAAeL,CAAAA,EAAU,OAAO5H,CAAAA,EAAU,QAAA,EAAYA,EAAM,MAAA,CAAS,CAAA,CACrEkI,EAAiB7V,GAAAA,CAAC2V,EAAAA,CAAA,CAAQ,EAAA,CAAIrP,CAAAA,CAAI,UAAWzT,CAAAA,CAAG,2BAAA,CAA6Byf,GAAY,OAAO,CAAA,CAAG,SAAUsD,CAAAA,CAAe,CAAA,CAAI,MAAA,CAAW,KAAA,CAAO,CAACL,CAAAA,EAAU,OAAO5H,GAAU,QAAA,CAAWA,CAAAA,CAAQ,OAAY,QAAA,CAAAA,CAAAA,CAAM,CAAA,CACnNmI,EAAAA,CAAUF,EAAe5V,GAAAA,CAAC6M,EAAAA,CAAA,CAAQ,OAAA,CAASc,CAAAA,CAAQ,SAAAkI,CAAAA,CAAe,CAAA,CAAaA,CAAAA,CAC/EE,EAAAA,CAAepB,IAAUJ,CAAAA,EAASc,CAAAA,GAAiBd,EAAQvU,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAWnN,CAAAA,CAAG0iB,CAAAA,CAAS,0BAAA,CAA6B,8BAAA,CAAgCjD,GAAY,KAAK,CAAA,CAAG,IAAKiC,CAAAA,CAAO,GAAA,CAAKC,EAAU,KAAA,CAAO,CAAE,cAAA,CAAgBC,CAAAA,CAAe,GAAGC,CAAW,CAAA,CAAG,QAAS,IAAMY,CAAAA,CAAgBf,CAAK,CAAA,CAAG,OAAA,CAAQ,MAAA,CAAO,CAAA,CAAKM,IAAgBU,CAAAA,CAA2H,IAAA,CAAlHvV,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,+BAA+B,YAAA,CAAW,0BAAA,CAAO,QAAA,CAAAA,GAAAA,CAACgW,SAAA,CAAS,IAAA,CAAM,GAAI,aAAA,CAAY,MAAA,CAAO,EAAE,CAAA,CAAA,CAAA,CACzbC,EAAAA,CAAahB,EAAM,MAAA,CAASjV,GAAAA,CAACkW,GAAA,CAAU,KAAA,CAAOjB,EAAO,OAAA,CAASM,CAAAA,CAAUN,EAAM,MAAA,CAAS,CAAA,CAAI,CAAA,CAAIA,CAAAA,CAAM,SAAW,CAAA,CAAI,CAAA,CAAI,OAAa,MAAA,CAAW,CAAA,CAAK,KACrJkB,EAAAA,CAAO3V,CAAAA,EAAWvB,CAAAA,CAClBmX,EAAAA,CAAW,GAAQlB,CAAAA,EAAcxS,CAAAA,GAAY,WAAaA,CAAAA,GAAY,QAAA,CAAA,CACtE2T,GAASnB,CAAAA,EAAY,EAAA,GAAO,OAAQzR,CAAAA,CAAkC,cAAc,CAAA,EAAM,QAAA,CAAYA,EAAkC,cAAc,CAAA,CAAc6C,GACpKgQ,EAAAA,CAAgBnE,WAAAA,CAAY,CAAE,EAAA,CAAIkE,EAAAA,CAAQ,SAAU,CAACD,EAAS,CAAC,CAAA,CAC/DG,EAAAA,CAAazjB,EAAC0jB,EAAAA,EAA6B,CAAEF,EAAAA,CAAc,UAAA,CAAWE,EAAI,CAAA,CAAO,OAAOtiB,GAAQ,UAAA,CAAYA,CAAAA,CAAIsiB,EAAI,CAAA,CAAYtiB,CAAAA,GAAKA,CAAAA,CAAI,OAAA,CAAUsiB,IAAM,CAAA,CAA5I,YAAA,CAAA,CACbC,GAAY,CAAE,GAAGtX,EAAO,GAAImX,EAAAA,CAAc,SAAA,CAAY,CAAE,UAAWlE,GAAAA,CAAI,SAAA,CAAU,SAASkE,EAAAA,CAAc,SAAS,EAAG,UAAA,CAAYA,EAAAA,CAAc,UAAW,CAAA,CAAI,GAAK,GAAIA,EAAAA,CAAc,WAAa,CAAE,OAAA,CAAS,EAAI,CAAA,CAAI,EAAI,CAAA,CACxNI,GAAgBJ,EAAAA,CAAc,SAAA,EAAa,EAAC,CAC5CK,EAAAA,CAAiBL,GAAc,UAAA,CACrC,OAAIf,CAAAA,CAAehT,IAAAA,CAAC6J,GAAA,CAAc,EAAA,CAAG,QAAS,GAAG3I,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,iBAAA,CAAiBuP,CAAAA,CAAM,YAAY,EAAI,MAAA,CAAY6C,CAAAA,CAAI,eAAc5D,CAAAA,CAAS,aAAA,CAAayR,IAAW,OAAA,CAAUA,CAAAA,CAAS,OAAW,SAAA,CAAWthB,CAAAA,CAAG,kBAAmB,0BAAA,CAA4BqM,EAAS,EAC1Q,QAAA,CAAA,CAAAqD,IAAAA,CAAC,OAAI,SAAA,CAAW1P,CAAAA,CAAG,0BAAA,CAA4Byf,CAAAA,EAAY,KAAK,CAAA,CAAI,QAAA,CAAA,CAAAyD,GAAcnB,CAAAA,CAAAA,CAAa,CAAA,CAC/FrS,KAAC,KAAA,CAAA,CAAI,SAAA,CAAU,2BAAA,CAA4B,QAAA,CAAA,CAAAvC,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,yBAAyB,cAAA,CAAcoU,CAAAA,GAAsB,cAAgB,aAAA,CAAgB,MAAA,CAAY,QAAA,CAAA5B,CAAAA,CAAO,EAAO5E,CAAAA,CAAU5N,GAAAA,CAAC,OAAI,SAAA,CAAWnN,CAAAA,CAAG,oCAAqCyf,CAAAA,EAAY,OAAO,EAAI,QAAA,CAAA1E,CAAAA,CAAQ,EAAS,IAAA,CAAA,CAAK,CAAA,CAChSrL,KAAC,KAAA,CAAA,CAAI,SAAA,CAAW1P,EAAG,4BAAA,CAA8Byf,CAAAA,EAAY,OAAO,CAAA,CAClE,UAAAtS,GAAAA,CAACuP,EAAAA,CAAA,CAAW,SAAA,CAAU,+BAAA,CAAgC,MAAO,CAAE,MAAA,CAAQ,MAAO,CAAA,CAAG,cAAY,MAAA,CAAO,CAAA,CACnGuG,GAASd,CAAAA,CAAOhV,GAAAA,CAAC,OAAI,SAAA,CAAU,yBAAA,CAA2B,QAAA,CAAAgV,CAAAA,CAAK,EAAS,IAAA,CACxE/O,CAAAA,CAAcjG,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,yBAA0B,QAAA,CAAAiG,CAAAA,CAAY,EAAS,IAAA,CAAMkQ,EAAAA,CAAMF,GACxFtD,CAAAA,CAAa3S,GAAAA,CAAC,OAAI,YAAA,CAAYmV,CAAAA,EAAmB,2BAAQ,SAAA,CAAU,+BAAA,CAAiC,QAAA,CAAAxC,CAAAA,CAAW,EAAS,IAAA,CACxHyC,EAAAA,CAASpV,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,6BAA8B,QAAA,CAAAoV,EAAAA,CAAO,CAAA,CAAS,IAAA,CAAA,CACzE,GACF,CAAA,CACO7S,IAAAA,CAAC,WAAS,GAAGkB,CAAAA,CAAO,IAAK8S,EAAAA,CAAY,KAAA,CAAOE,EAAAA,CAAW,iBAAA,CAAiBhT,EAAM,YAAY,CAAA,CAAI,OAAY6C,CAAAA,CAAI,kBAAA,CAAkBmP,GAAWhS,CAAAA,CAAM,kBAAkB,EAAI+C,EAAAA,CAAa,QAAA,CAAU/C,EAAM,QAAA,GAAa+R,EAAAA,EAAkB,CAACC,EAAAA,CAAW,CAAA,CAAI,QAAY,cAAA,CAAc/S,CAAAA,CAAS,aAAA,CAAayR,CAAAA,GAAW,QAAUA,CAAAA,CAAS,MAAA,CAAW,gBAAe3P,CAAAA,EAAY,MAAA,CAAW,YAAW3B,CAAAA,CAAM,cAAA,CAAcH,CAAAA,GAAY,SAAA,EAAa,OAAW,eAAA,CAAe4T,EAAAA,CAAc,YAAc,MAAA,CAAW,SAAA,CAAWzjB,EAAG,iBAAA,CAAmB,wBAAA,CAA0BqM,EAAS,CAAA,CACnjB,UAAAwD,CAAAA,GAAY,SAAA,EAAa,CAACiS,CAAAA,EAAS,CAACJ,EAAQ,IAAA,CAAOI,CAAAA,GAAU,MAAA,CAAY3U,GAAAA,CAAC,OAAI,SAAA,CAAWnN,CAAAA,CAAG,0BAA2Byf,CAAAA,EAAY,KAAK,EAAI,QAAA,CAAAyD,EAAAA,CAAa,CAAA,CAASA,EAAAA,CAClKnB,EAAe5U,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,0BAAA,CAA4B,QAAA,CAAA4U,EAAa,CAAA,CAAS,IAAA,CAAMpC,CAAAA,CACtFiD,EAAAA,GAAapB,EAAmBrU,GAAAA,CAAC,QAAA,CAAA,CAAO,KAAK,QAAA,CAAS,cAAA,CAAcwE,GAAY,KAAA,CAAO,OAAA,CAAS,IAAM6P,CAAAA,CAAiB,CAAC7P,CAAQ,CAAA,CAAG,kBAAiB8B,CAAAA,CAAI,kBAAA,CAAkBE,GAAa,SAAA,CAAU,uBAAA,CAAwB,EAAKsO,CAAAA,CAAO9U,GAAAA,CAAC,KAAE,IAAA,CAAM8U,CAAAA,CAAM,kBAAiBxO,CAAAA,CAAI,kBAAA,CAAkBE,GAAa,SAAA,CAAU,uBAAA,CAAwB,CAAA,CAAKxG,GAAAA,CAAC,UAAO,IAAA,CAAK,QAAA,CAAS,QAAS+U,CAAAA,CAAQ,iBAAA,CAAiBzO,EAAI,kBAAA,CAAkBE,EAAAA,CAAa,SAAA,CAAU,uBAAA,CAAwB,GAC5c4P,EAAAA,CAAWpW,GAAAA,CAAC,UAAQ,GAAGkV,CAAAA,CAAa,GAAGyB,EAAAA,CAAiB,GAAGD,EAAAA,CAAe,GAAA,CAAKJ,GAAc,mBAAA,CAAqB,IAAA,CAAK,SAAS,SAAA,CAAW,KAAA,CAAO,UAAWzjB,CAAAA,CAAG,6BAAA,CAA+BqiB,EAAY,SAAS,CAAA,CAAG,QAASxgB,EAAAA,EAAS,CAAEA,GAAM,eAAA,EAAgB,CAAGwgB,EAAY,OAAA,GAAUxgB,EAAK,EAAG,CAAA,CAAG,SAAAsL,GAAAA,CAAC4W,YAAAA,CAAA,CAAa,aAAA,CAAY,MAAA,CAAO,EAAE,CAAA,CAAY,IAAA,CACpVpS,CAAAA,CAAWxE,GAAAA,CAAC,QAAK,SAAA,CAAU,gCAAA,CAAiC,cAAY,MAAA,CAAO,QAAA,CAAAA,IAACmK,KAAAA,CAAA,CAAM,IAAA,CAAM,EAAA,CAAI,EAAE,CAAA,CAAU,IAAA,CAC7G5H,KAAC,KAAA,CAAA,CAAI,SAAA,CAAW1P,EAAG,sBAAA,CAAwByf,CAAAA,EAAY,OAAO,CAAA,CAC3D,QAAA,CAAA,CAAAwD,GAASd,CAAAA,CAAMmB,EAAAA,CAAMF,GACrBT,EAAAA,CAAiBxV,GAAAA,CAAC,OAAI,SAAA,CAAU,6BAAA,CAA8B,QAAA,CAAAA,GAAAA,CAAC,OAAI,SAAA,CAAU,kCAAA,CAAmC,SAAAA,GAAAA,CAAC,KAAA,CAAA,CAAI,GAAI0V,EAAAA,CAAe,SAAA,CAAU,wBAAA,CAA0B,QAAA,CAAAzP,EAAY,CAAA,CAAM,CAAA,CAAM,EAAS,IAAA,CAAA,CAChN,CAAA,CACC2H,EAAU5N,GAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAWnN,CAAAA,CAAG,0BAA2Byf,CAAAA,EAAY,OAAO,EAAI,QAAA,CAAA1E,CAAAA,CAAQ,EAAS,IAAA,CAAMwH,EAAAA,CAAAA,CACzG,CACF,CAAA,CA7CuD,MAAA,CA6CtD,EAGM,SAASyB,EAAAA,CAAiB,CAAE,QAAA,CAAA5X,CAAAA,CAAU,MAAAuJ,CAAAA,CAAO,MAAA,CAAAsO,CAAO,CAAA,CAA0B,CACnF,IAAMnG,CAAAA,CAAUC,WAAWC,SAAAA,CAAUkG,aAAAA,CAAe,CAAE,oBAAA,CAAsB,CAAE,QAAA,CAAU,CAAE,CAAE,CAAC,CAAA,CAAGlG,UAAUC,cAAAA,CAAgB,CAAE,iBAAkBC,2BAA4B,CAAC,CAAC,CAAA,CAE5K,OAAO/Q,GAAAA,CAACmR,UAAAA,CAAA,CAAW,OAAA,CAASR,CAAAA,CAAS,mBAAoBU,aAAAA,CAAe,SAAA,CADtDve,EAAA,CAAC,CAAE,OAAA0B,CAAAA,CAAQ,IAAA,CAAA0c,CAAK,CAAA,GAAoB,CAAMA,GAAQ1c,CAAAA,CAAO,EAAA,GAAO0c,CAAAA,CAAK,EAAA,EAAI4F,IAAS,MAAA,CAAOtiB,CAAAA,CAAO,EAAE,CAAA,CAAG,MAAA,CAAO0c,EAAK,EAAE,CAAC,EAAG,CAAA,CAAvH,aAC4E,QAAA,CAAAlR,GAAAA,CAACsR,gBAAA,CAAgB,KAAA,CAAO9I,EAAO,QAAA,CAAUwO,oBAAAA,CAAuB,QAAA,CAAA/X,CAAAA,CAAS,EAAkB,CAC3L,CAJgBnM,EAAA+jB,EAAAA,CAAA,kBAAA,CAAA,CAWT,SAASX,EAAAA,CAAU,CAAE,MAAA1N,CAAAA,CAAO,OAAA,CAAAyO,EAAS,SAAA,CAAA/X,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAmB,CAAE,OAAOzD,GAAAA,CAAC,IAAA,CAAA,CAAI,GAAGyD,EAAO,cAAA,CAAcwT,CAAAA,CAAS,UAAWpkB,CAAAA,CAAG,kBAAA,CAAoBqM,CAAS,CAAA,CAAI,QAAA,CAAAsJ,CAAAA,CAAM,GAAA,CAAIjD,GAAQhD,IAAAA,CAAC,KAAA,CAAA,CAAqB,UAAAvC,GAAAA,CAAC,IAAA,CAAA,CAAI,SAAAuF,CAAAA,CAAK,KAAA,CAAM,CAAA,CAAKvF,GAAAA,CAAC,MAAI,QAAA,CAAAuF,CAAAA,CAAK,MAAM,CAAA,CAAA,CAAA,CAAjDA,CAAAA,CAAK,KAAiD,CAAM,CAAA,CAAE,CAAO,CAAlQzS,CAAAA,CAAAojB,GAAA,WAAA,CAAA,CCxJhB,IAAMgB,EAAAA,CAAgB,CAAC,YAAA,CAAc,WAAW,CAAA,CAC1CC,EAAAA,CAAWrkB,EAACskB,CAAAA,EAAuD,CAAA,EAAGA,EAAK,IAAI,CAAA,CAAA,EAAIA,EAAK,IAAI,CAAA,CAAA,EAAIA,CAAAA,CAAK,YAAY,GAAtG,UAAA,CAAA,CAEV,SAASC,GAAmBC,CAAAA,CAAwB,CAAE,OAAAC,CAAAA,CAASL,EAAAA,CAAe,YAAA,CAAAM,CAAAA,CAAe,IAAU,aAAA,CAAAC,CAAAA,CAAgB,EAAG,CAAA,CAA4B,EAAC,CAAG,CAC/J,IAAMC,CAAAA,CAAO,IAAI,GAAA,CAAID,CAAAA,CAAc,IAAIN,EAAQ,CAAC,EAC1CQ,CAAAA,CAAmB,EAAC,CACpBC,CAAAA,CAAiC,EAAC,CACxC,IAAA,IAAWR,KAAQE,CAAAA,CAAO,CACxB,IAAMza,CAAAA,CAAMsa,EAAAA,CAASC,CAAI,CAAA,CACnBpI,CAAAA,CAAUuI,EAAO,IAAA,CAAKlU,CAAAA,EAAQA,EAAK,QAAA,CAAS,IAAI,EAAI+T,CAAAA,CAAK,IAAA,CAAK,UAAA,CAAW/T,CAAAA,CAAK,MAAM,CAAA,CAAG,EAAE,CAAC,CAAA,CAAIA,CAAAA,GAAS+T,EAAK,IAAI,CAAA,CAAaA,CAAAA,CAAK,IAAA,CAAOI,EAAe,MAAA,CAASE,CAAAA,CAAK,IAAI7a,CAAG,CAAA,CAAI,YAAc,MAAA,CAA3E,MAAA,CACtHmS,CAAAA,CAAQ4I,CAAAA,CAAS,KAAK,CAAE,IAAA,CAAAR,EAAM,MAAA,CAAApI,CAAO,CAAC,CAAA,EACnC0I,CAAAA,CAAK,IAAI7a,CAAG,CAAA,CAAG8a,EAAS,IAAA,CAAKP,CAAI,GAC1C,CACA,OAAO,CAAE,QAAA,CAAAO,CAAAA,CAAU,QAAA,CAAAC,CAAS,CAC9B,CAXgB9kB,CAAAA,CAAAukB,GAAA,oBAAA,CAAA,CAcT,IAAMQ,GAAoBpV,UAAAA,CAAmD3P,CAAAA,CAAA,SAA2B,CAAE,KAAAyS,CAAAA,CAAM,QAAA,CAAA+C,EAAU,OAAA,CAAAwP,CAAAA,CAAS,cAAAC,CAAAA,CAAe,KAAA,CAAAC,CAAAA,CAAO,QAAA,CAAA/T,EAAU,SAAA,CAAA/E,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAGvP,EAAK,CACpM,OAAOqO,KAAC,KAAA,CAAA,CAAK,GAAGkB,EAAO,GAAA,CAAKvP,CAAAA,CAAK,UAAWrB,CAAAA,CAAG,2BAAA,CAA6BqM,CAAS,CAAA,CAAG,YAAA,CAAYqG,CAAAA,CAAK,MAAA,CAAQ,aAAYA,CAAAA,CAAK,IAAA,CAAM,YAAWA,CAAAA,CAAK,MAAA,GAAW,UAAY,QAAA,CAAA,CAAAA,CAAAA,CAAK,GAAA,CAAMvF,GAAAA,CAAC,OAAI,GAAA,CAAKuF,CAAAA,CAAK,IAAK,GAAA,CAAKA,CAAAA,CAAK,KAAM,CAAA,CAAKvF,GAAAA,CAACgW,QAAAA,CAAA,CAAS,KAAM,EAAA,CAAI,aAAA,CAAY,OAAO,CAAA,CAAGzT,IAAAA,CAAC,OAAI,SAAA,CAAU,0BAAA,CAA2B,UAAAvC,GAAAA,CAAC,MAAA,CAAA,CAAK,MAAOuF,CAAAA,CAAK,IAAA,CAAO,SAAAA,CAAAA,CAAK,IAAA,CAAK,EAAQA,CAAAA,CAAK,MAAA,GAAW,SAAA,CAAYhD,IAAAA,CAAA0V,SAAA,CAAE,QAAA,CAAA,CAAAjY,IAAC,MAAA,CAAA,CAAK,IAAA,CAAK,SAAS,QAAA,CAAA,oBAAA,CAAG,CAAA,CAAQuF,CAAAA,CAAK,QAAA,EAAY,KAAOvF,GAAAA,CAAC,UAAA,CAAA,CAAS,aAAYuF,CAAAA,CAAK,IAAA,CAAO,4BAAS,KAAA,CAAOA,CAAAA,CAAK,QAAA,CAAU,GAAA,CAAK,IAAK,CAAA,CAAK,IAAA,CAAA,CAAK,EAAM,IAAA,CAAMA,CAAAA,CAAK,SAAW,OAAA,CAAUhD,IAAAA,CAAA0V,SAAA,CAAE,QAAA,CAAA,CAAAjY,IAAC,MAAA,CAAA,CAAK,IAAA,CAAK,QAAS,QAAA,CAAAuF,CAAAA,CAAK,OAAS,0BAAA,CAAO,CAAA,CAAQuS,CAAAA,CAAU9X,GAAAA,CAACwC,GAAA,CAAO,IAAA,CAAK,KAAK,QAAA,CAAUyB,CAAAA,CAAU,QAAS6T,CAAAA,CAAS,QAAA,CAAA,cAAA,CAAE,CAAA,CAAY,IAAA,CAAA,CAAK,EAAM,IAAA,CAAMC,CAAAA,EAAiBxS,EAAK,MAAA,GAAW,OAAA,CAAUvF,IAACwC,EAAAA,CAAA,CAAO,IAAA,CAAK,IAAA,CAAK,SAAUyB,CAAAA,CAAU,cAAA,CAAc+T,EAAO,OAAA,CAASD,CAAAA,CAAgB,SAAAC,CAAAA,CAAQ,cAAA,CAAO,2BAAO,CAAA,CAAY,IAAA,CAAA,CAAK,EAAO1P,CAAAA,CAAWtI,GAAAA,CAACwC,GAAA,CAAO,KAAA,CAAM,OAAO,YAAA,CAAY,eAAA,CAAQ+C,CAAAA,CAAK,IAAA,CAAM,UAAU,0BAAA,CAA2B,IAAA,CAAK,KAAK,QAAA,CAAUtB,CAAAA,CAAU,QAASqE,CAAAA,CAAU,QAAA,CAAAtI,GAAAA,CAACuI,GAAAA,CAAA,CAAE,IAAA,CAAK,yEAAA,CAA0E,cAAY,MAAA,CAAO,CAAA,CAAE,EAAY,IAAA,CAAA,CAAK,CACloC,CAAA,CAFoF,mBAAA,CAEnF,EAEY2P,EAAAA,CAAmBzV,UAAAA,CAAkD3P,EAAA,SAA0B,CAAE,GAAIgT,CAAAA,CAAY,KAAA,CAAAC,EAAQ,0BAAA,CAAQ,WAAA,CAAAE,EAAa,KAAA,CAAAuC,CAAAA,CAAO,SAAAvE,CAAAA,CAAU,MAAA,CAAAsT,EAASL,EAAAA,CAAe,YAAA,CAAAM,CAAAA,CAAc,aAAA,CAAAC,EAAe,eAAA,CAAAU,CAAAA,CAAiB,WAAAC,CAAAA,CAAY,QAAA,CAAA9P,EAAU,OAAA,CAAAwP,CAAAA,CAAS,aAAA,CAAAC,CAAAA,CAAe,QAAAM,CAAAA,CAAS,KAAA,CAAAlS,EAAO,SAAA,CAAAjH,CAAAA,CAAW,OAAAoZ,CAAAA,CAAQ,OAAA,CAAAC,CAAAA,CAAS,UAAA,CAAAC,EAAY,GAAG/U,CAAM,EAAGvP,CAAAA,CAAK,CACvW,IAAMmS,CAAAA,CAAY7E,KAAAA,EAAM,CAAS8E,CAAAA,CAAKR,GAAcO,CAAAA,CAC9ClO,CAAAA,CAAQzE,OAAyB,IAAI,CAAA,CAC3C,SAAS+kB,CAAAA,CAAQnB,CAAAA,CAAe,CAAE,GAAIrT,EAAU,OAAQ,IAAMlK,EAASsd,EAAAA,CAAmBC,CAAAA,CAAO,CAAE,MAAA,CAAAC,CAAAA,CAAQ,YAAA,CAAAC,CAAAA,CAAc,cAAAC,CAAc,CAAC,EAAO1d,CAAAA,CAAO,QAAA,CAAS,QAAQqe,CAAAA,GAAare,CAAAA,CAAO,QAAQ,CAAA,CAAOA,EAAO,QAAA,CAAS,MAAA,EAAQoe,EAAgBpe,CAAAA,CAAO,QAAQ,EAAG,CAA3P,OAAAjH,EAAA2lB,CAAAA,CAAA,SAAA,CAAA,CACFlW,KAAC,KAAA,CAAA,CAAK,GAAGkB,EAAO,GAAA,CAAKvP,CAAAA,CAAK,GAAIoS,CAAAA,CAAI,IAAA,CAAK,OAAA,CAAQ,YAAA,CAAYP,EAAO,kBAAA,CAAkBE,CAAAA,CAAcK,EAAK,cAAA,CAAiB,MAAA,CAAW,UAAWzT,CAAAA,CAAG,mBAAA,CAAqBqM,CAAS,CAAA,CAAG,WAAYxK,CAAAA,EAAS,CAAE8jB,IAAa9jB,CAAK,CAAA,CAAO,CAACuP,CAAAA,EAAYvP,CAAAA,CAAM,YAAA,CAAa,KAAA,CAAM,SAAS,OAAO,CAAA,EAAGA,EAAM,cAAA,GAAkB,EAAG,MAAA,CAAQA,CAAAA,EAAS,CAAE4jB,CAAAA,GAAS5jB,CAAK,EAAO,CAACA,CAAAA,CAAM,kBAAoBA,CAAAA,CAAM,YAAA,CAAa,MAAM,MAAA,GAAUA,CAAAA,CAAM,cAAA,EAAe,CAAG+jB,EAAQ,KAAA,CAAM,IAAA,CAAK/jB,EAAM,YAAA,CAAa,KAAK,CAAC,CAAA,EAAK,CAAA,CAAG,OAAA,CAASA,CAAAA,EAAS,CAAE6jB,CAAAA,GAAU7jB,CAAK,EAAO,CAACA,CAAAA,CAAM,kBAAoBA,CAAAA,CAAM,aAAA,CAAc,KAAA,CAAM,MAAA,GAAUA,EAAM,cAAA,EAAe,CAAG+jB,EAAQ,KAAA,CAAM,IAAA,CAAK/jB,EAAM,aAAA,CAAc,KAAK,CAAC,CAAA,EAAK,CAAA,CAAG,UAAAsL,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,kBAAA,CAAoB,QAAA,CAAA+F,EAAM,CAAA,CAAMxD,IAAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,0BAA0B,QAAA,CAAA,CAAAA,IAAAA,CAACC,GAAA,CAAO,SAAA,CAAU,2BAA2B,OAAA,CAAQ,SAAA,CAAU,QAAA,CAAUyB,CAAAA,CAAU,QAAS,IAAM9L,CAAAA,CAAM,SAAS,KAAA,EAAM,CAAG,mBAAkB8N,CAAAA,CAAcK,CAAAA,CAAK,cAAA,CAAiB,MAAA,CAAW,UAAAtG,GAAAA,CAAC6I,IAAAA,CAAA,CAAK,IAAA,CAAK,yEAAA,CAA0E,cAAY,MAAA,CAAO,CAAA,CAAE7I,IAAC,MAAA,CAAA,CAAK,QAAA,CAAA,8DAAA,CAAU,GAAO,CAAA,CAASA,GAAAA,CAAC,SAAM,SAAA,CAAU,4BAAA,CAA6B,IAAK7H,CAAAA,CAAO,IAAA,CAAK,MAAA,CAAO,QAAA,CAAU,GAAI,MAAA,CAAQof,CAAAA,CAAO,KAAK,GAAG,CAAA,CAAG,SAAQ,IAAA,CAAC,QAAA,CAAUtT,CAAAA,CAAU,YAAA,CAAY8B,EAAO,QAAA,CAAUrR,CAAAA,EAAS,CAAE+jB,CAAAA,CAAQ,KAAA,CAAM,KAAK/jB,CAAAA,CAAM,aAAA,CAAc,KAAA,EAAS,EAAE,CAAC,CAAA,CAAGA,EAAM,aAAA,CAAc,KAAA,CAAQ,GAAI,CAAA,CAAG,CAAA,CAAG8T,EAAM,GAAA,CAAIjD,CAAAA,EAAQvF,IAAC6X,EAAAA,CAAA,CAAgC,KAAMtS,CAAAA,CAAM,QAAA,CAAUtB,EAAU,KAAA,CAAOsB,CAAAA,CAAK,EAAA,GAAO8S,CAAAA,CAAS,SAAU/P,CAAAA,CAAW,IAAMA,EAAS/C,CAAAA,CAAK,EAAE,EAAI,MAAA,CAAW,OAAA,CAASuS,CAAAA,CAAU,IAAMA,EAAQvS,CAAAA,CAAK,EAAE,EAAI,MAAA,CAAW,aAAA,CAAewS,EAAgB,IAAMA,CAAAA,CAAcxS,CAAAA,CAAK,EAAE,EAAI,MAAA,CAAA,CAApPA,CAAAA,CAAK,EAA0P,CAAE,CAAA,CAAA,CAAE,EAAOU,CAAAA,CAAcjG,GAAAA,CAAC,OAAI,SAAA,CAAU,wBAAA,CAAyB,GAAIsG,CAAAA,CAAK,cAAA,CAAiB,SAAAL,CAAAA,CAAY,CAAA,CAAS,KAAME,CAAAA,CAAQnG,GAAAA,CAACmO,EAAAA,CAAA,CAAO,KAAK,QAAA,CAAU,QAAA,CAAAhI,EAAM,CAAA,CAAY,IAAA,CAAA,CAAK,CACxyD,CAAA,CALkF,kBAAA,CAKjF,EC5BM,SAASuS,EAAAA,CAAc,CAAE,OAAA,CAAAhW,CAAQ,CAAA,CAAqC,CAC3E,IAAM3B,CAAAA,CAAUD,EAAAA,GACVvD,CAAAA,CAAS4D,EAAAA,CAAoBjB,EAAAA,EAAqB,EAClD,CAACyY,CAAAA,CAASC,CAAU,CAAA,CAAI9kB,QAAAA,CAAgC,IAAI,CAAA,CAC5D,CAAC+kB,CAAAA,CAAeC,CAAgB,EAAIhlB,QAAAA,CAA8C,SAAS,EAC3F4Z,CAAAA,CAAUha,MAAAA,CAAuB,IAAI,CAAA,CAE3C,OAAAW,SAAAA,CAAU,IAAM,CACd,GAAI,CAAC0M,GAAW4X,CAAAA,CAAS,OACzB,IAAInkB,CAAAA,CAAS,IAAA,CACb,OAAA,OAAO,eAAe,EAAE,IAAA,CAAKkN,CAAAA,EAAU,CACjClN,CAAAA,EAAQokB,CAAAA,CAAWlX,CAAM,EAC/B,CAAC,CAAA,CAAE,KAAA,CAAM,IAAM,CAAMlN,CAAAA,EAAQskB,EAAiB,aAAa,EAAG,CAAC,CAAA,CACxD,IAAM,CAAEtkB,CAAAA,CAAS,MAAO,CACjC,CAAA,CAAG,CAACuM,CAAAA,CAAS4X,CAAO,CAAC,CAAA,CAErBtkB,SAAAA,CAAU,IAAM,CACd,IAAMC,EAAUoZ,CAAAA,CAAQ,OAAA,CAClBpO,EAAShL,CAAAA,EAAS,aAAA,CACxB,GAAI,CAACyM,CAAAA,EAAW2B,CAAAA,GAAY,QAAA,EAAYmW,IAAkB,OAAA,EAAW,CAACvkB,GAAW,CAACgL,CAAAA,CAAQ,OAE1F,IAAMyZ,CAAAA,CAAOjmB,CAAAA,CAAC4B,CAAAA,EAAwB,CACpC,GAAIA,CAAAA,CAAM,cAAgB,OAAA,CAAS,OACnC,IAAMskB,CAAAA,CAAS1kB,CAAAA,CAAQ,qBAAA,EAAsB,CAC7CA,EAAQ,KAAA,CAAM,WAAA,CAAY,yBAA0B,CAAA,EAAGI,CAAAA,CAAM,QAAUskB,CAAAA,CAAO,IAAI,IAAI,CAAA,CACtF1kB,CAAAA,CAAQ,MAAM,WAAA,CAAY,wBAAA,CAA0B,GAAGI,CAAAA,CAAM,OAAA,CAAUskB,EAAO,GAAG,CAAA,EAAA,CAAI,CAAA,CACrF1kB,CAAAA,CAAQ,QAAQ,aAAA,CAAgB,GAClC,EANa,MAAA,CAAA,CAOP2kB,CAAAA,CAAQnmB,EAAA,IAAM,CAAE,OAAOwB,CAAAA,CAAQ,QAAQ,cAAe,CAAA,CAA9C,SACd,OAAAgL,CAAAA,CAAO,iBAAiB,cAAA,CAAgByZ,CAAI,CAAA,CAC5CzZ,CAAAA,CAAO,iBAAiB,aAAA,CAAeyZ,CAAI,EAC3CzZ,CAAAA,CAAO,gBAAA,CAAiB,eAAgB2Z,CAAK,CAAA,CACtC,IAAM,CACX3Z,CAAAA,CAAO,oBAAoB,cAAA,CAAgByZ,CAAI,EAC/CzZ,CAAAA,CAAO,mBAAA,CAAoB,cAAeyZ,CAAI,CAAA,CAC9CzZ,CAAAA,CAAO,mBAAA,CAAoB,eAAgB2Z,CAAK,CAAA,CAChDA,GAAM,CACN3kB,CAAAA,CAAQ,MAAM,cAAA,CAAe,wBAAwB,CAAA,CACrDA,CAAAA,CAAQ,MAAM,cAAA,CAAe,wBAAwB,EACvD,CACF,CAAA,CAAG,CAACyM,CAAAA,CAAS2B,CAAAA,CAASmW,CAAa,CAAC,EAE7BtW,IAAAA,CAAC,KAAA,CAAA,CAAI,IAAKmL,CAAAA,CAAS,SAAA,CAAWhL,IAAY,QAAA,CAAW,gCAAA,CAAmC,iCAAkC,8BAAA,CAA8BA,CAAAA,GAAY,SAAW,EAAA,CAAK,MAAA,CAAW,8BAA6BA,CAAAA,GAAY,QAAA,CAAW,GAAK,MAAA,CAAW,qBAAA,CAAqB3B,CAAAA,CAAU8X,CAAAA,CAAgB,WAAY,aAAA,CAAY,MAAA,CAC9U,UAAA9X,CAAAA,EAAW2B,CAAAA,GAAY,UAAYmW,CAAAA,GAAkB,OAAA,CAAU7Y,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,4BAAA,CAA6B,aAAA,CAAY,iBAAiB,CAAA,CAAK,IAAA,CAC7Ie,GAAW4X,CAAAA,CAAUpW,IAAAA,CAACoW,CAAAA,CAAQ,MAAA,CAAR,CAAe,gBAAA,CAAgB,IAAA,CAAC,QAAS,IAAMG,CAAAA,CAAiB,OAAO,CAAA,CAAG,aAAA,CAAe,IAAMA,CAAAA,CAAiB,aAAa,EAAG,KAAA,CAAO,CAAE,MAAO,MAAA,CAAQ,MAAA,CAAQ,MAAO,CAAA,CAC5L,QAAA,CAAA,CAAA9Y,GAAAA,CAAC2Y,CAAAA,CAAQ,WAAR,CAAmB,SAAA,CAAWpb,EAAO,KAAA,CAAO,OAAA,CAASA,EAAO,GAAA,CAAM,GAAGA,CAAAA,CAAO,MAAA,CAAQ,EACpFmF,CAAAA,GAAY,QAAA,CAAW1C,IAAC2Y,CAAAA,CAAQ,MAAA,CAAR,CAAe,MAAA,CAAQpb,CAAAA,CAAO,KAAA,CAAO,MAAA,CAAQA,EAAO,GAAA,CAAK,UAAA,CAAW,MAAO,GAAGA,CAAAA,CAAO,OAAQ,SAAA,CAAW,CAAE,SAAUA,CAAAA,CAAO,QAAS,EAAG,CAAA,CAAK,IAAA,CAAA,CACvK,EAAoB,IAAA,CAAA,CACtB,CACF,CAjDgBzK,CAAAA,CAAA4lB,EAAAA,CAAA,eAAA,CAAA,CCST,IAAMQ,EAAAA,CAAQzW,UAAAA,CAAuC3P,CAAAA,CAAA,SAAe,CAAE,SAAA,CAAAgN,EAAY,UAAA,CAAY,GAAA,CAAAsT,EAAK,IAAA,CAAA+F,CAAAA,CAAM,SAAA,CAAAja,CAAAA,CAAW,MAAAC,CAAAA,CAAO,GAAGsE,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CACjJ,OAAO8L,GAAAA,CAAC,OAAK,GAAGyD,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,SAAA,CAAWrB,EAAG,kBAAA,CAAoBqM,CAAS,EAAG,gBAAA,CAAgBY,CAAAA,CAAW,KAAA,CAAO,CAAE,cAAeA,CAAAA,GAAc,UAAA,CAAa,SAAW,KAAA,CAAO,GAAA,CAAKsT,GAAO,+EAAA,CAAiF,QAAA,CAAU+F,CAAAA,CAAO,MAAA,CAAS,OAAW,GAAGha,CAAM,EAAG,CAC/T,CAAA,CAF4D,QAE3D,EASM,SAASia,EAAAA,CAAY,CAAE,MAAA5Q,CAAAA,CAAO,SAAA,CAAAtJ,EAAW,YAAA,CAAc6G,CAAAA,CAAQ,qBAAO,GAAGtC,CAAM,CAAA,CAAqB,CACzG,OAAOzD,GAAAA,CAAC,KAAA,CAAA,CAAK,GAAGyD,CAAAA,CAAO,YAAA,CAAYsC,EAAO,SAAA,CAAWlT,CAAAA,CAAG,6BAAA,CAA+BqM,CAAS,EAAG,QAAA,CAAAc,GAAAA,CAAC,MAAI,QAAA,CAAAwI,CAAAA,CAAM,IAAI,CAACjD,CAAAA,CAAM1E,CAAAA,GAAU,CACjI,IAAM9M,CAAAA,CAAU8M,CAAAA,GAAU2H,EAAM,MAAA,CAAS,CAAA,CACzC,OAAOjG,IAAAA,CAAC,IAAA,CAAA,CAAkB,QAAA,CAAA,CAAA1B,CAAAA,CAAQ,EAAIb,GAAAA,CAAC,MAAA,CAAA,CAAK,cAAY,MAAA,CAAO,SAAA,CAAU,kCAAkC,QAAA,CAAA,GAAA,CAAI,CAAA,CAAU,KAAMjM,CAAAA,CAAUiM,GAAAA,CAAC,QAAK,cAAA,CAAa,MAAA,CAAQ,SAAAuF,CAAAA,CAAK,KAAA,CAAM,EAAUA,CAAAA,CAAK,IAAA,CAAOvF,GAAAA,CAAC,GAAA,CAAA,CAAE,KAAMuF,CAAAA,CAAK,IAAA,CAAO,SAAAA,CAAAA,CAAK,KAAA,CAAM,EAAOA,CAAAA,CAAK,OAAA,CAAUvF,GAAAA,CAAC,QAAA,CAAA,CAAO,KAAK,QAAA,CAAS,OAAA,CAASuF,EAAK,OAAA,CAAU,QAAA,CAAAA,EAAK,KAAA,CAAM,CAAA,CAAYvF,GAAAA,CAAC,MAAA,CAAA,CAAM,SAAAuF,CAAAA,CAAK,KAAA,CAAM,IAAlUA,CAAAA,CAAK,EAAqU,CAC5V,CAAC,CAAA,CAAE,EAAK,CACV,CALgBzS,EAAAsmB,EAAAA,CAAA,aAAA,CAAA,CAYT,SAASC,EAAAA,CAAU,CAAE,MAAAtT,CAAAA,CAAO,KAAA,CAAAwO,CAAAA,CAAO,OAAA,CAAA7R,EAAU,QAAA,CAAU,SAAA,CAAAxD,EAAW,GAAGuE,CAAM,EAAmB,CACnG,GAAM,CAAC4R,CAAAA,CAAcC,CAAe,CAAA,CAAIxhB,QAAAA,GACxC,OAAOkM,GAAAA,CAAC,QAAM,GAAGyD,CAAAA,CAAO,IAAA,CAAK,KAAA,CAAM,aAAYsC,CAAAA,CAAO,SAAA,CAAWlT,EAAG,uBAAA,CAAyBqM,CAAS,EAAG,cAAA,CAAcwD,CAAAA,CAAU,SAAA6R,CAAAA,EAASA,CAAAA,GAAUc,EAAerV,GAAAA,CAAC,KAAA,CAAA,CAAI,IAAKuU,CAAAA,CAAO,GAAA,CAAI,GAAG,OAAA,CAAS,IAAMe,CAAAA,CAAgBf,CAAK,EAAG,CAAA,CAAKxO,CAAAA,CAAM,CAC/O,CAHgBjT,CAAAA,CAAAumB,GAAA,WAAA,CAAA,CAMT,SAASC,EAAAA,CAAY,CAAE,YAAArT,CAAAA,CAAa,MAAA,CAAAyN,EAAQ,OAAA,CAAA6F,CAAAA,CAAS,SAAAta,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAqB,CAC7G,OAAOlB,IAAAA,CAAC8P,EAAAA,CAAA,CAAO,GAAG5O,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,yBAAA,CAA2BqM,CAAS,CAAA,CAAG,QAAA,CAAA,CAAAc,IAAC0Y,EAAAA,CAAA,CAAc,QAAQ,QAAA,CAAS,CAAA,CAAGzS,CAAAA,CAAcjG,GAAAA,CAAC,KAAE,SAAA,CAAU,wBAAA,CAA0B,SAAAiG,CAAAA,CAAY,CAAA,CAAO,KAAMyN,CAAAA,CAAQ6F,CAAAA,CAAUvZ,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,0BAAA,CAA4B,QAAA,CAAAuZ,EAAQ,CAAA,CAAS,IAAA,CAAMta,GAAS,CAC9R,CAFgBnM,CAAAA,CAAAwmB,EAAAA,CAAA,eAKT,IAAME,EAAAA,CAAe/W,WAA8C3P,CAAAA,CAAA,SAAsB,CAAE,SAAA,CAAAoM,CAAAA,CAAW,WAAAua,CAAAA,CAAY,GAAGhW,CAAM,CAAA,CAAGvP,CAAAA,CAAK,CACxI,OAAIulB,CAAAA,CAAmBzZ,IAAC0R,EAAAA,CAAA,CAAwB,GAAGjO,CAAAA,CAAO,OAAQgW,CAAAA,CAAY,IAAA,CAAK,WAAW,SAAA,CAAW5mB,CAAAA,CAAG,4BAA6BqM,CAAS,CAAA,CAAG,CAAA,CAC9Ic,GAAAA,CAAC,OAAK,GAAGyD,CAAAA,CAAO,IAAKvP,CAAAA,CAAK,IAAA,CAAK,WAAW,SAAA,CAAWrB,CAAAA,CAAG,2BAAA,CAA6BqM,CAAS,EAAG,CAC1G,CAAA,CAH0E,eAGzE,EAeM,SAASwa,GAAY,CAAE,KAAA,CAAA3T,EAAO,SAAA,CAAA4T,CAAAA,CAAW,eAAAC,CAAAA,CAAgB,iBAAA,CAAAC,EAAmB,QAAA,CAAAC,CAAAA,CAAU,gBAAAC,CAAAA,CAAiB,gBAAA,CAAAC,CAAAA,CAAkB,SAAA,CAAAC,EAAY,EAAC,CAAG,UAAAC,CAAAA,CAAW,oBAAA,CAAAC,CAAqB,CAAA,CAAqB,CACnM,OAAO5X,IAAAA,CAAA0V,SAAA,CAAG,QAAA,CAAA,CAAA4B,EAAoB7Z,GAAAA,CAAC6D,EAAAA,CAAA,CAAa,KAAA,CAAM,MAAA,CAAO,YAAA,CAAY,eAAA,CAAQkC,EAAO,gBAAA,CAAgB4T,CAAAA,EAAa,OAAW,IAAA,CAAK,IAAA,CAAK,QAAQ,OAAA,CAAQ,OAAA,CAASA,GAAa,KAAA,CAAO,OAAA,CAASC,EAAgB,eAAA,CAAiBC,CAAAA,CAAmB,SAAA7Z,GAAAA,CAACoa,WAAAA,CAAA,CAAY,IAAA,CAAK,yEAAA,CAA0E,IAAA,CAAMT,CAAAA,CAAY,eAAiB,MAAA,CAAQ,aAAA,CAAY,OAAO,CAAA,CAAE,CAAA,CAAkB,KAAMK,CAAAA,CAAmBha,GAAAA,CAAC6D,EAAAA,CAAA,CAAa,MAAM,MAAA,CAAO,YAAA,CAAY,gBAAQkC,CAAAA,CAAO,IAAA,CAAK,KAAK,OAAA,CAAQ,OAAA,CAAQ,OAAA,CAAS+T,CAAAA,EAAY,MAAO,OAAA,CAASC,CAAAA,CAAiB,gBAAiBC,CAAAA,CAAkB,QAAA,CAAAha,IAACqa,QAAAA,CAAA,CAAS,IAAA,CAAK,yEAAA,CAA0E,KAAMP,CAAAA,CAAW,cAAA,CAAiB,OAAQ,aAAA,CAAY,MAAA,CAAO,EAAE,CAAA,CAAkB,IAAA,CAAMG,CAAAA,CAAU,MAAA,CAASja,IAACmN,EAAAA,CAAA,CAAK,MAAO+M,CAAAA,EAAanU,CAAAA,CAAQ,gBAAO,OAAA,CAAS/F,GAAAA,CAACwC,EAAAA,CAAA,CAAO,MAAM,MAAA,CAAO,YAAA,CAAY,gBAAQuD,CAAAA,CAAO,QAAA,CAAA/F,IAACsa,cAAAA,CAAA,CAAe,IAAA,CAAK,yEAAA,CAA0E,cAAY,MAAA,CAAO,CAAA,CAAE,EAAW,gBAAA,CAAkBH,CAAAA,CAAsB,MAAOF,CAAAA,CAAW,CAAA,CAAK,MAAK,CAC1kC,CAFgBnnB,EAAA4mB,EAAAA,CAAA,aAAA,CAAA,KAUHa,EAAAA,CAAY9X,UAAAA,CAA4C3P,EAAA,SAAmB,CAAE,KAAA,CAAA6a,CAAAA,CAAO,YAAA1H,CAAAA,CAAa,OAAA,CAAA2H,EAAS,QAAA,CAAA3O,CAAAA,CAAU,UAAAC,CAAAA,CAAW,GAAGuE,CAAM,CAAA,CAAGvP,EAAK,CAC3J,OAAO8L,IAACqS,EAAAA,CAAA,CAAM,UAAU,uBAAA,CAAwB,QAAA,CAAA9P,IAAAA,CAAC,MAAA,CAAA,CAAM,GAAGkB,CAAAA,CAAO,GAAA,CAAKvP,EAAK,SAAA,CAAWgL,CAAAA,CAAW,UAAAqD,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,wBAAA,CAAyB,QAAA,CAAA,CAAAA,KAAC,KAAA,CAAA,CAAI,QAAA,CAAA,CAAAvC,IAACiM,EAAAA,CAAA,CAAa,GAAG,IAAA,CAAK,SAAA,CAAW,KAAA,CAAQ,QAAA,CAAA0B,EAAM,CAAA,CAAgB1H,CAAAA,CAAcjG,IAAC,GAAA,CAAA,CAAG,QAAA,CAAAiG,EAAY,CAAA,CAAO,IAAA,CAAA,CAAK,CAAA,CAAO2H,CAAAA,CAAU5N,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,0BAA2B,QAAA,CAAA4N,CAAAA,CAAQ,EAAS,IAAA,CAAA,CAAK,CAAA,CAAM5N,GAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,sBAAA,CAAwB,QAAA,CAAAf,EAAS,CAAA,CAAA,CAAM,CAAA,CAAO,CAC7Y,CAAA,CAFqE,WAAA,CAEpE,EAGM,SAASub,EAAAA,CAAS,CAAE,OAAA,CAAA9X,CAAAA,CAAU,WAAY,SAAA,CAAAxD,CAAAA,CAAW,SAAAD,CAAAA,CAAU,GAAGwE,CAAM,CAAA,CAAkB,CAC/F,OAAOzD,GAAAA,CAAC,OAAK,GAAGyD,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,sBAAA,CAAwBqM,CAAS,CAAA,CAAG,eAAcwD,CAAAA,CAAS,QAAA,CAAA1C,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,+BAAgC,QAAA,CAAAf,CAAAA,CAAS,CAAA,CAAM,CAChK,CAFgBnM,CAAAA,CAAA0nB,EAAAA,CAAA,YAWhB,SAASC,EAAAA,CAAiB,CAAE,QAAA,CAAAxb,CAAS,EAA4B,CAC/D,IAAMsO,EAAQ7Z,MAAAA,CAAuB,IAAI,EACnCgnB,CAAAA,CAAQhnB,MAAAA,CAAuB,IAAI,CAAA,CACnC,CAACmP,CAAAA,CAAM8X,CAAO,EAAI7mB,QAAAA,CAAS,CAAE,MAAO,CAAA,CAAG,MAAA,CAAQ,CAAE,CAAC,CAAA,CACxD,OAAAO,SAAAA,CAAU,IAAM,CACd,IAAMmH,EAAO+R,CAAAA,CAAM,OAAA,CACb/M,EAAUka,CAAAA,CAAM,OAAA,CAChBE,CAAAA,CAAU9nB,CAAAA,CAAA,IAAM,CACpB,IAAMoP,EAAQ1B,CAAAA,CAAQ,WAAA,CACtB,GAAI,CAAC0B,CAAAA,EAAS,CAAC1G,CAAAA,CAAK,WAAA,CAAa,OACjC,IAAMqf,CAAAA,CAAQrf,EAAK,WAAA,CAAc0G,CAAAA,CAC3BC,EAAS3B,CAAAA,CAAQ,YAAA,CAAeqa,CAAAA,CACtCF,CAAAA,CAAQ/b,GAAYA,CAAAA,CAAS,KAAA,GAAUic,GAASjc,CAAAA,CAAS,MAAA,GAAWuD,EAASvD,CAAAA,CAAW,CAAE,KAAA,CAAAic,CAAAA,CAAO,OAAA1Y,CAAO,CAAC,EAC3G,CAAA,CANgB,SAAA,CAAA,CAOV/D,EAAW,IAAI,cAAA,CAAewc,CAAO,CAAA,CAC3C,OAAAxc,CAAAA,CAAS,OAAA,CAAQ5C,CAAI,CAAA,CACrB4C,CAAAA,CAAS,QAAQoC,CAAO,CAAA,CACxBoa,GAAQ,CACD,IAAMxc,EAAS,UAAA,EACxB,EAAG,EAAE,EACE4B,GAAAA,CAAC,KAAA,CAAA,CAAI,GAAA,CAAKuN,CAAAA,CAAO,UAAU,8BAAA,CAA+B,KAAA,CAAO,CAAE,MAAA,CAAQ1K,CAAAA,CAAK,OAAQ,UAAA,CAAYA,CAAAA,CAAK,MAAA,CAAS,MAAA,CAAY,QAAS,CAAA,CAAG,QAAA,CAAA7C,IAAC,KAAA,CAAA,CAAI,GAAA,CAAK0a,EAAO,SAAA,CAAU,oCAAA,CAAqC,KAAA,CAAO,CAAE,UAAW,CAAA,MAAA,EAAS7X,CAAAA,CAAK,KAAK,CAAA,CAAA,CAAI,CAAA,CAAI,SAAA5D,CAAAA,CAAS,CAAA,CAAM,CACjR,CArBSnM,CAAAA,CAAA2nB,GAAA,kBAAA,CAAA,CAwBF,SAASK,GAAa,CAAE,QAAA,CAAA7b,EAAU,KAAA,CAAA8b,CAAAA,CAAQ,OAAA,CAAS,YAAA,CAAAC,EAAc,YAAA,CAAAC,CAAAA,CAAc,aAAAC,CAAAA,CAAc,SAAA,CAAAhc,EAAW,GAAGuE,CAAM,CAAA,CAAsB,CAC5I,OAAOzD,GAAAA,CAACqS,EAAAA,CAAA,CAAO,GAAG5O,CAAAA,CAAO,UAAW5Q,CAAAA,CAAG,0BAAA,CAA4BqM,CAAS,CAAA,CAAG,SAAAqD,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,+BAAA,CAAgC,QAAA,CAAA,CAAAvC,IAACya,EAAAA,CAAA,CAAkB,QAAA,CAAAxb,CAAAA,CAAS,EAAoB8b,CAAAA,GAAU,SAAA,EAAaC,EAAehb,GAAAA,CAACkO,EAAAA,CAAA,CAAO,QAAA,CAAA8M,CAAAA,CAAa,CAAA,CAAW,IAAA,CAAMD,IAAU,OAAA,EAAWE,CAAAA,CAAejb,IAAC,MAAA,CAAA,CAAK,SAAA,CAAU,yBAA0B,QAAA,CAAAib,CAAAA,CAAa,CAAA,CAAU,IAAA,CAAMF,IAAU,OAAA,EAAWG,CAAAA,CAAelb,IAACmO,EAAAA,CAAA,CAAO,KAAK,QAAA,CAAU,QAAA,CAAA+M,CAAAA,CAAa,CAAA,CAAY,MAAK,CAAA,CAAM,CACtc,CAFgBpoB,CAAAA,CAAAgoB,EAAAA,CAAA,gBAKT,SAASK,EAAAA,CAAa,CAAE,QAAA,CAAA/V,CAAAA,CAAW,aAAc,SAAA,CAAAlG,CAAAA,CAAW,aAAc6G,CAAAA,CAAQ,cAAA,CAAM,GAAGtC,CAAM,CAAA,CAAsB,CAC5H,OAAOzD,IAAC,OAAA,CAAA,CAAO,GAAGyD,EAAO,YAAA,CAAYsC,CAAAA,CAAO,UAAWlT,CAAAA,CAAG,0BAAA,CAA4BqM,CAAS,CAAA,CAAG,gBAAekG,CAAAA,CAAU,CAC7H,CAFgBtS,CAAAA,CAAAqoB,EAAAA,CAAA,gBChHT,SAASC,EAAAA,CAAkBle,CAAAA,CAAS,KAAA,CAAOlC,EAAwC,CACxF,IAAM0D,EAAWzB,EAAAA,CAAeC,CAAAA,CAAQlC,CAAQ,CAAA,CAC1C/C,CAAAA,CAAWC,GAAmBwG,CAAAA,CAAU,CAAE,UAAW,MAAO,CAAC,EAC7DiB,CAAAA,CAAazH,EAAAA,CAAmB6E,GAAiB,CAAE,SAAA,CAAW,MAAO,CAAC,EACtEse,CAAAA,CAAuB,GAC7B,SAASC,CAAAA,CAAK1S,EAAgBxR,CAAAA,CAAiB,EAAC,CAAG,CACjD,GAAI,CAACwR,CAAAA,EAAS,OAAOA,CAAAA,EAAU,QAAA,EAAY,MAAM,OAAA,CAAQA,CAAK,CAAA,CAAG,OACjE,IAAM4N,CAAAA,CAAO5N,CAAAA,CACb,GAAI,QAAA,GAAY4N,CAAAA,CAAM,CACpB,IAAMpd,CAAAA,CAAOhC,EAAK,IAAA,CAAK,GAAG,EACpBmkB,CAAAA,CAAY,OAAO/E,EAAK,MAAA,EAAW,QAAA,EAAY,WAAW,IAAA,CAAKA,CAAAA,CAAK,MAAM,CAAA,CAAIA,EAAK,MAAA,CAAO,KAAA,CAAM,EAAG,EAAE,CAAA,CAAI,OACzGjhB,CAAAA,CAAY6B,CAAAA,CAAK,CAAC,CAAA,GAAM,aAAe,CAAC,CAAC,OAAQ,OAAA,CAAS,UAAA,CAAY,UAAW,YAAA,CAAc,YAAA,CAAc,OAAA,CAAS,QAAA,CAAU,QAAQ,CAAA,CAAE,QAAA,CAASA,EAAK,CAAC,CAAC,GAAKA,CAAAA,CAAK,MAAA,CAAS,EAAIA,CAAAA,CAAK,CAAC,EAAI,QAAA,CAC3LokB,CAAAA,CAAS,CAAC,qBAAA,CAAuB,2BAAA,CAA6B,6BAA8B,uCAAA,CAAyC,2BAA2B,CAAA,CAAE,QAAA,CAASpiB,CAAI,CAAA,CACrLiiB,CAAAA,CAAK,KAAK,CAAE,IAAA,CAAMjiB,EAAM,QAAA,CAAUhC,CAAAA,CAAK,CAAC,CAAA,CAAI,MAAQA,CAAAA,CAAK,KAAA,CAAM,EAAG,CAAC,CAAA,CAAE,KAAK,GAAG,CAAA,CAAG,SAAA,CAAA7B,CAAAA,CAAW,KAAM,MAAA,CAAOihB,CAAAA,CAAK,KAAK,CAAA,CAAG,WAAA,CAAa,OAAOA,CAAAA,CAAK,YAAA,EAAgBpd,CAAI,CAAA,CAAG,SAAA,CAAAmiB,EACnK,KAAA,CAAOtjB,CAAAA,CAAS,OAAOmB,CAAI,CAAA,CAAG,UAAWuG,CAAAA,CAAW,MAAA,CAAOvG,CAAI,CAAA,CAAG,SAAUnB,CAAAA,CAAS,SAAA,CAAUmB,CAAI,CAAA,EAAK,EAAA,CAAI,SAAUA,CAAAA,CAAK,UAAA,CAAW,eAAe,CAAA,CAAI0D,GAAW1D,CAAI,CAAA,CAAI,OAC5K,UAAA,CAAY,IAAA,CAAK,UAAUnB,CAAAA,CAAS,MAAA,CAAOmB,CAAI,CAAC,IAAM,IAAA,CAAK,SAAA,CAAUuG,EAAW,MAAA,CAAOvG,CAAI,CAAC,CAAA,CAAG,MAAA,CAAQoiB,EAAS,mBAAA,CAAsB,qSAAA,CAAsS,KAAKpiB,CAAI,CAAA,CAAI,gBAAkB,WAAY,CAAC,EAC1d,MACF,CACA,IAAA,GAAW,CAACyD,EAAK3J,CAAK,CAAA,GAAK,OAAO,OAAA,CAAQsjB,CAAI,EAAQ3Z,CAAAA,CAAI,UAAA,CAAW,GAAG,CAAA,EAAGye,EAAKpoB,CAAAA,CAAO,CAAC,GAAGkE,CAAAA,CAAMyF,CAAG,CAAC,EACvG,CAdS,OAAA/J,CAAAA,CAAAwoB,EAAA,MAAA,CAAA,CAeTA,CAAAA,CAAK5c,CAAQ,CAAA,CACN2c,CAAAA,CAAK,KAAK,CAAC1e,CAAAA,CAAGC,IAAMD,CAAAA,CAAE,IAAA,CAAK,cAAcC,CAAAA,CAAE,IAAI,CAAC,CACzD,CAtBgB9J,EAAAsoB,EAAAA,CAAA,mBAAA,CAAA","file":"index.mjs","sourcesContent":["import { Children, cloneElement, createContext, forwardRef, isValidElement, useContext, useEffect, useId, useImperativeHandle, useRef, useState, type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes, type HTMLAttributes, type ReactElement, type ReactNode, type CSSProperties } from 'react';\nimport * as SwitchPrimitive from '@radix-ui/react-switch';\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport * as TabsPrimitive from '@radix-ui/react-tabs';\nimport * as ToggleGroup from '@radix-ui/react-toggle-group';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { cx, useControllable, useFormReset } from './internal';\nimport { Portal, useUIDirection, useUILocale } from './theme/theme';\nimport { Search, X, Plus, ChevronDown, ChevronUp, Check } from 'lucide-react';\nimport { sampleInk } from './sample-color';\nimport { ButtonLightEdge, type ButtonLightEdgeOptions } from './button-light-edge';\nimport { useShaderEnabled } from './motion';\n\ninterface ButtonBaseProps extends ButtonHTMLAttributes<HTMLButtonElement> { variant?: 'solid' | 'soft' | 'outline' | 'ghost' | 'switch'; tone?: 'neutral' | 'primary' | 'danger'; size?: 'sm' | 'md' | 'lg'; loading?: boolean; icon?: ReactNode; lightEdge?: boolean | ButtonLightEdgeOptions; toggle?: boolean; checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; required?: boolean }\ntype ButtonShapeProps = { shape?: 'default' | 'tile' } | { shape: 'icon'; 'aria-label': string };\nexport type ButtonProps = ButtonBaseProps & ButtonShapeProps;\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(function Button({ variant, shape = 'default', icon, tone = 'neutral', size = 'md', loading = false, lightEdge = false, toggle = false, checked, defaultChecked, onCheckedChange, required, type = 'button', className, children, onClick, onPointerDown, onKeyDown, ...props }, ref) {\n const direction = useUIDirection();\n const [pressed, setPressed] = useControllable(checked, defaultChecked, false, onCheckedChange);\n if (variant === 'switch') return <Switch {...props} ref={ref} type={type} value={props.value === undefined ? undefined : String(props.value)} required={required} checked={checked} defaultChecked={defaultChecked} onCheckedChange={onCheckedChange} className={cx('monkeys-ui-button-switch', className)} data-variant=\"switch\" data-tone=\"primary\" data-size={size} aria-label={props['aria-label'] ?? (typeof children === 'string' ? children : undefined)} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onPointerDown={onPointerDown} onKeyDown={onKeyDown} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); }} />;\n return <button {...props} dir={props.dir ?? direction} ref={ref} type={type} className={cx('monkeys-ui-button', className)} data-light-edge={lightEdge ? true : undefined} data-shape={shape} data-variant={variant ?? (shape === 'icon' ? 'ghost' : shape === 'tile' ? 'outline' : 'solid')} data-tone={tone} data-size={size} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} aria-pressed={toggle ? pressed : props['aria-pressed']} aria-busy={loading || undefined} aria-disabled={loading || props['aria-disabled']} onClick={event => { if (loading || props['aria-disabled'] === true || props['aria-disabled'] === 'true') { event.preventDefault(); return; } onClick?.(event); if (toggle && !event.defaultPrevented) setPressed(!pressed); }}>{lightEdge ? <span className=\"monkeys-ui-button-light-edge\" aria-hidden=\"true\"><ButtonLightEdge {...(lightEdge === true ? {} : lightEdge)} /></span> : null}<span className=\"monkeys-ui-button-label\" data-loading={loading || undefined}>{icon ? <span className=\"monkeys-ui-button-icon\" aria-hidden=\"true\">{icon}</span> : null}{children}</span>{loading ? <span className=\"monkeys-ui-button-spinner\" aria-hidden=\"true\" /> : null}</button>;\n});\nexport type ToggleButtonProps = Omit<ButtonBaseProps, 'value' | 'defaultValue' | 'variant'> & ButtonShapeProps & { variant?: Exclude<ButtonBaseProps['variant'], 'switch'> };\n/** Compatibility entry; prefer Button toggle. */\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(function ToggleButton(props, ref) {\n return <Button {...props} ref={ref} toggle />;\n});\n\nexport interface ColorOption { id: string; label: string; color: string }\nexport interface ColorSliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step' | 'children'> {\n options: ColorOption[];\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n onValueCommit?: (value: string) => void;\n}\n/** A native, discrete range control. The gradient never creates selectable intermediate colors. */\nexport const ColorSlider = forwardRef<HTMLInputElement, ColorSliderProps>(function ColorSlider({ options, value, defaultValue, onValueChange, onValueCommit, disabled, readOnly, className, style, onPointerDown, onPointerMove, onPointerCancel, onKeyDown, onPointerUp, onKeyUp, dir, name, ...props }, ref) {\n const field = useField(props);\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const [selected, setSelected] = useControllable(value, defaultValue, options[0]?.id ?? '', onValueChange);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? options[0]?.id ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); });\n const index = Math.max(0, options.findIndex(option => option.id === selected));\n const option = options[index];\n const motionEnabled = useShaderEnabled();\n const [interaction, setInteraction] = useState<'pointer' | 'drag' | 'keyboard'>('keyboard');\n const pointer = useRef<{ id: number; x: number; y: number } | null>(null);\n const animated = motionEnabled && interaction === 'pointer' && !disabled && !readOnly;\n // Keep two stable layers so rapid changes retarget their opacity transitions.\n const sample = { label: option?.label, color: option?.color };\n const [samples, setSamples] = useState({ layers: [sample, sample], active: 0 });\n const current = samples.layers[samples.active];\n if (current.label !== sample.label || current.color !== sample.color) {\n const active = 1 - samples.active;\n setSamples({ layers: samples.layers.map((layer, index) => index === active ? sample : layer), active });\n }\n const position = options.length > 1 ? index / (options.length - 1) : 0.5;\n // Native hit target, visual thumb and gradient stops share the same inset.\n const location = (fraction: number) => `calc(${fraction * 100}% + ${0.5 - fraction} * var(--monkeys-ui-color-slider-thumb-width,var(--monkeys-ui-default-color-slider-thumb-width)))`;\n const gradient = options.map((item, index) => {\n const t = options.length > 1 ? index / (options.length - 1) : 0;\n return `${item.color} ${location(t)}`;\n });\n const background = options.length > 1 ? `linear-gradient(to ${direction === 'rtl' ? 'left' : 'right'}, ${gradient.join(', ')})` : option?.color;\n const locked = disabled || readOnly || options.length < 2;\n const commit = (input: HTMLInputElement) => {\n const next = options[Number(input.value)];\n if (!locked && next) onValueCommit?.(next.id);\n };\n return <div className={cx('monkeys-ui-color-slider', className)} data-animated={animated || undefined} data-disabled={disabled || options.length === 0 || undefined} dir={direction} style={style}>\n <span className=\"monkeys-ui-color-slider-track\" style={{ background }} aria-hidden=\"true\" />\n <span className=\"monkeys-ui-color-slider-positioner\" style={{ transform: `translateX(${(direction === 'rtl' ? -1 : 1) * position * 100}%)` }} aria-hidden=\"true\">\n <span className=\"monkeys-ui-color-slider-thumb\" data-ink={sampleInk(option?.color)} style={{ '--monkeys-ui-color-slider-selected': option?.color } as CSSProperties}>\n {samples.layers.map((layer, index) => <span key={index} className=\"monkeys-ui-color-slider-sample\" data-active={index === samples.active} data-ink={sampleInk(layer.color)} style={{ '--monkeys-ui-color-slider-selected': layer.color } as CSSProperties}><span className={index === samples.active ? 'monkeys-ui-color-slider-label' : 'monkeys-ui-color-slider-previous-label'}>{layer.label}</span></span>)}\n </span>\n </span>\n <input {...props} {...field} ref={input} type=\"range\" dir={direction} min={0} max={Math.max(0, options.length - 1)} step={1} value={index} disabled={disabled || options.length === 0} aria-readonly={readOnly || undefined} aria-valuetext={option?.label ?? ''} className=\"monkeys-ui-color-slider-input\" onPointerDown={event => {\n onPointerDown?.(event);\n if (readOnly) event.preventDefault();\n if (!locked && !event.defaultPrevented && event.isPrimary !== false && event.button === 0) {\n pointer.current = { id: event.pointerId, x: event.clientX, y: event.clientY };\n setInteraction('pointer');\n }\n }} onPointerMove={event => {\n onPointerMove?.(event);\n const start = pointer.current;\n if (start?.id === event.pointerId && Math.hypot(event.clientX - start.x, event.clientY - start.y) > 3) setInteraction('drag');\n }} onPointerCancel={event => { pointer.current = null; setInteraction('keyboard'); onPointerCancel?.(event); }} onKeyDown={event => { pointer.current = null; setInteraction('keyboard'); onKeyDown?.(event); if (readOnly && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) event.preventDefault(); }} onChange={event => { if (!locked) { const next = options[Number(event.target.value)]; if (next) setSelected(next.id); } }} onPointerUp={event => { pointer.current = null; onPointerUp?.(event); if (!event.defaultPrevented) commit(event.currentTarget); }} onKeyUp={event => { onKeyUp?.(event); if (!event.defaultPrevented && ['ArrowLeft','ArrowRight','ArrowUp','ArrowDown','Home','End','PageUp','PageDown'].includes(event.key)) commit(event.currentTarget); }} />\n {name ? <input type=\"hidden\" name={name} form={props.form} value={option?.id ?? ''} disabled={disabled || options.length === 0} /> : null}\n </div>;\n});\n\ninterface FieldContextValue { id: string; describedBy?: string; invalid?: boolean; required?: boolean }\nconst FieldContext = createContext<FieldContextValue | null>(null);\nfunction useField(props: { id?: string; dir?: string; 'aria-describedby'?: string; 'aria-invalid'?: InputHTMLAttributes<HTMLInputElement>['aria-invalid']; required?: boolean }) {\n const field = useContext(FieldContext);\n const direction = useUIDirection(props.dir === 'rtl' || props.dir === 'ltr' ? props.dir : undefined);\n return { id: field?.id ?? props.id, dir: props.dir ?? direction, 'aria-describedby': [field?.describedBy, props['aria-describedby']].filter(Boolean).join(' ') || undefined, 'aria-invalid': props['aria-invalid'] ?? field?.invalid, required: props.required ?? field?.required };\n}\nexport interface FieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> { label: ReactNode; labelAccessory?: ReactNode; children: ReactElement; description?: ReactNode; descriptionHidden?: boolean; error?: ReactNode; invalid?: boolean; required?: boolean }\nexport function Field({ id: explicitId, label, labelAccessory, description, descriptionHidden, error, invalid, required, className, children, ...props }: FieldProps) {\n const generated = useId();\n const id = explicitId ?? (isValidElement<{ id?: string }>(children) ? children.props.id : undefined) ?? generated;\n const describedBy = [description ? id + '-description' : '', error ? id + '-error' : ''].filter(Boolean).join(' ') || undefined;\n const fieldLabel = <label className=\"monkeys-ui-label\" htmlFor={id}>{label}{required ? <span className=\"monkeys-ui-required\" aria-hidden=\"true\"> *</span> : null}</label>;\n return <div {...props} className={cx('monkeys-ui-field', className)}>\n {labelAccessory ? <div className=\"flex items-center gap-1\" data-slot=\"label-row\">{fieldLabel}{labelAccessory}</div> : fieldLabel}\n <FieldContext.Provider value={{ id, describedBy, invalid: invalid ?? !!error, required }}>{Children.only(children)}</FieldContext.Provider>\n {description ? <div id={id + '-description'} className={descriptionHidden ? 'monkeys-ui-visually-hidden' : 'monkeys-ui-description'}>{description}</div> : null}\n {error ? <div id={id + '-error'} className=\"monkeys-ui-error\" role=\"alert\">{error}</div> : null}\n </div>;\n}\nexport interface FieldsetProps extends HTMLAttributes<HTMLFieldSetElement> { legend: ReactNode; disabled?: boolean }\nexport function Fieldset({ legend, children, className, ...props }: FieldsetProps) { return <fieldset {...props} className={cx('monkeys-ui-fieldset', className)}>{legend != null ? <legend>{legend}</legend> : null}{children}</fieldset>; }\ntype InputTagsProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type'> & {\n variant: 'tags';\n mode?: 'input';\n value?: string[];\n defaultValue?: string[];\n onValueChange?: (value: string[]) => void;\n /** Optional controlled draft for forms that own uncommitted text. */\n inputValue?: string;\n onInputValueChange?: (value: string) => void;\n removeLabel?: string;\n};\nexport interface InputTagItem { id: string; label: string }\ntype InputTagSelectionProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'type' | 'onChange' | 'children'> & {\n variant: 'tags';\n mode: 'select';\n label: string;\n items: InputTagItem[];\n onAdd?: () => void;\n onRemove?: (id: string) => void;\n removeLabel?: string;\n};\ntype InputSearchProps = SearchFieldProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'search' };\ntype InputNumberProps = NumberInputProps & Pick<InputHTMLAttributes<HTMLInputElement>, 'onChange'> & { variant: 'number' };\nexport type InputProps = (InputHTMLAttributes<HTMLInputElement> & { variant?: 'default' }) | InputTagsProps | InputTagSelectionProps | InputSearchProps | InputNumberProps;\nexport const Input = forwardRef<HTMLInputElement, InputProps>(function Input(props, ref) {\n const field = useField(props);\n if (props.variant === 'tags') return props.mode === 'select' ? <InputTagSelectionControl {...props} ref={ref} /> : <InputTagsControl {...props} ref={ref} />;\n if (props.variant === 'search') return <InputSearchControl {...props} ref={ref} />;\n if (props.variant === 'number') return <InputNumberControl {...props} ref={ref} />;\n const { variant, className, ...nativeProps } = props;\n return <input {...nativeProps} {...field} className={cx('monkeys-ui-input', className)} ref={ref} />;\n});\nconst InputTagsControl = forwardRef<HTMLInputElement, InputTagsProps>(function InputTagsControl({\n variant, mode, value, defaultValue, onValueChange, inputValue, onInputValueChange, removeLabel = '删除', name, form, className, style,\n disabled, readOnly, placeholder = '输入并回车后添加', onChange, onKeyDown, onCompositionStart, onCompositionEnd, ...props\n}, ref) {\n const field = useField(props);\n const [tags, setTags] = useControllable(value, defaultValue, [], onValueChange);\n const [draft, setDraft] = useControllable(inputValue, undefined, '', onInputValueChange);\n const [announcement, setAnnouncement] = useState('');\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n const initialTags = useRef(defaultValue ?? []);\n useFormReset(input, () => { if (value === undefined) setTags(initialTags.current); setDraft(''); });\n useEffect(() => {\n input.current?.setCustomValidity(field.required && tags.length === 0 ? '请至少添加一个标签' : '');\n }, [field.required, tags.length]);\n const remove = (index: number) => {\n if (locked) return;\n setTags(tags.filter((_, current) => current !== index));\n setAnnouncement(`${removeLabel} ${tags[index]}`);\n input.current?.focus();\n };\n return <div className={cx('monkeys-ui-tag-input', className)} style={style} dir={field.dir} data-variant={variant} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} onClick={event => {\n if (!disabled && !(event.target as HTMLElement).closest('button')) input.current?.focus();\n }}>\n {tags.map((tag, index) => <InputTag key={`${index}:${tag}`} label={tag} disabled={locked} removeLabel={removeLabel} onRemove={() => remove(index)} />)}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-tag-input-editor\" disabled={disabled} readOnly={readOnly} placeholder={placeholder} value={draft} required={field.required && tags.length === 0} aria-required={field.required || undefined} onChange={event => {\n if (locked) return;\n setDraft(event.target.value);\n onChange?.(event);\n }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => {\n onKeyDown?.(event);\n if (event.defaultPrevented || locked || composing.current || event.nativeEvent.isComposing || event.keyCode === 229) return;\n if (event.key === 'Enter') {\n event.preventDefault();\n const next = draft.trim();\n if (next && !tags.includes(next)) {\n setTags([...tags, next]);\n setAnnouncement(next);\n }\n setDraft('');\n } else if (event.key === 'Backspace' && draft === '' && tags.length) {\n event.preventDefault();\n remove(tags.length - 1);\n }\n }} />\n {name ? tags.map((tag, index) => <input key={index} type=\"hidden\" name={name} form={form} value={tag} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\n/** One chip recipe for typed tags and ID-backed selections; not a public component. */\nfunction InputTag({ label, disabled, removeLabel, onRemove }: { label: string; disabled?: boolean; removeLabel: string; onRemove?: () => void }) {\n return <span className=\"monkeys-ui-input-tag\"><span className=\"monkeys-ui-input-tag-text\" title={label}>{label}</span>{onRemove ? <button type=\"button\" className=\"monkeys-ui-input-tag-remove\" disabled={disabled} aria-label={`${removeLabel} ${label}`} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></button> : null}</span>;\n}\nconst InputTagSelectionControl = forwardRef<HTMLInputElement, InputTagSelectionProps>(function InputTagSelectionControl({\n variant, mode, label, items, onAdd, onRemove, removeLabel = '移除', name, form, disabled, readOnly, className, style, onInvalid, ...props\n}, ref) {\n const field = useField(props);\n const input = useRef<HTMLInputElement>(null);\n const add = useRef<HTMLButtonElement>(null);\n const group = useRef<HTMLDivElement>(null);\n const [announcement, setAnnouncement] = useState('');\n const locked = disabled || readOnly;\n useImperativeHandle(ref, () => input.current!, []);\n useEffect(() => { input.current?.setCustomValidity(field.required && !items.length ? '请至少添加一个标签' : ''); }, [field.required, items.length]);\n return <div ref={group} role=\"group\" aria-label={label} aria-describedby={field['aria-describedby']} aria-required={field.required || undefined} aria-invalid={field['aria-invalid']} tabIndex={-1} dir={field.dir} className={cx('monkeys-ui-tag-input', className)} data-mode={mode} data-empty={!items.length} data-disabled={disabled || undefined} data-readonly={readOnly || undefined} data-invalid={field['aria-invalid'] || undefined} style={style}>\n <div className=\"monkeys-ui-tag-input-header\"><span className=\"monkeys-ui-label\">{label}</span>{onAdd ? <button ref={add} type=\"button\" className=\"monkeys-ui-tag-input-add\" disabled={locked} aria-label={'添加' + label} onClick={onAdd}><Plus aria-hidden=\"true\" /></button> : null}</div>\n {items.length ? <div className=\"monkeys-ui-tag-input-items\">{items.map(item => <InputTag key={item.id} label={item.label} disabled={locked} removeLabel={removeLabel} onRemove={onRemove ? () => { if (locked) return; onRemove(item.id); setAnnouncement(`${removeLabel} ${item.label}`); (add.current ?? group.current)?.focus(); } : undefined} />)}</div> : null}\n <input {...props} {...field} ref={input} form={form} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} value={items.length ? 'selected' : ''} onChange={() => {}} disabled={disabled} required={field.required} onInvalid={event => { onInvalid?.(event); event.preventDefault(); (add.current ?? group.current)?.focus(); }} />\n {name ? items.map(item => <input key={item.id} type=\"hidden\" name={name} form={form} value={item.id} disabled={disabled} />) : null}\n <span className=\"monkeys-ui-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">{announcement}</span>\n </div>;\n});\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaHTMLAttributes<HTMLTextAreaElement>>(function Textarea({ className, ...props }, ref) { const field = useField(props); return <textarea {...props} {...field} ref={ref} className={cx('monkeys-ui-textarea', className)} />; });\nexport function parseNumberValue(text: string): number | null { return /^-?(?:\\d+|\\d*\\.\\d+)$/.test(text.trim()) && Number.isFinite(Number(text)) ? Number(text) : null; }\nexport interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange'> { value?: string; defaultValue?: string; onValueChange?: (text: string, detail: { numberValue: number | null }) => void }\n/** Compatibility entry; prefer Input variant=\"number\". */\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(function NumberInput(props, ref) {\n return <Input {...props} variant=\"number\" ref={ref} />;\n});\nconst InputNumberControl = forwardRef<HTMLInputElement, InputNumberProps>(function InputNumberControl({ variant, value, defaultValue, onValueChange, onChange, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', next => onValueChange?.(next, { numberValue: parseNumberValue(next) }));\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? '');\n useImperativeHandle(ref, () => input.current!, []);\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n return <Input {...props} variant=\"default\" type=\"text\" inputMode=\"decimal\" value={text} onChange={event => { setText(event.target.value); onChange?.(event); }} ref={input} />;\n});\nexport interface SearchFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'defaultValue' | 'onChange' | 'onSubmit'> { value?: string; defaultValue?: string; onValueChange?: (value: string) => void; onSearch?: (value: string) => void; clearLabel?: string }\n/** Compatibility entry; prefer Input variant=\"search\". */\nexport const SearchField = forwardRef<HTMLInputElement, SearchFieldProps>(function SearchField(props, ref) {\n return <Input {...props} variant=\"search\" ref={ref} />;\n});\nconst InputSearchControl = forwardRef<HTMLInputElement, InputSearchProps>(function InputSearchControl({ variant, value, defaultValue, onValueChange, onChange, onSearch, clearLabel = '清空搜索', className, onKeyDown, onCompositionStart, onCompositionEnd, disabled, readOnly, ...props }, ref) {\n const [text, setText] = useControllable(value, defaultValue, '', onValueChange);\n const composing = useRef(false);\n const input = useRef<HTMLInputElement>(null);\n useImperativeHandle(ref, () => input.current!, []);\n const initial = useRef(defaultValue ?? '');\n useFormReset(input, () => { if (value === undefined) setText(initial.current); });\n const clear = () => {\n const editor = input.current;\n if (disabled || readOnly || !editor) return;\n // Dispatch a native input event through React's normal onChange path.\n const setter = Object.getOwnPropertyDescriptor(editor.ownerDocument.defaultView!.HTMLInputElement.prototype, 'value')!.set!;\n setter.call(editor, '');\n editor.dispatchEvent(new Event('input', { bubbles: true }));\n editor.focus();\n };\n return <div className={cx('monkeys-ui-search', className)}><Search size=\"var(--monkeys-ui-icon-size-s17,var(--monkeys-ui-default-icon-size-s17))\" aria-hidden=\"true\" /><Input {...props} variant=\"default\" ref={input} type=\"search\" disabled={disabled} readOnly={readOnly} value={text} onChange={event => { if (!disabled && !readOnly) { setText(event.target.value); onChange?.(event); } }} onCompositionStart={event => { composing.current = true; onCompositionStart?.(event); }} onCompositionEnd={event => { composing.current = false; onCompositionEnd?.(event); }} onKeyDown={event => { onKeyDown?.(event); if (!event.defaultPrevented && event.key === 'Enter' && !disabled && !readOnly && !composing.current && !event.nativeEvent.isComposing && event.keyCode !== 229) { event.preventDefault(); onSearch?.(text); } }} />{text ? <Button shape=\"icon\" aria-label={clearLabel} size=\"sm\" disabled={disabled || readOnly} onClick={clear}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface SwitchProps extends Omit<SwitchPrimitive.SwitchProps, 'defaultChecked'> { defaultChecked?: boolean }\nexport const Switch = forwardRef<HTMLButtonElement, SwitchProps>(function Switch({ checked, defaultChecked, onCheckedChange, className, onPointerDown, onKeyDown, ...props }, ref) {\n const field = useField(props);\n const [value, setValue] = useControllable(checked, defaultChecked, false, onCheckedChange);\n return <SwitchPrimitive.Root {...props} {...field} ref={ref} checked={value} onCheckedChange={setValue} onPointerDown={event => { event.currentTarget.dataset.input = 'pointer'; onPointerDown?.(event); }} onKeyDown={event => { event.currentTarget.dataset.input = 'keyboard'; onKeyDown?.(event); }} className={cx('monkeys-ui-switch', className)}><SwitchPrimitive.Thumb className=\"monkeys-ui-switch-thumb\" /></SwitchPrimitive.Root>;\n});\nexport interface SelectOption { value: string; label: string; disabled?: boolean }\n/** Shared select appearance for popover-backed pickers; the parent owns selection semantics. */\nexport interface PickerTriggerProps extends ButtonHTMLAttributes<HTMLButtonElement> { indicator?: ReactNode }\nexport const PickerTrigger = forwardRef<HTMLButtonElement, PickerTriggerProps>(function PickerTrigger({ indicator = <ChevronDown size={12} />, className, children, type = 'button', ...props }, ref) {\n return <button {...props} ref={ref} type={type} className={cx('monkeys-ui-select', className)}><span className=\"min-w-0 truncate\">{children}</span><span className=\"shrink-0\" aria-hidden=\"true\">{indicator}</span></button>;\n});\ninterface SelectBaseProps extends Omit<SelectPrimitive.SelectProps, 'children' | 'value' | 'defaultValue' | 'onValueChange'> { options: SelectOption[]; placeholder?: string; id?: string; className?: string; style?: React.CSSProperties; 'aria-label'?: string; 'aria-describedby'?: string; 'aria-invalid'?: boolean }\ntype MultipleSelectProps = SelectBaseProps & { variant: 'multiple'; value?: string[]; defaultValue?: string[]; onValueChange?: (value: string[]) => void };\ntype SingleSelectProps = SelectBaseProps & { variant?: 'default'; value?: string; defaultValue?: string; onValueChange?: (value: string) => void };\nexport type SelectProps = SingleSelectProps | MultipleSelectProps;\nexport const Select = forwardRef<HTMLButtonElement, SelectProps>(function Select(props, ref) {\n if (props.variant === 'multiple') return <MultipleSelect {...props} ref={ref} />;\n return <SingleSelect {...props} ref={ref} />;\n});\nconst SingleSelect = forwardRef<HTMLButtonElement, SingleSelectProps>(function SingleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, variant: _variant, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, '', onValueChange);\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n return <SelectPrimitive.Root {...props} dir={direction} required={required} value={selected} onValueChange={setSelected}><SelectPrimitive.Trigger ref={ref} {...fieldAttributes} aria-required={required || undefined} aria-label={label} className={cx('monkeys-ui-select', className)} style={style}><SelectPrimitive.Value placeholder={placeholder ?? locale.messages.multiSelect.placeholder} /><SelectPrimitive.Icon aria-hidden=\"true\"><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" /></SelectPrimitive.Icon></SelectPrimitive.Trigger><Portal><SelectPrimitive.Content className=\"monkeys-ui-select-content\" position=\"popper\" sideOffset={6}><SelectPrimitive.ScrollUpButton><ChevronUp size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollUpButton><SelectPrimitive.Viewport>{options.map(option => <SelectPrimitive.Item key={option.value} value={option.value} disabled={option.disabled} className=\"monkeys-ui-select-item\"><SelectPrimitive.ItemText>{option.label}</SelectPrimitive.ItemText><SelectPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ItemIndicator></SelectPrimitive.Item>)}</SelectPrimitive.Viewport><SelectPrimitive.ScrollDownButton><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></SelectPrimitive.ScrollDownButton></SelectPrimitive.Content></Portal></SelectPrimitive.Root>;\n});\nconst MultipleSelect = forwardRef<HTMLButtonElement, MultipleSelectProps>(function MultipleSelect({ options, placeholder, className, style, id, 'aria-label': label, 'aria-describedby': describedBy, 'aria-invalid': invalid, value, defaultValue, onValueChange, open, defaultOpen, onOpenChange, ...props }, ref) {\n const field = useField({ id, dir: props.dir, 'aria-describedby': describedBy, 'aria-invalid': invalid, required: props.required });\n const [selected, setSelected] = useControllable(value, defaultValue, [], onValueChange);\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const trigger = useRef<HTMLButtonElement>(null);\n const input = useRef<HTMLInputElement>(null);\n const initial = useRef(defaultValue ?? []);\n useImperativeHandle(ref, () => trigger.current!, []);\n useFormReset(input, () => { if (value === undefined) setSelected(initial.current); setShown(false); setValidationFailed(false); });\n const direction = useUIDirection(props.dir);\n const locale = useUILocale();\n const { required, ...fieldAttributes } = field;\n const generatedId = useId();\n const triggerId = field.id ?? generatedId;\n const requiredId = generatedId + '-required';\n const [validationFailed, setValidationFailed] = useState(false);\n useEffect(() => { if (selected.length || !required) setValidationFailed(false); }, [selected.length, required]);\n const selectedLabels = options.filter(option => selected.includes(option.value)).map(option => option.label);\n const toggle = (option: SelectOption) => {\n if (option.disabled || props.disabled) return;\n setSelected(selected.includes(option.value) ? selected.filter(value => value !== option.value) : [...selected, option.value]);\n };\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown} modal={false}>\n <MenuPrimitive.Trigger asChild><button ref={trigger} type=\"button\" {...fieldAttributes} id={triggerId} aria-label={label} aria-describedby={[field['aria-describedby'], required ? requiredId : ''].filter(Boolean).join(' ') || undefined} aria-invalid={field['aria-invalid'] || validationFailed || undefined} disabled={props.disabled} className={cx('monkeys-ui-select', className)} style={style} data-variant=\"multiple\" data-placeholder={!selectedLabels.length || undefined}>\n <span className=\"monkeys-ui-select-value\">{selectedLabels.length ? selectedLabels.join('、') : (placeholder ?? locale.messages.multiSelect.placeholder)}</span><ChevronDown size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" />\n </button></MenuPrimitive.Trigger>\n <Portal><MenuPrimitive.Content aria-label={label} aria-labelledby={label ? undefined : triggerId} sideOffset={6} align=\"start\" className=\"monkeys-ui-select-content monkeys-ui-select-multiple-content\">\n {options.map(option => <MenuPrimitive.CheckboxItem key={option.value} checked={selected.includes(option.value)} disabled={option.disabled} onSelect={event => { event.preventDefault(); toggle(option); }} className=\"monkeys-ui-select-item\">\n <span>{option.label}</span><MenuPrimitive.ItemIndicator><Check size=\"var(--monkeys-ui-icon-size-s12,var(--monkeys-ui-default-icon-size-s12))\" aria-hidden=\"true\" /></MenuPrimitive.ItemIndicator>\n </MenuPrimitive.CheckboxItem>)}\n </MenuPrimitive.Content></Portal>\n {required ? <span id={requiredId} className=\"monkeys-ui-visually-hidden\">{locale.locale.startsWith('zh') ? '必填,请至少选择一项' : 'Required. Select at least one option.'}</span> : null}\n <input ref={input} type=\"text\" className=\"monkeys-ui-visually-hidden\" aria-hidden=\"true\" tabIndex={-1} form={props.form} autoComplete={props.autoComplete} value={selected.length ? 'selected' : ''} onChange={() => {}} disabled={props.disabled} required={required} onInvalid={event => { event.preventDefault(); setValidationFailed(true); trigger.current?.focus(); }} />\n {props.name ? selected.map(item => <input key={item} type=\"hidden\" name={props.name} form={props.form} value={item} disabled={props.disabled} />) : null}\n </MenuPrimitive.Root>;\n});\nexport interface MonthYearPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'children' | 'defaultValue'> {\n month?: number;\n defaultMonth?: number;\n year?: number;\n defaultYear?: number;\n /** Inclusive year range. Defaults to 2020–2035. */\n minYear?: number;\n maxYear?: number;\n onMonthChange?: (month: number) => void;\n onYearChange?: (year: number) => void;\n monthLabel?: string;\n yearLabel?: string;\n disabled?: boolean;\n}\n/** Two existing Select controls; numeric values contain no day or time-zone conversion. */\nexport function MonthYearPicker({ month, defaultMonth = 1, year, defaultYear, minYear = 2020, maxYear = 2035, onMonthChange, onYearChange, monthLabel = '月份', yearLabel = '年份', disabled, className, dir, 'aria-label': label = '年月', ...props }: MonthYearPickerProps) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n if (!Number.isInteger(minYear) || !Number.isInteger(maxYear) || minYear < 1 || maxYear > 9999 || minYear > maxYear) throw new RangeError('MonthYearPicker requires an inclusive year range within 1–9999.');\n const initialYear = defaultYear ?? minYear;\n const selectedMonth = month ?? defaultMonth;\n const selectedYear = year ?? initialYear;\n if (!Number.isInteger(selectedMonth) || selectedMonth < 1 || selectedMonth > 12) throw new RangeError('MonthYearPicker month must be between 1 and 12.');\n if (!Number.isInteger(selectedYear) || selectedYear < minYear || selectedYear > maxYear) throw new RangeError('MonthYearPicker year must be within the configured range.');\n const months = Array.from({ length: 12 }, (_, index) => ({ value: String(index + 1), label: `${index + 1}月` }));\n const years = Array.from({ length: maxYear - minYear + 1 }, (_, index) => ({ value: String(minYear + index), label: String(minYear + index) }));\n return <div {...props} role=\"group\" aria-label={label} dir={direction} className={cx('monkeys-ui-month-year-picker', className)}><Select aria-label={monthLabel} dir={direction} options={months} value={month === undefined ? undefined : String(month)} defaultValue={month === undefined ? String(defaultMonth) : undefined} onValueChange={value => onMonthChange?.(Number(value))} disabled={disabled} /><Select aria-label={yearLabel} dir={direction} options={years} value={year === undefined ? undefined : String(year)} defaultValue={year === undefined ? String(initialYear) : undefined} onValueChange={value => onYearChange?.(Number(value))} disabled={disabled} /></div>;\n}\nexport interface ChoiceItem { value: string; label: ReactNode; ariaLabel?: string; disabled?: boolean }\nexport interface SegmentedControlProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange' | 'dir'> { dir?: 'ltr' | 'rtl'; items: ChoiceItem[]; value?: string; defaultValue?: string; onValueChange?: (value: string) => void; 'aria-label': string }\nexport function SegmentedControl({ items, value, defaultValue, onValueChange, className, ...props }: SegmentedControlProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <ToggleGroup.Root {...props} dir={direction} type=\"single\" value={selected} onValueChange={next => { if (next) setSelected(next); }} className={cx('monkeys-ui-segmented', className)}>{items.map(item => <ToggleGroup.Item type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-segment\">{item.label}</ToggleGroup.Item>)}</ToggleGroup.Root>;\n}\nexport interface SectionTitleProps extends HTMLAttributes<HTMLElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span';\n indicator?: boolean;\n}\n/** Shared title/indicator presentation; the parent owns navigation and selection. */\nexport function SectionTitle({ as: Element = 'h2', indicator = true, className, ...props }: SectionTitleProps) {\n return <Element {...props} className={cx('monkeys-ui-section-title', className)} data-indicator={indicator} />;\n}\nexport interface TabItem extends ChoiceItem { content: ReactNode }\nexport interface TabsProps extends Omit<TabsPrimitive.TabsProps, 'children'> { items: TabItem[]; 'aria-label': string }\nexport function Tabs({ items, value, defaultValue, onValueChange, className, 'aria-label': label, ...props }: TabsProps) {\n const [selected, setSelected] = useControllable(value, defaultValue, items[0]?.value ?? '', onValueChange);\n const direction = useUIDirection(props.dir);\n return <TabsPrimitive.Root {...props} dir={direction} value={selected} onValueChange={setSelected} className={cx('monkeys-ui-tabs', className)}><TabsPrimitive.List aria-label={label} className=\"monkeys-ui-tab-list\">{items.map(item => <TabsPrimitive.Trigger type=\"button\" key={item.value} value={item.value} aria-label={item.ariaLabel} disabled={item.disabled} className=\"monkeys-ui-tab\"><SectionTitle as=\"span\" indicator={selected === item.value}>{item.label}</SectionTitle></TabsPrimitive.Trigger>)}</TabsPrimitive.List>{items.map(item => <TabsPrimitive.Content key={item.value} value={item.value} className=\"monkeys-ui-tab-panel\">{item.content}</TabsPrimitive.Content>)}</TabsPrimitive.Root>;\n}\n","import { useEffect, useRef, useState, type RefObject } from 'react';\nexport const cx = (...values: Array<string | false | undefined>) => values.filter(Boolean).join(' ');\n/** Radix durations are milliseconds; DTCG also allows seconds. */\nexport function durationMilliseconds(token: unknown) {\n const { value, unit } = token as { value: number; unit: 's' | 'ms' };\n return unit === 's' ? value * 1000 : value;\n}\nexport function useControllable<T>(value: T | undefined, defaultValue: T | undefined, fallback: T, onChange?: (value: T) => void) {\n const controlled = value !== undefined;\n const initial = useRef(controlled);\n const warned = useRef(false);\n if (process.env.NODE_ENV !== 'production' && !warned.current && ((value !== undefined && defaultValue !== undefined) || initial.current !== controlled)) {\n console.error('monkeys-design UI: choose controlled or uncontrolled state; do not supply both value and defaultValue or switch modes.');\n warned.current = true;\n }\n const [local, setLocal] = useState(defaultValue ?? fallback);\n const current = controlled ? value : local;\n const update = (next: T) => { if (!controlled) setLocal(next); if (next !== current) onChange?.(next); };\n return [current, update] as const;\n}\n\n/** Native reset is cancelable. Restore local state after every reset listener ran. */\nexport function useFormReset<T extends HTMLElement>(ref: RefObject<T>, reset: () => void) {\n const latest = useRef(reset);\n latest.current = reset;\n useEffect(() => {\n const element = ref.current;\n const form = element && ('form' in element ? (element as unknown as { form: HTMLFormElement | null }).form : element.closest('form'));\n if (!form) return;\n let active = true;\n const listener = (event: Event) => queueMicrotask(() => { if (active && !event.defaultPrevented) latest.current(); });\n form.addEventListener('reset', listener);\n return () => { active = false; form.removeEventListener('reset', listener); };\n });\n}\n","import type {\n ResolvedThemeToken,\n ThemeColorValue,\n ThemeDimensionValue,\n ThemeDurationValue,\n ThemeTokenExtensions,\n ThemeTokens,\n} from '@inf-monkeys-tech/monkeys/contracts';\nimport { resolveThemeTokens } from '@inf-monkeys-tech/monkeys/runtime';\n\nexport type MonkeysThemeColorMode = 'light' | 'dark' | (string & {});\nexport type MonkeysThemeDensity = 'compact' | 'default' | 'comfortable';\n\nexport interface CompileThemeTokensOptions {\n colorMode?: MonkeysThemeColorMode;\n density?: MonkeysThemeDensity;\n variablePrefix?: string;\n}\n\nexport interface CompiledThemeTokens {\n contract: ThemeTokens;\n colorMode: MonkeysThemeColorMode;\n density: MonkeysThemeDensity;\n values: Readonly<Record<string, unknown>>;\n cssValues: Readonly<Record<string, string>>;\n cssVariables: Readonly<Record<string, string>>;\n cssText: string;\n}\n\nexport interface ApplyThemeTokensOptions extends CompileThemeTokensOptions {\n target?: HTMLElement | null;\n themeId?: string;\n}\n\nexport interface ClearThemeTokensOptions {\n target?: HTMLElement | null;\n}\n\ntype ThemeTokenCssAliasAxis = 'colorMode' | 'density';\ntype ThemeTokenCssAliasFormat = 'hsl' | 'css';\n\ninterface ThemeTokenCssAlias {\n variableName: string;\n axis: ThemeTokenCssAliasAxis;\n expectedType: ResolvedThemeToken['type'];\n format: ThemeTokenCssAliasFormat;\n}\n\ntype CssExtension = {\n gradient?: {\n kind?: 'linear' | 'radial';\n angle?: number;\n };\n};\n\nconst CSS_EXTENSION_KEY = 'com.infmonkeys.css';\nconst APPLIED_VARIABLES = new WeakMap<object, Set<string>>();\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction readCssExtension(extensions?: ThemeTokenExtensions): CssExtension | undefined {\n const extension = extensions?.[CSS_EXTENSION_KEY];\n return isRecord(extension) ? extension as CssExtension : undefined;\n}\n\nfunction formatNumber(value: number): string {\n return Number.isInteger(value) ? String(value) : String(Number(value.toFixed(6)));\n}\n\nfunction formatDimension(value: ThemeDimensionValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatDuration(value: ThemeDurationValue): string {\n return `${formatNumber(value.value)}${value.unit}`;\n}\n\nfunction formatColorComponent(value: number | 'none'): string {\n return value === 'none' ? value : formatNumber(value);\n}\n\nfunction hexToSrgb(hex: string): [number, number, number] {\n return [\n Number.parseInt(hex.slice(1, 3), 16) / 255,\n Number.parseInt(hex.slice(3, 5), 16) / 255,\n Number.parseInt(hex.slice(5, 7), 16) / 255,\n ];\n}\n\nfunction colorSrgbComponents(value: ThemeColorValue): [number, number, number] {\n if (value.colorSpace === 'srgb' && value.components.every((component) => typeof component === 'number')) {\n return value.components as [number, number, number];\n }\n if (value.hex) return hexToSrgb(value.hex);\n throw new TypeError(\n `Web semantic colors in ${value.colorSpace} require a six-digit hex fallback for hsl(var(--token)) consumers.`,\n );\n}\n\nfunction srgbToHsl([red, green, blue]: [number, number, number]): [number, number, number] {\n const maximum = Math.max(red, green, blue);\n const minimum = Math.min(red, green, blue);\n const lightness = (maximum + minimum) / 2;\n if (maximum === minimum) return [0, 0, lightness * 100];\n const delta = maximum - minimum;\n const saturation = lightness > 0.5\n ? delta / (2 - maximum - minimum)\n : delta / (maximum + minimum);\n let hue: number;\n if (maximum === red) hue = (green - blue) / delta + (green < blue ? 6 : 0);\n else if (maximum === green) hue = (blue - red) / delta + 2;\n else hue = (red - green) / delta + 4;\n return [(hue / 6) * 360, saturation * 100, lightness * 100];\n}\n\nfunction formatHslTriplet(value: ThemeColorValue): string {\n if (value.colorSpace === 'hsl' && value.components.every((component) => typeof component === 'number')) {\n const [hue, saturation, lightness] = value.components as [number, number, number];\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n }\n const [hue, saturation, lightness] = srgbToHsl(colorSrgbComponents(value));\n return `${formatNumber(hue)} ${formatNumber(saturation)}% ${formatNumber(lightness)}%`;\n}\n\nfunction formatColor(value: ThemeColorValue): string {\n const alpha = value.alpha ?? 1;\n if (value.hex && alpha === 1) return value.hex;\n const components = value.components.map(formatColorComponent).join(' ');\n const alphaSuffix = alpha === 1 ? '' : ` / ${formatNumber(alpha)}`;\n switch (value.colorSpace) {\n case 'srgb': {\n const rgb = value.components.map((component) => component === 'none' ? 'none' : formatNumber(component * 255));\n return `rgb(${rgb.join(' ')}${alphaSuffix})`;\n }\n case 'hsl':\n return `hsl(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'hwb':\n return `hwb(${formatColorComponent(value.components[0])} ${formatColorComponent(value.components[1])}% ${formatColorComponent(value.components[2])}%${alphaSuffix})`;\n case 'lab':\n case 'lch':\n case 'oklab':\n case 'oklch':\n return `${value.colorSpace}(${components}${alphaSuffix})`;\n default:\n return `color(${value.colorSpace} ${components}${alphaSuffix})`;\n }\n}\n\nfunction formatFontFamily(value: string | string[]): string {\n const families = Array.isArray(value) ? value : [value];\n const genericFamilies = new Set([\n 'serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui',\n 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong',\n ]);\n return families.map((family) => {\n if (genericFamilies.has(family) || /^[a-zA-Z][\\w-]*$/.test(family)) return family;\n return `\"${family.replace(/\\\\/g, '\\\\\\\\').replace(/\"/g, '\\\\\"')}\"`;\n }).join(', ');\n}\n\nfunction formatShadow(value: unknown): string {\n const shadows = Array.isArray(value) ? value : [value];\n return shadows.map((shadow) => {\n if (!isRecord(shadow)) throw new TypeError('DTCG shadow values must be objects.');\n return [\n formatDimension(shadow.offsetX as ThemeDimensionValue),\n formatDimension(shadow.offsetY as ThemeDimensionValue),\n formatDimension(shadow.blur as ThemeDimensionValue),\n formatDimension(shadow.spread as ThemeDimensionValue),\n formatColor(shadow.color as ThemeColorValue),\n shadow.inset === true ? 'inset' : '',\n ].filter(Boolean).join(' ');\n }).join(', ');\n}\n\nfunction formatGradient(value: unknown, extensions?: ThemeTokenExtensions): string {\n if (!Array.isArray(value)) throw new TypeError('DTCG gradient values must be arrays.');\n const stops = value.map((stop) => {\n if (!isRecord(stop)) throw new TypeError('DTCG gradient stops must be objects.');\n return `${formatColor(stop.color as ThemeColorValue)} ${formatNumber(Number(stop.position) * 100)}%`;\n }).join(', ');\n const gradient = readCssExtension(extensions)?.gradient;\n if (gradient?.kind === 'radial') return `radial-gradient(${stops})`;\n return `linear-gradient(${formatNumber(gradient?.angle ?? 90)}deg, ${stops})`;\n}\n\nfunction formatTokenValue(token: ResolvedThemeToken): string {\n switch (token.type) {\n case 'color':\n return formatColor(token.value as ThemeColorValue);\n case 'dimension':\n return formatDimension(token.value as ThemeDimensionValue);\n case 'fontFamily':\n return formatFontFamily(token.value as string | string[]);\n case 'fontWeight':\n case 'number':\n return String(token.value);\n case 'duration':\n return formatDuration(token.value as ThemeDurationValue);\n case 'cubicBezier':\n return `cubic-bezier(${(token.value as number[]).map(formatNumber).join(', ')})`;\n case 'strokeStyle': {\n if (typeof token.value === 'string') return token.value;\n const value = token.value as { dashArray: ThemeDimensionValue[] };\n return value.dashArray.map(formatDimension).join(' ');\n }\n case 'border': {\n const value = token.value as { color: ThemeColorValue; width: ThemeDimensionValue; style: unknown };\n const styleToken: ResolvedThemeToken = { ...token, type: 'strokeStyle', value: value.style };\n return `${formatDimension(value.width)} ${formatTokenValue(styleToken)} ${formatColor(value.color)}`;\n }\n case 'transition': {\n const value = token.value as { duration: ThemeDurationValue; delay: ThemeDurationValue; timingFunction: number[] };\n return `${formatDuration(value.duration)} cubic-bezier(${value.timingFunction.map(formatNumber).join(', ')}) ${formatDuration(value.delay)}`;\n }\n case 'shadow':\n return formatShadow(token.value);\n case 'gradient':\n return formatGradient(token.value, token.extensions);\n case 'typography': {\n const value = token.value as {\n fontFamily: string | string[];\n fontSize: ThemeDimensionValue;\n fontWeight: string | number;\n lineHeight: number;\n };\n return `${value.fontWeight} ${formatDimension(value.fontSize)}/${formatNumber(value.lineHeight)} ${formatFontFamily(value.fontFamily)}`;\n }\n }\n}\n\nfunction toCssVariableName(path: string, prefix: string): string {\n const normalized = path\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/[^a-zA-Z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '')\n .toLowerCase();\n return `--${prefix}-${normalized}`;\n}\n\nfunction assertCssVariablePrefix(prefix: string): void {\n if (!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(prefix)) {\n throw new TypeError(\n 'Theme token variablePrefix must start with a letter and contain only letters, numbers, or hyphens.',\n );\n }\n}\n\nfunction selectModePath(\n paths: ReadonlySet<string>,\n basePath: string,\n colorMode: MonkeysThemeColorMode,\n): string | undefined {\n const contextualPath = `${basePath}.${colorMode}`;\n if (paths.has(contextualPath)) return contextualPath;\n return paths.has(basePath) ? basePath : undefined;\n}\n\nconst HSL_SEMANTIC_VARIABLES: Readonly<Record<string, string>> = {\n 'semantic.color.background': '--background',\n 'semantic.color.foreground': '--foreground',\n 'semantic.color.card': '--card',\n 'semantic.color.card-foreground': '--card-foreground',\n 'semantic.color.popover': '--popover',\n 'semantic.color.popover-foreground': '--popover-foreground',\n 'semantic.color.primary': '--primary',\n 'semantic.color.primary-foreground': '--primary-foreground',\n 'semantic.color.secondary': '--secondary',\n 'semantic.color.secondary-foreground': '--secondary-foreground',\n 'semantic.color.muted': '--muted',\n 'semantic.color.muted-foreground': '--muted-foreground',\n 'semantic.color.accent': '--accent',\n 'semantic.color.accent-foreground': '--accent-foreground',\n 'semantic.color.destructive': '--destructive',\n 'semantic.color.destructive-foreground': '--destructive-foreground',\n 'semantic.color.success': '--success',\n 'semantic.color.success-foreground': '--success-foreground',\n 'semantic.color.warning': '--warning',\n 'semantic.color.warning-foreground': '--warning-foreground',\n 'semantic.color.border': '--border',\n 'semantic.color.input': '--input',\n 'semantic.color.ring': '--ring',\n 'semantic.color.media-surface': '--media-surface',\n 'semantic.color.media-foreground': '--media-foreground',\n 'semantic.color.media-overlay': '--media-overlay',\n 'semantic.color.radar-canvas': '--radar-canvas',\n 'semantic.color.radar-panel': '--radar-panel',\n 'semantic.color.radar-border': '--radar-border',\n 'semantic.color.radar-shell-border': '--radar-shell-border',\n 'semantic.color.radar-grid': '--radar-grid',\n 'semantic.color.radar-axis': '--radar-axis',\n 'semantic.color.radar-series-one': '--radar-series-one',\n 'semantic.color.radar-series-two': '--radar-series-two',\n 'semantic.color.radar-series-three': '--radar-series-three',\n 'semantic.color.radar-series-four': '--radar-series-four',\n};\n\nconst THEME_TOKEN_CSS_ALIASES: Readonly<Record<string, ThemeTokenCssAlias>> = Object.freeze({\n ...Object.fromEntries(\n Object.entries(HSL_SEMANTIC_VARIABLES).map(([path, variableName]) => [path, {\n variableName,\n axis: 'colorMode',\n expectedType: 'color',\n format: 'hsl',\n }]),\n ),\n 'semantic.color.neocard': {\n variableName: '--neocard',\n axis: 'colorMode',\n expectedType: 'color',\n format: 'css',\n },\n 'semantic.radius.base': {\n variableName: '--radius',\n axis: 'colorMode',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.spacing.global': {\n variableName: '--global-spacing',\n axis: 'density',\n expectedType: 'dimension',\n format: 'css',\n },\n 'semantic.gradient.brand': {\n variableName: '--monkeys-gradient',\n axis: 'colorMode',\n expectedType: 'gradient',\n format: 'css',\n },\n 'semantic.font.body': {\n variableName: '--font-sans',\n axis: 'colorMode',\n expectedType: 'fontFamily',\n format: 'css',\n },\n});\n\nexport function resolveThemeTokenCssVariable(reference: string): string {\n const path = reference.startsWith('$') ? reference.slice(1).trim() : reference.trim();\n if (!/^[a-z][a-z0-9]*(?:[.-][a-z0-9]+)*$/i.test(path)) {\n throw new TypeError(`Invalid Design Token path ${reference}.`);\n }\n const alias = THEME_TOKEN_CSS_ALIASES[path];\n if (alias) return alias.format === 'hsl' ? `hsl(var(${alias.variableName}))` : `var(${alias.variableName})`;\n return `var(${toCssVariableName(path, 'monkeys')})`;\n}\n\nexport function getThemeTokenCssValue(\n compiled: CompiledThemeTokens,\n basePath: string,\n): string | undefined {\n const path = selectModePath(new Set(Object.keys(compiled.cssValues)), basePath, compiled.colorMode);\n return path ? compiled.cssValues[path] : undefined;\n}\n\nexport function compileThemeTokens(\n input: ThemeTokens,\n options: CompileThemeTokensOptions = {},\n): CompiledThemeTokens {\n const resolved = resolveThemeTokens(input);\n const contract = resolved.document;\n const colorMode = options.colorMode ?? 'light';\n const density = options.density ?? 'default';\n const variablePrefix = options.variablePrefix ?? 'monkeys';\n assertCssVariablePrefix(variablePrefix);\n const values: Record<string, unknown> = {};\n const cssValues: Record<string, string> = {};\n const cssVariables: Record<string, string> = {};\n const canonicalVariableSources = new Map<string, string>();\n\n for (const [path, token] of resolved.tokens) {\n values[path] = token.value;\n const cssValue = formatTokenValue(token);\n cssValues[path] = cssValue;\n const variableName = toCssVariableName(path, variablePrefix);\n const existingPath = canonicalVariableSources.get(variableName);\n if (existingPath) {\n throw new TypeError(\n `Theme token paths ${existingPath} and ${path} both compile to ${variableName}. Rename one token.`,\n );\n }\n canonicalVariableSources.set(variableName, path);\n cssVariables[variableName] = cssValue;\n }\n\n const paths = new Set(resolved.tokens.keys());\n for (const [basePath, alias] of Object.entries(THEME_TOKEN_CSS_ALIASES)) {\n const axis = alias.axis === 'density' ? density : colorMode;\n const path = selectModePath(paths, basePath, axis);\n if (!path) continue;\n const token = resolved.tokens.get(path);\n if (!token || token.type !== alias.expectedType) {\n throw new TypeError(`${path} must be a ${alias.expectedType} token to drive ${alias.variableName}.`);\n }\n cssVariables[alias.variableName] = alias.format === 'hsl'\n ? formatHslTriplet(token.value as ThemeColorValue)\n : cssValues[path];\n }\n\n const cssText = Object.entries(cssVariables)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([name, value]) => `${name}:${value};`)\n .join('');\n\n return {\n contract,\n colorMode,\n density,\n values: Object.freeze(values),\n cssValues: Object.freeze(cssValues),\n cssVariables: Object.freeze(cssVariables),\n cssText,\n };\n}\n\nexport function applyThemeTokens(\n input: ThemeTokens,\n options: ApplyThemeTokensOptions = {},\n): CompiledThemeTokens {\n const compiled = compileThemeTokens(input, options);\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return compiled;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n const nextVariables = new Set(Object.keys(compiled.cssVariables));\n for (const name of previouslyApplied) {\n if (!nextVariables.has(name)) target.style.removeProperty(name);\n }\n for (const [name, value] of Object.entries(compiled.cssVariables)) {\n target.style.setProperty(name, value);\n }\n APPLIED_VARIABLES.set(target, nextVariables);\n\n if (options.themeId) target.dataset.monkeysTheme = options.themeId;\n else delete target.dataset.monkeysTheme;\n target.dataset.monkeysColorMode = compiled.colorMode;\n target.dataset.monkeysDensity = compiled.density;\n return compiled;\n}\n\nexport function clearThemeTokens(options: ClearThemeTokensOptions = {}): void {\n const target = options.target ?? (typeof document === 'undefined' ? null : document.documentElement);\n if (!target) return;\n\n const previouslyApplied = APPLIED_VARIABLES.get(target) ?? new Set<string>();\n for (const name of previouslyApplied) target.style.removeProperty(name);\n APPLIED_VARIABLES.delete(target);\n\n delete target.dataset.monkeysTheme;\n delete target.dataset.monkeysColorMode;\n delete target.dataset.monkeysDensity;\n}\n","import type { CompiledThemeTokens } from './theme-tokens';\n\nexport const BENTO_STYLE_FIELDS = [\n 'background',\n 'glowColor',\n 'borderColor',\n 'borderWidth',\n 'borderStyle',\n 'radius',\n 'shadow',\n 'padding',\n 'gap',\n] as const;\nexport type BentoStyleField = (typeof BENTO_STYLE_FIELDS)[number];\nexport interface ResolvedBentoTokens {\n values: Record<BentoStyleField, string>;\n sources: Record<BentoStyleField, string>;\n}\n\nconst fallback: Record<BentoStyleField, string> = {\n background: 'hsl(var(--card, 0 0% 100%))',\n glowColor: 'var(--monkeys-bento-glow-default)',\n borderColor: 'hsl(var(--border, 214.3 31.8% 91.4%))',\n borderWidth: '1px',\n borderStyle: 'solid',\n radius: 'var(--radius, 0.75rem)',\n shadow: 'none',\n padding: 'var(--global-spacing, 0.75rem)',\n gap: 'var(--global-spacing, 0.75rem)',\n};\nconst cache = new WeakMap<\n CompiledThemeTokens,\n Map<number, ResolvedBentoTokens>\n>();\n\n/** Resolve fields independently; local component overrides are applied by the surface. */\nexport function resolveBentoTokens(\n theme: CompiledThemeTokens | undefined,\n level: number,\n): ResolvedBentoTokens {\n if (!Number.isSafeInteger(level) || level < 1)\n throw new RangeError('Bento level must be a positive safe integer.');\n const cached = theme && cache.get(theme)?.get(level);\n if (cached) return cached;\n const values = { ...fallback };\n const sources = Object.fromEntries(\n BENTO_STYLE_FIELDS.map((field) => [field, 'builtin']),\n ) as Record<BentoStyleField, string>;\n for (const field of BENTO_STYLE_FIELDS) {\n const axis =\n field === 'padding' || field === 'gap'\n ? theme?.density\n : theme?.colorMode;\n // Glow is an optional Design component token. Keep the SDK's closed\n // semantic.bento recipe compatible with existing token documents.\n const namespace = field === 'glowColor' ? 'component.bento' : 'semantic.bento';\n const paths = [\n `${namespace}.levels.level${level}.${field}`,\n `${namespace}.default.${field}`,\n ];\n for (const base of paths) {\n const path =\n axis && theme?.cssValues[`${base}.${axis}`] !== undefined\n ? `${base}.${axis}`\n : base;\n const value = theme?.cssValues[path];\n if (value !== undefined) {\n values[field] = value;\n sources[field] = path;\n break;\n }\n }\n }\n const result = Object.freeze({\n values: Object.freeze(values),\n sources: Object.freeze(sources),\n });\n if (theme) {\n const levels = cache.get(theme) ?? new Map<number, ResolvedBentoTokens>();\n levels.set(level, result);\n cache.set(theme, levels);\n }\n return result;\n}\n","import type { MonkeysLocale } from \"./types\";\n\nexport const enUS = {\n locale: \"en-US\",\n messages: {\n pagination: {\n navigation: \"Pagination\",\n first: \"First\",\n previous: \"Previous\",\n next: \"Next\",\n last: \"Last\",\n page: ({ page, pageCount }) => `Page ${page} of ${pageCount}`,\n currentPage: ({ page, pageCount }) =>\n `Page ${page} of ${pageCount}, current page`,\n emptyResults: \"0 results\",\n range: ({ start, end, total }) => `${start}-${end} of ${total}`,\n selected: ({ count }) => `${count} selected`,\n pageSize: \"Items per page\",\n loadBatchSize: \"Items per load\",\n perLoad: \"Items per load\",\n jumpToPage: \"Jump to page\",\n pages: \"pages\",\n clickToJump: \"Click to jump to a page\",\n },\n dialog: {\n close: \"Close dialog\",\n },\n dropdownMenu: {\n actions: \"Actions\",\n },\n loading: {\n spinner: \"Loading\",\n },\n layout: {\n resizePanels: \"Resize panels\",\n expandPanel: \"Expand\",\n collapsePanel: \"Collapse\",\n movePanel: \"Move\",\n moveBefore: \"Move earlier\",\n moveAfter: \"Move later\",\n },\n steps: {\n label: \"Progress\",\n current: \"Current\",\n completed: \"Completed\",\n error: \"Error\",\n disabled: \"Disabled\",\n },\n numberInput: {\n increment: \"Increase value\",\n decrement: \"Decrease value\",\n },\n passwordInput: {\n showPassword: \"Show password\",\n hidePassword: \"Hide password\",\n },\n multiSelect: {\n placeholder: \"Select options\",\n empty: \"No options\",\n removeOption: ({ value }) => `Remove ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `Drag column ${columnId}`,\n resizeColumn: ({ columnId }) => `Resize column ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `Sort column ${columnId}` : \"Sort column\",\n loadingRow: \"Loading table row\",\n },\n toolbar: {\n theme: {\n label: \"Appearance\",\n toggle: \"Toggle theme\",\n auto: \"Auto\",\n light: \"Light\",\n dark: \"Dark\",\n },\n language: {\n label: \"Language\",\n switch: \"Switch language\",\n },\n },\n toast: {\n errorTitle: \"Error\",\n warningTitle: \"Warning\",\n defaultErrorDescription: \"Something went wrong.\",\n defaultWarningDescription: \"Please check and try again.\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"More actions\",\n expand: \"Expand\",\n collapse: \"Collapse\",\n loading: \"Loading...\",\n empty: \"No views\",\n error: \"Unable to load views\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview' },\n collection: {\n label: \"Collection\",\n loading: \"Loading items\",\n empty: \"No items\",\n loadError: \"Unable to load items\",\n refreshError: \"Unable to refresh items\",\n retry: \"Retry\",\n loadingMore: \"Loading more items\",\n permission: \"You do not have permission to view this content\",\n offline: \"You appear to be offline\",\n requestAccess: \"Request access\",\n },\n interactiveTable: {\n columnActions: \"Column actions\",\n freezeColumn: \"Freeze to left\",\n freezeEndColumn: \"Freeze to right\",\n unfreezeColumn: \"Unfreeze from left\",\n unfreezeEndColumn: \"Unfreeze from right\",\n unfreezeAllColumns: \"Unfreeze all columns\",\n resetColumnWidth: \"Reset column width\",\n frozenColumnTitle: \"Frozen column\",\n },\n },\n agentWorkbench: {\n label: \"Session activity\",\n reasoning: \"Reasoning\",\n plan: \"Plan\",\n taskNoDetail: \"No additional details\",\n modes: { chat: \"Chat\", work: \"Work\" },\n composer: {\n send: \"Send message\",\n stop: \"Stop generating\",\n queue: \"Queue message\",\n attach: \"Add photos or files\",\n voice: \"Start voice input\",\n webSearch: \"Web search\",\n chatMode: \"Chat mode\",\n model: \"Model\",\n reasoning: \"Reasoning effort\",\n permissions: \"Permissions\",\n removeAttachment: \"Remove attachment\",\n editQueued: \"Edit queued message\",\n deleteQueued: \"Delete queued message\",\n moveUp: \"Move message up\",\n moveDown: \"Move message down\",\n queued: \"Queued messages\",\n uploading: \"Uploading\",\n uploadFailed: \"Upload failed\",\n retryAttachment: \"Retry attachment upload\",\n noModels: \"No models available\",\n message: \"Message\",\n attachmentOnly: \"Attachment\",\n reasoningOptions: {\n low: \"Low\",\n medium: \"Medium\",\n high: \"High\",\n xhigh: \"Extra high\",\n },\n permissionOptions: {\n \"approval-required\": \"Approval required\",\n \"auto-approve\": \"Auto approve\",\n \"full-access\": \"Full access\",\n },\n },\n quickStart: {\n label: \"Quick start\",\n back: \"Back\",\n addFile: \"Add file\",\n },\n tool: {\n input: \"Input\",\n output: \"Output\",\n status: {\n pending: \"Pending\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Error\",\n denied: \"Denied\",\n },\n },\n approval: {\n approve: \"Approve\",\n reject: \"Reject\",\n approved: \"Approved\",\n rejected: \"Rejected\",\n },\n artifact: {\n pending: \"Preparing\",\n ready: \"Ready\",\n failed: \"Failed\",\n open: ({ name }) => `Open ${name}`,\n },\n run: {\n stopping: \"Stopping...\",\n stoppedAfter: ({ duration }) => `You stopped after ${duration}`,\n },\n process: {\n running: \"Working\",\n queued: \"Queued\",\n waitingApproval: \"Waiting for approval\",\n failed: \"Failed\",\n stopped: \"Stopped\",\n processed: \"Processed\",\n processedFor: ({ duration }) => `Worked for ${duration}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} completed`,\n },\n artifactWorkspace: {\n outputs: \"Outputs\",\n sources: \"Sources\",\n viewAll: \"View all\",\n toggleSummary: \"Toggle files\",\n tabs: \"Open files\",\n closeTab: ({ name }) => `Close ${name}`,\n closeWorkspace: \"Close workspace\",\n download: ({ name }) => `Download ${name}`,\n openExternal: ({ name }) => `Open ${name} in a new window`,\n loading: \"Loading preview...\",\n failed: \"Preview unavailable\",\n retry: \"Try again\",\n },\n usage: {\n label: \"Context usage\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"Search agents and sessions\",\n searchSessions: \"Search sessions\",\n searchShortcut: \"Focus search\",\n clearSearch: \"Clear search\",\n tabsLabel: \"Agent workbench navigation\",\n agents: \"Agents\",\n sessions: \"Sessions\",\n newAgent: \"New Agent\",\n newSession: \"New Session\",\n capabilities: \"Capabilities & Extensions\",\n settings: \"Agent Settings\",\n allAgents: \"All Agents\",\n recentSessions: \"Recent Sessions\",\n chat: \"Chat\",\n work: \"Work\",\n chats: \"Chats\",\n builtIn: \"Built-in\",\n noDescription: \"No description\",\n loading: \"Loading...\",\n emptyAgents: \"No agents yet\",\n emptySessions: \"No sessions yet\",\n noResults: \"No matching results\",\n retry: \"Retry\",\n pin: \"Pin\",\n unpin: \"Unpin\",\n rename: \"Rename\",\n delete: \"Delete\",\n actions: \"Actions\",\n save: \"Save\",\n cancel: \"Cancel\",\n running: \"Running\",\n completed: \"Completed\",\n failed: \"Failed\",\n contextUsage: ({ percent }) => `${percent}% context used`,\n },\n details: {\n title: \"Task details\",\n description: \"Summary and workspace activity\",\n duration: \"Duration\",\n updated: \"Updated\",\n model: \"Model\",\n mode: \"Mode\",\n permissions: \"Permissions\",\n tokenUsage: \"Token usage\",\n summary: \"Summary\",\n summaryEmpty: \"No summary is available yet.\",\n summaryFailed: \"The summary could not be generated.\",\n highlights: \"Highlights\",\n pendingItems: \"Pending items\",\n tabs: {\n label: \"Task detail views\",\n summary: \"Summary\",\n workspace: \"Workspace\",\n },\n status: {\n queued: \"Queued\",\n running: \"Running\",\n waiting_approval: \"Waiting for approval\",\n stopping: \"Stopping\",\n stopped: \"Stopped\",\n completed: \"Completed\",\n failed: \"Failed\",\n },\n state: {\n loading: {\n title: \"Loading task details\",\n description: \"Restoring the latest session activity.\",\n },\n empty: {\n title: \"No task selected\",\n description: \"Select a task to inspect its details.\",\n },\n error: {\n title: \"Unable to load task details\",\n description: \"Try again after the session is available.\",\n },\n },\n actions: {\n close: \"Close task details\",\n copySummary: \"Copy summary\",\n retry: \"Retry\",\n retrySummary: \"Retry summary\",\n resume: \"Resume\",\n continueInNewTask: \"Continue in new task\",\n editAndRerun: \"Edit and rerun\",\n export: \"Export\",\n },\n workspace: {\n diffs: \"Code changes\",\n files: \"Files\",\n terminals: \"Terminals\",\n tests: \"Tests\",\n artifacts: \"Artifacts\",\n exitCode: ({ code }) => `Exit code ${code}`,\n diffStatus: {\n added: \"Added\",\n modified: \"Modified\",\n deleted: \"Deleted\",\n renamed: \"Renamed\",\n },\n fileOperation: { upsert: \"Updated\", delete: \"Deleted\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import type { MonkeysLocale } from \"./types\";\n\nexport const zhCN = {\n locale: \"zh-CN\",\n messages: {\n pagination: {\n navigation: \"分页导航\",\n first: \"首页\",\n previous: \"上一页\",\n next: \"下一页\",\n last: \"末页\",\n page: ({ page, pageCount }) => `第 ${page} 页,共 ${pageCount} 页`,\n currentPage: ({ page, pageCount }) =>\n `第 ${page} 页,共 ${pageCount} 页,当前页`,\n emptyResults: \"共 0 条\",\n range: ({ start, end, total }) => `第 ${start}-${end} 条,共 ${total} 条`,\n selected: ({ count }) => `已选择 ${count} 项`,\n pageSize: \"每页显示数量\",\n loadBatchSize: \"每次加载数量\",\n perLoad: \"每次加载\",\n jumpToPage: \"跳转到页码\",\n pages: \"页\",\n clickToJump: \"点击跳转页码\",\n },\n dialog: {\n close: \"关闭对话框\",\n },\n dropdownMenu: {\n actions: \"操作\",\n },\n loading: {\n spinner: \"正在加载\",\n },\n layout: {\n resizePanels: \"调整面板大小\",\n expandPanel: \"展开\",\n collapsePanel: \"收起\",\n movePanel: \"移动\",\n moveBefore: \"向前移动\",\n moveAfter: \"向后移动\",\n },\n steps: {\n label: \"进度\",\n current: \"当前步骤\",\n completed: \"已完成\",\n error: \"错误\",\n disabled: \"已禁用\",\n },\n numberInput: {\n increment: \"增加数值\",\n decrement: \"减少数值\",\n },\n passwordInput: {\n showPassword: \"显示密码\",\n hidePassword: \"隐藏密码\",\n },\n multiSelect: {\n placeholder: \"请选择\",\n empty: \"暂无选项\",\n removeOption: ({ value }) => `移除 ${value}`,\n },\n table: {\n dragColumn: ({ columnId }) => `拖动列 ${columnId}`,\n resizeColumn: ({ columnId }) => `调整列宽 ${columnId}`,\n sortColumn: ({ columnId }) =>\n columnId ? `排序列 ${columnId}` : \"排序列\",\n loadingRow: \"正在加载表格行\",\n },\n toolbar: {\n theme: {\n label: \"外观\",\n toggle: \"切换主题\",\n auto: \"跟随系统\",\n light: \"浅色模式\",\n dark: \"深色模式\",\n },\n language: {\n label: \"语言\",\n switch: \"切换语言\",\n },\n },\n toast: {\n errorTitle: \"错误\",\n warningTitle: \"提示\",\n defaultErrorDescription: \"发生错误,请稍后重试。\",\n defaultWarningDescription: \"请检查后重试。\",\n },\n dataExplorer: {\n viewTree: {\n actions: \"更多操作\",\n expand: \"展开\",\n collapse: \"收起\",\n loading: \"正在加载...\",\n empty: \"暂无视图\",\n error: \"无法加载视图\",\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: '缩小', zoomIn: '放大', zoomToFit: '适应画布', minimap: '图谱概览' },\n collection: {\n label: \"内容集合\",\n loading: \"正在加载内容\",\n empty: \"暂无内容\",\n loadError: \"无法加载内容\",\n refreshError: \"无法刷新内容\",\n retry: \"重试\",\n loadingMore: \"正在加载更多内容\",\n permission: \"你没有权限查看此内容\",\n offline: \"网络连接已断开\",\n requestAccess: \"申请权限\",\n },\n interactiveTable: {\n columnActions: \"列操作\",\n freezeColumn: \"固定到左侧\",\n freezeEndColumn: \"固定到右侧\",\n unfreezeColumn: \"取消左侧固定\",\n unfreezeEndColumn: \"取消右侧固定\",\n unfreezeAllColumns: \"取消全部固定\",\n resetColumnWidth: \"重置列宽\",\n frozenColumnTitle: \"已固定列\",\n },\n },\n agentWorkbench: {\n label: \"会话活动\",\n reasoning: \"思考过程\",\n plan: \"执行计划\",\n taskNoDetail: \"暂无更多详情\",\n modes: { chat: \"对话\", work: \"工作\" },\n composer: {\n send: \"发送消息\",\n stop: \"停止生成\",\n queue: \"排队发送\",\n attach: \"添加照片或文件\",\n voice: \"开始语音输入\",\n webSearch: \"联网搜索\",\n chatMode: \"对话模式\",\n model: \"模型\",\n reasoning: \"思考强度\",\n permissions: \"权限\",\n removeAttachment: \"移除附件\",\n editQueued: \"编辑排队消息\",\n deleteQueued: \"删除排队消息\",\n moveUp: \"上移消息\",\n moveDown: \"下移消息\",\n queued: \"排队消息\",\n uploading: \"上传中\",\n uploadFailed: \"上传失败\",\n retryAttachment: \"重试附件上传\",\n noModels: \"暂无可用模型\",\n message: \"消息\",\n attachmentOnly: \"附件\",\n reasoningOptions: {\n low: \"低\",\n medium: \"中\",\n high: \"高\",\n xhigh: \"最高\",\n },\n permissionOptions: {\n \"approval-required\": \"需要批准\",\n \"auto-approve\": \"自动批准\",\n \"full-access\": \"完全访问\",\n },\n },\n quickStart: {\n label: \"快速开始\",\n back: \"返回\",\n addFile: \"添加文件\",\n },\n tool: {\n input: \"输入\",\n output: \"输出\",\n status: {\n pending: \"等待中\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"错误\",\n denied: \"已拒绝\",\n },\n },\n approval: {\n approve: \"允许\",\n reject: \"拒绝\",\n approved: \"已允许\",\n rejected: \"已拒绝\",\n },\n artifact: {\n pending: \"准备中\",\n ready: \"已就绪\",\n failed: \"失败\",\n open: ({ name }) => `打开 ${name}`,\n },\n run: {\n stopping: \"正在停止...\",\n stoppedAfter: ({ duration }) => `你在 ${duration} 后停止了任务`,\n },\n process: {\n running: \"执行过程\",\n queued: \"排队中\",\n waitingApproval: \"等待审批\",\n failed: \"失败\",\n stopped: \"已停止\",\n processed: \"已处理\",\n processedFor: ({ duration }) =>\n `耗时 ${duration\n .replace(/(\\d+)h/g, \"$1小时\")\n .replace(/(\\d+)m/g, \"$1分钟\")\n .replace(/(\\d+)s/g, \"$1秒\")\n .replace(/\\s+/g, \"\")}`,\n completedCount: ({ completed, total }) =>\n `${completed}/${total} 已完成`,\n },\n artifactWorkspace: {\n outputs: \"输出\",\n sources: \"来源\",\n viewAll: \"查看全部\",\n toggleSummary: \"切换文件摘要\",\n tabs: \"已打开文件\",\n closeTab: ({ name }) => `关闭 ${name}`,\n closeWorkspace: \"关闭工作区\",\n download: ({ name }) => `下载 ${name}`,\n openExternal: ({ name }) => `在新窗口打开 ${name}`,\n loading: \"正在加载预览...\",\n failed: \"预览不可用\",\n retry: \"重试\",\n },\n usage: {\n label: \"上下文用量\",\n context: ({ used, total }) => `${used} / ${total} tokens`,\n },\n navigation: {\n search: \"搜索智能体和会话\",\n searchSessions: \"搜索会话\",\n searchShortcut: \"聚焦搜索框\",\n clearSearch: \"清除搜索\",\n tabsLabel: \"智能体工作台导航\",\n agents: \"智能体\",\n sessions: \"会话\",\n newAgent: \"新建智能体\",\n newSession: \"新建会话\",\n capabilities: \"能力与扩展\",\n settings: \"智能体设置\",\n allAgents: \"全部智能体\",\n recentSessions: \"最近会话\",\n chat: \"对话\",\n work: \"工作\",\n chats: \"聊天\",\n builtIn: \"内置\",\n noDescription: \"暂无描述\",\n loading: \"加载中...\",\n emptyAgents: \"暂无智能体\",\n emptySessions: \"暂无会话\",\n noResults: \"没有匹配结果\",\n retry: \"重试\",\n pin: \"置顶\",\n unpin: \"取消置顶\",\n rename: \"重命名\",\n delete: \"删除\",\n actions: \"操作\",\n save: \"保存\",\n cancel: \"取消\",\n running: \"运行中\",\n completed: \"已完成\",\n failed: \"失败\",\n contextUsage: ({ percent }) => `已使用 ${percent}% 上下文`,\n },\n details: {\n title: \"任务详情\",\n description: \"摘要与工作区活动\",\n duration: \"耗时\",\n updated: \"更新时间\",\n model: \"模型\",\n mode: \"模式\",\n permissions: \"权限\",\n tokenUsage: \"Token 用量\",\n summary: \"摘要\",\n summaryEmpty: \"暂时没有可用摘要。\",\n summaryFailed: \"摘要生成失败。\",\n highlights: \"重点\",\n pendingItems: \"待处理事项\",\n tabs: {\n label: \"任务详情视图\",\n summary: \"摘要\",\n workspace: \"工作区\",\n },\n status: {\n queued: \"排队中\",\n running: \"运行中\",\n waiting_approval: \"等待审批\",\n stopping: \"正在停止\",\n stopped: \"已停止\",\n completed: \"已完成\",\n failed: \"失败\",\n },\n state: {\n loading: {\n title: \"正在加载任务详情\",\n description: \"正在恢复最新的会话活动。\",\n },\n empty: {\n title: \"未选择任务\",\n description: \"选择任务后查看详细信息。\",\n },\n error: {\n title: \"无法加载任务详情\",\n description: \"会话恢复可用后请重试。\",\n },\n },\n actions: {\n close: \"关闭任务详情\",\n copySummary: \"复制摘要\",\n retry: \"重试\",\n retrySummary: \"重新生成摘要\",\n resume: \"继续运行\",\n continueInNewTask: \"在新任务中继续\",\n editAndRerun: \"编辑并重新运行\",\n export: \"导出\",\n },\n workspace: {\n diffs: \"代码变更\",\n files: \"文件\",\n terminals: \"终端\",\n tests: \"测试\",\n artifacts: \"产物\",\n exitCode: ({ code }) => `退出码 ${code}`,\n diffStatus: {\n added: \"新增\",\n modified: \"修改\",\n deleted: \"删除\",\n renamed: \"重命名\",\n },\n fileOperation: { upsert: \"已更新\", delete: \"已删除\" },\n },\n },\n },\n },\n} satisfies MonkeysLocale;\n","import { enUS } from './en-US';\nimport type {\n MonkeysBuiltInLocaleId,\n MonkeysLocale,\n MonkeysLocaleInput,\n MonkeysLocaleMessages,\n MonkeysLocaleMessagesOverride,\n MonkeysResolvedLocale,\n} from './types';\nimport { zhCN } from './zh-CN';\n\nconst BUILT_IN_LOCALES: Record<MonkeysBuiltInLocaleId, MonkeysLocale> = {\n 'en-US': enUS,\n 'zh-CN': zhCN,\n};\n\nfunction normalizeLocaleId(locale: unknown): string {\n if (typeof locale !== 'string' || !locale.trim()) {\n throw new TypeError('Monkeys locale must be a non-empty BCP 47 string.');\n }\n\n try {\n return Intl.getCanonicalLocales(locale)[0];\n } catch {\n throw new RangeError(\n `Monkeys locale \"${locale}\" is not a valid BCP 47 identifier.`,\n );\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && typeof value === 'object' && !Array.isArray(value);\n}\n\nfunction validateMessageOverride(\n value: unknown,\n schema: unknown,\n path: string,\n) {\n if (!isRecord(value) || !isRecord(schema)) {\n throw new TypeError(`${path} must be an object.`);\n }\n\n for (const [key, candidate] of Object.entries(value)) {\n if (candidate === undefined) continue;\n if (!(key in schema)) {\n throw new TypeError(`${path}.${key} is not a supported Monkeys message.`);\n }\n\n const expected = schema[key];\n const candidatePath = `${path}.${key}`;\n if (typeof expected === 'function') {\n if (typeof candidate !== 'function') {\n throw new TypeError(`${candidatePath} must be a function.`);\n }\n } else if (typeof expected === 'string') {\n if (typeof candidate !== 'string') {\n throw new TypeError(`${candidatePath} must be a string.`);\n }\n } else {\n validateMessageOverride(candidate, expected, candidatePath);\n }\n }\n}\n\nfunction assertMessagesOverride(\n value: unknown,\n path: string,\n): asserts value is MonkeysLocaleMessagesOverride {\n validateMessageOverride(value, enUS.messages, path);\n}\n\nfunction isBuiltInLocale(locale: string): locale is MonkeysBuiltInLocaleId {\n return locale === 'en-US' || locale === 'zh-CN';\n}\n\nfunction normalizeLocaleInput(input: MonkeysLocaleInput | undefined): {\n locale: string | undefined;\n messages: MonkeysLocaleMessagesOverride | undefined;\n hasExplicitLocale: boolean;\n} {\n if (input === undefined) {\n return {\n locale: undefined,\n messages: undefined,\n hasExplicitLocale: false,\n };\n }\n\n if (typeof input === 'string') {\n const locale = normalizeLocaleId(input);\n if (!isBuiltInLocale(locale)) {\n throw new RangeError(\n `Unsupported built-in Monkeys locale \"${locale}\". Provide a locale pack object for custom locales.`,\n );\n }\n return { locale, messages: undefined, hasExplicitLocale: true };\n }\n\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n throw new TypeError('Monkeys locale must be a locale id or locale pack object.');\n }\n\n const locale = normalizeLocaleId(input.locale);\n assertMessagesOverride(input.messages, 'Monkeys locale messages');\n\n return {\n locale,\n messages: input.messages,\n hasExplicitLocale: true,\n };\n}\n\nexport function mergeMonkeysLocaleMessages(\n base: MonkeysLocaleMessages,\n override?: MonkeysLocaleMessagesOverride,\n): MonkeysLocaleMessages {\n if (!override) return base;\n\n return {\n pagination: { ...base.pagination, ...override.pagination },\n dialog: { ...base.dialog, ...override.dialog },\n dropdownMenu: { ...base.dropdownMenu, ...override.dropdownMenu },\n loading: { ...base.loading, ...override.loading },\n layout: { ...base.layout, ...override.layout },\n steps: { ...base.steps, ...override.steps },\n numberInput: { ...base.numberInput, ...override.numberInput },\n passwordInput: { ...base.passwordInput, ...override.passwordInput },\n multiSelect: { ...base.multiSelect, ...override.multiSelect },\n table: { ...base.table, ...override.table },\n toolbar: {\n theme: { ...base.toolbar.theme, ...override.toolbar?.theme },\n language: { ...base.toolbar.language, ...override.toolbar?.language },\n },\n toast: { ...base.toast, ...override.toast },\n dataExplorer: {\n viewTree: {\n ...base.dataExplorer.viewTree,\n ...override.dataExplorer?.viewTree,\n },\n },\n workbench: {\n relationshipGraph: { zoomOut: 'Zoom out', zoomIn: 'Zoom in', zoomToFit: 'Fit graph', minimap: 'Graph overview', ...base.workbench.relationshipGraph, ...override.workbench?.relationshipGraph },\n collection: {\n ...base.workbench.collection,\n ...override.workbench?.collection,\n },\n interactiveTable: {\n ...base.workbench.interactiveTable,\n ...override.workbench?.interactiveTable,\n },\n },\n agentWorkbench: {\n ...base.agentWorkbench,\n ...override.agentWorkbench,\n modes: {\n ...base.agentWorkbench.modes,\n ...override.agentWorkbench?.modes,\n },\n composer: {\n ...base.agentWorkbench.composer,\n ...override.agentWorkbench?.composer,\n },\n quickStart: {\n ...base.agentWorkbench.quickStart,\n ...override.agentWorkbench?.quickStart,\n },\n tool: {\n ...base.agentWorkbench.tool,\n ...override.agentWorkbench?.tool,\n status: {\n ...base.agentWorkbench.tool.status,\n ...override.agentWorkbench?.tool?.status,\n },\n },\n approval: {\n ...base.agentWorkbench.approval,\n ...override.agentWorkbench?.approval,\n },\n artifact: {\n ...base.agentWorkbench.artifact,\n ...override.agentWorkbench?.artifact,\n },\n run: {\n ...base.agentWorkbench.run,\n ...override.agentWorkbench?.run,\n },\n process: {\n ...base.agentWorkbench.process,\n ...override.agentWorkbench?.process,\n },\n artifactWorkspace: {\n ...base.agentWorkbench.artifactWorkspace,\n ...override.agentWorkbench?.artifactWorkspace,\n },\n usage: {\n ...base.agentWorkbench.usage,\n ...override.agentWorkbench?.usage,\n },\n navigation: {\n ...base.agentWorkbench.navigation,\n ...override.agentWorkbench?.navigation,\n },\n details: {\n ...base.agentWorkbench.details,\n ...override.agentWorkbench?.details,\n tabs: {\n ...base.agentWorkbench.details.tabs,\n ...override.agentWorkbench?.details?.tabs,\n },\n status: {\n ...base.agentWorkbench.details.status,\n ...override.agentWorkbench?.details?.status,\n },\n state: {\n loading: {\n ...base.agentWorkbench.details.state.loading,\n ...override.agentWorkbench?.details?.state?.loading,\n },\n empty: {\n ...base.agentWorkbench.details.state.empty,\n ...override.agentWorkbench?.details?.state?.empty,\n },\n error: {\n ...base.agentWorkbench.details.state.error,\n ...override.agentWorkbench?.details?.state?.error,\n },\n },\n actions: {\n ...base.agentWorkbench.details.actions,\n ...override.agentWorkbench?.details?.actions,\n },\n workspace: {\n ...base.agentWorkbench.details.workspace,\n ...override.agentWorkbench?.details?.workspace,\n diffStatus: {\n ...base.agentWorkbench.details.workspace.diffStatus,\n ...override.agentWorkbench?.details?.workspace?.diffStatus,\n },\n fileOperation: {\n ...base.agentWorkbench.details.workspace.fileOperation,\n ...override.agentWorkbench?.details?.workspace?.fileOperation,\n },\n },\n },\n },\n };\n}\n\nexport const defaultMonkeysLocale: MonkeysResolvedLocale = {\n locale: enUS.locale,\n messages: mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n ),\n};\n\nexport function resolveMonkeysLocale(\n input?: MonkeysLocaleInput,\n override?: MonkeysLocaleMessagesOverride,\n parent?: MonkeysResolvedLocale,\n): MonkeysResolvedLocale {\n if (override !== undefined) {\n assertMessagesOverride(override, 'MonkeysProvider messages');\n }\n const normalized = normalizeLocaleInput(input);\n const locale = normalized.locale ?? parent?.locale ?? enUS.locale;\n const builtInMessages = isBuiltInLocale(locale)\n ? BUILT_IN_LOCALES[locale].messages\n : undefined;\n let messages = mergeMonkeysLocaleMessages(\n enUS.messages as MonkeysLocaleMessages,\n builtInMessages,\n );\n\n if (parent && (!normalized.hasExplicitLocale || parent.locale === locale)) {\n messages = mergeMonkeysLocaleMessages(messages, parent.messages);\n }\n\n messages = mergeMonkeysLocaleMessages(messages, normalized.messages);\n messages = mergeMonkeysLocaleMessages(messages, override);\n\n return { locale, messages };\n}\n","import {\n createContext,\n useContext,\n useMemo,\n type Context,\n} from 'react';\n\nimport type { AssetIconResolver, AssetImageResolver } from '../components/base/BaseAssetIcon';\nimport type { BaseAppearance } from '../components/base/types';\nimport type { DataExplorerAppearance } from '../components/data-explorer/types';\nimport {\n defaultMonkeysLocale,\n type MonkeysLocaleMessages,\n type MonkeysResolvedLocale,\n} from '../locale';\nimport type { CompiledThemeTokens } from '../theme-system';\n\nexport type MonkeysDirection = 'ltr' | 'rtl';\n\nexport interface MonkeysEnvironment {\n getDocument?: () => Document | null;\n getWindow?: () => Window | null;\n}\n\nexport type MonkeysPortalContainer =\n | Element\n | null\n | (() => Element | null);\n\nexport interface MonkeysPortalOptions {\n container?: MonkeysPortalContainer;\n disabled?: boolean;\n}\n\nexport type MonkeysLoadingStateVariant = 'spinner' | 'skeleton';\nexport type MonkeysEmptyStateVariant = 'default' | 'compact';\nexport type MonkeysStatusStateDensity = 'compact' | 'default' | 'comfortable';\n\nexport type MonkeysListFooterPaginationMode = 'auto' | 'pages' | 'compact';\nexport type MonkeysListFooterAlignment = 'start' | 'end' | 'space-between';\n\nexport interface MonkeysListFooterConfig {\n showTotal?: boolean;\n showPageSize?: boolean;\n pageSizeOptions?: number[];\n paginationMode?: MonkeysListFooterPaginationMode;\n alignment?: MonkeysListFooterAlignment;\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysStatusStatesConfig {\n loading?: { variant?: MonkeysLoadingStateVariant };\n empty?: { variant?: MonkeysEmptyStateVariant };\n error?: { showRetry?: boolean };\n permission?: { showRequestAccess?: boolean };\n density?: MonkeysStatusStateDensity;\n}\n\nexport interface MonkeysComponentAttributes {\n dir?: MonkeysDirection;\n 'data-monkeys-direction'?: MonkeysDirection;\n 'data-monkeys-locale'?: string;\n 'data-monkeys-theme'?: string;\n 'data-monkeys-theme-mode'?: string;\n}\n\ninterface MonkeysLocaleContextValue extends MonkeysResolvedLocale {\n provided: boolean;\n}\n\ninterface MonkeysThemeContextValue {\n provided: boolean;\n resolvedTheme?: CompiledThemeTokens;\n themeId?: string;\n baseAppearance?: BaseAppearance;\n dataExplorerAppearance?: DataExplorerAppearance;\n statusStates?: MonkeysStatusStatesConfig;\n listFooter?: MonkeysListFooterConfig;\n}\n\ninterface MonkeysDirectionContextValue {\n provided: boolean;\n direction?: MonkeysDirection;\n}\n\ninterface MonkeysEnvironmentContextValue {\n provided: boolean;\n environment: MonkeysEnvironment;\n portal: MonkeysPortalOptions;\n iconResolver?: AssetIconResolver;\n imageResolver?: AssetImageResolver;\n}\n\nconst EMPTY_ENVIRONMENT = Object.freeze({}) satisfies MonkeysEnvironment;\nconst EMPTY_PORTAL = Object.freeze({}) satisfies MonkeysPortalOptions;\n\ninterface MonkeysProviderContexts {\n locale: Context<MonkeysLocaleContextValue>;\n theme: Context<MonkeysThemeContextValue>;\n direction: Context<MonkeysDirectionContextValue>;\n environment: Context<MonkeysEnvironmentContextValue>;\n}\n\n// Every bundled public entry contains this module. Keep only the Context\n// identities in a realm-wide registry so root, provider, and component\n// subpaths interoperate in both CJS and ESM builds. Provider values remain in\n// React trees, so SSR requests are isolated. Bump the contract key only when\n// these Context value shapes become intentionally incompatible.\nconst MONKEYS_PROVIDER_CONTEXTS_KEY = Symbol.for(\n '@inf-monkeys-tech/monkeys-design/provider-context@1',\n);\n\ntype MonkeysProviderContextHost = typeof globalThis & {\n [MONKEYS_PROVIDER_CONTEXTS_KEY]?: MonkeysProviderContexts;\n};\n\nfunction createMonkeysProviderContexts(): MonkeysProviderContexts {\n return Object.freeze({\n locale: createContext<MonkeysLocaleContextValue>({\n ...defaultMonkeysLocale,\n provided: false,\n }),\n theme: createContext<MonkeysThemeContextValue>({\n provided: false,\n }),\n direction: createContext<MonkeysDirectionContextValue>({\n provided: false,\n }),\n environment: createContext<MonkeysEnvironmentContextValue>({\n provided: false,\n environment: EMPTY_ENVIRONMENT,\n portal: EMPTY_PORTAL,\n }),\n });\n}\n\nfunction getMonkeysProviderContexts(): MonkeysProviderContexts {\n const host = globalThis as MonkeysProviderContextHost;\n const existing = host[MONKEYS_PROVIDER_CONTEXTS_KEY];\n if (existing) return existing;\n\n const contexts = createMonkeysProviderContexts();\n Object.defineProperty(host, MONKEYS_PROVIDER_CONTEXTS_KEY, {\n value: contexts,\n enumerable: false,\n configurable: false,\n writable: false,\n });\n return contexts;\n}\n\nconst providerContexts = getMonkeysProviderContexts();\n\nexport const MonkeysLocaleContext = providerContexts.locale;\n\nexport const MonkeysThemeContext = providerContexts.theme;\n\nexport const MonkeysDirectionContext = providerContexts.direction;\n\nexport const MonkeysEnvironmentContext = providerContexts.environment;\n\nfunction mergeAppearance<T extends { slots?: object; styles?: object }>(\n inherited: T | undefined,\n explicit: T | undefined,\n): T | undefined {\n if (explicit === undefined) return inherited;\n if (inherited === undefined) return explicit;\n\n return {\n ...inherited,\n ...explicit,\n slots:\n inherited.slots || explicit.slots\n ? { ...inherited.slots, ...explicit.slots }\n : undefined,\n styles:\n inherited.styles || explicit.styles\n ? { ...inherited.styles, ...explicit.styles }\n : undefined,\n };\n}\n\nexport function useMonkeysLocale() {\n try {\n const context = useContext(MonkeysLocaleContext);\n return context ?? { ...defaultMonkeysLocale, provided: false };\n } catch {\n return { ...defaultMonkeysLocale, provided: false };\n }\n}\n\nexport function useMonkeysLocaleMessages(): MonkeysLocaleMessages {\n return useContext(MonkeysLocaleContext).messages;\n}\n\nexport function useMonkeysResolvedTheme() {\n return useContext(MonkeysThemeContext).resolvedTheme;\n}\n\nexport function useMonkeysBaseAppearance(\n explicit?: BaseAppearance,\n): BaseAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).baseAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysDataExplorerAppearance(\n explicit?: DataExplorerAppearance,\n): DataExplorerAppearance | undefined {\n const inherited = useContext(MonkeysThemeContext).dataExplorerAppearance;\n return useMemo(\n () => mergeAppearance(inherited, explicit),\n [explicit, inherited],\n );\n}\n\nexport function useMonkeysStatusStates(): MonkeysStatusStatesConfig {\n return useContext(MonkeysThemeContext).statusStates ?? {};\n}\n\nexport function useMonkeysListFooter(): MonkeysListFooterConfig {\n return useContext(MonkeysThemeContext).listFooter ?? {};\n}\n\nexport function useMonkeysDirection() {\n return useContext(MonkeysDirectionContext).direction;\n}\n\nexport function useMonkeysEnvironment() {\n return useContext(MonkeysEnvironmentContext).environment;\n}\n\nexport function useMonkeysPortalOptions() {\n return useContext(MonkeysEnvironmentContext).portal;\n}\n\nexport function useMonkeysComponentAttributes(): MonkeysComponentAttributes {\n const locale = useContext(MonkeysLocaleContext);\n const theme = useContext(MonkeysThemeContext);\n const direction = useContext(MonkeysDirectionContext);\n const providerActive = locale.provided || theme.provided || direction.provided;\n\n return useMemo(\n () =>\n providerActive\n ? {\n dir: direction.direction,\n 'data-monkeys-direction': direction.direction,\n 'data-monkeys-locale': locale.locale,\n 'data-monkeys-theme': theme.themeId,\n 'data-monkeys-theme-mode': theme.resolvedTheme?.colorMode,\n }\n : {},\n [\n direction.direction,\n locale.locale,\n providerActive,\n theme.resolvedTheme?.colorMode,\n theme.themeId,\n ],\n );\n}\n\nexport function useMonkeysAssetIconResolver(): AssetIconResolver | undefined {\n return useContext(MonkeysEnvironmentContext).iconResolver;\n}\nexport function useMonkeysAssetImageResolver(): AssetImageResolver | undefined {\n return useContext(MonkeysEnvironmentContext).imageResolver;\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.09803921568627451,\n 0.11372549019607843\n ],\n \"hex\": \"#17191D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12549019607843137,\n 0.13725490196078433,\n 0.1607843137254902\n ],\n \"hex\": \"#202329\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.16470588235294117,\n 0.1803921568627451,\n 0.21176470588235294\n ],\n \"hex\": \"#2A2E36\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9568627450980393,\n 0.9607843137254902,\n 0.9686274509803922\n ],\n \"hex\": \"#F4F5F7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.803921568627451,\n 0.8196078431372549,\n 0.8470588235294118\n ],\n \"hex\": \"#CDD1D8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7254901960784313,\n 0.7450980392156863,\n 0.7843137254901961\n ],\n \"hex\": \"#B9BEC8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5490196078431373,\n 0.6039215686274509,\n 0.6666666666666666\n ],\n \"hex\": \"#8C9AAA\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6549019607843137,\n 0.7098039215686275,\n 0.7843137254901961\n ],\n \"hex\": \"#A7B5C8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7254901960784313,\n 0.7803921568627451\n ],\n \"hex\": \"#ADB9C7\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6784313725490196,\n 0.7137254901960784,\n 0.7686274509803922\n ],\n \"hex\": \"#ADB6C4\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7647058823529411,\n 0.8235294117647058,\n 0.9098039215686274\n ],\n \"hex\": \"#C3D2E8\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.9411764705882353,\n 0.5019607843137255,\n 0.5019607843137255\n ],\n \"hex\": \"#F08080\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6078431372549019,\n 0.1450980392156863,\n 0.1843137254901961\n ],\n \"hex\": \"#9B252F\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5176470588235295,\n 0.8588235294117647,\n 0.6784313725490196\n ],\n \"hex\": \"#84DBAD\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.47058823529411764,\n 0.47058823529411764,\n 0.47058823529411764\n ],\n \"hex\": \"#787878\",\n \"alpha\": 0.2\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7176470588235294,\n 0.7568627450980392,\n 0.8313725490196079\n ],\n \"hex\": \"#B7C1D4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.8\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.4\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5215686274509804,\n 0.6,\n 0.7098039215686275\n ],\n \"hex\": \"#8599B5\",\n \"alpha\": 0.35\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6431372549019608,\n 0.6901960784313725,\n 0.7686274509803922\n ],\n \"hex\": \"#A4B0C4\",\n \"alpha\": 0.5\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3215686274509804,\n 0.396078431372549,\n 0.49019607843137253\n ],\n \"hex\": \"#52657D\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.21568627450980393,\n 0.2549019607843137,\n 0.3176470588235294\n ],\n \"hex\": \"#374151\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"detail\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"white\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"租户颜色原始值\"\n },\n \"black\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n },\n \"radius\": {\n \"r16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"r12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享 radius.scale 刻度 24px\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享 radius.scale 刻度 999px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享 radius.scale 刻度 12px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 8px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 4px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享 radius.scale 刻度 16px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 10px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 20px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 2px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 radius.scale 刻度 18px\"\n }\n },\n \"r999\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 999,\n \"unit\": \"px\"\n },\n \"$description\": \"公共圆角刻度\"\n }\n },\n \"typography\": {\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"共享 typography.lineHeight 刻度 1.5\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": 1.4,\n \"$description\": \"共享 typography.lineHeight 刻度 1.4\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": 1.3,\n \"$description\": \"共享 typography.lineHeight 刻度 1.3\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"共享 typography.lineHeight 刻度 1.2\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": 500,\n \"$description\": \"共享 typography.weight 刻度 500\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": 600,\n \"$description\": \"共享 typography.weight 刻度 600\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": 700,\n \"$description\": \"共享 typography.weight 刻度 700\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": 800,\n \"$description\": \"共享 typography.weight 刻度 800\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": 200,\n \"$description\": \"共享 typography.weight 刻度 200\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": 400,\n \"$description\": \"共享 typography.weight 刻度 400\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 2px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 3px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 28px\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 42px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 14px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 24px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 18px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 40px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 16px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 20px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 22px\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 140px\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 85px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 34px\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 320,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 320px\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 160,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 160px\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 280,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 280px\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 32,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 32px\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 53,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 53px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 26px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 8px\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 62,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 62px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 10px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 4px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 5px\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 196,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 196px\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 480,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 480px\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1000,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1000px\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 660,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 660px\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 48,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 48px\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 100,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 100px\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 64,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 64px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 12px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 6px\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 168,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 168px\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 96px\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 56,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 56px\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 1.5px\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 220,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 220px\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 379,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 379px\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 68,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 68px\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 108,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 108px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 70px\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 57,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 57px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 15px\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 244,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 244px\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 78,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 78px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 36px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 23px\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 117,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 117px\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 110,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 110px\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 156,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 156px\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 125,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 125px\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 121,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 121px\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 127,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 127px\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 55,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 55px\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 178px\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 497,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 497px\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 37,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 37px\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 60,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 60px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 7px\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 128,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 128px\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 290,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 290px\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 210,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 210px\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 231,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 231px\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 440,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 440px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 9px\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 190,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 190px\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 130,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 130px\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 200,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 200px\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 150,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 150px\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 350,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 350px\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 493,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 493px\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 size 刻度 17px\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 6px\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 18px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 3px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 10px\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 8px\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 22px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 7px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 14px\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 84,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 84px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 4px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 2px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 12px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 5px\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 26,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 26px\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 16px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 24px\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 30px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 1px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 15px\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 13px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 20px\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 29,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 29px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 9px\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 11px\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 115,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 115px\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 34px\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 40px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 28px\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 44,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 44px\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 23,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 23px\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 70,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 70px\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 25,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 25px\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 19,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 19px\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 47,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 space 刻度 47px\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 240ms\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 800,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 800ms\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 180,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 180ms\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 140,\n \"unit\": \"ms\"\n },\n \"$description\": \"共享 duration 刻度 140ms\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"共享 opacity 刻度 0.65\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"共享 opacity 刻度 0.5\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"共享 opacity 刻度 0.8\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": 0.4,\n \"$description\": \"共享 opacity 刻度 0.4\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 8,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 8px\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 20px\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 12px\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 1,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 1px\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 4,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 4px\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 10px\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 2,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 2px\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 36px\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 5px\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 3,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 3px\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 24,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 24px\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 80,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 80px\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 15px\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 28px\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 14px\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 6px\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 9px\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 0.5,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 0.5px\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 shadowSize 刻度 7px\"\n }\n },\n \"layer\": {\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 layer.local 刻度 2\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": 3,\n \"$description\": \"共享 layer.local 刻度 3\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": 1100,\n \"$description\": \"共享 layer.local 刻度 1100\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": 5,\n \"$description\": \"共享 layer.local 刻度 5\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"共享 layer.local 刻度 10\"\n }\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": 4,\n \"$description\": \"共享 lineClamp 刻度 4\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"共享 lineClamp 刻度 2\"\n }\n }\n }\n },\n \"semantic\": {\n \"color\": {\n \"surface\": {\n \"page\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.page}\",\n \"$description\": \"surface.page,供组件共同引用\"\n }\n },\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.surface}\",\n \"$description\": \"surface.default,供组件共同引用\"\n }\n },\n \"raised\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.elevated}\",\n \"$description\": \"surface.raised,供组件共同引用\"\n }\n },\n \"control\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.control}\",\n \"$description\": \"surface.control,供组件共同引用\"\n }\n },\n \"header\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.header}\",\n \"$description\": \"header-background\"\n }\n },\n \"detail\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.detail}\",\n \"$description\": \"sidebar-background\"\n }\n }\n },\n \"text\": {\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.foreground}\",\n \"$description\": \"text.primary,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.muted}\",\n \"$description\": \"text.secondary,供组件共同引用\"\n }\n },\n \"tertiary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.subtle}\",\n \"$description\": \"text.tertiary,供组件共同引用\"\n }\n },\n \"onAction\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"主操作背景上的文字\"\n }\n }\n },\n \"brand\": {\n \"accent\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primary}\",\n \"$description\": \"brand.accent,供组件共同引用\"\n }\n },\n \"accentHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryHover}\",\n \"$description\": \"brand.accentHover,供组件共同引用\"\n }\n },\n \"secondary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violet}\",\n \"$description\": \"brand.secondary,供组件共同引用\"\n }\n }\n },\n \"status\": {\n \"danger\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.danger}\",\n \"$description\": \"status.danger,供组件共同引用\"\n }\n },\n \"dangerSurface\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.dangerBackground}\",\n \"$description\": \"status.dangerSurface,供组件共同引用\"\n }\n },\n \"success\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.success}\",\n \"$description\": \"status.success,供组件共同引用\"\n }\n }\n },\n \"border\": {\n \"default\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.border}\",\n \"$description\": \"border.default,供组件共同引用\"\n }\n }\n },\n \"scrim\": {\n \"media\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.info}\",\n \"$description\": \"scrim.media,供组件共同引用\"\n }\n },\n \"backdrop\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.overlay}\",\n \"$description\": \"scrim.backdrop,供组件共同引用\"\n }\n },\n \"preview\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0,\n 0,\n 0\n ],\n \"hex\": \"#000000\",\n \"alpha\": 0.65\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n },\n \"primary\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.primaryAccessible}\",\n \"$description\": \"主操作色,需与 onAction 验证对比度\"\n }\n },\n \"focus\": {\n \"ring\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"键盘焦点色,可独立覆盖\"\n }\n }\n },\n \"action\": {\n \"primaryHover\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主操作悬停状态\"\n }\n }\n },\n \"effect\": {\n \"start\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"end\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n },\n \"lightEdgeStart\": {\n \"dark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.lightEdgeBlue}\",\n \"$description\": \"特效色源;Shader 使用纯色与独立强度\"\n }\n }\n },\n \"sample\": {\n \"inkLight\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.white}\",\n \"$description\": \"sample-ink-light\"\n },\n \"inkDark\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.black}\",\n \"$description\": \"sample-ink-dark\"\n }\n }\n },\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"system-ui\",\n \"sans-serif\"\n ],\n \"$description\": \"正文与控件字体\"\n },\n \"size\": {\n \"xs\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 12,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 12px\"\n },\n \"ui11\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 11,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 11px\"\n },\n \"ui17\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 17,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 17px\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 14px\"\n },\n \"ui22\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 22,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 22px\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 20,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 20px\"\n },\n \"ui10\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 10,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 10px\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 18,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 18px\"\n },\n \"ui28\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 28px\"\n },\n \"ui42\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 42px\"\n },\n \"base\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 16,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 16px\"\n },\n \"ui15\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 15,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 15px\"\n },\n \"ui21\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 21,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 21px\"\n },\n \"ui13\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 13,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 13px\"\n },\n \"4xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 36,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 36px\"\n },\n \"3xl\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 30,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 30px\"\n },\n \"ui9\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"px\"\n },\n \"$description\": \"共享 typography.size 刻度 9px\"\n }\n }\n },\n \"ui\": {\n \"control\": {\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"sm 控件高度\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"md 控件高度\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"lg 控件高度\"\n }\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"sm 控件横向留白\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"md 控件横向留白\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"lg 控件横向留白\"\n }\n }\n },\n \"radius\": {\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"control 圆角语义,可独立覆盖\"\n },\n \"container\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"container 圆角语义,可独立覆盖\"\n },\n \"content\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"content 圆角语义,可独立覆盖\"\n },\n \"pill\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"pill 圆角语义,可独立覆盖\"\n }\n },\n \"spacing\": {\n \"fieldGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"fieldGap 共享间距\"\n },\n \"controlGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"controlGap 共享间距\"\n },\n \"sectionGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"sectionGap 共享间距\"\n },\n \"surfacePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"surfacePadding 共享间距\"\n },\n \"pagePadding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"pagePadding 共享间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"sm 图标尺寸\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"md 图标尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"lg 图标尺寸\"\n },\n \"xl\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"xl 图标尺寸\"\n }\n },\n \"target\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"sm 图标点击区域\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"md 图标点击区域\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"lg 图标点击区域\"\n }\n }\n },\n \"opacity\": {\n \"disabled\": {\n \"$type\": \"number\",\n \"$value\": 0.5,\n \"$description\": \"disabled 共享状态透明度\"\n },\n \"busy\": {\n \"$type\": \"number\",\n \"$value\": 0.8,\n \"$description\": \"busy 共享状态透明度\"\n }\n },\n \"motion\": {\n \"pressDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"pressDuration 动效时长\"\n },\n \"popupDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"popupDuration 动效时长\"\n },\n \"revealDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"revealDuration 动效时长\"\n },\n \"spinnerDuration\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"spinnerDuration 动效时长\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": 0.97,\n \"$description\": \"按下与浮层进入缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": 1.14,\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 14,\n \"unit\": \"px\"\n },\n \"$description\": \"通用毛玻璃模糊半径\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.25,\n \"$description\": \"通用毛玻璃饱和度\"\n }\n }\n }\n },\n \"component\": {\n \"ui\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.page.dark}\",\n \"$description\": \"surface.page(兼容 CSS 变量)\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.default.dark}\",\n \"$description\": \"surface.default(兼容 CSS 变量)\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.raised.dark}\",\n \"$description\": \"surface.raised(兼容 CSS 变量)\"\n },\n \"control\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"surface.control(兼容 CSS 变量)\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.primary.dark}\",\n \"$description\": \"text.primary(兼容 CSS 变量)\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"text.secondary(兼容 CSS 变量)\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.tertiary.dark}\",\n \"$description\": \"text.tertiary(兼容 CSS 变量)\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accent.dark}\",\n \"$description\": \"brand.accent(兼容 CSS 变量)\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.accentHover.dark}\",\n \"$description\": \"brand.accentHover(兼容 CSS 变量)\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.brand.secondary.dark}\",\n \"$description\": \"brand.secondary(兼容 CSS 变量)\"\n },\n \"danger\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"status.danger(兼容 CSS 变量)\"\n },\n \"dangerBackground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.dangerSurface.dark}\",\n \"$description\": \"status.dangerSurface(兼容 CSS 变量)\"\n },\n \"success\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.success.dark}\",\n \"$description\": \"status.success(兼容 CSS 变量)\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.border.default.dark}\",\n \"$description\": \"border.default(兼容 CSS 变量)\"\n },\n \"info\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.media.dark}\",\n \"$description\": \"scrim.media(兼容 CSS 变量)\"\n },\n \"overlay\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.backdrop.dark}\",\n \"$description\": \"scrim.backdrop(兼容 CSS 变量)\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.focus.ring.dark}\",\n \"$description\": \"焦点环与聚焦描边\"\n },\n \"button\": {\n \"primary\": {\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.primary.dark}\",\n \"$description\": \"主按钮背景\"\n },\n \"hover\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.action.primaryHover.dark}\",\n \"$description\": \"主按钮悬停背景\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.onAction.dark}\",\n \"$description\": \"主操作文字\"\n }\n },\n \"height\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=sm] min-height\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-button[data-size=lg] min-height\"\n }\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.glass.blur}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 blur\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.glass.saturation}\",\n \"$description\": \"Inner Light Edge 按钮玻璃 saturation\"\n }\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.controlGap}\",\n \"$description\": \"button gap 独立覆盖入口\"\n },\n \"paddingInline\": {\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.sm}\",\n \"$description\": \"button paddingInline.sm 独立覆盖入口\"\n },\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.md}\",\n \"$description\": \"button paddingInline.md 独立覆盖入口\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.paddingInline.lg}\",\n \"$description\": \"button paddingInline.lg 独立覆盖入口\"\n }\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{component.ui.density.default.buttonPaddingBlock}\",\n \"$description\": \"默认按钮纵向留白;尺寸变体可覆盖\"\n }\n },\n \"transparent\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.transparent}\",\n \"$description\": \"transparent\"\n },\n \"header-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.header.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sidebar-background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.detail.dark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-light\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkLight}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"sample-ink-dark\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.sample.inkDark}\",\n \"$description\": \"兼容颜色出口\"\n },\n \"previewInfo\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.scrim.preview.dark}\",\n \"$description\": \"预览信息表面;保留当前 65% alpha\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.blueGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": \"{seed.ui.color.violetGlow}\",\n \"$description\": \"装饰色与透明度,Shader 另取纯色\"\n },\n \"font\": {\n \"$type\": \"fontFamily\",\n \"$value\": \"{semantic.font.body}\",\n \"$description\": \"字体兼容入口\"\n },\n \"radius\": {\n \"panel\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"panel 圆角出口\"\n },\n \"card\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.container}\",\n \"$description\": \"card 圆角出口\"\n },\n \"control\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"control 圆角出口\"\n },\n \"info\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.content}\",\n \"$description\": \"info 圆角出口\"\n },\n \"scale\": {\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r24}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s999\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r999}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r12}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s8}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s4}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.r16}\",\n \"$description\": \"共享圆角刻度\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s10}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s20}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s2}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.radius.scale.s18}\",\n \"$description\": \"radius.scale 共享刻度,合并重复值\"\n }\n }\n },\n \"motion\": {\n \"press\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.pressDuration}\",\n \"$description\": \"兼容按下时长\"\n },\n \"popup\": {\n \"$type\": \"duration\",\n \"$value\": \"{semantic.ui.motion.popupDuration}\",\n \"$description\": \"兼容浮层时长\"\n },\n \"ease\": {\n \"$type\": \"cubicBezier\",\n \"$value\": [\n 0.2,\n 0.8,\n 0.2,\n 1\n ],\n \"$description\": \"component.ui.motion.ease\"\n },\n \"pressedScale\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.pressedScale}\",\n \"$description\": \"按钮与浮层缩放\"\n },\n \"hoverBrightness\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.motion.hoverBrightness}\",\n \"$description\": \"按钮悬停亮度\"\n }\n },\n \"controlHeight\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.control.height.md}\",\n \"$description\": \"常规控件高度兼容入口\"\n },\n \"layout\": {\n \"stackGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"stackGap 布局默认值;实例属性优先\"\n },\n \"sidebarWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 252,\n \"unit\": \"px\"\n },\n \"$description\": \"sidebarWidth 布局默认值;实例属性优先\"\n },\n \"cardMinWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 178,\n \"unit\": \"px\"\n },\n \"$description\": \"cardMinWidth 布局默认值;实例属性优先\"\n },\n \"gridGap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"gridGap 布局默认值;实例属性优先\"\n }\n },\n \"layer\": {\n \"overlayBase\": {\n \"$type\": \"number\",\n \"$value\": 1200,\n \"$description\": \"overlayBase 弹层层级\"\n },\n \"nestingStep\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"nestingStep 弹层层级\"\n },\n \"contentOffset\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"contentOffset 弹层层级\"\n },\n \"local\": {\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s2}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s3}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s1100\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s1100}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s5}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.layer.local.s10}\",\n \"$description\": \"layer.local 共享刻度,合并重复值\"\n }\n }\n },\n \"effect\": {\n \"hostHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 240,\n \"unit\": \"px\"\n },\n \"$description\": \"独立特效默认高度\"\n },\n \"chroma\": {\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.7,\n \"$description\": \"chroma 的 intensity;数值单位遵循 Shader API\"\n },\n \"momentum\": {\n \"$type\": \"number\",\n \"$value\": 23,\n \"$description\": \"chroma 的 momentum;数值单位遵循 Shader API\"\n },\n \"radius\": {\n \"$type\": \"number\",\n \"$value\": 6,\n \"$description\": \"chroma 的 radius;数值单位遵循 Shader API\"\n }\n },\n \"aurora\": {\n \"curtainCount\": {\n \"$type\": \"number\",\n \"$value\": 2,\n \"$description\": \"aurora 的 curtainCount;数值单位遵循 Shader API\"\n },\n \"height\": {\n \"$type\": \"number\",\n \"$value\": 81,\n \"$description\": \"aurora 的 height;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 64,\n \"$description\": \"aurora 的 intensity;数值单位遵循 Shader API\"\n },\n \"rayDensity\": {\n \"$type\": \"number\",\n \"$value\": 12,\n \"$description\": \"aurora 的 rayDensity;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 10,\n \"$description\": \"aurora 的 speed;数值单位遵循 Shader API\"\n },\n \"waviness\": {\n \"$type\": \"number\",\n \"$value\": 39,\n \"$description\": \"aurora 的 waviness;数值单位遵循 Shader API\"\n },\n \"rotation\": {\n \"$type\": \"number\",\n \"$value\": 180,\n \"$description\": \"aurora 的 rotation;数值单位遵循 Shader API\"\n }\n },\n \"lightEdge\": {\n \"thickness\": {\n \"$type\": \"number\",\n \"$value\": 0.48,\n \"$description\": \"lightEdge 的 thickness;数值单位遵循 Shader API\"\n },\n \"softness\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 softness;数值单位遵循 Shader API\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.9,\n \"$description\": \"lightEdge 的 intensity;数值单位遵循 Shader API\"\n },\n \"bloom\": {\n \"$type\": \"number\",\n \"$value\": 0.2,\n \"$description\": \"lightEdge 的 bloom;数值单位遵循 Shader API\"\n },\n \"spots\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 spots;数值单位遵循 Shader API\"\n },\n \"spotSize\": {\n \"$type\": \"number\",\n \"$value\": 0.6,\n \"$description\": \"lightEdge 的 spotSize;数值单位遵循 Shader API\"\n },\n \"smoke\": {\n \"$type\": \"number\",\n \"$value\": 0.12,\n \"$description\": \"lightEdge 的 smoke;数值单位遵循 Shader API\"\n },\n \"smokeSize\": {\n \"$type\": \"number\",\n \"$value\": 0.65,\n \"$description\": \"lightEdge 的 smokeSize;数值单位遵循 Shader API\"\n },\n \"speed\": {\n \"$type\": \"number\",\n \"$value\": 0.45,\n \"$description\": \"lightEdge 的 speed;数值单位遵循 Shader API\"\n },\n \"glowBlur\": {\n \"$type\": \"number\",\n \"$value\": 4.5,\n \"$description\": \"lightEdge 的 glowBlur;数值单位遵循 Shader API\"\n },\n \"flowBlur\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"lightEdge 的 flowBlur;数值单位遵循 Shader API\"\n },\n \"shapeInset\": {\n \"$type\": \"number\",\n \"$value\": 1.5,\n \"$description\": \"lightEdge 的 shapeInset;数值单位遵循 Shader API\"\n }\n },\n \"bottomGlow\": {\n \"referenceWidth\": {\n \"$type\": \"dimension\",\n \"$value\": { \"value\": 730, \"unit\": \"px\" },\n \"$description\": \"bottomGlow 高度与模糊参数对应的基准容器宽度;实际光晕随容器宽度等比缩放\"\n },\n \"intensity\": {\n \"$type\": \"number\",\n \"$value\": 0.95,\n \"$description\": \"bottomGlow 底部光晕强度\"\n },\n \"height\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 260,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 光晕区域高度\"\n },\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"bottomGlow 柔化模糊半径\"\n },\n \"duration\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 9,\n \"unit\": \"s\"\n },\n \"$description\": \"bottomGlow 光晕漂移动画时长\"\n }\n }\n },\n \"typography\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui11}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui22}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui10}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.lg}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui42}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui15}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s21\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui21}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui13}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.4xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.3xl}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui9}\",\n \"$description\": \"typography.size 共享刻度,合并重复值\"\n }\n },\n \"lineHeight\": {\n \"s1p5\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p5}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p4}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p3\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p3}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n },\n \"s1p2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.lineHeight.s1p2}\",\n \"$description\": \"typography.lineHeight 共享刻度,合并重复值\"\n }\n },\n \"weight\": {\n \"s500\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s500}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s600\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s600}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s700\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s700}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s800}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s200}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n },\n \"s400\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.typography.weight.s400}\",\n \"$description\": \"typography.weight 共享刻度,合并重复值\"\n }\n }\n },\n \"size\": {\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s2}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s3}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s28}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s42\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s42}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s14}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s24}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s18}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s40}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s20}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s22}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s140}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s85\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s85}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s34}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s320\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s320}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s160\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s160}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s280\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s280}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s32\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s32}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s53\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s53}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s26}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s8}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s62\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s62}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s10}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s4}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s196\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s196}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s480\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s480}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1000\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1000}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s660\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s660}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s48\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s48}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s100\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s100}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s64\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s64}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s6}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s168\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s168}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s96\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s96}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s56\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s56}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s1p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s1p5}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s220\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s220}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s379\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s379}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s68\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s68}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s108\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s108}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s70}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s57\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s57}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s15}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s244\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s244}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s78\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s78}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s36}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s23}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s117\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s117}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s110\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s110}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s156\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s156}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s125\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s125}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s121\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s121}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s127\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s127}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s55\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s55}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s178\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s178}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s497\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s497}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s37\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s37}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s60\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s60}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s7}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s128\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s128}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s290\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s290}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s210\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s210}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s231\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s231}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s440\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s440}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s9}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s190\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s190}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s130\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s130}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s200\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s200}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s150\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s150}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s350\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s350}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s493\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s493}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s17}\",\n \"$description\": \"size 共享刻度,合并重复值\"\n }\n },\n \"space\": {\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s18\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s18}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s8}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s22\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s22}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s84\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s84}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s2}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s12}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s5}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s26\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s26}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s16}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s24}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s30\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s30}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s1}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s15}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s13\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s13}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s20}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s29\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s29}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s9}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s11\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s115\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s115}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s34\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s34}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s40\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s40}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s28}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s44\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s44}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s23\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s23}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s70\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s70}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s25\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s25}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s19\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s19}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n },\n \"s47\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s47}\",\n \"$description\": \"space 共享刻度,合并重复值\"\n }\n },\n \"duration\": {\n \"s240\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s240}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s800\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s800}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s180\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s180}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n },\n \"s140\": {\n \"$type\": \"duration\",\n \"$value\": \"{seed.ui.duration.s140}\",\n \"$description\": \"duration 共享刻度,合并重复值\"\n }\n },\n \"opacity\": {\n \"s0p65\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p65}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.disabled}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p8\": {\n \"$type\": \"number\",\n \"$value\": \"{semantic.ui.opacity.busy}\",\n \"$description\": \"共享状态透明度\"\n },\n \"s0p4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.opacity.s0p4}\",\n \"$description\": \"opacity 共享刻度,合并重复值\"\n }\n },\n \"shadowSize\": {\n \"s8\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s8}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s20\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s20}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s12}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s1\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s1}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s4\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s4}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s10\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s10}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s2}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s36\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s36}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s3\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s3}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s24\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s24}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s80\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s80}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s15\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s15}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s28}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s14}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s6\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s6}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s9\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s9}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s0p5\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s0p5}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n },\n \"s7\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.shadowSize.s7}\",\n \"$description\": \"shadowSize 共享刻度,合并重复值\"\n }\n },\n \"lineClamp\": {\n \"s4\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s4}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n },\n \"s2\": {\n \"$type\": \"number\",\n \"$value\": \"{seed.ui.lineClamp.s2}\",\n \"$description\": \"lineClamp 共享刻度,合并重复值\"\n }\n },\n \"material\": {\n \"control\": {\n \"background\": { \"$type\": \"color\", \"$value\": \"{component.ui.input.background}\", \"$description\": \"控件共用底材:以名称输入框为准,兼容现有 input.background 覆盖\" },\n \"border\": { \"$type\": \"color\", \"$value\": \"{component.ui.border}\", \"$description\": \"控件共用顶部柔和描边\" },\n \"highlight\": { \"$type\": \"color\", \"$value\": \"{component.ui.foreground}\", \"$description\": \"控件共用底部内高光颜色\" },\n \"highlightOffset\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s5}\", \"$description\": \"控件底部内高光向上偏移量\" },\n \"highlightBlur\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s9}\", \"$description\": \"控件底部内高光模糊半径\" },\n \"highlightSpread\": { \"$type\": \"dimension\", \"$value\": \"{component.ui.shadowSize.s8}\", \"$description\": \"控件底部内高光收缩量\" }\n }\n },\n \"input\": {\n \"tags\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 40,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-tag-input min-height\"\n },\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"input.tags.gap 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s16}\",\n \"$description\": \"input.tags 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1,\n \"$description\": \"input.tags 材质饱和度\"\n }\n }\n },\n \"paddingInline\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s14}\",\n \"$description\": \"input paddingInline 独立覆盖入口\"\n },\n \"paddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"input paddingBlock 独立覆盖入口\"\n },\n \"radius\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.radius.control}\",\n \"$description\": \"input radius 独立覆盖入口\"\n },\n \"background\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.surface.control.dark}\",\n \"$description\": \"input background 独立覆盖入口\"\n },\n \"placeholder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.text.secondary.dark}\",\n \"$description\": \"input placeholder 独立覆盖入口\"\n },\n \"invalidBorder\": {\n \"$type\": \"color\",\n \"$value\": \"{semantic.color.status.danger.dark}\",\n \"$description\": \"input invalidBorder 独立覆盖入口\"\n }\n },\n \"textarea\": {\n \"minHeight\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 85,\n \"unit\": \"px\"\n },\n \"$description\": \".monkeys-ui-textarea min-height\"\n }\n },\n \"switch\": {\n \"height\": {\n \"md\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 34,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.md 默认尺寸\"\n },\n \"sm\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 28,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.sm 默认尺寸\"\n },\n \"lg\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 42,\n \"unit\": \"px\"\n },\n \"$description\": \"switch.height.lg 默认尺寸\"\n }\n }\n },\n \"colorSlider\": {\n \"thumbWidth\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 96,\n \"unit\": \"px\"\n },\n \"$description\": \"colorSlider.thumbWidth 默认尺寸\"\n },\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"colorSlider 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.15,\n \"$description\": \"colorSlider 材质饱和度\"\n }\n }\n },\n \"card\": {\n \"dragHandle\": {\n \"size\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s24}\", \"$description\": \"卡片拖动手柄直径\" },\n \"offset\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s5}\", \"$description\": \"卡片拖动手柄距顶边与起始边的距离\" },\n \"iconSize\": { \"$type\": \"dimension\", \"$value\": \"{seed.ui.size.s16}\", \"$description\": \"卡片拖动手柄六点图标尺寸\" },\n \"background\": { \"$type\": \"color\", \"$value\": \"{semantic.color.scrim.media.dark}\", \"$description\": \"卡片拖动手柄深色背景\" },\n \"foreground\": { \"$type\": \"color\", \"$value\": \"{semantic.color.sample.inkLight}\", \"$description\": \"卡片拖动手柄图标颜色\" }\n },\n \"actions\": {\n \"glass\": {\n \"blur\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.size.s12}\",\n \"$description\": \"card.actions 材质模糊\"\n },\n \"saturation\": {\n \"$type\": \"number\",\n \"$value\": 1.2,\n \"$description\": \"card.actions 材质饱和度\"\n }\n }\n },\n \"titleFontSize\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"card titleFontSize 独立覆盖入口\"\n }\n },\n \"panel\": {\n \"padding\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.surfacePadding}\",\n \"$description\": \"panel padding 独立覆盖入口\"\n }\n },\n \"field\": {\n \"gap\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.ui.spacing.fieldGap}\",\n \"$description\": \"field gap 独立覆盖入口\"\n }\n },\n \"tooltip\": {\n \"delay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 500,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip delay\"\n },\n \"skipDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 300,\n \"unit\": \"ms\"\n },\n \"$description\": \"tooltip skipDelay\"\n },\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 7,\n \"unit\": \"px\"\n },\n \"$description\": \"tooltip 与触发器的间距\"\n }\n },\n \"scrollSurface\": {\n \"hideDelay\": {\n \"$type\": \"duration\",\n \"$value\": {\n \"value\": 700,\n \"unit\": \"ms\"\n },\n \"$description\": \"scrollSurface hideDelay\"\n }\n },\n \"menu\": {\n \"sideOffset\": {\n \"$type\": \"dimension\",\n \"$value\": {\n \"value\": 6,\n \"unit\": \"px\"\n },\n \"$description\": \"menu 与触发器的间距\"\n }\n },\n \"icon\": {\n \"size\": {\n \"s12\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.xs}\",\n \"$description\": \"内置图标 12px,可独立于字体覆盖\"\n },\n \"s14\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.sm}\",\n \"$description\": \"内置图标 14px,可独立于字体覆盖\"\n },\n \"s16\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.base}\",\n \"$description\": \"内置图标 16px,可独立于字体覆盖\"\n },\n \"s17\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui17}\",\n \"$description\": \"内置图标 17px,可独立于字体覆盖\"\n },\n \"s28\": {\n \"$type\": \"dimension\",\n \"$value\": \"{semantic.font.size.ui28}\",\n \"$description\": \"内置图标 28px,可独立于字体覆盖\"\n }\n }\n },\n \"density\": {\n \"compact\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s3}\",\n \"$description\": \"compact buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s4}\",\n \"$description\": \"compact inputPaddingBlock 密度留白\"\n }\n },\n \"default\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s6}\",\n \"$description\": \"default buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s7}\",\n \"$description\": \"default inputPaddingBlock 密度留白\"\n }\n },\n \"comfortable\": {\n \"buttonPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s10}\",\n \"$description\": \"comfortable buttonPaddingBlock 密度留白\"\n },\n \"inputPaddingBlock\": {\n \"$type\": \"dimension\",\n \"$value\": \"{seed.ui.space.s11}\",\n \"$description\": \"comfortable inputPaddingBlock 密度留白\"\n }\n }\n }\n }\n }\n}\n","{\n \"seed\": {\n \"ui\": {\n \"color\": {\n \"page\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.07450980392156863,\n 0.08235294117647059,\n 0.10196078431372549\n ],\n \"hex\": \"#13151A\"\n },\n \"$description\": \"seed.ui.color.page\"\n },\n \"surface\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.09019607843137255,\n 0.10588235294117647,\n 0.15294117647058825\n ],\n \"hex\": \"#171B27\"\n },\n \"$description\": \"seed.ui.color.surface\"\n },\n \"elevated\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13333333333333333,\n 0.15294117647058825,\n 0.2196078431372549\n ],\n \"hex\": \"#222738\"\n },\n \"$description\": \"seed.ui.color.elevated\"\n },\n \"foreground\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 1,\n 1,\n 1\n ],\n \"hex\": \"#FFFFFF\"\n },\n \"$description\": \"seed.ui.color.foreground\"\n },\n \"muted\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.7843137254901961,\n 0.7843137254901961,\n 0.7843137254901961\n ],\n \"hex\": \"#C8C8C8\"\n },\n \"$description\": \"seed.ui.color.muted\"\n },\n \"subtle\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6980392156862745,\n 0.6980392156862745,\n 0.6980392156862745\n ],\n \"hex\": \"#B2B2B2\"\n },\n \"$description\": \"seed.ui.color.subtle\"\n },\n \"primary\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.28627450980392155,\n 0.4666666666666667,\n 0.9215686274509803\n ],\n \"hex\": \"#4977EB\"\n },\n \"$description\": \"seed.ui.color.primary\"\n },\n \"lightEdgeBlue\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.25882352941176473,\n 0.5215686274509804,\n 1\n ],\n \"hex\": \"#4285FF\"\n },\n \"$description\": \"seed.ui.color.lightEdgeBlue\"\n },\n \"primaryHover\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.3803921568627451,\n 0.5450980392156862,\n 0.9568627450980393\n ],\n \"hex\": \"#618BF4\"\n },\n \"$description\": \"seed.ui.color.primaryHover\"\n },\n \"violet\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.5764705882352941,\n 0.36470588235294116,\n 1\n ],\n \"hex\": \"#935DFF\"\n },\n \"$description\": \"seed.ui.color.violet\"\n },\n \"focus\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6627450980392157,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#A9BBFF\"\n },\n \"$description\": \"seed.ui.color.focus\"\n },\n \"border\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.6862745098039216,\n 0.7333333333333333,\n 1\n ],\n \"hex\": \"#AFBBFF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.border\"\n },\n \"blueGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.13725490196078433,\n 0.3411764705882353,\n 0.9176470588235294\n ],\n \"hex\": \"#2357EA\",\n \"alpha\": 0.35\n },\n \"$description\": \"seed.ui.color.blueGlow\"\n },\n \"violetGlow\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.4627450980392157,\n 0.19215686274509805,\n 1\n ],\n \"hex\": \"#7631FF\",\n \"alpha\": 0.5\n },\n \"$description\": \"seed.ui.color.violetGlow\"\n },\n \"primaryAccessible\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.23529411764705882,\n 0.38823529411764707,\n 0.8117647058823529\n ],\n \"hex\": \"#3C63CF\"\n },\n \"$description\": \"seed.ui.color.primaryAccessible\"\n },\n \"header\": {\n \"$type\": \"color\",\n \"$value\": {\n \"colorSpace\": \"srgb\",\n \"components\": [\n 0.12941176470588237,\n 0.32941176470588235,\n 0.8509803921568627\n ],\n \"hex\": \"#2154D9\"\n },\n \"$description\": \"租户颜色原始值\"\n }\n }\n }\n },\n \"semantic\": {\n \"font\": {\n \"body\": {\n \"$type\": \"fontFamily\",\n \"$value\": [\n \"Inter\",\n \"Monkeys UI Sans\",\n \"Microsoft YaHei\",\n \"sans-serif\"\n ],\n \"$description\": \"BSD 字体栈\"\n }\n }\n }\n}\n","import type { ThemeTokens } from '../../theme-system';\n\nconst isGroup = (value: unknown): value is Record<string, unknown> => !!value && typeof value === 'object' && !Array.isArray(value);\n/** Token leaves are atomic; groups merge without mutating either document. */\nexport function mergeThemeTokens(base: ThemeTokens, override?: ThemeTokens): ThemeTokens {\n function merge(a: unknown, b: unknown): unknown {\n if (b === undefined) return a;\n if (!isGroup(a) || !isGroup(b) || '$value' in b || '$value' in a) return b;\n const result = { ...a };\n for (const key of Object.keys(b)) result[key] = merge(a[key], b[key]);\n return result;\n }\n return merge(base, override) as ThemeTokens;\n}\n\nexport function uiVariable(path: string) {\n return '--monkeys-ui-' + path.replace(/^component\\.ui\\./, '').replace(/([a-z0-9])([A-Z])/g, '$1-$2').replace(/\\./g, '-').toLowerCase();\n}\n","import type { ThemeTokens } from '../../theme-system';\nimport base from './base.json';\nimport bsd from './tenants/bsd.json';\nimport { mergeThemeTokens } from './config';\n\nexport const baseThemeTokens = base as ThemeTokens;\nexport const uiThemePresets = {\n bsd: { id: 'bsd', label: 'BSD', colorModes: ['dark'], tokens: bsd as ThemeTokens },\n 'neutral-demo': { id: 'neutral-demo', label: 'Neutral Demo(演示)', colorModes: ['dark'], tokens: {} as ThemeTokens },\n} as const;\n\n/** Every selection starts from base, never from the previous tenant's result. */\nexport function getTenantTheme(tenant = 'bsd', override?: ThemeTokens): ThemeTokens {\n if (!Object.prototype.hasOwnProperty.call(uiThemePresets, tenant)) throw new TypeError(`Unknown UI tenant: ${tenant}`);\n const preset = uiThemePresets[tenant as keyof typeof uiThemePresets];\n return mergeThemeTokens(mergeThemeTokens(baseThemeTokens, preset.tokens), override);\n}\n","import { createContext, useContext, useEffect, useMemo, useState, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport { compileThemeTokens, getThemeTokenCssValue, type ThemeTokens, type CompiledThemeTokens } from '../../theme-system';\nimport { useMonkeysDirection, useMonkeysEnvironment, useMonkeysPortalOptions, useMonkeysResolvedTheme, useMonkeysLocale } from '../../provider/context';\nimport { zhCN, type MonkeysResolvedLocale } from '../../locale';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport { getTenantTheme } from './presets';\nimport { mergeThemeTokens, uiVariable } from './config';\nimport { durationMilliseconds } from '../internal';\nexport { mergeThemeTokens } from './config';\n\nexport const defaultThemeTokens = getTenantTheme('bsd');\nconst defaultResolvedTokens = compileThemeTokens(defaultThemeTokens, { colorMode: 'dark' });\n\n/** Uses the canonical compiler: no second token resolver or value formatter. */\nexport function compileUITheme(tokens: ThemeTokens): Record<string, string> {\n return variablesFromTheme(compileThemeTokens(tokens, { colorMode: 'dark' }));\n}\nfunction variablesFromTheme(compiled: CompiledThemeTokens): Record<string, string> {\n const variables: Record<string, string> = {};\n for (const path of Object.keys(compiled.cssValues).filter(path => path.startsWith('component.ui.'))) {\n const name = uiVariable(path);\n if (variables[name] !== undefined) throw new TypeError(`Duplicate UI variable: ${name}`);\n variables[name] = getThemeTokenCssValue(compiled, path)!;\n }\n for (const name of ['foreground', 'page', 'focus', 'button-primary-background', 'font']) {\n if (!variables['--monkeys-ui-' + name]) throw new TypeError(`Missing required UI token: ${name}`);\n }\n return variables;\n}\n\ninterface UITheme { tokens: ThemeTokens; compiled: CompiledThemeTokens; variables: Record<string, string>; dir: 'ltr' | 'rtl'; tenant: string; density: 'compact' | 'default' | 'comfortable' }\nconst UIThemeContext = createContext<UITheme | null>(null);\nconst PortalDepthContext = createContext(0);\nexport function useUIDirection(explicit?: 'ltr' | 'rtl') {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysDirection();\n const environment = useMonkeysEnvironment();\n const [documentDirection, setDocumentDirection] = useState<'ltr' | 'rtl'>();\n useEffect(() => {\n if (explicit || theme?.dir || inherited) return;\n const document = environment.getDocument?.() ?? globalThis.document;\n const root = document?.documentElement;\n if (!root) return;\n const update = () => setDocumentDirection(root.dir === 'rtl' ? 'rtl' : 'ltr');\n update(); const observer = new MutationObserver(update); observer.observe(root, { attributes: true, attributeFilter: ['dir'] });\n return () => observer.disconnect();\n }, [explicit, theme?.dir, inherited, environment]);\n return explicit ?? theme?.dir ?? inherited ?? documentDirection;\n}\nexport function useUILocale(): MonkeysResolvedLocale & { provided: boolean } { const locale = useMonkeysLocale(); return locale.provided ? locale : { ...zhCN, provided: false }; }\nexport function useTooltipScope() { return useContext(UIThemeContext) !== null; }\nconst inputDocuments = new WeakMap<Document, { count: number; dispose: () => void }>();\nfunction observeInput(document: Document) {\n const existing = inputDocuments.get(document);\n if (existing) { existing.count++; return () => releaseInput(document); }\n const root = document.documentElement;\n const previous = root.getAttribute('data-monkeys-ui-input');\n const pointer = () => root.setAttribute('data-monkeys-ui-input', 'pointer');\n const keyboard = () => root.setAttribute('data-monkeys-ui-input', 'keyboard');\n document.addEventListener('pointerdown', pointer, true);\n document.addEventListener('keydown', keyboard, true);\n inputDocuments.set(document, { count: 1, dispose: () => { document.removeEventListener('pointerdown', pointer, true); document.removeEventListener('keydown', keyboard, true); if (previous === null) root.removeAttribute('data-monkeys-ui-input'); else root.setAttribute('data-monkeys-ui-input', previous); } });\n return () => releaseInput(document);\n}\nfunction releaseInput(document: Document) { const entry = inputDocuments.get(document); if (entry && --entry.count === 0) { entry.dispose(); inputDocuments.delete(document); } }\nexport interface ThemeProviderProps extends HTMLAttributes<HTMLDivElement> { tokens?: ThemeTokens; tenant?: string; density?: 'compact' | 'default' | 'comfortable' }\nexport function ThemeProvider({ tokens, tenant, density, children, className, style, dir, ...rest }: ThemeProviderProps) {\n const parent = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n const inheritedDirection = useMonkeysDirection();\n const tenantId = tenant ?? parent?.tenant ?? 'bsd';\n const effectiveDensity = density ?? parent?.density ?? 'default';\n const document = useMemo(() => {\n const foundation = tenant ? getTenantTheme(tenant) : parent?.tokens ?? mergeThemeTokens(defaultThemeTokens, inherited?.contract);\n const dimensionAlias = (path: string) => ({ $type: 'dimension' as const, $value: `{${path}}` });\n const densityOverride: ThemeTokens | undefined = density === undefined && !tenant ? undefined : { component: { ui: {\n controlHeight: dimensionAlias(`semantic.ui.control.height.${effectiveDensity === 'compact' ? 'sm' : effectiveDensity === 'comfortable' ? 'lg' : 'md'}`),\n button: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.buttonPaddingBlock`) },\n input: { paddingBlock: dimensionAlias(`component.ui.density.${effectiveDensity}.inputPaddingBlock`) },\n } } };\n return mergeThemeTokens(mergeThemeTokens(foundation, densityOverride), tokens);\n }, [tenant, density, effectiveDensity, parent?.tokens, inherited?.contract, tokens]);\n const compiled = useMemo(() => compileThemeTokens(document, { colorMode: 'dark', density: effectiveDensity }), [document, effectiveDensity]);\n const variables = useMemo(() => variablesFromTheme(compiled), [compiled]);\n const direction = (dir === 'rtl' || dir === 'ltr' ? dir : parent?.dir ?? inheritedDirection ?? 'ltr');\n const context = useMemo(() => ({ tokens: document, compiled, variables, dir: direction, tenant: tenantId, density: effectiveDensity }), [document, compiled, variables, direction, tenantId, effectiveDensity]);\n return <UIThemeContext.Provider value={context}><TooltipPrimitive.Provider delayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.delay'])} skipDelayDuration={durationMilliseconds(compiled.values['component.ui.tooltip.skipDelay'])}><div {...rest} dir={direction} data-monkeys-ui-tenant={tenantId} data-monkeys-ui-theme=\"dark\" className={['monkeys-ui-scope', className].filter(Boolean).join(' ')} style={{ ...variables, ...style } as CSSProperties}>{children}</div></TooltipPrimitive.Provider></UIThemeContext.Provider>;\n}\n\n/** JS renderers consume the same resolved document as CSS and Portal. */\nexport function useUIResolvedTokens() {\n const theme = useContext(UIThemeContext);\n const inherited = useMonkeysResolvedTheme();\n return useMemo(() => theme?.compiled ?? (inherited?.contract ? compileThemeTokens(mergeThemeTokens(defaultThemeTokens, inherited.contract), { colorMode: 'dark' }) : defaultResolvedTokens), [theme?.compiled, inherited?.contract]);\n}\n\n/** Client-only host preserves the theme and direction across body portals. */\nexport function Portal({ children }: { children: ReactNode }) {\n const theme = useContext(UIThemeContext);\n const environment = useMonkeysEnvironment();\n const options = useMonkeysPortalOptions();\n const direction = useUIDirection();\n const depth = useContext(PortalDepthContext) + 1;\n const [host, setHost] = useState<Element | null>(null);\n useEffect(() => {\n const document = environment.getDocument?.() ?? globalThis.document;\n setHost(typeof options.container === 'function' ? options.container() : options.container ?? document?.body ?? null);\n return document ? observeInput(document) : undefined;\n }, [environment, options.container]);\n const baseLayer = Number(theme?.variables['--monkeys-ui-layer-overlay-base'] ?? defaultResolvedTokens.values['component.ui.layer.overlayBase']);\n const nestingStep = Number(theme?.variables['--monkeys-ui-layer-nesting-step'] ?? defaultResolvedTokens.values['component.ui.layer.nestingStep']);\n const content = <PortalDepthContext.Provider value={depth}><div className=\"monkeys-ui-scope monkeys-ui-portal\" dir={direction} data-monkeys-ui-tenant={theme?.tenant ?? 'bsd'} data-monkeys-ui-theme=\"dark\" style={{ ...theme?.variables, '--monkeys-ui-overlay-layer': baseLayer + depth * nestingStep } as CSSProperties}>{children}</div></PortalDepthContext.Provider>;\n return options.disabled ? content : host ? createPortal(content, host) : null;\n}\n","/** Host-supplied samples use white ink, switching to black on near-white backgrounds. */\nexport function sampleInk(color?: string) {\n if (!color || !/^#([\\da-f]{3}|[\\da-f]{6})$/i.test(color)) return 'light';\n const hex = color.slice(1).length === 3 ? [...color.slice(1)].map(value => value + value).join('') : color.slice(1);\n const channels = [0, 2, 4].map(index => {\n const value = parseInt(hex.slice(index, index + 2), 16) / 255;\n return value <= 0.04045 ? value / 12.92 : ((value + 0.055) / 1.055) ** 2.4;\n });\n const luminance = channels[0] * 0.2126 + channels[1] * 0.7152 + channels[2] * 0.0722;\n // Preserve white labels on saturated swatches; reserve black for very light fills.\n return luminance >= 0.8 ? 'dark' : 'light';\n}\n","import { useEffect, useState } from 'react';\n\n/** SSR and accessibility modes use the static surface; preferences stay live. */\nexport function useShaderEnabled() {\n const [enabled, setEnabled] = useState(false);\n useEffect(() => {\n const motion = window.matchMedia('(prefers-reduced-motion: reduce)');\n const colors = window.matchMedia('(forced-colors: active)');\n const update = () => setEnabled(!motion.matches && !colors.matches);\n update();\n motion.addEventListener('change', update); colors.addEventListener('change', update);\n return () => { motion.removeEventListener('change', update); colors.removeEventListener('change', update); };\n }, []);\n return enabled;\n}\n","import { getThemeTokenCssValue, type CompiledThemeTokens } from '../../theme-system';\n\nexport function resolveEffectTokens(theme: CompiledThemeTokens) {\n const color = (name: string) => {\n const path = `semantic.color.effect.${name}.dark`;\n const value = theme.values[path] as { hex?: string } | undefined;\n return value?.hex ?? getThemeTokenCssValue(theme, path)!;\n };\n const number = (effect: string, name: string) => Number(theme.values[`component.ui.effect.${effect}.${name}`]);\n return {\n start: color('start'), end: color('end'), lightEdgeStart: color('lightEdgeStart'),\n chroma: { intensity: number('chroma', 'intensity'), momentum: number('chroma', 'momentum'), radius: number('chroma', 'radius') },\n aurora: { curtainCount: number('aurora', 'curtainCount'), height: number('aurora', 'height'), intensity: number('aurora', 'intensity'), rayDensity: number('aurora', 'rayDensity'), speed: number('aurora', 'speed'), waviness: number('aurora', 'waviness') },\n lightEdge: { thickness: number('lightEdge', 'thickness'), softness: number('lightEdge', 'softness'), intensity: number('lightEdge', 'intensity'), bloom: number('lightEdge', 'bloom'), spots: number('lightEdge', 'spots'), spotSize: number('lightEdge', 'spotSize'), smoke: number('lightEdge', 'smoke'), smokeSize: number('lightEdge', 'smokeSize'), speed: number('lightEdge', 'speed') },\n rotation: number('aurora', 'rotation'), glowBlur: number('lightEdge', 'glowBlur'), flowBlur: number('lightEdge', 'flowBlur'), shapeInset: number('lightEdge', 'shapeInset'),\n };\n}\n","import { useEffect, useId, useRef, useState, type ComponentProps } from 'react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\nexport type ButtonLightEdgeOptions = Partial<Pick<ComponentProps<ShaderModule['LightEdge']>,\n 'colorA' | 'colorB' | 'colorSpace' | 'thickness' | 'softness' | 'intensity' | 'bloom' | 'spots' | 'spotSize' | 'pulse' | 'smoke' | 'smokeSize' | 'speed' | 'seed'>>;\n\n/** Decorative only: the button owns sizing, clipping, focus, and pointer input. */\nexport function ButtonLightEdge(options: ButtonLightEdgeOptions) {\n const filterId = `button-light-edge-${useId().replace(/:/g, '')}`;\n const hostRef = useRef<HTMLSpanElement>(null);\n const [module, setModule] = useState<ShaderModule | null>(null);\n const enabled = useShaderEnabled();\n const theme = useUIResolvedTokens();\n const tokens = resolveEffectTokens(theme);\n const [ready, setReady] = useState(false);\n const [shape, setShape] = useState<Record<string, number | string> | null>(null);\n\n\n useEffect(() => {\n if (!enabled) return;\n let active = true;\n import('shaders/react').then(loaded => { if (active) setModule(loaded); }).catch(() => {});\n return () => { active = false; };\n }, [enabled]);\n\n useEffect(() => {\n const host = hostRef.current;\n const button = host?.closest('button');\n if (!button || !host) return;\n const update = () => {\n const width = host.clientWidth;\n const height = host.clientHeight;\n if (!width || !height) return;\n const radiusValue = getComputedStyle(button).borderTopLeftRadius;\n const radius = radiusValue.endsWith('%')\n ? Math.min(width, height) * parseFloat(radiusValue) / 100\n : parseFloat(radiusValue) || 0;\n const inset = tokens.shapeInset;\n setShape({ type: 'roundedRectSDF', radius: Math.max(0.01, width / (2 * height) - inset / height), height: Math.max(0.01, 0.5 - inset / height), rounding: Math.max(0, Math.min(radius - inset, height / 2 - inset)) / height });\n };\n update();\n const observer = new ResizeObserver(update);\n observer.observe(button);\n return () => observer.disconnect();\n }, [theme]);\n\n return <span ref={hostRef} className=\"monkeys-ui-button-light-edge-mask\" data-ready={ready || undefined}>\n <svg width=\"0\" height=\"0\" aria-hidden=\"true\" className=\"monkeys-ui-button-light-edge-defs\">\n <defs>\n {/* Composite a diffuse glow and a soft flow from the same canvas. */}\n <filter id={filterId} x=\"-30%\" y=\"-100%\" width=\"160%\" height=\"300%\" colorInterpolationFilters=\"sRGB\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.glowBlur} result=\"glow\" />\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation={tokens.flowBlur} result=\"flow\" />\n <feMerge><feMergeNode in=\"glow\" /><feMergeNode in=\"flow\" /></feMerge>\n </filter>\n </defs>\n </svg>\n <span className=\"monkeys-ui-button-light-edge-flow\" style={{ filter: `url(#${filterId})` }}>\n <span className=\"monkeys-ui-button-light-edge-ambient\" />\n {enabled && module && shape ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)}>\n <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...tokens.lightEdge} {...options} stops={null} shape={shape} />\n </module.Shader> : null}\n </span>\n </span>;\n}\n","import { forwardRef, type HTMLAttributes } from 'react';\nimport * as ScrollArea from '@radix-ui/react-scroll-area';\nimport { useUIDirection, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds } from './internal';\n\ninterface ScrollSurfaceProps extends HTMLAttributes<HTMLElement> {\n as?: 'section' | 'aside';\n}\n\n/** Internal bento surface: native scrolling with transient, overlaid drag handles. */\nexport const ScrollSurface = forwardRef<HTMLElement, ScrollSurfaceProps>(function ScrollSurface({ as: Element = 'section', children, className, onScroll, dir, ...props }, ref) {\n const direction = useUIDirection(dir === 'rtl' || dir === 'ltr' ? dir : undefined);\n const tokens = useUIResolvedTokens();\n const delay = durationMilliseconds(tokens.values['component.ui.scrollSurface.hideDelay']);\n return <ScrollArea.Root asChild type=\"scroll\" scrollHideDelay={delay} dir={direction}>\n <Element {...props} ref={ref} className={cx('monkeys-ui-scroll-surface', className)}>\n <ScrollArea.Viewport className=\"monkeys-ui-scroll-viewport\" tabIndex={0} role=\"group\" aria-labelledby={props['aria-labelledby']} aria-label={props['aria-labelledby'] ? undefined : props['aria-label'] ?? '滚动内容'} onScroll={onScroll}>\n {children}\n </ScrollArea.Viewport>\n <ScrollArea.Scrollbar orientation=\"vertical\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n <ScrollArea.Scrollbar orientation=\"horizontal\" className=\"monkeys-ui-scrollbar\" aria-hidden=\"true\"><ScrollArea.Thumb className=\"monkeys-ui-scroll-thumb\" /></ScrollArea.Scrollbar>\n </Element>\n </ScrollArea.Root>;\n});\n","import { createContext, useContext, type Context, type ReactNode } from 'react';\n\n// Public entry points are independently bundled; share context identity, never provider values.\nconst key = Symbol.for('@inf-monkeys-tech/monkeys-design/bento-depth@1');\nconst host = globalThis as typeof globalThis & { [key]?: Context<number> };\nconst BentoDepth = host[key] ?? (host[key] = createContext(0));\n\nexport function useBentoDepth(): number {\n return useContext(BentoDepth);\n}\n\n/** A page or overlay starts an independent surface hierarchy without adding DOM. */\nexport function BentoDepthProvider({\n children,\n depth,\n}: {\n children?: ReactNode;\n depth: number;\n}) {\n return <BentoDepth.Provider value={depth}>{children}</BentoDepth.Provider>;\n}\n\nexport function BentoScope({ children }: { children?: ReactNode }) {\n return <BentoDepthProvider depth={0}>{children}</BentoDepthProvider>;\n}\n","import type { CSSProperties } from \"react\";\nimport { useMonkeysResolvedTheme } from \"../../provider/context\";\nimport {\n BENTO_STYLE_FIELDS,\n resolveBentoTokens,\n} from \"../../theme-system/bento-tokens\";\nimport { useBentoDepth } from \"./BentoScope\";\n\nexport const bentoSurfaceClassName =\n \"rounded-[var(--monkeys-bento-radius)] border-[length:var(--monkeys-bento-border-width)] border-[color:var(--monkeys-bento-border-color)] [border-style:var(--monkeys-bento-border-style)] bg-[var(--monkeys-bento-background)] shadow-[shadow:var(--monkeys-bento-shadow)] p-[var(--monkeys-bento-padding)] gap-[var(--monkeys-bento-gap)]\";\n\n/** Supply one surface recipe without adding a layout wrapper. */\nexport function useBentoSurface() {\n const parentDepth = useBentoDepth();\n const level = parentDepth + 1;\n const recipe = resolveBentoTokens(useMonkeysResolvedTheme(), level);\n const variables = Object.fromEntries(\n BENTO_STYLE_FIELDS.map((field) => [\n `--monkeys-bento-${field.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)}`,\n recipe.values[field],\n ]),\n ) as CSSProperties;\n return { parentDepth, level, variables };\n}\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactElement, type ReactNode, type RefObject } from 'react';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport * as MenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport * as AvatarPrimitive from '@radix-ui/react-avatar';\nimport { Button } from './controls';\nimport { Portal, useUIDirection, useUILocale, useTooltipScope, useUIResolvedTokens } from './theme/theme';\nimport { cx, durationMilliseconds, useControllable } from './internal';\nimport { X } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { useBentoSurface } from '../components/runtime/useBentoSurface';\n\nexport interface TooltipProps { content: ReactNode; children: ReactElement; delayDuration?: number; side?: 'top' | 'bottom' | 'left' | 'right' }\nexport function Tooltip({ content, children, delayDuration, side = 'top' }: TooltipProps) {\n const scoped = useTooltipScope();\n const theme = useUIResolvedTokens();\n const milliseconds = (path: string) => durationMilliseconds(theme.values[path]);\n const tooltip = <TooltipPrimitive.Root delayDuration={delayDuration}><TooltipPrimitive.Trigger asChild>{children}</TooltipPrimitive.Trigger><Portal><TooltipPrimitive.Content side={side} sideOffset={Number((theme.values[\"component.ui.tooltip.sideOffset\"] as { value: number }).value)} className=\"monkeys-ui-tooltip\">{content}</TooltipPrimitive.Content></Portal></TooltipPrimitive.Root>;\n return scoped ? tooltip : <TooltipPrimitive.Provider delayDuration={delayDuration ?? milliseconds(\"component.ui.tooltip.delay\")} skipDelayDuration={milliseconds(\"component.ui.tooltip.skipDelay\")}>{tooltip}</TooltipPrimitive.Provider>;\n}\nexport interface MenuItem { id: string; label: ReactNode; disabled?: boolean; danger?: boolean; onSelect?: () => void }\nexport interface MenuProps { trigger: ReactElement; items: MenuItem[]; label?: string; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; onCloseAutoFocus?: (event: Event) => void }\nexport function Menu({ trigger, items, label, open, defaultOpen, onOpenChange, onCloseAutoFocus }: MenuProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const direction = useUIDirection();\n const theme = useUIResolvedTokens();\n return <MenuPrimitive.Root dir={direction} open={shown} onOpenChange={setShown}><MenuPrimitive.Trigger asChild>{trigger}</MenuPrimitive.Trigger><Portal><MenuPrimitive.Content aria-label={label} sideOffset={(theme.values[\"component.ui.menu.sideOffset\"] as { value: number }).value} align=\"end\" onCloseAutoFocus={onCloseAutoFocus} className=\"monkeys-ui-menu\">{items.map(item => <MenuPrimitive.Item key={item.id} disabled={item.disabled} className=\"monkeys-ui-menu-item\" data-danger={item.danger || undefined} onSelect={item.onSelect}>{item.label}</MenuPrimitive.Item>)}</MenuPrimitive.Content></Portal></MenuPrimitive.Root>;\n}\nexport interface DialogProps { frame?: 'default' | 'bento'; size?: 'md' | 'xl'; scroll?: 'dialog' | 'body'; backdrop?: 'dim' | 'blur'; surface?: 'default' | 'gradient'; open?: boolean; defaultOpen?: boolean; onOpenChange?: (open: boolean) => void; trigger?: ReactElement; title: ReactNode; description?: ReactNode; children?: ReactNode; actions?: ReactNode; initialFocusRef?: RefObject<HTMLElement>; restoreFocusRef?: RefObject<HTMLElement>; onCloseAutoFocus?: (event: Event) => void; className?: string; closeLabel?: string }\nexport function Dialog({ frame = 'default', size = 'md', scroll = 'dialog', backdrop = 'dim', surface = 'default', open, defaultOpen, onOpenChange, trigger, title, description, children, actions, initialFocusRef, restoreFocusRef, onCloseAutoFocus, className, closeLabel }: DialogProps) {\n const [shown, setShown] = useControllable(open, defaultOpen, false, onOpenChange);\n const close = useRef<HTMLButtonElement>(null);\n const locale = useUILocale();\n const bento = useBentoSurface();\n return <DialogPrimitive.Root open={shown} onOpenChange={setShown}>{trigger ? <DialogPrimitive.Trigger asChild>{trigger}</DialogPrimitive.Trigger> : null}<Portal><DialogPrimitive.Overlay data-backdrop={backdrop} className=\"monkeys-ui-dialog-overlay\" /><DialogPrimitive.Content data-frame={frame} data-size={size} data-scroll={scroll} data-surface={surface} style={frame === 'bento' ? bento.variables : undefined} className={cx('monkeys-ui-dialog', className)} {...(description ? {} : { 'aria-describedby': undefined })} onOpenAutoFocus={event => {\n event.preventDefault();\n // Radix registers its dismissable layer after mounting. Focus marks the\n // dialog ready for keyboard input, so expose it after that registration.\n const button = close.current;\n button?.ownerDocument.defaultView?.requestAnimationFrame(() => {\n if (button.isConnected && button.closest('[role=\"dialog\"]')?.getAttribute('data-state') === 'open') (initialFocusRef?.current ?? button).focus();\n });\n }} onCloseAutoFocus={event => { onCloseAutoFocus?.(event); if (!event.defaultPrevented && restoreFocusRef?.current) { event.preventDefault(); restoreFocusRef.current.focus(); } }}><DialogPrimitive.Title className=\"monkeys-ui-dialog-title\">{title}</DialogPrimitive.Title>{description ? <DialogPrimitive.Description className=\"monkeys-ui-description\">{description}</DialogPrimitive.Description> : null}<DialogPrimitive.Close asChild><Button shape=\"icon\" ref={close} aria-label={closeLabel ?? locale.messages.dialog.close} className=\"monkeys-ui-dialog-close\"><X size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button></DialogPrimitive.Close>{scroll === 'body' ? <ScrollSurface className=\"monkeys-ui-dialog-body\" aria-label={typeof title === 'string' ? title + '内容' : '对话框内容'}>{children}</ScrollSurface> : children}{actions ? <div className=\"monkeys-ui-dialog-actions\">{actions}</div> : null}</DialogPrimitive.Content></Portal></DialogPrimitive.Root>;\n}\nexport interface BadgeProps extends HTMLAttributes<HTMLSpanElement> { tone?: 'neutral' | 'primary' | 'danger' | 'success' }\nexport function Badge({ tone = 'neutral', className, ...props }: BadgeProps) { return <span {...props} data-tone={tone} className={cx('monkeys-ui-badge', className)} />; }\nexport interface NoticeProps extends HTMLAttributes<HTMLDivElement> { tone?: 'neutral' | 'danger' | 'success'; action?: ReactNode }\nexport function Notice({ tone = 'neutral', action, children, className, ...props }: NoticeProps) { return <div role={tone === 'danger' ? 'alert' : 'status'} {...props} data-tone={tone} className={cx('monkeys-ui-notice', className)}><div>{children}</div>{action}</div>; }\nexport interface EmptyStateProps extends HTMLAttributes<HTMLDivElement> { title: string; description?: ReactNode; action?: ReactNode }\nexport function EmptyState({ title, description, action, className, ...props }: EmptyStateProps) { return <div {...props} className={cx('monkeys-ui-empty', className)}><strong>{title}</strong>{description ? <p>{description}</p> : null}{action}</div>; }\nexport interface LoadingStateProps extends HTMLAttributes<HTMLDivElement> { label?: string }\nexport function LoadingState({ label, className, ...props }: LoadingStateProps) { const locale = useUILocale(); return <div role=\"status\" aria-busy=\"true\" {...props} className={cx('monkeys-ui-loading', className)}><span className=\"monkeys-ui-inline-spinner\" aria-hidden=\"true\" />{label ?? locale.messages.loading.spinner}</div>; }\nexport interface AvatarProps extends AvatarPrimitive.AvatarProps { src?: string; alt: string; fallback?: ReactNode }\nexport const Avatar = forwardRef<HTMLSpanElement, AvatarProps>(function Avatar({ src, alt, fallback, className, ...props }, ref) { return <AvatarPrimitive.Root {...props} ref={ref} className={cx('monkeys-ui-avatar', className)}><AvatarPrimitive.Image src={src} alt={alt} /><AvatarPrimitive.Fallback>{fallback ?? alt.slice(0, 1)}</AvatarPrimitive.Fallback></AvatarPrimitive.Root>; });\n","import { createContext } from 'react';\n\n/** Internal surface choice for compound controls embedded in a Bento workspace. */\nexport const PanelSurfaceContext = createContext<'catalog' | 'bento'>('catalog');\n","import { useEffect, useRef, useState, type ComponentProps, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { cx } from './internal';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\ntype ShaderModule = typeof import('shaders/react');\ntype AuroraShaderProps = ComponentProps<ShaderModule['Aurora']>;\ntype ChromaFlowShaderProps = ComponentProps<ShaderModule['ChromaFlow']>;\ntype LightEdgeShaderProps = ComponentProps<ShaderModule['LightEdge']>;\ntype EffectHostProps = Omit<HTMLAttributes<HTMLDivElement>, 'children'> & {\n onUnavailable?: (reason: string) => void;\n};\n\n/** One lifecycle and fallback surface for all public shader effects. */\nfunction ShaderEffect({ effect, className, style, onUnavailable, children, ...hostProps }: EffectHostProps & {\n effect: 'aurora' | 'chroma' | 'light-edge';\n children: (module: ShaderModule) => ReactNode;\n}) {\n const [module, setModule] = useState<ShaderModule | null>(null);\n const [ready, setReady] = useState(false);\n const enabled = useShaderEnabled();\n const unavailable = useRef(onUnavailable);\n useEffect(() => { unavailable.current = onUnavailable; }, [onUnavailable]);\n useEffect(() => {\n if (!enabled) { setReady(false); return; }\n let active = true;\n import('shaders/react').then(loaded => {\n if (active) setModule(loaded);\n }).catch(error => {\n if (active) unavailable.current?.(error instanceof Error ? error.message : String(error));\n });\n return () => { active = false; };\n }, [enabled]);\n const hostStyle: CSSProperties = { height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))', ...style, position: 'relative', overflow: 'hidden' };\n return <div {...hostProps} className={cx('monkeys-ui-shader-effect', className)} style={hostStyle}>\n {!ready ? <div aria-hidden=\"true\" className=\"monkeys-ui-shader-fallback\" data-effect={effect} /> : null}\n {enabled && module ? <module.Shader disableTelemetry style={{ width: '100%', height: '100%' }} onReady={() => setReady(true)} onUnavailable={reason => { setReady(false); unavailable.current?.(reason); }}>{children(module)}</module.Shader> : null}\n </div>;\n}\n\n/** Host identity, accessibility and events never become Shader component props. */\nfunction splitHostProps(props: Record<string, unknown>) {\n const host: Record<string, unknown> = {}; const shader: Record<string, unknown> = {};\n const native = new Set(['id', 'role', 'title', 'tabIndex', 'dir', 'lang', 'hidden', 'draggable', 'contentEditable', 'accessKey', 'translate', 'spellCheck', 'suppressHydrationWarning', 'slot']);\n for (const [key, value] of Object.entries(props)) (native.has(key) || key.startsWith('aria-') || key.startsWith('data-') || /^on[A-Z]/.test(key) ? host : shader)[key] = value;\n return { host, shader };\n}\n\nexport interface AuroraProps extends EffectHostProps, Partial<AuroraShaderProps> {}\nexport function Aurora({ className, style, onUnavailable, ...props }: AuroraProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"aurora\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.Aurora colorA={tokens.start} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface ChromaFlowProps extends EffectHostProps, Partial<ChromaFlowShaderProps> {}\nexport function ChromaFlow({ className, style, onUnavailable, ...props }: ChromaFlowProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"chroma\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\nexport interface LightEdgeProps extends EffectHostProps, Partial<LightEdgeShaderProps> {}\nexport function LightEdge({ className, style, onUnavailable, ...props }: LightEdgeProps) {\n const { host, shader } = splitHostProps(props); const tokens = resolveEffectTokens(useUIResolvedTokens());\n return <ShaderEffect {...host} effect=\"light-edge\" className={className} style={style} onUnavailable={onUnavailable}>{module => <module.LightEdge colorA={tokens.lightEdgeStart} colorB={tokens.end} {...shader} />}</ShaderEffect>;\n}\n\n/** A CSS fallback-first surface effect with a soft blue/violet glow anchored to the bottom edge. */\nexport interface BottomGlowProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Disable the very subtle drift while keeping the static glow. */\n animated?: boolean;\n}\n\nexport function BottomGlow({ className, style, animated = true, ...props }: BottomGlowProps) {\n const hostStyle: CSSProperties = {\n height: 'var(--monkeys-ui-effect-host-height,var(--monkeys-ui-default-effect-host-height))',\n ...style,\n };\n return <div {...props} className={cx('monkeys-ui-bottom-glow', className)} data-animated={animated ? 'true' : 'false'} style={hostStyle} />;\n}\n","import { createContext, useContext, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, MouseSensor, TouchSensor, KeyboardSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, useSortable, horizontalListSortingStrategy, verticalListSortingStrategy, rectSortingStrategy, sortableKeyboardCoordinates } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\n\nexport interface CollectionReorder { activeId: string; overId: string; beforeIds: string[] }\nexport interface CollectionSortingProps {\n /** Authoritative records in this window. Absence keeps the ordinary grid behavior. */\n reorderItems?: { id: string; [key: string]: unknown }[];\n reorderAxis?: 'horizontal' | 'vertical' | 'grid';\n /** Optional record field whose equal values define compatible drop targets. */\n reorderGroupField?: string;\n reorderDisabled?: boolean;\n onReorder?: (change: CollectionReorder) => void;\n}\nconst Sorting = createContext(false);\nexport function canStartCollectionDrag(event: Event, activeNode?: HTMLElement | null) {\n const target = event.target as Element | null;\n if (!target?.closest) return false;\n const item = target.closest('[data-sortable-item]');\n if (activeNode && item !== activeNode) return false;\n if (!item || target.closest('[data-sortable-region]') !== item.closest('[data-sortable-region]')) return false;\n // The stretched card entry remains an activator; its menus and other controls do not.\n return !target.closest('button:not(.monkeys-ui-card-entry):not([data-reorder-activator]),a:not(.monkeys-ui-card-entry):not([data-reorder-activator]),input,textarea,select,video,audio,[contenteditable=\"true\"],[role=\"menuitem\"],[data-no-reorder]');\n}\nclass CardMouseSensor extends MouseSensor {\n static activators = [{ eventName: 'onMouseDown' as const, handler: ({ nativeEvent }: { nativeEvent: MouseEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.button === 0 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nclass CardTouchSensor extends TouchSensor {\n static activators = [{ eventName: 'onTouchStart' as const, handler: ({ nativeEvent }: { nativeEvent: TouchEvent }, _options: unknown, context?: { active: { node: { current: HTMLElement | null } } }) => nativeEvent.touches.length === 1 && canStartCollectionDrag(nativeEvent, context?.active.node.current) }];\n}\nexport function SortableCollection({ reorderItems, reorderAxis = 'horizontal', reorderGroupField, reorderDisabled, onReorder, children }: CollectionSortingProps & { children: ReactNode }) {\n const suppressClick = useRef(false);\n const sensors = useSensors(useSensor(CardMouseSensor, { activationConstraint: { distance: 8 } }), useSensor(CardTouchSensor, { activationConstraint: { delay: 250, tolerance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const enabled = !!onReorder && !reorderDisabled && !!reorderItems && reorderItems.length > 1;\n const ids = (reorderItems ?? []).map(item => item.id);\n const groups = new Map((reorderItems ?? []).map(item => [item.id, reorderGroupField ? item[reorderGroupField] : undefined]));\n const end = ({ active, over }: DragEndEvent) => {\n if (over && active.id !== over.id && ids.includes(String(active.id)) && ids.includes(String(over.id))) onReorder?.({ activeId: String(active.id), overId: String(over.id), beforeIds: ids });\n // dnd-kit suppresses the immediate document click; retain a capture guard for card navigation.\n setTimeout(() => { suppressClick.current = false; }, 0);\n };\n if (!enabled) return <Sorting.Provider value={false}>{children}</Sorting.Provider>;\n return <DndContext sensors={sensors} collisionDetection={args => closestCenter({ ...args, droppableContainers: args.droppableContainers.filter(target => !reorderGroupField || groups.get(String(target.id)) === groups.get(String(args.active.id))) })} onDragStart={() => { suppressClick.current = true; }} onDragCancel={() => { setTimeout(() => { suppressClick.current = false; }, 0); }} onDragEnd={end} accessibility={{ screenReaderInstructions: { draggable: '按空格开始排序,使用方向键在同组内移动,再按空格保存。按 Escape 取消。' } }}>\n <Sorting.Provider value={true}><SortableContext items={ids} strategy={reorderAxis === 'grid' ? rectSortingStrategy : reorderAxis === 'horizontal' ? horizontalListSortingStrategy : verticalListSortingStrategy}>\n <div data-sortable-region={reorderAxis} style={{ display: 'contents' }} onClickCapture={event => { if (suppressClick.current) { event.preventDefault(); event.stopPropagation(); } }}>{children}</div>\n </SortableContext></Sorting.Provider>\n </DndContext>;\n}\nexport function SortableCollectionItem({ itemId, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string; children?: ReactNode }) {\n const enabled = useContext(Sorting);\n return enabled ? <ActiveItem itemId={itemId} {...props}>{children}</ActiveItem> : <div {...props}>{children}</div>;\n}\nfunction ActiveItem({ itemId, style, children, ...props }: HTMLAttributes<HTMLDivElement> & { itemId: string }) {\n const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({ id: itemId });\n return <div {...props} ref={setNodeRef} {...attributes} {...listeners} data-sortable-item={itemId} style={{ ...style, transform: CSS.Transform.toString(transform), transition, position: 'relative', zIndex: isDragging ? 20 : undefined, opacity: isDragging ? .75 : undefined, cursor: isDragging ? 'grabbing' : 'grab' }}>{children}</div>;\n}\n","import { forwardRef, useContext, useId, useState, type AnchorHTMLAttributes, type ButtonHTMLAttributes, type CSSProperties, type HTMLAttributes, type ReactNode } from 'react';\nimport { DndContext, KeyboardSensor, PointerSensor, closestCenter, useSensor, useSensors, type DragEndEvent } from '@dnd-kit/core';\nimport { SortableContext, rectSwappingStrategy, sortableKeyboardCoordinates, useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { PanelSurfaceContext } from './panel-surface';\nimport { cx } from './internal';\nimport { Check, GripVertical, ImageOff } from 'lucide-react';\nimport { ScrollSurface } from './scroll-surface';\nimport { BottomGlow } from './effects';\nimport { SurfaceEffect } from './surface-effect';\nimport { Tooltip } from './overlays';\nimport { SortableCollection, type CollectionSortingProps } from './sortable-collection';\n\nexport interface PanelProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title?: ReactNode; actions?: ReactNode; density?: 'comfortable' | 'compact'; classNames?: { header?: string; body?: string }; children?: ReactNode }\nexport const Panel = forwardRef<HTMLElement, PanelProps>(function Panel({ title, actions, density = 'comfortable', classNames, className, children, ...props }, ref) {\n const id = useId();\n const surface = useContext(PanelSurfaceContext);\n if (surface === 'bento') return <section {...props} className={cx('monkeys-ui-bento-panel', className)} data-surface=\"bento\">\n <ScrollSurface ref={ref} aria-labelledby={title ? id : props['aria-labelledby']} className=\"monkeys-ui-bento-scroll\">\n {title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}\n <div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div>\n </ScrollSurface>\n </section>;\n return <ScrollSurface {...props} ref={ref} data-density={density} aria-labelledby={title ? id : props['aria-labelledby']} className={cx('monkeys-ui-panel', className)}>{title || actions ? <div className={cx('monkeys-ui-panel-header', classNames?.header)}>{title ? <h2 id={id}>{title}</h2> : null}{actions}</div> : null}<div className={cx('monkeys-ui-panel-body', classNames?.body)}>{children}</div></ScrollSurface>;\n});\nexport interface PageShellProps extends HTMLAttributes<HTMLDivElement> { header?: ReactNode; classNames?: { main?: string } }\nexport function PageShell({ header, className, classNames, children, ...props }: PageShellProps) { return <div {...props} className={cx('monkeys-ui-page', className)}>{header}<main className={cx('monkeys-ui-page-main', classNames?.main)}>{children}</main></div>; }\nexport interface AppHeaderProps extends HTMLAttributes<HTMLElement> { logo: ReactNode; navigation?: ReactNode; account?: ReactNode }\nexport function AppHeader({ logo, navigation, account, className, ...props }: AppHeaderProps) { return <header {...props} className={cx('monkeys-ui-header', className)}><div className=\"monkeys-ui-header-logo\">{logo}</div><nav aria-label=\"主导航\" className=\"monkeys-ui-header-nav\">{navigation}</nav><div className=\"monkeys-ui-header-account\">{account}</div></header>; }\nexport interface SplitLayoutProps extends HTMLAttributes<HTMLDivElement> {\n primary?: ReactNode;\n /** Compatibility alias for primary. */\n sidebar?: ReactNode;\n side?: 'start' | 'end';\n direction?: 'horizontal' | 'vertical';\n /** Primary : remaining pane, after subtracting the gap. */\n ratio?: readonly [number, number];\n /** Width / height of the primary pane in vertical layouts; takes priority over ratio. */\n primaryAspectRatio?: number;\n minPrimarySize?: number | string;\n maxPrimarySize?: number | string;\n gap?: number | string;\n sidebarWidth?: string;\n}\nexport function SplitLayout({ primary, sidebar, side = 'start', direction = 'horizontal', ratio, primaryAspectRatio, minPrimarySize, maxPrimarySize, gap, sidebarWidth, children, className, style, ...props }: SplitLayoutProps) {\n const validRatio = ratio && ratio.every(value => Number.isFinite(value) && value > 0) && Number.isFinite(ratio[0] + ratio[1]);\n const share = validRatio ? ratio[0] / (ratio[0] + ratio[1]) : 0.5;\n const useAspectRatio = direction === 'vertical' && typeof primaryAspectRatio === 'number' && Number.isFinite(primaryAspectRatio) && primaryAspectRatio > 0;\n const dimension = (value: number | string | undefined) => typeof value === 'number' ? Math.max(0, value) + 'px' : value;\n return <div {...props} data-side={side} data-direction={direction} data-sizing={useAspectRatio ? 'aspect-ratio' : direction === 'horizontal' && !ratio && sidebarWidth === undefined ? 'responsive' : undefined} data-proportional={!!ratio || direction === 'vertical' ? true : undefined} className={cx('monkeys-ui-split', className)} style={{\n '--monkeys-ui-sidebar-width': sidebarWidth ?? 'var(--monkeys-ui-layout-sidebar-width,var(--monkeys-ui-default-layout-sidebar-width))',\n '--monkeys-ui-split-share': share,\n '--monkeys-ui-split-primary-aspect': useAspectRatio ? primaryAspectRatio : undefined,\n '--monkeys-ui-split-primary-min': dimension(minPrimarySize),\n '--monkeys-ui-split-primary-max': dimension(maxPrimarySize),\n '--monkeys-ui-split-gap': dimension(gap),\n ...style,\n } as CSSProperties}><div className=\"monkeys-ui-split-sidebar\">{primary !== undefined ? primary : sidebar}</div><div className=\"monkeys-ui-split-main\">{children}</div></div>;\n}\nexport interface CollectionToolbarProps extends HTMLAttributes<HTMLDivElement> { search?: ReactNode; filters?: ReactNode; actions?: ReactNode }\nexport function CollectionToolbar({ search, filters, actions, className, ...props }: CollectionToolbarProps) { return <div {...props} className={cx('monkeys-ui-toolbar', className)}><div className=\"monkeys-ui-toolbar-search\">{search}</div>{filters}<div className=\"monkeys-ui-toolbar-actions\">{actions}</div></div>; }\nexport interface CollectionSectionProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> { title: ReactNode; action?: ReactNode; lead?: ReactNode }\nexport function CollectionSection({ title, action, lead, children, className, ...props }: CollectionSectionProps) { const id = useId(); return <section {...props} aria-labelledby={id} data-layout={lead ? 'featured' : undefined} className={cx('monkeys-ui-collection', className)}><div className={cx('monkeys-ui-collection-heading', !!lead && !action && 'monkeys-ui-visually-hidden')}><h2 id={id} tabIndex={-1} className={lead ? 'monkeys-ui-visually-hidden' : undefined}>{title}</h2>{action}</div>{lead ? <div className=\"monkeys-ui-collection-row\"><div className=\"monkeys-ui-collection-lead\">{lead}</div><div className=\"monkeys-ui-collection-members\">{children}</div></div> : children}</section>; }\nexport interface CardGridProps extends HTMLAttributes<HTMLDivElement>, CollectionSortingProps { view?: 'grid' | 'list'; minCardWidth?: number; columnGap?: number }\nexport function CardGrid({ view = 'grid', minCardWidth, columnGap, className, style, children, reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder, ...props }: CardGridProps) { return <div {...props} role=\"list\" data-view={view} className={cx('monkeys-ui-card-grid', className)} style={{ '--monkeys-ui-card-width': minCardWidth === undefined ? 'var(--monkeys-ui-layout-card-min-width,var(--monkeys-ui-default-layout-card-min-width))' : minCardWidth + 'px', ...(columnGap !== undefined ? { '--monkeys-ui-grid-column-gap': columnGap + 'px' } : {}), ...style } as CSSProperties}><SortableCollection {...{reorderItems, reorderAxis, reorderGroupField, reorderDisabled, onReorder}}>{children}</SortableCollection></div>; }\nexport interface CardProps extends Omit<HTMLAttributes<HTMLElement>, 'title' | 'content'> {\n title: ReactNode;\n variant?: 'card' | 'row' | 'detail' | 'preview' | 'content';\n /** Let a containing panel own the surface while preserving card content and interactions.\n * Add data-frame=\"bento\" to adapt detail borders and inset to the containing Bento tokens. */\n chrome?: 'card' | 'plain';\n selected?: boolean;\n onSelectedChange?: (selected: boolean) => void;\n size?: 'sm' | 'md' | 'lg';\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n image?: string;\n imageAlt?: string;\n imagePosition?: string;\n imageStyle?: CSSProperties;\n media?: ReactNode;\n mediaOverlay?: ReactNode;\n emptyMedia?: ReactNode;\n href?: string;\n onOpen?: () => void;\n header?: ReactNode;\n /** Opt out of the detail breadcrumb chip without changing its content or actions. */\n breadcrumbSurface?: 'default' | 'transparent';\n meta?: ReactNode;\n /** Revealed on hover/focus for compact layouts; always visible in detail. Supplied by the host. */\n description?: ReactNode;\n content?: ReactNode;\n stats?: StatItem[];\n actions?: ReactNode;\n /** Independent handle; host owns drag/keyboard behavior and ordering. Not rendered in detail/preview. */\n dragHandle?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'type'> & { 'aria-label': string; id?: string };\n navigation?: ReactNode;\n navigationLabel?: string;\n footer?: ReactNode;\n classNames?: { image?: string; content?: string; actions?: string; heading?: string; media?: string };\n}\n/** Presentation only. Fields, formatting, labels and action contents belong to the host. */\nexport const Card = forwardRef<HTMLElement, CardProps>(function Card({ title, variant = 'card', chrome = 'card', breadcrumbSurface = 'default', selected, onSelectedChange, size, headingLevel, image, imageAlt = '', imagePosition, imageStyle, media, mediaOverlay, emptyMedia, href, onOpen, header, meta, description, content, children, stats = [], actions, dragHandle, navigation, navigationLabel, footer, className, classNames, style, ...props }, ref) {\n const [failedSource, setFailedSource] = useState<string>();\n const id = useId();\n const detail = variant === 'detail';\n const hasDescription = description !== undefined && description !== null && description !== false && description !== '';\n const hasEntry = variant !== 'preview' && !!(onSelectedChange || href || onOpen);\n const descriptionId = id + '-description';\n const describedBy = [props['aria-describedby'], hasDescription ? descriptionId : undefined].filter(Boolean).join(' ') || undefined;\n const Heading = `h${headingLevel ?? (detail ? 1 : 3)}` as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n const tooltipTitle = detail && typeof title === 'string' && title.length > 0;\n const headingContent = <Heading id={id} className={cx('monkeys-ui-record-heading', classNames?.heading)} tabIndex={tooltipTitle ? 0 : undefined} title={!detail && typeof title === 'string' ? title : undefined}>{title}</Heading>;\n const heading = tooltipTitle ? <Tooltip content={title}>{headingContent}</Tooltip> : headingContent;\n const mediaContent = media ?? (image && failedSource !== image ? <img className={cx(detail ? 'monkeys-ui-sidebar-image' : 'monkeys-ui-record-card-image', classNames?.image)} src={image} alt={imageAlt} style={{ objectPosition: imagePosition, ...imageStyle }} onError={() => setFailedSource(image)} loading=\"lazy\" /> : emptyMedia ?? (!detail ? <div className=\"monkeys-ui-media-placeholder\" aria-label=\"暂无图片\"><ImageOff size={32} aria-hidden=\"true\" /></div> : null));\n const statistics = stats.length ? <StatGroup items={stats} columns={detail ? (stats.length > 3 ? 2 : stats.length === 3 ? 3 : undefined) : undefined} /> : null;\n const body = content ?? children;\n const sortable = Boolean(dragHandle && variant !== 'preview' && variant !== 'detail');\n const dragId = dragHandle?.id ?? (typeof (props as Record<string, unknown>)['data-item-id'] === 'string' ? (props as Record<string, unknown>)['data-item-id'] as string : id);\n const sortableState = useSortable({ id: dragId, disabled: !sortable });\n const setCardRef = (node: HTMLElement | null) => { sortableState.setNodeRef(node); if (typeof ref === 'function') ref(node); else if (ref) ref.current = node; };\n const cardStyle = { ...style, ...(sortableState.transform ? { transform: CSS.Transform.toString(sortableState.transform), transition: sortableState.transition } : {}), ...(sortableState.isDragging ? { opacity: 0.5 } : {}) } as CSSProperties;\n const dragListeners = sortableState.listeners ?? {};\n const dragAttributes = sortableState.attributes;\n if (detail) return <ScrollSurface as=\"aside\" {...props} ref={ref} aria-labelledby={props['aria-label'] ? undefined : id} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-detail', className)}>\n <div className={cx('monkeys-ui-sidebar-media', classNames?.media)}>{mediaContent}{mediaOverlay}</div>\n <div className=\"monkeys-ui-sidebar-header\"><div className=\"monkeys-ui-breadcrumbs\" data-surface={breadcrumbSurface === 'transparent' ? 'transparent' : undefined}>{header}</div>{actions ? <div className={cx('monkeys-ui-sidebar-header-actions', classNames?.actions)}>{actions}</div> : null}</div>\n <div className={cx('monkeys-ui-sidebar-details', classNames?.content)}>\n <BottomGlow className=\"monkeys-ui-detail-bottom-glow\" style={{ height: '100%' }} aria-hidden=\"true\" />\n {heading}{meta ? <div className=\"monkeys-ui-sidebar-meta\">{meta}</div> : null}\n {description ? <div className=\"monkeys-ui-description\">{description}</div> : null}{body}{statistics}\n {navigation ? <nav aria-label={navigationLabel ?? '记录导航'} className=\"monkeys-ui-sidebar-navigation\">{navigation}</nav> : null}\n {footer ? <div className=\"monkeys-ui-sidebar-actions\">{footer}</div> : null}\n </div>\n </ScrollSurface>;\n return <article {...props} ref={setCardRef} style={cardStyle} aria-labelledby={props['aria-label'] ? undefined : id} aria-describedby={hasEntry ? props['aria-describedby'] : describedBy} tabIndex={props.tabIndex ?? (hasDescription && !hasEntry ? 0 : undefined)} data-variant={variant} data-chrome={chrome === 'plain' ? chrome : undefined} data-selected={selected || undefined} data-size={size} data-preview={variant === 'preview' || undefined} data-dragging={sortableState.isDragging || undefined} className={cx('monkeys-ui-card', 'monkeys-ui-record-card', className)}>\n {variant === 'content' && !media && !image ? null : media !== undefined ? <div className={cx('monkeys-ui-record-media', classNames?.media)}>{mediaContent}</div> : mediaContent}\n {mediaOverlay ? <div className=\"monkeys-ui-media-overlay\">{mediaOverlay}</div> : null}{header}\n {hasEntry && (onSelectedChange ? <button type=\"button\" aria-pressed={selected ?? false} onClick={() => onSelectedChange(!selected)} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : href ? <a href={href} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" /> : <button type=\"button\" onClick={onOpen} aria-labelledby={id} aria-describedby={describedBy} className=\"monkeys-ui-card-entry\" />)}\n {sortable ? <button {...dragHandle} {...dragAttributes} {...dragListeners} ref={sortableState.setActivatorNodeRef} type=\"button\" draggable={false} className={cx('monkeys-ui-card-drag-handle', dragHandle!.className)} onClick={event => { event.stopPropagation(); dragHandle!.onClick?.(event); }}><GripVertical aria-hidden=\"true\" /></button> : null}\n {selected ? <span className=\"monkeys-ui-card-selection-mark\" aria-hidden=\"true\"><Check size={14} /></span> : null}\n <div className={cx('monkeys-ui-card-info', classNames?.content)}>\n {heading}{meta}{body}{statistics}\n {hasDescription ? <div className=\"monkeys-ui-card-description\"><div className=\"monkeys-ui-card-description-clip\"><div id={descriptionId} className=\"monkeys-ui-description\">{description}</div></div></div> : null}\n </div>\n {actions ? <div className={cx('monkeys-ui-card-actions', classNames?.actions)}>{actions}</div> : null}{footer}\n </article>;\n});\nexport interface CardDragProviderProps { children: ReactNode; items: string[]; onMove?: (activeId: string, overId: string) => void }\n/** Shared dnd-kit boundary; hosts own persistence and list-specific reorder rules. */\nexport function CardDragProvider({ children, items, onMove }: CardDragProviderProps) {\n const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: 5 } }), useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates }));\n const handleEnd = ({ active, over }: DragEndEvent) => { if (over && active.id !== over.id) onMove?.(String(active.id), String(over.id)); };\n return <DndContext sensors={sensors} collisionDetection={closestCenter} onDragEnd={handleEnd}><SortableContext items={items} strategy={rectSwappingStrategy}>{children}</SortableContext></DndContext>;\n}\nexport interface StatItem { label: string; value: ReactNode }\nexport interface StatGroupProps extends HTMLAttributes<HTMLDListElement> {\n items: StatItem[];\n /** Opt into metric tiles with a fixed column count; rows grow with the items. */\n columns?: 2 | 3;\n}\nexport function StatGroup({ items, columns, className, ...props }: StatGroupProps) { return <dl {...props} data-columns={columns} className={cx('monkeys-ui-stats', className)}>{items.map(item => <div key={item.label}><dt>{item.label}</dt><dd>{item.value}</dd></div>)}</dl>; }\n","import { forwardRef, useId, useRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { Button } from './controls';\nimport { Notice } from './overlays';\nimport { cx } from './internal';\nimport { Plus, X, ImageOff } from 'lucide-react';\n\nexport interface ImageFileRejection { file: File; reason: 'type' | 'size' | 'duplicate' }\nexport interface ImageValidationOptions { accept?: readonly string[]; maxFileBytes?: number; existingFiles?: ReadonlyArray<Pick<File, 'name' | 'size' | 'lastModified'>> }\nconst defaultAccept = ['image/jpeg', 'image/png'];\nconst identity = (file: Pick<File, 'name' | 'size' | 'lastModified'>) => `${file.name}:${file.size}:${file.lastModified}`;\n/** Shared by selection, drop and paste. Decoding is a separate host operation. */\nexport function validateImageFiles(files: readonly File[], { accept = defaultAccept, maxFileBytes = Infinity, existingFiles = [] }: ImageValidationOptions = {}) {\n const seen = new Set(existingFiles.map(identity));\n const accepted: File[] = [];\n const rejected: ImageFileRejection[] = [];\n for (const file of files) {\n const key = identity(file);\n const reason = !accept.some(type => type.endsWith('/*') ? file.type.startsWith(type.slice(0, -1)) : type === file.type) ? 'type' : file.size > maxFileBytes ? 'size' : seen.has(key) ? 'duplicate' : undefined;\n if (reason) rejected.push({ file, reason });\n else { seen.add(key); accepted.push(file); }\n }\n return { accepted, rejected };\n}\nexport interface UploadedImage { id: string; name: string; src?: string; status: 'pending' | 'ready' | 'error'; progress?: number; error?: string }\nexport interface UploadedImageItemProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onSelect'> { item: UploadedImage; onRemove?: () => void; onRetry?: () => void; onSelectCover?: () => void; cover?: boolean; disabled?: boolean }\nexport const UploadedImageItem = forwardRef<HTMLDivElement, UploadedImageItemProps>(function UploadedImageItem({ item, onRemove, onRetry, onSelectCover, cover, disabled, className, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-uploaded-image', className)} data-state={item.status} aria-label={item.name} aria-busy={item.status === 'pending'}>{item.src ? <img src={item.src} alt={item.name} /> : <ImageOff size={24} aria-hidden=\"true\" />}<div className=\"monkeys-ui-uploaded-info\"><span title={item.name}>{item.name}</span>{item.status === 'pending' ? <><span role=\"status\">上传中</span>{item.progress != null ? <progress aria-label={item.name + ' 上传进度'} value={item.progress} max={100} /> : null}</> : null}{item.status === 'error' ? <><span role=\"alert\">{item.error ?? '上传失败'}</span>{onRetry ? <Button size=\"sm\" disabled={disabled} onClick={onRetry}>重试</Button> : null}</> : null}{onSelectCover && item.status !== 'error' ? <Button size=\"sm\" disabled={disabled} aria-pressed={cover} onClick={onSelectCover}>{cover ? '封面' : '设为封面'}</Button> : null}</div>{onRemove ? <Button shape=\"icon\" aria-label={'移除 ' + item.name} className=\"monkeys-ui-upload-remove\" size=\"sm\" disabled={disabled} onClick={onRemove}><X size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" aria-hidden=\"true\" /></Button> : null}</div>;\n});\nexport interface ImageUploadFieldProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>, ImageValidationOptions { label?: string; description?: ReactNode; items: UploadedImage[]; disabled?: boolean; onFilesSelected: (files: File[]) => void; onRejected?: (rejections: ImageFileRejection[]) => void; onRemove?: (id: string) => void; onRetry?: (id: string) => void; onSelectCover?: (id: string) => void; coverId?: string; error?: string }\nexport const ImageUploadField = forwardRef<HTMLDivElement, ImageUploadFieldProps>(function ImageUploadField({ id: explicitId, label = '上传图片', description, items, disabled, accept = defaultAccept, maxFileBytes, existingFiles, onFilesSelected, onRejected, onRemove, onRetry, onSelectCover, coverId, error, className, onDrop, onPaste, onDragOver, ...props }, ref) {\n const generated = useId(); const id = explicitId ?? generated;\n const input = useRef<HTMLInputElement>(null);\n function receive(files: File[]) { if (disabled) return; const result = validateImageFiles(files, { accept, maxFileBytes, existingFiles }); if (result.rejected.length) onRejected?.(result.rejected); if (result.accepted.length) onFilesSelected(result.accepted); }\n return <div {...props} ref={ref} id={id} role=\"group\" aria-label={label} aria-describedby={description ? id + '-description' : undefined} className={cx('monkeys-ui-upload', className)} onDragOver={event => { onDragOver?.(event); if (!disabled && event.dataTransfer.types.includes('Files')) event.preventDefault(); }} onDrop={event => { onDrop?.(event); if (!event.defaultPrevented && event.dataTransfer.files.length) { event.preventDefault(); receive(Array.from(event.dataTransfer.files)); } }} onPaste={event => { onPaste?.(event); if (!event.defaultPrevented && event.clipboardData.files.length) { event.preventDefault(); receive(Array.from(event.clipboardData.files)); } }}><div className=\"monkeys-ui-label\">{label}</div><div className=\"monkeys-ui-upload-items\"><Button className=\"monkeys-ui-upload-target\" variant=\"outline\" disabled={disabled} onClick={() => input.current?.click()} aria-describedby={description ? id + '-description' : undefined}><Plus size=\"var(--monkeys-ui-icon-size-s28,var(--monkeys-ui-default-icon-size-s28))\" aria-hidden=\"true\" /><span>选择、拖入或粘贴图片</span></Button><input className=\"monkeys-ui-visually-hidden\" ref={input} type=\"file\" tabIndex={-1} accept={accept.join(',')} multiple disabled={disabled} aria-label={label} onChange={event => { receive(Array.from(event.currentTarget.files ?? [])); event.currentTarget.value = ''; }} />{items.map(item => <UploadedImageItem key={item.id} item={item} disabled={disabled} cover={item.id === coverId} onRemove={onRemove ? () => onRemove(item.id) : undefined} onRetry={onRetry ? () => onRetry(item.id) : undefined} onSelectCover={onSelectCover ? () => onSelectCover(item.id) : undefined} />)}</div>{description ? <div className=\"monkeys-ui-description\" id={id + '-description'}>{description}</div> : null}{error ? <Notice tone=\"danger\">{error}</Notice> : null}</div>;\n});\n","import { useEffect, useRef, useState } from 'react';\nimport type * as Shaders from 'shaders/react';\nimport { useShaderEnabled } from './motion';\nimport { useUIResolvedTokens } from './theme/theme';\nimport { resolveEffectTokens } from './theme/effect-tokens';\n\nexport function SurfaceEffect({ variant }: { variant: 'banner' | 'chroma' }) {\n const enabled = useShaderEnabled();\n const tokens = resolveEffectTokens(useUIResolvedTokens());\n const [shaders, setShaders] = useState<typeof Shaders | null>(null);\n const [rendererState, setRendererState] = useState<'loading' | 'ready' | 'unavailable'>('loading');\n const surface = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!enabled || shaders) return;\n let active = true;\n import('shaders/react').then(module => {\n if (active) setShaders(module);\n }).catch(() => { if (active) setRendererState('unavailable'); });\n return () => { active = false; };\n }, [enabled, shaders]);\n\n useEffect(() => {\n const element = surface.current;\n const parent = element?.parentElement;\n if (!enabled || variant !== 'chroma' || rendererState === 'ready' || !element || !parent) return;\n // The decorative layer does not intercept input; listen on its content surface.\n const move = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n const bounds = element.getBoundingClientRect();\n element.style.setProperty('--monkeys-ui-surface-x', `${event.clientX - bounds.left}px`);\n element.style.setProperty('--monkeys-ui-surface-y', `${event.clientY - bounds.top}px`);\n element.dataset.pointerActive = '';\n };\n const leave = () => { delete element.dataset.pointerActive; };\n parent.addEventListener('pointerenter', move);\n parent.addEventListener('pointermove', move);\n parent.addEventListener('pointerleave', leave);\n return () => {\n parent.removeEventListener('pointerenter', move);\n parent.removeEventListener('pointermove', move);\n parent.removeEventListener('pointerleave', leave);\n leave();\n element.style.removeProperty('--monkeys-ui-surface-x');\n element.style.removeProperty('--monkeys-ui-surface-y');\n };\n }, [enabled, variant, rendererState]);\n\n return <div ref={surface} className={variant === 'banner' ? 'monkeys-ui-brand-banner-effect' : 'monkeys-ui-card-surface-effect'} data-monkeys-ui-brand-effect={variant === 'banner' ? '' : undefined} data-monkeys-ui-card-effect={variant === 'chroma' ? '' : undefined} data-renderer-state={enabled ? rendererState : 'disabled'} aria-hidden=\"true\">\n {enabled && variant === 'chroma' && rendererState !== 'ready' ? <div className=\"monkeys-ui-shader-fallback\" data-effect=\"surface-chroma\" /> : null}\n {enabled && shaders ? <shaders.Shader disableTelemetry onReady={() => setRendererState('ready')} onUnavailable={() => setRendererState('unavailable')} style={{ width: '100%', height: '100%' }}>\n <shaders.ChromaFlow baseColor={tokens.start} upColor={tokens.end} {...tokens.chroma} />\n {variant === 'banner' ? <shaders.Aurora colorA={tokens.start} colorB={tokens.end} colorSpace=\"hsl\" {...tokens.aurora} transform={{ rotation: tokens.rotation }} /> : null}\n </shaders.Shader> : null}\n </div>;\n}\n","import { forwardRef, useEffect, useRef, useState, type CSSProperties, type FormHTMLAttributes, type HTMLAttributes, type MouseEventHandler, type ReactNode } from 'react';\nimport { MoreHorizontal, Bookmark, LocateFixed } from 'lucide-react';\nimport { Button, SectionTitle, ToggleButton } from './controls';\nimport { Panel, type PanelProps } from './collection';\nimport { Badge, Menu, Notice, type MenuItem } from './overlays';\nimport { cx } from './internal';\nimport { SurfaceEffect } from './surface-effect';\nimport { SortableCollectionItem } from './sortable-collection';\n\nexport interface StackProps extends HTMLAttributes<HTMLDivElement> {\n direction?: 'vertical' | 'horizontal';\n gap?: number;\n wrap?: boolean;\n}\n/** Layout only: children keep their own semantics and keyboard order. */\nexport const Stack = forwardRef<HTMLDivElement, StackProps>(function Stack({ direction = 'vertical', gap, wrap, className, style, ...props }, ref) {\n return <div {...props} ref={ref} className={cx('monkeys-ui-stack', className)} data-direction={direction} style={{ flexDirection: direction === 'vertical' ? 'column' : 'row', gap: gap ?? 'var(--monkeys-ui-layout-stack-gap,var(--monkeys-ui-default-layout-stack-gap))', flexWrap: wrap ? 'wrap' : undefined, ...style }} />;\n});\n\nexport interface BreadcrumbItem {\n id: string;\n label: ReactNode;\n href?: string;\n onClick?: MouseEventHandler<HTMLButtonElement>;\n}\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLElement> { items: BreadcrumbItem[] }\nexport function Breadcrumbs({ items, className, 'aria-label': label = '面包屑', ...props }: BreadcrumbsProps) {\n return <nav {...props} aria-label={label} className={cx('monkeys-ui-breadcrumb-trail', className)}><ol>{items.map((item, index) => {\n const current = index === items.length - 1;\n return <li key={item.id}>{index > 0 ? <span aria-hidden=\"true\" className=\"monkeys-ui-breadcrumb-separator\">></span> : null}{current ? <span aria-current=\"page\">{item.label}</span> : item.href ? <a href={item.href}>{item.label}</a> : item.onClick ? <button type=\"button\" onClick={item.onClick}>{item.label}</button> : <span>{item.label}</span>}</li>;\n })}</ol></nav>;\n}\n\nexport interface BrandMarkProps extends HTMLAttributes<HTMLSpanElement> {\n label: string;\n image?: string;\n variant?: 'inline' | 'overlay';\n}\nexport function BrandMark({ label, image, variant = 'inline', className, ...props }: BrandMarkProps) {\n const [failedSource, setFailedSource] = useState<string>();\n return <span {...props} role=\"img\" aria-label={label} className={cx('monkeys-ui-brand-mark', className)} data-variant={variant}>{image && image !== failedSource ? <img src={image} alt=\"\" onError={() => setFailedSource(image)} /> : label}</span>;\n}\n\nexport interface BrandBannerProps extends PanelProps { description?: ReactNode; search?: ReactNode; caption?: ReactNode }\nexport function BrandBanner({ description, search, caption, children, className, ...props }: BrandBannerProps) {\n return <Panel {...props} className={cx('monkeys-ui-brand-banner', className)}><SurfaceEffect variant=\"banner\" />{description ? <p className=\"monkeys-ui-description\">{description}</p> : null}{search}{caption ? <div className=\"monkeys-ui-brand-caption\">{caption}</div> : null}{children}</Panel>;\n}\n\nexport interface CardGridItemProps extends HTMLAttributes<HTMLDivElement> { sortableId?: string }\nexport const CardGridItem = forwardRef<HTMLDivElement, CardGridItemProps>(function CardGridItem({ className, sortableId, ...props }, ref) {\n if (sortableId) return <SortableCollectionItem {...props} itemId={sortableId} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n return <div {...props} ref={ref} role=\"listitem\" className={cx('monkeys-ui-card-grid-item', className)} />;\n});\n\nexport interface CardActionsProps {\n label: string;\n monitored?: boolean;\n monitorPending?: boolean;\n onMonitoredChange?: (value: boolean) => void;\n favorite?: boolean;\n favoritePending?: boolean;\n onFavoriteChange?: (value: boolean) => void;\n menuItems?: MenuItem[];\n menuLabel?: string;\n onMenuCloseAutoFocus?: (event: Event) => void;\n}\n/** Host owns requests, optimistic rollback and the focus target after deletion. */\nexport function CardActions({ label, monitored, monitorPending, onMonitoredChange, favorite, favoritePending, onFavoriteChange, menuItems = [], menuLabel, onMenuCloseAutoFocus }: CardActionsProps) {\n return <>{onMonitoredChange ? <ToggleButton shape=\"icon\" aria-label={'监测 ' + label} data-monitored={monitored || undefined} size=\"sm\" variant=\"ghost\" checked={monitored ?? false} loading={monitorPending} onCheckedChange={onMonitoredChange}><LocateFixed size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={monitored ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{onFavoriteChange ? <ToggleButton shape=\"icon\" aria-label={'收藏 ' + label} size=\"sm\" variant=\"ghost\" checked={favorite ?? false} loading={favoritePending} onCheckedChange={onFavoriteChange}><Bookmark size=\"var(--monkeys-ui-icon-size-s14,var(--monkeys-ui-default-icon-size-s14))\" fill={favorite ? 'currentColor' : 'none'} aria-hidden=\"true\" /></ToggleButton> : null}{menuItems.length ? <Menu label={menuLabel ?? label + ' 操作'} trigger={<Button shape=\"icon\" aria-label={'更多 ' + label}><MoreHorizontal size=\"var(--monkeys-ui-icon-size-s16,var(--monkeys-ui-default-icon-size-s16))\" aria-hidden=\"true\" /></Button>} onCloseAutoFocus={onMenuCloseAutoFocus} items={menuItems} /> : null}</>;\n}\n\nexport interface FormPanelProps extends Omit<FormHTMLAttributes<HTMLFormElement>, 'title'> {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n}\n/** Ref and native form props are forwarded to the form, not the outer Panel. */\nexport const FormPanel = forwardRef<HTMLFormElement, FormPanelProps>(function FormPanel({ title, description, actions, children, className, ...props }, ref) {\n return <Panel className=\"monkeys-ui-form-panel\"><form {...props} ref={ref} className={className}><div className=\"monkeys-ui-form-header\"><div><SectionTitle as=\"h1\" indicator={false}>{title}</SectionTitle>{description ? <p>{description}</p> : null}</div>{actions ? <div className=\"monkeys-ui-form-actions\">{actions}</div> : null}</div><div className=\"monkeys-ui-form-body\">{children}</div></form></Panel>;\n});\n\nexport interface FormGridProps extends HTMLAttributes<HTMLDivElement> { variant?: 'standard' | 'compact' }\nexport function FormGrid({ variant = 'standard', className, children, ...props }: FormGridProps) {\n return <div {...props} className={cx('monkeys-ui-form-grid', className)} data-variant={variant}><div className=\"monkeys-ui-form-grid-content\">{children}</div></div>;\n}\n\nexport interface PreviewPanelProps extends PanelProps {\n state?: 'empty' | 'pending' | 'ready' | 'error';\n pendingLabel?: string;\n emptyMessage?: ReactNode;\n errorMessage?: ReactNode;\n}\n/** Scale the existing card as a whole; never maintain preview-only typography. */\nfunction PreviewMagnifier({ children }: { children: ReactNode }) {\n const frame = useRef<HTMLDivElement>(null);\n const stage = useRef<HTMLDivElement>(null);\n const [size, setSize] = useState({ scale: 1, height: 0 });\n useEffect(() => {\n const host = frame.current!;\n const content = stage.current!;\n const measure = () => {\n const width = content.offsetWidth;\n if (!width || !host.clientWidth) return;\n const scale = host.clientWidth / width;\n const height = content.offsetHeight * scale;\n setSize(previous => previous.scale === scale && previous.height === height ? previous : { scale, height });\n };\n const observer = new ResizeObserver(measure);\n observer.observe(host);\n observer.observe(content);\n measure();\n return () => observer.disconnect();\n }, []);\n return <div ref={frame} className=\"monkeys-ui-preview-magnifier\" style={{ height: size.height, visibility: size.height ? undefined : 'hidden' }}><div ref={stage} className=\"monkeys-ui-preview-magnifier-stage\" style={{ transform: `scale(${size.scale})` }}>{children}</div></div>;\n}\n\n/** Generic preview surface. Supply children and all labels. */\nexport function PreviewPanel({ children, state = 'ready', pendingLabel, emptyMessage, errorMessage, className, ...props }: PreviewPanelProps) {\n return <Panel {...props} className={cx('monkeys-ui-preview-panel', className)}><div className=\"monkeys-ui-preview-panel-card\"><PreviewMagnifier>{children}</PreviewMagnifier>{state === 'pending' && pendingLabel ? <Badge>{pendingLabel}</Badge> : null}{state === 'empty' && emptyMessage ? <span className=\"monkeys-ui-description\">{emptyMessage}</span> : null}{state === 'error' && errorMessage ? <Notice tone=\"danger\">{errorMessage}</Notice> : null}</div></Panel>;\n}\n\nexport interface NoticeRegionProps extends HTMLAttributes<HTMLElement> { position?: 'bottom-end' | 'top-end' }\nexport function NoticeRegion({ position = 'bottom-end', className, 'aria-label': label = '通知', ...props }: NoticeRegionProps) {\n return <aside {...props} aria-label={label} className={cx('monkeys-ui-notice-region', className)} data-position={position} />;\n}\n","import { compileThemeTokens, type ThemeTokens } from '../../theme-system';\nimport { baseThemeTokens, getTenantTheme } from './presets';\nimport { uiVariable } from './config';\n\nexport interface UITokenEntry {\n path: string; category: string; component: string; type: string; description: string; reference?: string;\n value: unknown; baseValue: unknown; cssValue: string; variable?: string; overridden: boolean; status: 'canonical' | 'compatibility' | 'unused-in-library';\n}\n\n/** Catalog values are always derived from the actual merged documents. */\nexport function getUITokenCatalog(tenant = 'bsd', override?: ThemeTokens): UITokenEntry[] {\n const document = getTenantTheme(tenant, override);\n const compiled = compileThemeTokens(document, { colorMode: 'dark' });\n const foundation = compileThemeTokens(baseThemeTokens, { colorMode: 'dark' });\n const rows: UITokenEntry[] = [];\n function walk(group: unknown, path: string[] = []) {\n if (!group || typeof group !== 'object' || Array.isArray(group)) return;\n const node = group as Record<string, unknown>;\n if ('$value' in node) {\n const name = path.join('.');\n const reference = typeof node.$value === 'string' && /^\\{.+\\}$/.test(node.$value) ? node.$value.slice(1, -1) : undefined;\n const component = path[0] === 'component' && !['size', 'space', 'duration', 'opacity', 'typography', 'shadowSize', 'layer', 'motion', 'radius'].includes(path[2]) && path.length > 3 ? path[2] : 'Shared';\n const unused = ['seed.ui.color.focus', 'seed.ui.color.previewInfo', 'seed.ui.color.primaryHover', 'semantic.color.brand.accentHover.dark', 'component.ui.primaryHover'].includes(name);\n rows.push({ path: name, category: path[0] + ' / ' + path.slice(1, 3).join('.'), component, type: String(node.$type), description: String(node.$description ?? name), reference,\n value: compiled.values[name], baseValue: foundation.values[name], cssValue: compiled.cssValues[name] ?? '', variable: name.startsWith('component.ui.') ? uiVariable(name) : undefined,\n overridden: JSON.stringify(compiled.values[name]) !== JSON.stringify(foundation.values[name]), status: unused ? 'unused-in-library' : /^component\\.ui\\.(page|surface|elevated|foreground|muted|subtle|primary|primaryHover|violet|focus|danger|dangerBackground|success|control|border|info|previewInfo|blueGlow|violetGlow|transparent|overlay|font|controlHeight|header-background|sidebar-background|sample-ink-light|sample-ink-dark)$/.test(name) ? 'compatibility' : 'canonical' });\n return;\n }\n for (const [key, value] of Object.entries(node)) if (!key.startsWith('$')) walk(value, [...path, key]);\n }\n walk(document);\n return rows.sort((a, b) => a.path.localeCompare(b.path));\n}\n"]}
|