x-ui-design 0.2.0 → 0.2.2
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/esm/types/components/Button/Button.client.d.ts +1 -1
- package/dist/esm/types/components/DatePicker/DatePicker.d.ts +2 -2
- package/dist/esm/types/components/DatePicker/RangePicker/RangePicker.d.ts +1 -1
- package/dist/esm/types/components/Empty/Empty.d.ts +1 -1
- package/dist/esm/types/components/Form/Item/Item.d.ts +1 -1
- package/dist/esm/types/components/Icons/Icons.d.ts +13 -13
- package/dist/esm/types/components/Radio/Button/Button.d.ts +1 -1
- package/dist/esm/types/components/Radio/Group/Group.d.ts +1 -1
- package/dist/esm/types/components/Radio/Radio.d.ts +2 -2
- package/dist/esm/types/components/Upload/Upload.d.ts +1 -1
- package/dist/index.d.ts +25 -24
- package/dist/index.esm.js +1045 -888
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1044 -887
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/tsconfig.json +1 -1
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/hooks/useForm.ts","../lib/utils/index.ts","../lib/helpers/index.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/components/Icons/Icons.tsx","../lib/components/DatePicker/RangePicker/RangePicker.tsx","../lib/components/DatePicker/DatePicker.tsx","../lib/components/DatePicker/TimePicker/TimePicker.tsx","../lib/components/Input/Textarea/Textarea.tsx","../lib/components/Input/Input.tsx","../lib/components/Radio/Button/Button.tsx","../lib/components/Radio/Group/Group.tsx","../lib/components/Radio/Radio.tsx","../lib/components/Select/Option/Option.tsx","../lib/components/Select/Tag/Tag.tsx","../lib/components/Empty/Empty.tsx","../lib/components/Select/Select.tsx","../lib/components/Skeleton/Button/Button.tsx","../lib/components/Skeleton/Avatar/Avatar.tsx","../lib/components/Skeleton/Image/Image.tsx","../lib/components/Skeleton/Input/Input.tsx","../lib/components/Skeleton/Skeleton.tsx","../lib/components/Button/Button.tsx","../lib/components/Button/Button.client.tsx","../lib/components/Upload/Upload.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from '../types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from '../types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType, SyntheticBaseEvent } from '../../../types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from '../../../types/form';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsFormItem } from '../../../utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","const ClearIcon = () => (\n <svg\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 1L13 13M13 1L1 13\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n);\n\nconst ArrowIcon = ({ isOpen }: { isOpen: boolean }) => (\n <svg\n width=\"18\"\n height=\"18\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7 10L12 15L17 10\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n transform={isOpen ? 'rotate(180, 12, 12)' : ''}\n />\n </svg>\n);\n\nconst LoadingIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"loading\"\n width=\"12\"\n height=\"12\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\"></path>\n </svg>\n);\n\nconst CheckIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"check\"\n width=\"12\"\n height=\"12\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\"></path>\n </svg>\n);\n\nconst SearchIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"search\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z\"></path>\n </svg>\n);\n\nconst CalendarIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"calendar\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z\"></path>\n </svg>\n);\n\nconst SuccessIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"check-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z\"></path>\n </svg>\n);\n\nconst ErrorIcon = () => (\n <svg\n className=\"error-svg-icon\"\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"close-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm127.98 274.82h-.04l-.08.06L512 466.75 384.14 338.88c-.04-.05-.06-.06-.08-.06a.12.12 0 00-.07 0c-.03 0-.05.01-.09.05l-45.02 45.02a.2.2 0 00-.05.09.12.12 0 000 .07v.02a.27.27 0 00.06.06L466.75 512 338.88 639.86c-.05.04-.06.06-.06.08a.12.12 0 000 .07c0 .03.01.05.05.09l45.02 45.02a.2.2 0 00.09.05.12.12 0 00.07 0c.02 0 .04-.01.08-.05L512 557.25l127.86 127.87c.04.04.06.05.08.05a.12.12 0 00.07 0c.03 0 .05-.01.09-.05l45.02-45.02a.2.2 0 00.05-.09.12.12 0 000-.07v-.02a.27.27 0 00-.05-.06L557.25 512l127.87-127.86c.04-.04.05-.06.05-.08a.12.12 0 000-.07c0-.03-.01-.05-.05-.09l-45.02-45.02a.2.2 0 00-.09-.05.12.12 0 00-.07 0z\"></path>\n </svg>\n);\n\nconst DateDistanceIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"swap-right\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"></path>\n </svg>\n);\n\nconst TimeIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"clock-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"></path>\n <path d=\"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"></path>\n </svg>\n);\n\nconst StampleIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"paper-clip\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z\"></path>\n </svg>\n);\n\nconst TrashIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"delete\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"></path>\n </svg>\n);\n\nconst SpinerIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"loading\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\"></path>\n </svg>\n);\n\nexport {\n ClearIcon,\n ArrowIcon,\n LoadingIcon,\n CheckIcon,\n SearchIcon,\n CalendarIcon,\n SuccessIcon,\n ErrorIcon,\n DateDistanceIcon,\n TimeIcon,\n StampleIcon,\n TrashIcon,\n SpinerIcon\n};\n","'use client';\n\nimport { useEffect, useRef, useState } from 'react';\nimport { clsx } from '../../../helpers';\nimport { TRangePickerProps } from '../../../types/datepicker';\nimport { prefixClsRangePicker } from '../../../utils';\nimport './style.css';\nimport { MONTH_LENGTH, NEXT_DAYS_COUNT_AS_CURRENT_MUNTH, NUMBER_SIX } from '../DatePicker';\nimport { CalendarIcon, ClearIcon, DateDistanceIcon } from '../../Icons/Icons';\n\nconst RangePicker = ({\n prefixCls = prefixClsRangePicker,\n value,\n onChange,\n placeholder = ['Start date', 'End date'],\n disabled,\n error,\n format = 'YYYY-MM-DD',\n prefix,\n allowClear = true,\n inputReadOnly = false,\n size = 'large',\n picker = 'date',\n locale,\n disabledDate,\n style = {},\n className = '',\n separator,\n defaultValue,\n bordered = true\n}: TRangePickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [isOpen, setIsOpen] = useState(false);\n const [selectedDates, setSelectedDates] = useState<\n [Date | null, Date | null]\n >([\n value?.[0] || defaultValue?.[0] || null,\n value?.[1] || defaultValue?.[1] || null\n ]);\n\n const [hoveredDate, setHoveredDate] = useState<Date | null>(null);\n const [currentMonth, setCurrentMonth] = useState(new Date().getMonth());\n const [currentYear, setCurrentYear] = useState(new Date().getFullYear());\n const [viewMode, setViewMode] = useState<'day' | 'month' | 'year'>(\n picker === 'month' ? 'month' : picker === 'year' ? 'year' : 'day'\n );\n\n const localeMonths =\n locale?.shortMonths ||\n Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale?.locale || 'default', {\n month: 'short'\n })\n );\n\n const localeWeekdays = locale?.shortWeekDays || [\n 'Su',\n 'Mo',\n 'Tu',\n 'We',\n 'Th',\n 'Fr',\n 'Sa'\n ];\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => document.removeEventListener('mousedown', handleClickOutside);\n }, []);\n\n const handleSelect = (date: Date) => {\n if (!selectedDates[0] || (selectedDates[0] && selectedDates[1])) {\n setSelectedDates([date, null]);\n } else {\n const start = selectedDates[0];\n const end = date < start ? start : date;\n const begin = date < start ? date : start;\n setSelectedDates([begin, end]);\n onChange?.(\n [begin.toUTCString(), end.toUTCString()],\n [formatDate(begin), formatDate(end)]\n );\n setIsOpen(false);\n }\n };\n\n const isMonthDisabled = (month: number) => {\n const date = new Date(currentYear, month + 1, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const isYearDisabled = (year: number) => {\n const date = new Date(year + 1, currentMonth, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const formatDate = (date: Date) => {\n if (typeof format === 'function') {\n return format(date);\n }\n\n return `${format}`\n .replace(/YYYY/, date.getFullYear().toString())\n .replace(/MM/, (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace(/DD/, date.getDate().toString().padStart(2, '0'));\n };\n\n const isInRange = (date: Date) => {\n const [start, end] = selectedDates;\n\n return start && end && date > start && date < end;\n };\n\n const renderMonthYearSelector = (monthOffset = 0, all?: boolean) => {\n const baseYear = currentYear;\n const baseMonth = currentMonth + monthOffset;\n\n return (\n <div className={`${prefixCls}-header`}>\n {all || !monthOffset ? (\n <div className={`${prefixCls}-nav-buttons`}>\n <button onClick={() => setCurrentYear((y: number) => y - 1)}>\n «\n </button>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === 0\n ? (setCurrentYear((y: number) => y - 1), MONTH_LENGTH)\n : m - 1\n )\n }\n >\n ‹\n </button>\n </div>\n ) : (\n <span />\n )}\n <div className={`${prefixCls}-dropdown-selects`}>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('year')}\n >\n {baseYear}\n </button>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('month')}\n >\n {localeMonths[baseMonth]}\n </button>\n </div>\n {all || monthOffset ? (\n <div className={`${prefixCls}-nav-buttons`}>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === MONTH_LENGTH\n ? (setCurrentYear((y: number) => y + 1), 0)\n : m + 1\n )\n }\n >\n ›\n </button>\n <button onClick={() => setCurrentYear((y: number) => y + 1)}>\n »\n </button>\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n };\n\n const renderCalendar = (monthOffset = 0, all?: boolean) => {\n const baseDate = new Date(currentYear, currentMonth + monthOffset, 1);\n const year = baseDate.getFullYear();\n const month = baseDate.getMonth();\n const firstDay = new Date(year, month, 1).getDay();\n const daysInMonth = new Date(year, month + 1, 0).getDate();\n\n const prevMonthDays = (() => {\n const prevMonth = new Date(year, month, 0);\n const totalDays = prevMonth.getDate();\n\n return Array.from(\n { length: firstDay },\n (_, i) => new Date(year, month - 1, totalDays - firstDay + i + 1)\n );\n })();\n\n const currentMonthDays = Array.from(\n { length: daysInMonth },\n (_, i) => new Date(year, month, i + 1)\n );\n\n const totalDisplayed = prevMonthDays.length + currentMonthDays.length;\n const remaining = NEXT_DAYS_COUNT_AS_CURRENT_MUNTH - totalDisplayed;\n const nextMonthDays = Array.from(\n { length: remaining },\n (_, i) => new Date(year, month + 1, i + 1)\n );\n\n const days = [...prevMonthDays, ...currentMonthDays, ...nextMonthDays];\n\n return (\n <div className={`${prefixCls}-calendar ${viewMode}`}>\n <div className={`${prefixCls}-calendar-header`}>\n {renderMonthYearSelector(monthOffset, all)}\n </div>\n {viewMode === 'day' && (\n <div className={`${prefixCls}-days-grid day`}>\n {localeWeekdays.map((day, i) => (\n <div key={i} className={`${prefixCls}-weekday`}>\n {day}\n </div>\n ))}\n {days.map((day, i) => {\n const isSelected =\n day &&\n selectedDates.some(\n d => d?.toDateString() === day.toDateString()\n );\n\n const inRange = day && isInRange(day);\n const isSameMonth = day?.getMonth() === month;\n\n return (\n <button\n key={i}\n disabled={disabledDate?.(day, {\n from: undefined,\n to: undefined\n })}\n onClick={() => day && handleSelect(day)}\n onMouseEnter={() => day && setHoveredDate(day)}\n className={clsx([\n `${prefixCls}-day`,\n {\n [`${prefixCls}-selected`]: isSelected,\n [`${prefixCls}-in-range`]: inRange,\n [`${prefixCls}-hover-end`]:\n hoveredDate &&\n selectedDates[0] &&\n !selectedDates[1] &&\n hoveredDate > selectedDates[0] &&\n hoveredDate.toDateString() === day?.toDateString(),\n [`${prefixCls}-other-month`]: !isSameMonth\n }\n ])}\n >\n {day?.getDate()}\n </button>\n );\n })}\n </div>\n )}\n\n {viewMode === 'month' && (\n <div className={`${prefixCls}-grid`}>\n {localeMonths.map((m, i) => (\n <button\n key={i}\n className={`${prefixCls}-month`}\n onClick={() => {\n setCurrentMonth(i);\n setViewMode('day');\n }}\n disabled={isMonthDisabled(i)}\n >\n {m}\n </button>\n ))}\n </div>\n )}\n\n {viewMode === 'year' && (\n <div className={`${prefixCls}-grid`}>\n {Array.from({ length: 12 }, (_, i) => {\n const year = currentYear - NUMBER_SIX + i;\n\n return (\n <button\n key={year}\n className={`${prefixCls}-year`}\n disabled={isYearDisabled(year)}\n onClick={() => {\n setCurrentYear(year);\n setViewMode('month');\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n )}\n </div>\n );\n };\n\n const handleClear = () => {\n setSelectedDates([null, null]);\n onChange?.(null, ['', '']);\n };\n\n return (\n <div\n ref={containerRef}\n style={style}\n className={clsx([\n `${prefixCls}-range-container`,\n {\n [`${prefixCls}-${size}`]: size,\n [className]: className\n }\n ])}\n >\n <div className={`${prefixCls}-range-input-wrapper`}>\n <button\n type=\"button\"\n className={clsx([\n `${prefixCls}-input`,\n {\n noBordered: !bordered,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n disabled={disabled}\n onClick={() => setIsOpen(!isOpen)}\n >\n {prefix}\n <input\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date`}\n placeholder={placeholder[0]}\n value={selectedDates[0] ? formatDate(selectedDates[0]) : ''}\n />\n <span className={`${prefixCls}-range-separator`}>\n {separator || <DateDistanceIcon />}\n </span>\n <input\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date`}\n placeholder={placeholder[1]}\n value={selectedDates[1] ? formatDate(selectedDates[1]) : ''}\n />\n <span className={`${prefixCls}-icon`}>\n {allowClear && (selectedDates[0] || selectedDates[1]) ? (\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n <ClearIcon />\n </span>\n ) : (\n <CalendarIcon />\n )}\n </span>\n </button>\n </div>\n\n {isOpen && (\n <div className={`${prefixCls}-dropdown-wrapper show`}>\n <div className={`${prefixCls}-dropdown-range`}>\n {renderCalendar(0, viewMode !== 'day')}\n {viewMode === 'day' && renderCalendar(1, viewMode !== 'day')}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default RangePicker;\n","'use client';\n\nimport { CSSProperties, useEffect, useRef, useState } from 'react';\nimport { clsx } from '../../helpers';\nimport { TDatePickerProps } from '../../types/datepicker';\nimport { prefixClsDatePicker } from '../../utils';\nimport RangePicker from './RangePicker/RangePicker';\nimport './style.css';\nimport { CalendarIcon, ClearIcon, ErrorIcon } from '../Icons/Icons';\n\nconst INPUT_SIZE = 12;\nconst CONTENT_PADDING = 6;\nexport const NUMBER_SIX = 6;\nexport const MONTH_LENGTH = 11;\nexport const NEXT_DAYS_COUNT_AS_CURRENT_MUNTH = 35;\n\nconst DatePickerComponent = ({\n value,\n onChange,\n onCalendarChange,\n disabled,\n error,\n placeholder = 'Select date',\n prefixCls = prefixClsDatePicker,\n noStyle,\n feedbackIcons,\n locale,\n placement = 'bottomLeft',\n defaultValue,\n size = 'large',\n format = 'YYYY-MM-DD',\n getPopupContainer,\n showToday = true,\n allowClear = false,\n disabledDate,\n suffixIcon,\n picker = 'date',\n prefix,\n defaultOpen = false,\n inputReadOnly = false,\n bordered = true\n}: TDatePickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const initialDate = value || defaultValue;\n const popupContainerRef = useRef<HTMLElement | null>(null);\n const [placementPossition, setPlacementPossition] = useState<CSSProperties>(\n {}\n );\n\n const DateNow = new Date();\n\n const [selectedDate, setSelectedDate] = useState<Date | undefined>(\n initialDate\n );\n\n const [selectedDatePlaceholder, setSelectedDatePlaceholder] = useState<\n string | undefined\n >(initialDate ? formatDate(initialDate) : undefined);\n\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const [currentYear, setCurrentYear] = useState(\n initialDate ? new Date(initialDate).getFullYear() : DateNow.getFullYear()\n );\n\n const [currentMonth, setCurrentMonth] = useState(\n initialDate ? new Date(initialDate).getMonth() : DateNow.getMonth()\n );\n\n const [viewMode, setViewMode] = useState<'day' | 'month' | 'year'>(\n picker === 'month' ? 'month' : picker === 'year' ? 'year' : 'day'\n );\n\n const localeMonths =\n locale?.shortMonths ||\n Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale?.locale || 'default', {\n month: 'short'\n })\n );\n\n const localeWeekdays = locale?.shortWeekDays || [\n 'Su',\n 'Mo',\n 'Tu',\n 'We',\n 'Th',\n 'Fr',\n 'Sa'\n ];\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false);\n }\n };\n\n const controller = new AbortController();\n\n if (isOpen) {\n calculateDatePickerPopupPossition();\n\n document.addEventListener('scroll', calculateDatePickerPopupPossition, {\n signal: controller.signal\n });\n\n document.addEventListener('mousedown', handleClickOutside, {\n signal: controller.signal\n });\n }\n\n return () => {\n controller.abort();\n };\n }, [isOpen]);\n\n useEffect(() => {\n if (getPopupContainer && containerRef.current) {\n popupContainerRef.current = getPopupContainer(containerRef.current);\n }\n }, [getPopupContainer]);\n\n const daysInMonth = (year: number, month: number) =>\n new Date(year, month + 1, 0).getDate();\n\n const firstDayOfMonth = (year: number, month: number) =>\n new Date(year, month, 1).getDay();\n\n function formatDate(date: Date): string {\n if (typeof format === 'function') {\n return format(date);\n }\n\n if (typeof format === 'string') {\n date = new Date(date);\n\n return format\n .replace(/YYYY/, date.getFullYear().toString())\n .replace(/MM/, (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace(/DD/, date.getDate().toString().padStart(2, '0'));\n }\n\n return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;\n }\n\n const handleSelect = (day: number, month: number, year: number) => {\n if (disabled) {\n return;\n }\n\n const date = new Date(year, month, day);\n\n if (disabledDate?.(date, { from: undefined, to: undefined })) {\n return;\n }\n\n setCurrentMonth(month);\n setCurrentYear(year);\n setSelectedDate(date);\n\n const formatted = formatDate(date);\n setSelectedDatePlaceholder(formatted);\n onChange?.(date.toUTCString(), formatted);\n onCalendarChange?.(date.toUTCString(), formatted, { range: undefined });\n setIsOpen(false);\n };\n\n const clearSelection = () => {\n setSelectedDate(undefined);\n setSelectedDatePlaceholder(undefined);\n onChange?.(null, '');\n };\n\n const isMonthDisabled = (month: number) => {\n const date = new Date(currentYear, month + 1, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const isYearDisabled = (year: number) => {\n const date = new Date(year + 1, currentMonth, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n function calculateDatePickerPopupPossition() {\n const datePickerContainerHeight =\n (containerRef.current?.clientHeight || 0) + CONTENT_PADDING;\n\n const datePickerPossitionFromTop =\n containerRef.current?.getBoundingClientRect().top || 0;\n\n const datePickerPossitionFromBottom =\n window.innerHeight -\n (containerRef.current?.getBoundingClientRect().bottom || 0);\n\n const datePickerContainerPopupHeight =\n containerRef.current?.querySelector(`.${prefixCls}-dropdown`)\n ?.clientHeight || 0;\n\n setPlacementPossition(\n ['topLeft', 'topRight'].includes(placement)\n ? {\n position: 'absolute',\n top:\n datePickerPossitionFromTop - datePickerContainerPopupHeight < 0\n ? datePickerContainerHeight\n : -datePickerContainerPopupHeight\n }\n : {\n position: 'absolute',\n top:\n datePickerPossitionFromBottom > datePickerContainerPopupHeight\n ? 0\n : -(datePickerContainerPopupHeight + datePickerContainerHeight)\n }\n );\n }\n\n const prevMonth = currentMonth === 0 ? MONTH_LENGTH : currentMonth - 1;\n const nextMonth = currentMonth === MONTH_LENGTH ? 0 : currentMonth + 1;\n const prevMonthYear = currentMonth === 0 ? currentYear - 1 : currentYear;\n const nextMonthYear =\n currentMonth === MONTH_LENGTH ? currentYear + 1 : currentYear;\n\n const totalDays = daysInMonth(currentYear, currentMonth);\n const firstDay = firstDayOfMonth(currentYear, currentMonth);\n const prevMonthDays = daysInMonth(prevMonthYear, prevMonth);\n const nextDaysCount =\n NEXT_DAYS_COUNT_AS_CURRENT_MUNTH - (firstDay + totalDays);\n\n const days = [\n ...Array.from({ length: firstDay }, (_, i) => ({\n day: prevMonthDays - firstDay + i + 1,\n current: false,\n month: prevMonth,\n year: prevMonthYear\n })),\n ...Array.from({ length: totalDays }, (_, i) => ({\n day: i + 1,\n current: true,\n month: currentMonth,\n year: currentYear\n })),\n ...Array.from({ length: nextDaysCount }, (_, i) => ({\n day: i + 1,\n current: false,\n month: nextMonth,\n year: nextMonthYear\n }))\n ];\n\n return (\n <div\n ref={containerRef}\n className={clsx([\n `${prefixCls}-container`,\n {\n noStyle,\n [`${prefixCls}-${size}`]: size\n }\n ])}\n >\n <div className={`${prefixCls}-input-wrapper`}>\n <button\n type=\"button\"\n className={clsx([\n `${prefixCls}-input`,\n {\n noBordered: !bordered,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-${size}`]: size,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n disabled={disabled}\n onClick={() => setIsOpen(!isOpen)}\n >\n {prefix || null}\n <input\n size={INPUT_SIZE}\n disabled={disabled}\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date globalEllipsis`}\n placeholder={placeholder}\n style={{ opacity: isOpen ? '0.6' : 1 }}\n defaultValue={selectedDatePlaceholder}\n />\n <span className={`${prefixCls}-icon`}>\n {allowClear && selectedDate ? (\n <span className={`${prefixCls}-clear`} onClick={clearSelection}>\n {typeof allowClear === 'object' && allowClear.clearIcon ? (\n allowClear.clearIcon\n ) : (\n <ClearIcon />\n )}\n </span>\n ) : (\n suffixIcon || <CalendarIcon />\n )}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n </button>\n </div>\n\n <div\n style={popupContainerRef.current ? { position: 'absolute' } : {}}\n className={clsx([\n placement,\n `${prefixCls}-dropdown-wrapper`,\n {\n show: isOpen\n }\n ])}\n >\n {isOpen && (\n <div className={`${prefixCls}-dropdown`} style={placementPossition}>\n <div className={`${prefixCls}-header`}>\n <div className={`${prefixCls}-nav-buttons`}>\n <button onClick={() => setCurrentYear((y: number) => y - 1)}>\n «\n </button>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === 0\n ? (setCurrentYear((y: number) => y - 1), MONTH_LENGTH)\n : m - 1\n )\n }\n >\n ‹\n </button>\n </div>\n <div className={`${prefixCls}-dropdown-selects`}>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('year')}\n >\n {currentYear}\n </button>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('month')}\n >\n {localeMonths[currentMonth]}\n </button>\n </div>\n <div className={`${prefixCls}-nav-buttons`}>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === MONTH_LENGTH\n ? (setCurrentYear((y: number) => y + 1), 0)\n : m + 1\n )\n }\n >\n ›\n </button>\n <button onClick={() => setCurrentYear((y: number) => y + 1)}>\n »\n </button>\n </div>\n </div>\n\n {viewMode === 'day' && (\n <div className={`${prefixCls}-grid day`}>\n {localeWeekdays.map(day => (\n <div key={day} className={`${prefixCls}-day-header`}>\n {day}\n </div>\n ))}\n {days.map(({ day, current, month, year }, idx) => {\n const isSelected =\n selectedDate &&\n selectedDate.getDate() === day &&\n selectedDate.getMonth() === month &&\n selectedDate.getFullYear() === year;\n\n return (\n <button\n key={`${year}-${month}-${day}-${idx}`}\n className={clsx([\n `${prefixCls}-day`,\n {\n [`${prefixCls}-selected`]: isSelected,\n [`${prefixCls}-other-month`]: !current\n }\n ])}\n onClick={() => handleSelect(day, month, year)}\n disabled={disabledDate?.(new Date(year, month, day), {\n from: undefined,\n to: undefined\n })}\n >\n {day}\n </button>\n );\n })}\n </div>\n )}\n\n {viewMode === 'month' && (\n <div className={`${prefixCls}-grid`}>\n {localeMonths.map((m, i) => (\n <button\n key={i}\n className={`${prefixCls}-month`}\n onClick={() => {\n setCurrentMonth(i);\n setViewMode('day');\n }}\n disabled={isMonthDisabled(i)}\n >\n {m}\n </button>\n ))}\n </div>\n )}\n\n {viewMode === 'year' && (\n <div className={`${prefixCls}-grid`}>\n {Array.from({ length: 12 }, (_, i) => {\n const year = currentYear - NUMBER_SIX + i;\n\n return (\n <button\n key={year}\n className={`${prefixCls}-year`}\n disabled={isYearDisabled(year)}\n onClick={() => {\n setCurrentYear(year);\n setViewMode('month');\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n )}\n\n {showToday && (\n <div\n className={`${prefixCls}-day-footer`}\n style={{ gridColumn: 'span 7' }}\n >\n <button\n className={`${prefixCls}-select`}\n disabled={disabledDate?.(\n new Date(\n DateNow.getDate(),\n DateNow.getMonth(),\n DateNow.getFullYear()\n ),\n { from: undefined, to: undefined }\n )}\n onClick={() => {\n handleSelect(\n DateNow.getDate(),\n DateNow.getMonth(),\n DateNow.getFullYear()\n );\n }}\n >\n {locale?.today || 'Today'}\n </button>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nconst DatePicker = Object.assign(DatePickerComponent, {\n RangePicker\n});\n\nexport default DatePicker;\n","'use client';\n\nimport {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent as ReactMouseEvent,\n ReactNode,\n RefObject,\n useEffect,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType } from '../../../types';\nimport { TimePickerProps } from '../../../types/datepicker';\nimport { prefixClsTimePicker } from '../../../utils';\nimport './style.css';\nimport { ClearIcon, TimeIcon } from '../../Icons/Icons';\n\nconst HOURS = 24;\nconst INPUT_SIZE = 13;\nconst TIME_OPTION_PADDING = 4;\nconst MINUTES_AND_SECONDS = 60;\nconst ADD_EMPTY_SECTION_COUNT = 5;\n\nconst pad = (num: number): string => String(num).padStart(2, '0');\n\nconst TimePicker: FC<TimePickerProps> = ({\n prefixCls = prefixClsTimePicker,\n style = {},\n className = '',\n disabledTime,\n inputReadOnly = false,\n format = 'HH:mm:ss',\n defaultValue = null,\n value: propValue = null,\n onChange,\n onBlur,\n onSelect,\n showNow = true,\n clearIcon = <ClearIcon />,\n suffixIcon = <TimeIcon />,\n placeholder = 'Select time'\n}) => {\n const [open, setOpen] = useState<boolean>(false);\n const [innerValue, setInnerValue] = useState<Date | null>(\n propValue || defaultValue ? new Date(propValue || defaultValue) : null\n );\n\n const [tempValue, setTempValue] = useState<Date | null>(null);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const popupRef = useRef<HTMLDivElement>(null);\n const hourRef = useRef<HTMLDivElement>(null);\n const minuteRef = useRef<HTMLDivElement>(null);\n const secondRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n if (\n popupRef.current &&\n !popupRef.current.contains(e.target as Node) &&\n inputRef.current &&\n !inputRef.current.contains(e.target as Node)\n ) {\n setOpen(false);\n setTempValue(null);\n\n if (!innerValue) {\n onChange?.(null as RuleType, '');\n }\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [innerValue, onChange]);\n\n useEffect(() => {\n if (open) {\n setTempValue(innerValue ? new Date(innerValue) : null);\n\n const { hour = 0, minute = 0, second = 0 } = getTimeParts(innerValue);\n scrollToTop(hourRef as { current: HTMLDivElement }, hour || 0);\n scrollToTop(minuteRef as { current: HTMLDivElement }, minute || 0);\n scrollToTop(secondRef as { current: HTMLDivElement }, second || 0);\n }\n }, [open, innerValue]);\n\n useEffect(() => {\n onSelect?.(tempValue);\n }, [tempValue, onSelect]);\n\n const formatDate = (date: Date | null): string => {\n if (!date) {\n return '';\n }\n\n return `${format}`\n .replace(/HH|hh/, pad(date.getHours()))\n .replace(/MM|mm/, pad(date.getMinutes()))\n .replace(/SS|ss/, pad(date.getSeconds()));\n };\n\n const getTimeParts = (date: Date | null) => ({\n hour: date?.getHours() ?? null,\n minute: date?.getMinutes() ?? null,\n second: date?.getSeconds() ?? null\n });\n\n const getDisabled = (\n type: 'hour' | 'minute' | 'second',\n hour = 0,\n minute = 0\n ): number[] => {\n const disabled = disabledTime?.(tempValue || new Date());\n\n if (!disabled) {\n return [];\n }\n\n if (type === 'hour') {\n return disabled.disabledHours?.() || [];\n }\n\n if (type === 'minute') {\n return disabled.disabledMinutes?.(hour) || [];\n }\n\n if (type === 'second') {\n return disabled.disabledSeconds?.(hour, minute) || [];\n }\n\n return [];\n };\n\n const scrollToTop = (\n ref: RefObject<HTMLDivElement>,\n selectedIndex: number\n ): void => {\n const el = ref.current?.querySelectorAll('div')[selectedIndex];\n\n if (el && ref.current) {\n ref.current.scrollTo({\n top: el.offsetTop - TIME_OPTION_PADDING * 2,\n behavior: 'smooth'\n });\n }\n };\n\n const updateTempValue = (hour: number, minute: number, second: number) => {\n const newDate = new Date();\n newDate.setHours(hour, minute, second, 0);\n setTempValue(newDate);\n };\n\n const onSelectHour = (h: number, auto?: boolean): void => {\n const { minute = 0, second = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!minute) {\n onSelectMinute(0, true);\n }\n\n if (!second) {\n onSelectSecond(0, true);\n }\n }\n\n updateTempValue(h, minute || 0, second || 0);\n scrollToTop(hourRef as { current: HTMLDivElement }, h);\n };\n\n const onSelectMinute = (m: number, auto?: boolean): void => {\n const { hour = 0, second = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!hour) {\n onSelectHour(0, true);\n }\n\n if (!second) {\n onSelectSecond(0, true);\n }\n }\n\n updateTempValue(hour || 0, m, second || 0);\n scrollToTop(minuteRef as { current: HTMLDivElement }, m);\n };\n\n const onSelectSecond = (s: number, auto?: boolean): void => {\n const { hour = 0, minute = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!hour) {\n onSelectHour(0, true);\n }\n\n if (!minute) {\n onSelectMinute(0, true);\n }\n }\n\n updateTempValue(hour || 0, minute || 0, s);\n scrollToTop(secondRef as { current: HTMLDivElement }, s);\n };\n\n const handleClear = (e?: ReactMouseEvent<HTMLSpanElement>): void => {\n e?.stopPropagation();\n setInnerValue(null);\n setTempValue(null);\n onChange?.(null as RuleType, '');\n };\n\n const handleShowNow = (): void => {\n const now = new Date();\n setTempValue(now);\n setInnerValue(now);\n onChange?.(now, formatDate(now));\n onSelect?.(now);\n setOpen(false);\n };\n\n const handleOkButton = (): void => {\n if (tempValue) {\n setInnerValue(tempValue);\n onChange?.(tempValue, formatDate(tempValue));\n onSelect?.(tempValue);\n }\n\n setOpen(false);\n };\n\n const handleOnChange = (e: ChangeEvent<HTMLInputElement>) => {\n const inputVal = e.target.value.trim();\n const timeRegex = /^(\\d{2}):(\\d{2}):(\\d{2})$/;\n const match = inputVal.match(timeRegex);\n\n if (match) {\n const [, hStr, mStr, sStr] = match;\n const h = parseInt(hStr, 10);\n const m = parseInt(mStr, 10);\n const s = parseInt(sStr, 10);\n\n if (\n h >= 0 &&\n h < HOURS &&\n m >= 0 &&\n m < MINUTES_AND_SECONDS &&\n s >= 0 &&\n s < MINUTES_AND_SECONDS &&\n !getDisabled('hour').includes(h) &&\n !getDisabled('minute', h).includes(m) &&\n !getDisabled('second', h, m).includes(s)\n ) {\n onSelectHour(h);\n onSelectMinute(m);\n onSelectSecond(s);\n }\n }\n };\n\n const renderOptions = (): ReactNode => {\n const hours = Array.from(\n { length: HOURS + ADD_EMPTY_SECTION_COUNT },\n (_, i) => (i < HOURS ? i : false)\n );\n\n const minutesSeconds = Array.from(\n { length: MINUTES_AND_SECONDS + ADD_EMPTY_SECTION_COUNT },\n (_, i) => (i < MINUTES_AND_SECONDS ? i : false)\n );\n\n const {\n hour: selectedHour,\n minute: selectedMinute,\n second: selectedSecond\n } = getTimeParts(tempValue);\n\n const currentHour = selectedHour ?? 0;\n const currentMinute = selectedMinute ?? 0;\n\n return (\n <div>\n <div className={`${prefixCls}-panel`}>\n <div ref={hourRef} className={`${prefixCls}-column`}>\n {hours.map((h, index) =>\n h === false ? (\n <div\n key={`${h}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={h}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]:\n getDisabled('hour').includes(h),\n [`${prefixCls}-cell-selected`]: selectedHour === h\n }\n ])}\n onClick={() =>\n !getDisabled('hour').includes(h) && onSelectHour(h)\n }\n >\n {pad(h)}\n </div>\n )\n )}\n </div>\n <div ref={minuteRef} className={`${prefixCls}-column`}>\n {minutesSeconds.map((m, index) =>\n m === false ? (\n <div\n key={`${m}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={m}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]: getDisabled(\n 'minute',\n currentHour\n ).includes(m),\n [`${prefixCls}-cell-selected`]: selectedMinute === m\n }\n ])}\n onClick={() =>\n !getDisabled('minute', currentHour).includes(m) &&\n onSelectMinute(m)\n }\n >\n {pad(m)}\n </div>\n )\n )}\n </div>\n <div ref={secondRef} className={`${prefixCls}-column`}>\n {minutesSeconds.map((s, index) =>\n s === false ? (\n <div\n key={`${s}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={s}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]: getDisabled(\n 'second',\n currentHour,\n currentMinute\n ).includes(s),\n [`${prefixCls}-cell-selected`]: selectedSecond === s\n }\n ])}\n onClick={() =>\n !getDisabled('second', currentHour, currentMinute).includes(\n s\n ) && onSelectSecond(s)\n }\n >\n {pad(s)}\n </div>\n )\n )}\n </div>\n </div>\n <div className={`${prefixCls}-actions`}>\n {showNow ? (\n <div className={`${prefixCls}-now-btn`} onClick={handleShowNow}>\n Now\n </div>\n ) : (\n <span />\n )}\n <button\n className={`${prefixCls}-ok-btn`}\n disabled={\n selectedHour === null ||\n selectedMinute === null ||\n selectedSecond === null\n }\n onClick={handleOkButton}\n >\n OK\n </button>\n </div>\n </div>\n );\n };\n\n return (\n <div className={clsx([`${prefixCls}-wrapper`, className])} style={style}>\n <div\n className={`${prefixCls}-input-wrapper`}\n onClick={() => setOpen(true)}\n >\n <input\n ref={inputRef}\n size={INPUT_SIZE}\n placeholder={placeholder}\n className={`${prefixCls}-input`}\n readOnly={inputReadOnly}\n onChange={handleOnChange}\n {...(open ? {} : { value: formatDate(innerValue) })}\n onBlur={(e: FocusEvent<HTMLInputElement>) => {\n onBlur?.(e, { source: 'input' });\n }}\n />\n <div className={`${prefixCls}-icons`}>\n {clearIcon && innerValue ? (\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n {clearIcon}\n </span>\n ) : (\n suffixIcon && (\n <span\n className={`${prefixCls}-suffix`}\n onClick={e => {\n e.stopPropagation();\n setOpen(true);\n }}\n >\n {suffixIcon}\n </span>\n )\n )}\n </div>\n </div>\n\n {open && (\n <div ref={popupRef} className={`${prefixCls}-popup`}>\n {renderOptions()}\n </div>\n )}\n </div>\n );\n};\n\nexport default TimePicker;\n","'use client';\n\nimport {\n ChangeEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n RefObject,\n useEffect,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { TextareaProps } from '../../../types/input';\nimport { prefixClsTextArea } from '../../../utils';\nimport './style.css';\n\nconst Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n prefixCls = prefixClsTextArea,\n value,\n className = '',\n style,\n autoSize,\n onPressEnter,\n onResize,\n styles,\n bordered = true,\n size = 'large',\n status,\n rootClassName,\n variant = 'outlined',\n error,\n allowClear = false,\n ...props\n },\n ref: ForwardedRef<HTMLTextAreaElement>\n ) => {\n const [inputValue, setInputValue] = useState(value?.toString() || '');\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n const textarea =\n (ref as RefObject<HTMLTextAreaElement>)?.current || textareaRef.current;\n\n if (textarea && autoSize) {\n textarea.style.height = 'auto';\n textarea.style.height = `${textarea.scrollHeight}px`;\n\n if (onResize) {\n onResize({\n width: textarea.clientWidth,\n height: textarea.scrollHeight\n });\n }\n }\n }, [inputValue, autoSize, onResize, ref]);\n\n const handleChange = (e: ChangeEvent<HTMLTextAreaElement>) => {\n setInputValue(e.target.value);\n\n if (props.onChange) {\n props.onChange(e);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLTextAreaElement>) => {\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n };\n\n const handleClear = () => {\n setInputValue('');\n\n if (props.onChange) {\n props.onChange({\n target: { value: '' }\n } as ChangeEvent<HTMLTextAreaElement>);\n }\n };\n\n return (\n <div className={`${prefixCls}-wrapper ${rootClassName || ''}`}>\n <textarea\n {...props}\n ref={ref || textareaRef}\n value={inputValue}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n style={{ ...styles?.textarea, ...style }}\n className={clsx([\n `${prefixCls} ${prefixCls}-${size} ${prefixCls}-${variant} ${className}`,\n {\n [`${prefixCls}-bordered`]: bordered,\n [`${prefixCls}-success`]: status === 'success',\n [`${prefixCls}-error`]: status === 'error' || error\n }\n ])}\n />\n\n {allowClear && inputValue && (\n <button className={`${prefixCls}-clear`} onClick={handleClear}>\n ✕\n </button>\n )}\n </div>\n );\n }\n);\n\nTextarea.displayName = 'Textarea';\n\nexport default Textarea;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n useImperativeHandle,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent, TargetProps } from '../../types';\nimport { InputProps } from '../../types/input';\nimport { prefixClsInput } from '../../utils';\nimport './style.css';\nimport Textarea from './Textarea/Textarea';\nimport { ErrorIcon } from '../Icons/Icons';\n\nconst InputComponent = forwardRef(\n (\n {\n size = 'large',\n error,\n suffix,\n prefix,\n addonAfter,\n addonBefore,\n onPressEnter,\n disabled = false,\n allowClear = false,\n prefixCls = prefixClsInput,\n className = '',\n value = undefined,\n iconRender,\n noStyle,\n feedbackIcons,\n ...props\n }: InputProps,\n ref: ForwardedRef<HTMLInputElement>\n ) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const [internalValue, setInternalValue] = useState(value ?? '');\n const [iconRenderVisible, setIconRenderVisible] = useState(false);\n\n useImperativeHandle(ref, () => ({\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n focus: inputRef.current?.focus,\n input: inputRef.current,\n blur: (inputRef.current as HTMLInputElement).blur,\n nativeElement: inputRef.current,\n setSelectionRange: (start: number, end: number) => {\n if (inputRef.current) {\n inputRef.current.setSelectionRange(start, end);\n }\n }\n }));\n\n const handleChange = (e: SyntheticBaseEvent) => {\n setInternalValue(e.target.value as string);\n\n props.onChange?.(e);\n };\n\n const handleClear = (e: MouseEvent<HTMLSpanElement> & TargetProps) => {\n setInternalValue('');\n\n e.target.value = '';\n\n props.onChange?.(e);\n };\n\n const handleOnKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-container`,\n {\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-${size}`]: size,\n noStyle: noStyle\n },\n className\n ])}\n style={props.style}\n >\n {addonBefore && (\n <span className={`${prefixCls}-addon ${prefixCls}-before`}>\n {addonBefore}\n </span>\n )}\n\n <div className={`${prefixCls}-wrapper`}>\n {prefix && <span className={`${prefixCls}-prefix`}>{prefix}</span>}\n\n <input\n {...props}\n ref={inputRef}\n {...(props.type === 'password' && iconRender\n ? {\n type: iconRenderVisible ? 'text' : 'password'\n }\n : {})}\n disabled={disabled}\n value={internalValue}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n className={clsx([prefixCls, className])}\n />\n\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n {allowClear && internalValue ? <ErrorIcon /> : null}\n </span>\n\n {(suffix || iconRender) && (\n <span\n className={`${prefixCls}-suffix`}\n {...(iconRender !== undefined\n ? {\n onClick: () => setIconRenderVisible(icon => !icon)\n }\n : {})}\n >\n {suffix || iconRender?.(iconRenderVisible)}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )}\n </div>\n\n {addonAfter ? (\n <span className={`${prefixCls}-addon ${prefixCls}-after`}>\n {addonAfter}\n </span>\n ) : null}\n </div>\n );\n }\n);\n\nInputComponent.displayName = 'Input';\n\nconst Input = InputComponent as typeof InputComponent & {\n TextArea: typeof Textarea;\n};\n\nInput.TextArea = Textarea;\n\nexport default Input;\n","'use client';\n\nimport { clsx } from '../../../helpers';\nimport { RadioButtonProps } from '../../../types/radio';\nimport { prefixClsRadio } from '../../../utils';\nimport './style.css';\nimport Radio from '../Radio';\n\nconst RadioButton = ({\n prefixCls = prefixClsRadio,\n className = '',\n checked,\n disabled,\n children,\n size = 'large',\n ...props\n}: RadioButtonProps) => {\n return (\n <Radio\n {...props}\n checked={checked}\n disabled={disabled}\n className={clsx([\n `${prefixCls}-button`,\n {\n disabled,\n [className]: className,\n [`${prefixCls}-button-${size}`]: size,\n [`${prefixCls}-button-checked`]: checked\n }\n ])}\n >\n <span className={`${prefixCls}-button-content`}>\n {children ?? props.value}\n </span>\n </Radio>\n );\n};\n\nexport default RadioButton;\n","'use client';\n\nimport {\n Children,\n cloneElement,\n isValidElement,\n ReactElement,\n useMemo\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType } from '../../../types';\nimport { RadioGroupProps } from '../../../types/radio';\nimport { prefixClsRadio } from '../../../utils';\nimport './style.css';\nimport Radio from '../Radio';\nimport RadioButton from '../Button/Button';\n\nconst RadioGroup = ({\n defaultValue,\n value,\n size = 'large',\n disabled,\n name,\n id,\n style = {},\n buttonStyle = 'outline',\n block,\n prefixCls = prefixClsRadio,\n className = '',\n options = [],\n children,\n ...props\n}: RadioGroupProps) => {\n const selectedValue = useMemo(\n () => (value !== undefined ? value : defaultValue),\n [value, defaultValue]\n );\n\n const renderChildren = () => {\n if (options.length > 0) {\n return options.map((option, key) => {\n const optionValue = typeof option === 'object' ? option.value : option;\n const optionLabel = typeof option === 'object' ? option.label : option;\n\n return (\n <Radio\n value={optionValue}\n key={`${key}_${optionValue}`}\n checked={selectedValue === optionValue}\n disabled={\n disabled || (typeof option === 'object' && option.disabled)\n }\n {...props}\n >\n {optionLabel}\n </Radio>\n );\n });\n }\n\n return Children.map(children, child => {\n if (\n isValidElement(child) &&\n (child.type === Radio || child.type === RadioButton)\n ) {\n return cloneElement(child as ReactElement, {\n ...props,\n ...(child.type === RadioButton ? { size, buttonStyle } : {}),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n defaultValue,\n disabled: disabled ?? (child.props as { disabled: boolean }).disabled,\n checked: selectedValue === (child.props as { value: RuleType }).value,\n name: name ?? prefixClsRadio\n });\n }\n\n return child;\n });\n };\n\n return (\n <div\n id={id}\n style={style}\n className={clsx([\n `${prefixCls}-group`,\n {\n block,\n className,\n [`${prefixCls}-group-${size}`]: size,\n [`${prefixCls}-group-solid`]: buttonStyle === 'solid'\n }\n ])}\n >\n {renderChildren()}\n </div>\n );\n};\n\nexport default RadioGroup;\n","'use client';\n\nimport { ForwardedRef, forwardRef, useEffect } from 'react';\nimport { clsx, parseValue } from '../../helpers';\nimport { RadioProps } from '../../types/radio';\nimport { prefixClsRadio } from '../../utils';\nimport RadioButton from './Button/Button';\nimport RadioGroup from './Group/Group';\nimport './style.css';\n\nconst RadioComponent = forwardRef<HTMLLabelElement, RadioProps>(\n (\n {\n prefixCls = prefixClsRadio,\n className = '',\n value,\n onChange,\n onClick,\n disabled,\n children,\n name,\n title,\n defaultChecked,\n checked,\n onBlur,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n noStyle\n },\n ref: ForwardedRef<HTMLLabelElement>\n ) => {\n const handleChange = () => {\n if (!disabled) {\n onClick?.(parseValue(title ?? value));\n onChange?.(parseValue(title ?? value));\n }\n };\n\n useEffect(() => {\n if (defaultChecked ?? checked) {\n onChange?.(parseValue(value));\n }\n }, [defaultChecked, checked]);\n\n return (\n <label\n ref={ref}\n title={title}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n className={clsx([\n `${prefixCls}-label`,\n {\n disabled,\n noStyle: noStyle,\n [className]: className\n }\n ])}\n >\n <input\n name={name}\n type=\"radio\"\n onClick={onClick}\n disabled={disabled}\n onChange={handleChange}\n onBlur={e => onBlur?.(e)}\n onFocus={e => onFocus?.(e)}\n />\n <span\n className={clsx([\n `${prefixCls} ${prefixCls}-${disabled ? 'disabled' : 'enabled'}`\n ])}\n />\n <span className={`${prefixCls}-title`}>\n {children ?? title ?? value}\n </span>\n </label>\n );\n }\n);\n\nRadioComponent.displayName = 'Radio';\nconst Radio = Object.assign(RadioComponent, {\n Group: RadioGroup,\n Button: RadioButton\n});\n\nexport default Radio;\n","import { FC, MouseEventHandler } from 'react';\nimport { clsx } from '../../../helpers';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsSelect } from '../../../utils';\nimport './style.css';\n\nconst Option: FC<OptionProps> = ({\n value,\n children,\n disabled,\n className = '',\n style,\n onClick,\n render,\n prefixCls = prefixClsSelect,\n selected,\n title\n}) => {\n const handleClick: MouseEventHandler<HTMLDivElement> = e => {\n if (disabled) {\n return;\n }\n\n onClick?.(e);\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-option ${className} `,\n {\n selected: selected,\n disabled: disabled\n }\n ])}\n style={style}\n onClick={handleClick}\n {...(title ? { title } : {})}\n >\n {render ? render(value as string) : children || value}\n </div>\n );\n};\n\nexport default Option;\n","import { FC, MouseEvent } from 'react';\nimport { TargetProps } from '../../../types';\nimport { CustomTagProps } from '../../../types/select';\nimport { prefixClsSelect } from '../../../utils';\nimport './style.css';\n\nconst Tag: FC<CustomTagProps> = ({\n prefixCls = prefixClsSelect,\n style = {},\n onClose,\n value,\n label,\n closable,\n color,\n icon\n}) => {\n const handleOnClick = (e: MouseEvent<HTMLSpanElement> & TargetProps) => {\n e.preventDefault();\n e.stopPropagation();\n\n e.target.value = value;\n\n onClose(e);\n };\n\n return (\n <div\n style={{ ...style, backgroundColor: color }}\n className={`${prefixCls}-tag`}\n >\n <span>{label !== undefined ? label : value}</span>\n\n {closable && (\n <span className={`${prefixCls}-tag-close-icon`} onClick={handleOnClick}>\n {icon || <>✕</>}\n </span>\n )}\n </div>\n );\n};\n\nexport default Tag;\n","import { EmptyContentProps } from '../../types/empty';\nimport { prefixClsEmpty } from '../../utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","'use client';\n\nimport {\n CSSProperties,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n ReactElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport {\n ArrowIcon,\n CheckIcon,\n ClearIcon,\n ErrorIcon,\n LoadingIcon,\n SearchIcon\n} from '@/components/Icons/Icons';\nimport { clsx } from '../../helpers';\nimport { MouseEventHandlerSelect, SyntheticBaseEvent } from '../../types';\nimport { OptionType, SelectProps } from '../../types/select';\nimport { prefixClsSelect } from '../../utils';\nimport Option from './Option/Option';\nimport Tag from './Tag/Tag';\nimport { Empty } from '../Empty';\nimport './style.css';\n\nconst LIST_HEIGHT = 200;\nconst PADDING_PLACEMENT = 18;\nconst PADDING_TAG_INPUT = 4;\n\nconst SelectComponent = forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n prefixCls = prefixClsSelect,\n id,\n searchValue = '',\n autoClearSearchValue = true,\n filterOption = true,\n optionFilterProp = 'value',\n children,\n options = [],\n listHeight = LIST_HEIGHT,\n menuItemSelectedIcon,\n mode = 'default',\n value,\n defaultValue,\n maxCount,\n disabled = false,\n loading = false,\n placeholder = 'Select',\n allowClear = false,\n filterable = false,\n defaultOpen = false,\n size = 'large',\n error = false,\n dropdownClassName = '',\n suffixIcon,\n style,\n onSearch,\n onSelect,\n onDeselect,\n onClear,\n onChange,\n showSearch = false,\n open = false,\n showArrow = true,\n notFoundContent = false,\n tagRender,\n getPopupContainer,\n dropdownRender,\n noStyle,\n feedbackIcons,\n placement = 'bottomLeft',\n removeIcon\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const asTag = mode === 'tags';\n const asMultiple = mode === 'multiple';\n const hasMode = asTag || asMultiple;\n\n const initialValue = useMemo(\n () => value || defaultValue || '',\n [value, defaultValue]\n );\n\n const checkModeInitialValue = useMemo(\n () =>\n (!Array.isArray(initialValue) ? [initialValue] : initialValue).filter(\n e => e\n ),\n [initialValue]\n );\n\n const [isHover, setIsHover] = useState(false);\n const selectRef = useRef<HTMLDivElement>(null);\n const [searchInputWidth, setSearchInputWidth] = useState<number>(0);\n const [isOpen, setIsOpen] = useState(defaultOpen || open);\n const [searchQuery, setSearchQuery] = useState(searchValue || '');\n const [dropdownPosition, setDropdownPosition] = useState<CSSProperties>({});\n\n const [selected, setSelected] = useState(\n hasMode ? checkModeInitialValue : initialValue\n );\n\n useImperativeHandle(ref, () => ({\n focus: () => selectRef.current?.focus(),\n blur: () => (selectRef.current as HTMLInputElement)?.blur(),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n scrollTo: (...args) =>\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n (selectRef.current as HTMLDivElement)?.scrollTo(...args),\n nativeElement: selectRef.current\n }));\n\n const handleMouseEnter = () =>\n !disabled && selected?.length && setIsHover(true);\n\n const handleMouseLeave = () => !disabled && setIsHover(false);\n\n const handleClearInputValue = useCallback(() => {\n if (!autoClearSearchValue) {\n return;\n }\n\n setSearchQuery('');\n\n const inputContainer = selectRef.current?.querySelector(\n \"[content-editable='plaintext-only']\"\n ) as HTMLDivElement;\n\n if (inputContainer) {\n inputContainer.innerText = '';\n }\n }, [autoClearSearchValue]);\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent): void => {\n if (\n selectRef.current &&\n !selectRef.current.contains(event.target as Node)\n ) {\n setIsOpen(open);\n\n if (hasMode) {\n handleClearInputValue();\n }\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [handleClearInputValue, open, hasMode]);\n\n useEffect(() => {\n if (!selectRef.current || !getPopupContainer) {\n return;\n }\n\n const selectBox = selectRef.current.getBoundingClientRect();\n const dropdownHeight = listHeight;\n const windowHeight = window.innerHeight;\n const spaceBelow = windowHeight - selectBox.bottom;\n const spaceAbove = selectBox.top;\n\n let positionStyle: CSSProperties = {\n top: `${selectBox.bottom}px`,\n left: `${selectBox.left}px`,\n width: `${selectBox.width}px`\n };\n\n if (spaceBelow < dropdownHeight && spaceAbove > dropdownHeight) {\n positionStyle = {\n top: `${selectBox.top - dropdownHeight}px`,\n left: `${selectBox.left}px`,\n width: `${selectBox.width}px`\n };\n }\n\n setDropdownPosition(positionStyle);\n }, [listHeight, getPopupContainer]);\n\n const handleSearch = (e: SyntheticBaseEvent) => {\n setSearchQuery(e.target.value as string);\n onSearch?.(e.target.value as string);\n\n if (!isOpen) {\n setIsOpen(!isOpen || open);\n handleClearInputValue();\n }\n };\n\n const handleEnterAddNewTag = () => {\n if (\n asMultiple ||\n (maxCount &&\n selected.length >= maxCount &&\n !selected.includes(searchQuery))\n ) {\n return;\n }\n\n const newOptionValue = searchQuery.trim();\n\n if (!newOptionValue || !hasMode || selected.includes(newOptionValue)) {\n return;\n }\n\n const updatedSelected = [...selected, newOptionValue];\n\n onChange?.(updatedSelected);\n onSelect?.(newOptionValue);\n\n const input = selectRef.current?.querySelector('input');\n\n if (input) {\n input.value = '';\n }\n\n setSelected(updatedSelected);\n handleClearInputValue();\n };\n\n const handleSelect = (\n e: SyntheticBaseEvent,\n optionValue: string,\n option?: OptionType\n ) => {\n if (hasMode) {\n if (\n maxCount &&\n selected.length >= maxCount &&\n !selected.includes(optionValue)\n ) {\n return;\n }\n\n const newSelection = selected.includes(optionValue)\n ? (selected as string[]).filter(item => item !== optionValue)\n : [...selected, optionValue];\n\n setSelected(newSelection);\n onChange?.(newSelection, option);\n\n if (selected.includes(optionValue)) {\n onDeselect?.(optionValue, option);\n } else {\n onSelect?.(optionValue, option);\n }\n } else {\n setIsOpen(open);\n setSelected(optionValue);\n onChange?.(optionValue, option);\n onSelect?.(optionValue, option);\n }\n\n handleClearInputValue();\n };\n\n const handleClear = () => {\n const value = hasMode ? [] : '';\n\n setSelected(value);\n onChange?.('');\n onClear?.();\n\n handleClearInputValue();\n };\n\n const handleRemoveTag = (e: SyntheticBaseEvent) => {\n const updatedSelected = hasMode\n ? (selected as string[]).filter(item => item !== e.target.value)\n : e.target.value;\n\n onChange?.(updatedSelected);\n setSelected(updatedSelected);\n };\n\n const handleOnKeyDown = (\n e: KeyboardEvent<HTMLInputElement> & {\n target: { value: string; innerText: string };\n }\n ) => {\n const timeout = setTimeout(() => {\n e.target.value = e.target.innerText.trim().replace('\\n', '');\n\n setSearchQuery(e.target.value);\n onSearch?.(e.target.value);\n\n if (e.key === 'Enter' && searchQuery.trim() !== '') {\n if (!asTag) {\n e.stopPropagation();\n e.preventDefault();\n\n clearTimeout(timeout);\n\n return;\n }\n\n handleEnterAddNewTag();\n\n e.target.innerText = '';\n }\n\n if (\n e.key === 'Backspace' &&\n (hasMode ? !searchQuery.trim().length : searchQuery.trim().length)\n ) {\n const updatedSelected = hasMode\n ? (selected as string[]).filter(\n item => item !== selected[selected.length - 1]\n )\n : searchQuery.trim();\n\n onChange?.(updatedSelected);\n setSelected(updatedSelected);\n }\n\n clearTimeout(timeout);\n });\n };\n\n const ArrowContainer = useMemo(() => {\n if (!showArrow) {\n return null;\n }\n\n return showSearch && isOpen ? (\n <SearchIcon />\n ) : (\n <span>\n {suffixIcon || (showArrow && <ArrowIcon isOpen={isOpen} />)}\n </span>\n );\n }, [showArrow, showSearch, isOpen, suffixIcon]);\n\n const popupContainer = useMemo(() => {\n return selectRef.current\n ? getPopupContainer?.(selectRef.current)\n : selectRef.current;\n }, [getPopupContainer]);\n\n const extractedOptions = children\n ? (Array.isArray(children) ? children : [children])\n .filter(e => e)\n .map((child: { props: OptionType }) => child.props)\n : options;\n\n const filteredOptions = extractedOptions.filter((option: OptionType) => {\n if (typeof filterOption === 'function') {\n return filterOption(searchQuery, option);\n }\n\n if (filterOption === false) {\n return true;\n }\n\n const valueToCheck = `${\n ['string', 'number'].includes(typeof option.children)\n ? option.children\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n option[optionFilterProp] || option.value\n }`;\n\n return valueToCheck.toLowerCase().includes(searchQuery.toLowerCase());\n });\n\n const handleTriggerClick = () => {\n if (!disabled) {\n setIsOpen(!isOpen);\n }\n\n const searchContent = document.getElementsByClassName(\n `${prefixCls}-tag-container`\n )?.[0] as HTMLDivElement;\n\n if (searchContent) {\n setSearchInputWidth(searchContent.clientWidth - PADDING_TAG_INPUT);\n }\n\n const timeout = setTimeout(() => {\n const searchInput = document.getElementById(\n `${prefixCls}-search-tag-input`\n );\n\n if (searchInput) {\n searchInput?.focus();\n }\n\n clearTimeout(timeout);\n }, 0);\n };\n\n const dataRender = (() => {\n const options = filteredOptions.map(\n ({ children, className = '', ...props }) => {\n const isSelected = hasMode\n ? selected.includes(props.value as string)\n : props.value === selected;\n\n return (\n <Option\n key={`${props.value}`}\n {...props}\n selected={isSelected}\n className={clsx([\n className,\n {\n [`${prefixCls}-focused`]: hasMode\n ? isSelected\n : props.value === selected,\n [`${prefixCls}-disabled`]:\n maxCount && hasMode && !isSelected\n ? selected.length >= maxCount\n : false\n }\n ])}\n onClick={e => {\n if (props.disabled) {\n return;\n }\n\n handleSelect(\n e as MouseEventHandlerSelect,\n props.value as string,\n { children, className, ...props } as OptionType\n );\n }}\n data-value={props.value}\n >\n {children || props.value}\n\n {hasMode && isSelected && (\n <span className={`${prefixCls}-selected-icon`}>\n {menuItemSelectedIcon === true ? (\n <CheckIcon />\n ) : (\n menuItemSelectedIcon\n )}\n </span>\n )}\n </Option>\n );\n }\n );\n\n return dropdownRender ? dropdownRender(options) : options;\n })();\n\n const dropdownContent = !loading && isOpen && (\n <div\n className={clsx([\n `${prefixCls}-dropdown`,\n {\n [placement]: placement,\n [dropdownClassName]: dropdownClassName\n }\n ])}\n style={{\n ...dropdownPosition,\n maxHeight: listHeight,\n ...(['topLeft', 'topRight'].includes(placement)\n ? {\n top:\n -(\n (selectRef.current?.querySelector(`.${prefixCls}-dropdown`)\n ?.clientHeight || listHeight) + PADDING_PLACEMENT\n ) + (selectRef.current?.clientHeight || 0)\n }\n : {})\n }}\n >\n {filterable && (\n <input\n type=\"text\"\n className={`${prefixCls}-search`}\n value={searchQuery}\n onChange={handleSearch}\n placeholder=\"Search...\"\n />\n )}\n\n {!loading && (\n <div\n className={`${prefixCls}-options globalEllipsis`}\n style={{\n maxHeight: listHeight,\n overflowY: 'auto'\n }}\n >\n {asTag && !!searchQuery && (\n <Option\n value={searchQuery}\n className={`${prefixCls}-focused`}\n onClick={e => {\n handleSelect(e as MouseEventHandlerSelect, searchQuery);\n }}\n data-value={searchQuery}\n >\n {searchQuery}\n </Option>\n )}\n\n {filteredOptions.length\n ? dataRender\n : !asTag\n ? notFoundContent || <Empty />\n : null}\n </div>\n )}\n </div>\n );\n\n return (\n <div\n id={id}\n ref={selectRef}\n style={style}\n className={clsx([\n {\n [size]: size,\n noStyle: noStyle,\n [prefixCls]: prefixCls,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-multi`]: hasMode,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n >\n <div\n onClick={handleTriggerClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n className={`${prefixCls}-trigger`}\n >\n {showSearch ? (\n <div\n style={{\n ...style,\n ...(isOpen ? { maxWidth: `${searchInputWidth}px` } : {}),\n minWidth: `${searchInputWidth}px`\n }}\n className={`${prefixCls}-tag-container`}\n >\n {hasMode &&\n (selected as string[]).map((tag, index) =>\n tagRender ? (\n <div key={`${index}_${tag}`}>\n {tagRender?.({\n label:\n extractedOptions.find(e => e.value === tag)\n ?.children || tag,\n value: tag,\n onClose: handleRemoveTag,\n closable: true\n })}\n </div>\n ) : (\n <Tag\n closable\n value={tag}\n label={\n tag === ''\n ? placeholder\n : extractedOptions.find(e => e.value === tag)\n ?.children || tag\n }\n onClose={handleRemoveTag}\n key={`${index}_${tag}`}\n />\n )\n )}\n\n {isOpen ? (\n <div className={`${prefixCls}-tag`}>\n <div\n onClick={e => {\n if (disabled) {\n e.preventDefault();\n e.stopPropagation();\n\n return;\n }\n }}\n onKeyDown={handleOnKeyDown}\n style={{\n width: 'auto',\n display: 'ruby',\n textAlign: 'center'\n }}\n contentEditable=\"plaintext-only\"\n id={`${prefixCls}-search-tag-input`}\n className={`${prefixCls}-tag-input`}\n />\n </div>\n ) : !hasMode ? (\n <div\n className={`${prefixCls}-input`}\n style={{ opacity: isOpen || selected === '' ? '0.6' : '1' }}\n >\n {selected === ''\n ? placeholder\n : extractedOptions.find(e => e.value === selected)\n ?.children || selected}\n </div>\n ) : null}\n </div>\n ) : !hasMode ? (\n <div\n className={`${prefixCls}-input`}\n onClick={() => !disabled && setIsOpen(!isOpen || open)}\n style={{ opacity: isOpen || selected === '' ? '0.6' : '1' }}\n >\n {selected === ''\n ? placeholder\n : (() => {\n const option = extractedOptions.find(\n e => e.value === selected\n );\n\n return option?.children || option?.value || null;\n })()}\n </div>\n ) : null}\n\n {isHover && !loading ? (\n allowClear && selected ? (\n <button\n className={`${prefixCls}-clear-btn`}\n onClick={handleClear}\n >\n {removeIcon || <ClearIcon />}\n </button>\n ) : (\n <span className={`${prefixCls}-arrow`}>\n {ArrowContainer}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )\n ) : (\n <>\n {!loading && (\n <span className={`${prefixCls}-arrow`}>\n {ArrowContainer}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )}\n\n {loading && (\n <span className={`${prefixCls}-loading`}>\n <LoadingIcon />\n </span>\n )}\n </>\n )}\n </div>\n\n {popupContainer\n ? createPortal(dropdownContent, popupContainer)\n : dropdownContent}\n </div>\n );\n }\n);\n\nSelectComponent.displayName = 'Select';\nconst Select = Object.assign(SelectComponent, { Option });\n\nexport default Select;\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonButtonProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst BUTTON_SKELETON_SIZE = {\n small: `${prefixClsSkeleton}-button-sm`,\n large: `${prefixClsSkeleton}-button-lg`,\n default: ''\n};\n\nconst SkeletonButton: FC<SkeletonButtonProps> = ({\n prefixCls = prefixClsSkeleton,\n style = {},\n active,\n className,\n size = 'default',\n applyElementStyle = true\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}`,\n {\n [`${prefixCls}-element`]: applyElementStyle,\n [`${prefixCls}-active`]: active\n },\n className\n ])}\n >\n <span\n className={clsx([\n `${prefixCls}-button `,\n BUTTON_SKELETON_SIZE[size],\n className\n ])}\n style={style}\n ></span>\n </div>\n );\n};\n\nexport default SkeletonButton\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonAvatarProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nexport const AVATAR_DEFAULT_SIZE = 32;\nexport const AVATAR_GLOBAL_SIZE = 40;\n\nexport const GET_AVATAR_SKELETON_PROPS = (\n avatar: SkeletonAvatarProps | boolean\n): SkeletonAvatarProps => {\n return typeof avatar !== 'boolean'\n ? {\n shape: avatar?.shape || 'circle',\n size: avatar?.size || AVATAR_GLOBAL_SIZE,\n style: avatar?.style || {},\n className: avatar?.className || ''\n }\n : {\n shape: 'circle',\n size: AVATAR_GLOBAL_SIZE\n };\n};\n\nconst SkeletonAvatar: FC<SkeletonAvatarProps> = ({\n prefixCls = prefixClsSkeleton,\n className,\n shape = 'circle',\n style,\n wrapperStyle,\n size = AVATAR_DEFAULT_SIZE,\n active,\n applyElementStyle = true,\n ...props\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}`,\n {\n [`${prefixCls}-element`]: applyElementStyle,\n [`${prefixCls}-active`]: active\n },\n className\n ])}\n style={wrapperStyle}\n {...props}\n >\n <span\n className={clsx([`${prefixCls}-avatar ${prefixCls}-avatar-${shape}`])}\n style={{\n ...(size ? { width: size, height: size, lineHeight: size } : {}),\n ...(style || {})\n }}\n />\n </div>\n );\n};\n\nexport default SkeletonAvatar","import { FC, ReactElement } from 'react';\nimport { SkeletonImageProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst CUSTOm_ICON_SIZE = 48;\n\nconst SkeletonImage: FC<SkeletonImageProps> = ({\n prefixCls = prefixClsSkeleton,\n className,\n style = {}\n}): ReactElement => {\n return (\n <div className={`${prefixCls}-image ${className || ''}`} style={style}>\n <span\n className={`${prefixCls}-icon`}\n style={{\n fontSize: `${style?.width || CUSTOm_ICON_SIZE}px`,\n color: '#bfbfbf',\n position: 'relative',\n width: '100%',\n height: '100%',\n ...(style?.backgroundColor\n ? { backgroundColor: style?.backgroundColor }\n : {})\n }}\n >\n <svg\n viewBox=\"0 0 1098 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n >\n <path\n d=\"M365.714286 329.142857q0 45.714286-32.036571 77.677714t-77.677714 32.036571-77.677714-32.036571-32.036571-77.677714 32.036571-77.677714 77.677714-32.036571 77.677714 32.036571 32.036571 77.677714zM950.857143 548.571429l0 256-804.571429 0 0-109.714286 182.857143-182.857143 91.428571 91.428571 292.571429-292.571429zM1005.714286 146.285714l-914.285714 0q-7.460571 0-12.873143 5.412571t-5.412571 12.873143l0 694.857143q0 7.460571 5.412571 12.873143t12.873143 5.412571l914.285714 0q7.460571 0 12.873143-5.412571t5.412571-12.873143l0-694.857143q0-7.460571-5.412571-12.873143t-12.873143-5.412571zM1097.142857 164.571429l0 694.857143q0 37.741714-26.843429 64.585143t-64.585143 26.843429l-914.285714 0q-37.741714 0-64.585143-26.843429t-26.843429-64.585143l0-694.857143q0-37.741714 26.843429-64.585143t64.585143-26.843429l914.285714 0q37.741714 0 64.585143 26.843429t26.843429 64.585143z\"\n className={`${prefixCls}-image-path`}\n ></path>\n </svg>\n </span>\n </div>\n );\n};\n\nexport default SkeletonImage\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonInputProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst INPUT_SKELETON_SIZE = {\n small: `${prefixClsSkeleton}-input-sm`,\n large: `${prefixClsSkeleton}-input-lg`,\n default: ''\n};\n\nconst SkeletonInput: FC<SkeletonInputProps> = ({\n prefixCls = prefixClsSkeleton,\n style,\n block,\n active,\n className,\n size = 'default'\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}-element`,\n {\n [`${prefixCls}-active`]: active,\n [`${prefixCls}-block`]: block\n },\n className\n ])}\n >\n <span\n className={`${prefixCls}-input ${INPUT_SKELETON_SIZE[size]} ${\n className || ''\n }`}\n style={style}\n />\n </div>\n );\n};\n\nexport default SkeletonInput","import { ReactElement } from 'react';\nimport { clsx, createArray } from '../../helpers';\nimport { SkeletonProps } from '../../types/skeleton';\nimport { prefixClsSkeleton } from '../../utils';\nimport { SkeletonButton } from './Button';\nimport { SkeletonAvatar } from './Avatar';\nimport { GET_AVATAR_SKELETON_PROPS } from './Avatar/Avatar';\nimport { SkeletonImage } from './Image';\nimport { SkeletonInput } from './Input';\nimport './style.css';\n\nconst PARAGRAPH_AVATAR_ROWS = 2;\nconst PARAGRAPH_DEFAULT_ROWS = 3;\n\nconst Skeleton = ({\n prefixCls = prefixClsSkeleton,\n active,\n className,\n style,\n avatar,\n paragraph,\n round,\n title,\n teamLogo = true\n}: SkeletonProps): ReactElement => {\n const GET_TITLE_SKELETON_PROPS =\n typeof title !== 'boolean'\n ? {\n style: { width: title?.width, ...title?.style },\n className: title?.className || ''\n }\n : {};\n\n const PARAGRAPH_ROWS = avatar\n ? PARAGRAPH_AVATAR_ROWS\n : PARAGRAPH_DEFAULT_ROWS;\n\n const HAS_PHARAGRAPH =\n typeof paragraph === 'boolean' || !paragraph\n ? PARAGRAPH_ROWS\n : paragraph?.rows ?? PARAGRAPH_ROWS;\n\n return (\n <div\n className={clsx([\n prefixCls,\n {\n [`${prefixCls}__withAvatar`]: avatar,\n [`${prefixCls}-active`]: active,\n [`${prefixCls}-round`]: round\n },\n className\n ])}\n style={style}\n >\n {avatar && teamLogo && (\n <div className={`${prefixCls}__header`}>\n <SkeletonAvatar {...GET_AVATAR_SKELETON_PROPS(avatar)} />\n </div>\n )}\n\n <div className={`${prefixCls}-content`}>\n <h3\n className={clsx([\n `${prefixCls}-title ${GET_TITLE_SKELETON_PROPS.className}`,\n { [`${prefixCls}-title-avatar`]: avatar }\n ])}\n style={GET_TITLE_SKELETON_PROPS.style}\n />\n\n {paragraph !== false && (\n <ul\n className={`${prefixCls}-paragraph`}\n style={{\n ...(typeof paragraph !== 'boolean' && paragraph\n ? paragraph.style\n : {})\n }}\n >\n {createArray(HAS_PHARAGRAPH).map(key => (\n <li key={key}></li>\n ))}\n </ul>\n )}\n </div>\n </div>\n );\n};\n\nSkeleton.Image = SkeletonImage;\nSkeleton.Input = SkeletonInput;\nSkeleton.Avatar = SkeletonAvatar;\nSkeleton.Button = SkeletonButton;\n\nexport default Skeleton","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\ntype ButtonBaseProps = ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n};\n\nconst ButtonBase = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonBaseProps): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default ButtonBase;\n","'use client';\n\nimport { useEffect, useMemo, useState } from 'react';\nimport ButtonBase from './Button';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\n\nconst MyButton = (props: ButtonProps) => {\n const {\n loading = false,\n icon,\n prefixCls = prefixClsButton,\n } = props;\n\n const [innerLoading, setInnerLoading] = useState(false);\n\n useEffect(() => {\n if (typeof loading === 'boolean') {\n setInnerLoading(loading);\n } else if (typeof loading === 'object' && loading.delay) {\n const timeout = setTimeout(() => setInnerLoading(true), loading.delay);\n return () => clearTimeout(timeout);\n } else {\n setInnerLoading(!!loading);\n }\n }, [loading]);\n\n const iconNode = useMemo(() => {\n return innerLoading\n ? (typeof loading === 'object' && loading.icon) || (\n <span className={`${prefixCls}-spinner`}></span>\n )\n : icon;\n }, [icon, innerLoading, loading, prefixCls]);\n\n return <ButtonBase {...props} isLoading={innerLoading} iconNode={iconNode} />;\n};\n\nexport default MyButton;\n","'use client';\n\nimport { useRef, useState } from 'react';\nimport { clsx } from '../../helpers';\nimport { RuleType } from '../../types';\nimport {\n RcFile,\n UploadChangeParam,\n UploadFile,\n UploadProps\n} from '../../types/upload';\nimport { prefixClsUpload } from '../../utils';\nimport './style.css';\nimport { StampleIcon, TrashIcon } from '../Icons/Icons';\n\nconst IMAGE_SIZE = 40;\nconst IMAGE_PROGRESS_PERCENT = 100;\n\nconst Upload = ({\n prefixCls = prefixClsUpload,\n multiple = false,\n style,\n className,\n onChange,\n action,\n name = 'file',\n method = 'POST',\n headers,\n directory,\n beforeUpload,\n rootClassName,\n onRemove,\n disabled,\n withCredentials,\n openFileDialogOnClick = true,\n maxCount,\n fileList: controlledFileList,\n customRequest,\n accept,\n listType = 'text',\n showUploadList = true,\n children,\n noStyle,\n defaultFileList\n}: UploadProps) => {\n const uploadRef = useRef<HTMLInputElement>(null);\n const [fileList, setFileList] = useState<UploadFile<RuleType>[]>(() =>\n (controlledFileList || defaultFileList || []).map((file, idx) => ({\n ...file,\n uid: file.uid || `${Date.now()}-${idx}`,\n status: file.status || 'done',\n percent: file.percent || IMAGE_PROGRESS_PERCENT\n }))\n );\n\n const updateFileList = (newList: UploadFile<RuleType>[]) => {\n setFileList(newList);\n\n if (onChange) {\n onChange({\n fileList: newList,\n file: newList[0] || {}\n } as UploadChangeParam);\n }\n };\n\n const handleFileChange = async (\n event: React.ChangeEvent<HTMLInputElement>\n ) => {\n const rawFiles: File[] = Array.from(event.target.files || []);\n let uploadFiles: UploadFile<RuleType>[] = rawFiles.map((file, i) => ({\n uid: `${Date.now()}-${i}`,\n name: file.name,\n size: file.size,\n type: file.type,\n status: 'uploading',\n percent: 0,\n originFileObj: file\n }));\n\n if (beforeUpload) {\n const filtered: UploadFile<RuleType>[] = [];\n\n for (let i = 0; i < uploadFiles.length; i++) {\n const file = uploadFiles[i].originFileObj as RcFile;\n const result = await beforeUpload(file, rawFiles);\n\n if (result === false) {\n continue;\n }\n\n filtered.push(uploadFiles[i]);\n }\n\n uploadFiles = filtered;\n }\n\n const newList = (\n multiple ? [...fileList, ...uploadFiles] : uploadFiles\n ).slice(0, maxCount);\n\n updateFileList(newList);\n\n uploadFiles.forEach(file => {\n const rcFile = file.originFileObj as RcFile;\n\n const updateProgress = (percent: number) => {\n file.percent = percent;\n updateFileList([...newList]);\n };\n\n const markSuccess = () => {\n file.status = 'done';\n file.percent = 100;\n updateFileList([...newList]);\n };\n\n const markError = () => {\n file.status = 'error';\n updateFileList([...newList]);\n };\n\n if (customRequest) {\n customRequest({\n file: rcFile,\n onSuccess: markSuccess,\n onError: markError,\n onProgress: event => {\n const percent = Math.round(\n (event.loaded / (event.total || event.loaded)) *\n IMAGE_PROGRESS_PERCENT\n );\n\n updateProgress(percent);\n }\n });\n } else if (typeof action === 'string') {\n const formData = new FormData();\n formData.append(name, rcFile);\n\n fetch(action, {\n method,\n body: formData,\n headers,\n credentials: withCredentials ? 'include' : 'same-origin'\n })\n .then(res => {\n if (!res.ok) {\n throw new Error('Upload failed');\n }\n\n return res.json();\n })\n .then(markSuccess)\n .catch(markError);\n } else if (typeof action === 'function') {\n action(rcFile);\n markSuccess();\n } else {\n markSuccess();\n }\n });\n\n if (uploadRef.current) {\n uploadRef.current.value = '';\n }\n };\n\n const handleRemove = (uid: string) => {\n const filtered: UploadFile<RuleType>[] = [];\n\n let removedFile: UploadFile<RuleType> | undefined = undefined;\n\n fileList.forEach(file => {\n if (file.uid !== uid) {\n filtered.push(file);\n } else {\n removedFile = file;\n }\n });\n\n updateFileList(filtered);\n\n if (removedFile) {\n onRemove?.(removedFile);\n }\n };\n\n const handleClick = () => {\n if (!disabled && openFileDialogOnClick && uploadRef.current) {\n uploadRef.current.click();\n }\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-wrapper`,\n className,\n rootClassName,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n style={style}\n >\n <span\n className={clsx([`${prefixCls}`, `${prefixCls}-${listType}`])}\n onClick={handleClick}\n >\n {children}\n <input\n type=\"file\"\n ref={uploadRef}\n accept={accept}\n multiple={multiple}\n onChange={handleFileChange}\n className={`${prefixCls}-input`}\n disabled={disabled}\n {...(directory\n ? {\n directory: true,\n webkitdirectory: true\n }\n : {})}\n />\n </span>\n\n {showUploadList && fileList.length > 0 && (\n <ul className={`${prefixCls}-list ${prefixCls}-list-${listType}`}>\n {fileList.map(file => (\n <li\n key={file.uid}\n className={`${prefixCls}-item ${prefixCls}-item-${file.status}`}\n >\n <span\n className={`${prefixCls}-remove`}\n onClick={() => handleRemove(file.uid)}\n >\n {listType === 'picture' && (file.originFileObj || file.url) ? (\n // eslint-disable-next-line @next/next/no-img-element\n <img\n width={IMAGE_SIZE}\n height={IMAGE_SIZE}\n alt={file.name}\n src={file.url || URL.createObjectURL(file.originFileObj)}\n className={`${prefixCls}-item-thumbnail`}\n />\n ) : (\n <StampleIcon />\n )}\n </span>\n <div style={{ width: '100%' }}>\n <div\n className={`${prefixCls}-item-title`}\n style={{\n ...(file.status === 'uploading' ? { marginBottom: 12 } : {})\n }}\n >\n <span\n className={`${prefixCls}-item-remove-icon`}\n onClick={() => handleRemove(file.uid)}\n style={{ cursor: 'pointer', marginLeft: 'auto' }}\n role=\"button\"\n aria-label=\"Remove file\"\n >\n <TrashIcon />\n </span>\n </div>\n {file.status === 'uploading' && (\n <>\n <div className={`${prefixCls}-item-progress-line`} />\n <div\n className={`${prefixCls}-item-progress-line-percent`}\n style={{ width: `${file.percent}%` }}\n />\n </>\n )}\n </div>\n </li>\n ))}\n </ul>\n )}\n </div>\n );\n};\n\nexport default Upload;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport { prefixClsCheckbox } from '../../utils';\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from '@/components/Form/Form';\nimport { RuleType } from '../types';\nimport { FormInstance } from '../types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","useState","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","name","current","getFieldValue","getFieldsValue","nameList","reduce","acc","key","getFieldError","getFieldWarning","getFieldsError","Object","entries","map","err","setFieldValue","value","reset","undefined","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","Array","isArray","isFieldTouched","has","isFieldsTouched","allFieldsTouched","size","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","required","push","message","min","String","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","filter","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","prefixClsForm","prefixClsFormItem","prefixClsEmpty","prefixClsInput","prefixClsSelect","prefixClsCheckbox","prefixClsRadio","prefixClsTextArea","prefixClsUpload","prefixClsDatePicker","prefixClsRangePicker","prefixClsTimePicker","prefixClsButton","prefixClsSkeleton","parseValue","isNaN","Number","createArray","from","_","index","clsx","args","flatMap","arg","split","Boolean","join","REF_CLIENT_HEIGHT","FormItem","prefixCls","label","children","className","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","useEffect","clientHeight","position","marginTop","isRequired","errorMessage","React","noStyle","htmlFor","Children","child","isValidElement","Fragment","childProps","fieldValue","FormItemChildComponent","_extends","normalize","onChange","wasNormalize","setWasNormalize","handleChange","e","option","rawValue","target","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","displayName","createContext","Form","form","onFinish","onFinishFailed","rest","internalForm","handleSubmit","preventDefault","errorFields","Provider","onSubmit","Item","ClearIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","strokeLinecap","ArrowIcon","isOpen","strokeLinejoin","transform","LoadingIcon","focusable","CheckIcon","SearchIcon","CalendarIcon","SuccessIcon","ErrorIcon","DateDistanceIcon","TimeIcon","StampleIcon","TrashIcon","SpinerIcon","RangePicker","placeholder","disabled","format","prefix","allowClear","inputReadOnly","picker","locale","disabledDate","separator","defaultValue","bordered","containerRef","setIsOpen","selectedDates","setSelectedDates","hoveredDate","setHoveredDate","currentMonth","setCurrentMonth","Date","getMonth","currentYear","setCurrentYear","getFullYear","viewMode","setViewMode","localeMonths","shortMonths","i","toLocaleString","month","localeWeekdays","shortWeekDays","handleClickOutside","event","contains","addEventListener","removeEventListener","handleSelect","date","start","end","begin","toUTCString","formatDate","isMonthDisabled","to","isYearDisabled","year","replace","toString","padStart","getDate","isInRange","renderMonthYearSelector","monthOffset","baseYear","baseMonth","onClick","y","m","MONTH_LENGTH","renderCalendar","baseDate","firstDay","getDay","daysInMonth","prevMonthDays","prevMonth","totalDays","currentMonthDays","totalDisplayed","remaining","NEXT_DAYS_COUNT_AS_CURRENT_MUNTH","nextMonthDays","days","day","isSelected","toDateString","inRange","isSameMonth","onMouseEnter","NUMBER_SIX","handleClear","noBordered","readOnly","INPUT_SIZE","CONTENT_PADDING","DatePickerComponent","onCalendarChange","placement","getPopupContainer","showToday","suffixIcon","defaultOpen","initialDate","popupContainerRef","placementPossition","setPlacementPossition","DateNow","selectedDate","setSelectedDate","selectedDatePlaceholder","setSelectedDatePlaceholder","controller","AbortController","calculateDatePickerPopupPossition","signal","abort","firstDayOfMonth","formatted","range","clearSelection","datePickerContainerHeight","datePickerPossitionFromTop","getBoundingClientRect","top","datePickerPossitionFromBottom","window","innerHeight","bottom","datePickerContainerPopupHeight","nextMonth","prevMonthYear","nextMonthYear","nextDaysCount","opacity","clearIcon","show","idx","gridColumn","today","DatePicker","assign","HOURS","TIME_OPTION_PADDING","MINUTES_AND_SECONDS","ADD_EMPTY_SECTION_COUNT","pad","num","TimePicker","disabledTime","propValue","onBlur","onSelect","showNow","open","setOpen","innerValue","setInnerValue","tempValue","setTempValue","inputRef","popupRef","hourRef","minuteRef","secondRef","hour","minute","second","getTimeParts","scrollToTop","getHours","getMinutes","getSeconds","getDisabled","disabledHours","disabledMinutes","disabledSeconds","selectedIndex","el","querySelectorAll","scrollTo","offsetTop","behavior","updateTempValue","newDate","setHours","onSelectHour","h","auto","onSelectMinute","onSelectSecond","s","stopPropagation","handleShowNow","now","handleOkButton","handleOnChange","inputVal","trim","timeRegex","match","hStr","mStr","sStr","parseInt","renderOptions","hours","minutesSeconds","selectedHour","selectedMinute","selectedSecond","currentHour","currentMinute","userSelect","cursor","source","Textarea","forwardRef","autoSize","onPressEnter","onResize","styles","status","rootClassName","variant","inputValue","setInputValue","textareaRef","textarea","scrollHeight","clientWidth","handleKeyDown","onKeyDown","InputComponent","suffix","addonAfter","addonBefore","iconRender","internalValue","setInternalValue","iconRenderVisible","setIconRenderVisible","useImperativeHandle","input","blur","nativeElement","setSelectionRange","handleOnKeyDown","icon","Input","TextArea","RadioButton","checked","Radio","RadioGroup","id","buttonStyle","block","options","selectedValue","renderChildren","optionValue","optionLabel","cloneElement","RadioComponent","title","defaultChecked","onFocus","onMouseLeave","Group","Button","Option","render","selected","handleClick","Tag","onClose","closable","color","handleOnClick","backgroundColor","EmptyContent","description","cx","cy","rx","ry","LIST_HEIGHT","PADDING_PLACEMENT","PADDING_TAG_INPUT","SelectComponent","searchValue","autoClearSearchValue","filterOption","optionFilterProp","listHeight","menuItemSelectedIcon","mode","maxCount","loading","filterable","dropdownClassName","onSearch","onDeselect","onClear","showSearch","showArrow","notFoundContent","tagRender","dropdownRender","removeIcon","asTag","asMultiple","hasMode","checkModeInitialValue","isHover","setIsHover","selectRef","searchInputWidth","setSearchInputWidth","searchQuery","setSearchQuery","dropdownPosition","setDropdownPosition","setSelected","handleMouseEnter","handleMouseLeave","handleClearInputValue","useCallback","inputContainer","innerText","selectBox","dropdownHeight","windowHeight","spaceBelow","spaceAbove","positionStyle","left","handleSearch","handleEnterAddNewTag","newOptionValue","updatedSelected","newSelection","item","handleRemoveTag","ArrowContainer","popupContainer","extractedOptions","filteredOptions","valueToCheck","toLowerCase","handleTriggerClick","searchContent","getElementsByClassName","searchInput","getElementById","dataRender","dropdownContent","maxHeight","overflowY","Empty","maxWidth","minWidth","tag","find","display","textAlign","contentEditable","createPortal","Select","BUTTON_SKELETON_SIZE","small","large","default","SkeletonButton","active","applyElementStyle","AVATAR_DEFAULT_SIZE","AVATAR_GLOBAL_SIZE","GET_AVATAR_SKELETON_PROPS","avatar","shape","SkeletonAvatar","wrapperStyle","lineHeight","CUSTOm_ICON_SIZE","SkeletonImage","fontSize","INPUT_SKELETON_SIZE","SkeletonInput","PARAGRAPH_AVATAR_ROWS","PARAGRAPH_DEFAULT_ROWS","Skeleton","paragraph","round","teamLogo","GET_TITLE_SKELETON_PROPS","PARAGRAPH_ROWS","HAS_PHARAGRAPH","rows","Image","Avatar","ButtonBase","htmlType","classNames","customClassNames","iconPosition","ghost","danger","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","MyButton","innerLoading","setInnerLoading","delay","IMAGE_SIZE","IMAGE_PROGRESS_PERCENT","Upload","multiple","action","method","headers","directory","beforeUpload","onRemove","withCredentials","openFileDialogOnClick","fileList","controlledFileList","customRequest","accept","listType","showUploadList","defaultFileList","uploadRef","setFileList","file","uid","percent","updateFileList","newList","handleFileChange","rawFiles","files","uploadFiles","originFileObj","filtered","result","slice","rcFile","updateProgress","markSuccess","markError","onSuccess","onError","onProgress","Math","loaded","total","formData","FormData","append","fetch","body","credentials","res","ok","json","catch","handleRemove","removedFile","click","webkitdirectory","url","alt","src","URL","createObjectURL","marginBottom","marginLeft","role","Checkbox","onKeyPress","tabIndex","autoFocus","isChecked","internalChecked","setInternalChecked","useWatch","setValue"],"mappings":";;;AAAA,SAASA,WAAWA,CAACC,GAAG,EAAEC,GAAG,EAAE;EAC7B,IAAKA,GAAG,KAAK,KAAK,CAAC,EAAGA,GAAG,GAAG,EAAE,CAAA;AAC9B,EAAA,IAAIC,QAAQ,GAAGD,GAAG,CAACC,QAAQ,CAAA;AAE3B,EAAA,IAAI,CAACF,GAAG,IAAI,OAAOG,QAAQ,KAAK,WAAW,EAAE;AAAE,IAAA,OAAA;AAAQ,GAAA;AAEvD,EAAA,IAAIC,IAAI,GAAGD,QAAQ,CAACC,IAAI,IAAID,QAAQ,CAACE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AACpE,EAAA,IAAIC,KAAK,GAAGH,QAAQ,CAACI,aAAa,CAAC,OAAO,CAAC,CAAA;EAC3CD,KAAK,CAACE,IAAI,GAAG,UAAU,CAAA;EAEvB,IAAIN,QAAQ,KAAK,KAAK,EAAE;IACtB,IAAIE,IAAI,CAACK,UAAU,EAAE;MACnBL,IAAI,CAACM,YAAY,CAACJ,KAAK,EAAEF,IAAI,CAACK,UAAU,CAAC,CAAA;AAC3C,KAAC,MAAM;AACLL,MAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC,CAAA;AACzB,KAAA;AACF,GAAC,MAAM;AACLF,IAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC,CAAA;AACzB,GAAA;EAEA,IAAIA,KAAK,CAACM,UAAU,EAAE;AACpBN,IAAAA,KAAK,CAACM,UAAU,CAACC,OAAO,GAAGb,GAAG,CAAA;AAChC,GAAC,MAAM;IACLM,KAAK,CAACK,WAAW,CAACR,QAAQ,CAACW,cAAc,CAACd,GAAG,CAAC,CAAC,CAAA;AACjD,GAAA;AACF;;;;;;;;;;;;;;;ACZMe,MAAAA,OAAO,GAAGA,CACdC,aAA2C,GAAA,EAAE,EAC7CC,cAAqD,EACrDC,cAGS,KACO;EAChB,MAAMC,gBAAgB,GAAGC,MAAM,CAAC,IAAIC,GAAG,EAAU,CAAC,CAAA;AAClD,EAAA,MAAMC,QAAQ,GAAGF,MAAM,CAA4C,EAAE,CAAC,CAAA;AACtE,EAAA,MAAMG,WAAW,GAAGH,MAAM,CAA2B,EAAE,CAAC,CAAA;EAExD,MAAMI,OAAO,GAAGJ,MAAM,CAA4B;IAAE,GAAGJ,aAAAA;AAAe,GAAA,CAAC,CAAA;AACvE,EAAA,MAAMS,iBAAiB,GAAGL,MAAM,CAAoC,EAAE,CAAC,CAAA;EAEvE,MAAM,CAACM,UAAU,EAAEC,aAAa,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACnD,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGF,QAAQ,CAA2B,EAAE,CAAC,CAAA;AAElE,EAAA,MAAMG,gBAAgB,GAAGX,MAAM,CAE7B,EAAE,CAAC,CAAA;AAEL,EAAA,MAAMY,eAAe,GAAGZ,MAAM,CAE5B,EAAE,CAAC,CAAA;EAEL,SAASa,gBAAgBA,CAACC,IAAY,EAAA;AACpC,IAAA,OAAOT,iBAAiB,CAACU,OAAO,CAACD,IAAI,CAAC,IAAI,IAAI,CAAA;AAChD,GAAA;EAEA,SAASE,aAAaA,CAACF,IAAY,EAAA;AACjC,IAAA,OAAOV,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,CAAA;AAC9B,GAAA;EAEA,SAASG,cAAcA,CAACC,QAAmB,EAAA;IACzC,IAAI,CAACA,QAAQ,EAAE;MACb,OAAO;AAAE,QAAA,GAAGd,OAAO,CAACW,OAAAA;OAAS,CAAA;AAC/B,KAAA;IAEA,OAAOG,QAAQ,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAI;MAClCD,GAAG,CAACC,GAAG,CAAC,GAAGjB,OAAO,CAACW,OAAO,CAACM,GAAG,CAAC,CAAA;AAE/B,MAAA,OAAOD,GAAG,CAAA;KACX,EAAE,EAA+B,CAAC,CAAA;AACrC,GAAA;EAEA,SAASE,aAAaA,CAACR,IAAY,EAAA;AACjC,IAAA,OAAOL,MAAM,CAACK,IAAI,CAAC,IAAI,EAAE,CAAA;AAC3B,GAAA;EAEA,SAASS,eAAeA,CAACT,IAAY,EAAA;AACnC,IAAA,OAAOX,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,IAAI,EAAE,CAAA;AACxC,GAAA;EAEA,SAASU,cAAcA,GAAA;AACrB,IAAA,OAAOC,MAAM,CAACC,OAAO,CAACjB,MAAM,CAAC,CAACkB,GAAG,CAAC,CAAC,CAACb,IAAI,EAAEc,GAAG,CAAC,MAAM;MAAEd,IAAI;AAAEL,MAAAA,MAAM,EAAEmB,GAAAA;AAAG,KAAE,CAAC,CAAC,CAAA;AAC7E,GAAA;EAEA,SAASC,aAAaA,CACpBf,IAAY,EACZgB,KAAgB,EAChBrB,MAAiB,EACjBsB,KAAe,EAAA;IAEf,IACE,CAACA,KAAK,KACL,CAACC,SAAS,EAAE,IAAI,CAAC,CAACC,QAAQ,CAACH,KAAK,CAAC,IAAI1B,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,KAAKgB,KAAK,CAAC,EACtE;AACA,MAAA,OAAA;AACF,KAAA;AAEA1B,IAAAA,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGgB,KAAK,CAAA;AAC7B/B,IAAAA,gBAAgB,CAACgB,OAAO,CAACmB,GAAG,CAACpB,IAAI,CAAC,CAAA;AAElC,IAAA,IAAI,CAACL,MAAM,EAAE0B,MAAM,EAAE;AACnBC,MAAAA,aAAa,CAACtB,IAAI,CAAC,CAACuB,IAAI,CAAC,MAAK;AAC5B,QAAA,MAAMC,SAAS,GAAGrB,cAAc,EAAE,CAAA;AAClCN,QAAAA,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,EAAEyB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACV,KAAK,CAAC,CAAC,CAAA;QACpElB,eAAe,CAACG,OAAO,CAACwB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACF,SAAS,CAAC,CAAC,CAAA;AAEhE,QAAA,IAAIxC,cAAc,EAAE;AAClBA,UAAAA,cAAc,CAAC;AAAE,YAAA,CAACgB,IAAI,GAAGgB,KAAAA;WAAO,EAAEQ,SAAS,CAAC,CAAA;AAC9C,SAAA;AAEA,QAAA,IAAIzC,cAAc,EAAE;AAClBA,UAAAA,cAAc,CAAC,CAAC;YAAEiB,IAAI;AAAEgB,YAAAA,KAAAA;AAAK,WAAE,CAAC,CAAC,CAAA;AACnC,SAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLpB,MAAAA,SAAS,CAAC;AAAE,QAAA,CAACI,IAAI,GAAGL,MAAAA;AAAQ,OAAA,CAAC,CAAA;AAC/B,KAAA;AACF,GAAA;EAEA,SAASgC,cAAcA,CAACC,MAA0C,EAAA;IAChEjB,MAAM,CAACC,OAAO,CAACgB,MAAM,CAAC,CAACH,OAAO,CAAC,CAAC,CAACzB,IAAI,EAAEgB,KAAK,CAAC,KAC3CD,aAAa,CAACf,IAAI,EAAEgB,KAAkB,CAAC,CACxC,CAAA;AACH,GAAA;EAEA,SAASa,SAASA,CAACC,MAAmB,EAAA;IACpCA,MAAM,CAACL,OAAO,CAAC,CAAC;MAAEzB,IAAI;MAAEgB,KAAK;AAAErB,MAAAA,MAAAA;KAAQ,KACrCoB,aAAa,CAACgB,KAAK,CAACC,OAAO,CAAChC,IAAI,CAAC,GAAGA,IAAI,CAAC,CAAC,CAAC,GAAGA,IAAI,EAAEgB,KAAK,EAAErB,MAAM,CAAC,CACnE,CAAA;AACH,GAAA;EAEA,SAASsC,cAAcA,CAACjC,IAAY,EAAA;AAClC,IAAA,OAAOf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAA;AAC3C,GAAA;AAEA,EAAA,SAASmC,eAAeA,CAAC/B,QAAmB,EAAEgC,gBAAgB,GAAG,KAAK,EAAA;IACpE,IAAI,CAAChC,QAAQ,EAAE;AACb,MAAA,OAAOnB,gBAAgB,CAACgB,OAAO,CAACoC,IAAI,GAAG,CAAC,CAAA;AAC1C,KAAA;AAEA,IAAA,OAAOD,gBAAgB,GACnBhC,QAAQ,CAACkC,KAAK,CAACtC,IAAI,IAAIf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAC,GAC1DI,QAAQ,CAACmC,IAAI,CAACvC,IAAI,IAAIf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAC,CAAA;AAC/D,GAAA;EAEA,SAASwC,iBAAiBA,CAACxC,IAAY,EAAA;IACrC,OAAO,CAAC,CAACA,IAAI,CAAA;AACf,GAAA;AAEA,EAAA,SAASyC,aAAaA,CAACzC,IAAY,EAAE0C,QAAsB,EAAE,EAAA;AAC3D,IAAA,IAAI,EAAE1C,IAAI,IAAIV,OAAO,CAACW,OAAO,CAAC,EAAE;MAC9BX,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGlB,aAAa,GAAGkB,IAAI,CAAC,CAAA;AAC/C,KAAA;AAEAZ,IAAAA,QAAQ,CAACa,OAAO,CAACD,IAAI,CAAC,GAAG0C,KAAK,CAAA;AAChC,GAAA;EAEA,eAAepB,aAAaA,CAACtB,IAAY,EAAA;AACvC,IAAA,MAAMgB,KAAK,GAAG1B,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,CAAA;IACnC,MAAM0C,KAAK,GAAGtD,QAAQ,CAACa,OAAO,CAACD,IAAI,CAAC,IAAI,EAAE,CAAA;IAC1C,MAAM2C,WAAW,GAAa,EAAE,CAAA;IAChC,MAAMC,aAAa,GAAa,EAAE,CAAA;AAElC,IAAA,MAAMC,OAAO,CAACC,GAAG,CACf,CAACJ,KAAK,CAAC,CAACK,IAAI,CAAC,CAAC,CAAC,CAAClC,GAAG,CAAC,MAAOmC,IAAe,IAAI;MAC5CA,IAAI,GAAG,OAAOA,IAAI,KAAK,UAAU,GAAGA,IAAI,CAACC,YAAY,CAAC,GAAGD,IAAI,CAAA;AAE7D,MAAA,IACEA,IAAI,CAACE,QAAQ,KACZlC,KAAK,KAAKE,SAAS,IAClBF,KAAK,KAAK,IAAI,IACdA,KAAK,KAAK,EAAE,IACXe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,IAAI,CAACA,KAAK,CAACK,MAAO,CAAC,EAC1C;QACAsB,WAAW,CAACQ,IAAI,CAACH,IAAI,CAACI,OAAO,IAAI,wBAAwB,CAAC,CAAA;AAC5D,OAAA;AAEA,MAAA,IACE,CAAC,OAAOpC,KAAK,KAAK,QAAQ,IACxB,OAAOA,KAAK,KAAK,QAAQ,IACzBe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,KACtBgC,IAAI,CAACK,GAAG,KAAKnC,SAAS,IACtBoC,MAAM,CAACtC,KAAK,CAAC,CAACK,MAAM,GAAG2B,IAAI,CAACK,GAAG,EAC/B;AACAV,QAAAA,WAAW,CAACQ,IAAI,CACdH,IAAI,CAACI,OAAO,IAAI,CAAA,iBAAA,EAAoBJ,IAAI,CAACK,GAAG,CAAA,WAAA,CAAa,CAC1D,CAAA;AACH,OAAA;AAEA,MAAA,IACE,CAAC,OAAOrC,KAAK,KAAK,QAAQ,IACxB,OAAOA,KAAK,KAAK,QAAQ,IACzBe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,KACtBgC,IAAI,CAACO,GAAG,KAAKrC,SAAS,IACtBoC,MAAM,CAACtC,KAAK,CAAC,CAACK,MAAM,GAAG2B,IAAI,CAACO,GAAG,EAC/B;AACAZ,QAAAA,WAAW,CAACQ,IAAI,CACdH,IAAI,CAACI,OAAO,IAAI,CAAA,gBAAA,EAAmBJ,IAAI,CAACO,GAAG,CAAA,WAAA,CAAa,CACzD,CAAA;AACH,OAAA;AAEA,MAAA,IAAIP,IAAI,CAACQ,OAAO,IAAI,CAACR,IAAI,CAACQ,OAAO,CAACC,IAAI,CAACH,MAAM,CAACtC,KAAK,CAAC,CAAC,EAAE;QACrD2B,WAAW,CAACQ,IAAI,CAACH,IAAI,CAACI,OAAO,IAAI,gBAAgB,CAAC,CAAA;AACpD,OAAA;AAEA,MAAA,IAAIJ,IAAI,CAACU,cAAc,IAAI,CAACV,IAAI,CAACU,cAAc,CAACD,IAAI,CAACH,MAAM,CAACtC,KAAK,CAAC,CAAC,EAAE;QACnE4B,aAAa,CAACO,IAAI,CAACH,IAAI,CAACW,cAAc,IAAI,gBAAgB,CAAC,CAAA;AAC7D,OAAA;MAEA,IAAIX,IAAI,CAACY,SAAS,EAAE;QAClB,IAAI;AACF,UAAA,MAAMZ,IAAI,CAACY,SAAS,CAClBZ,IAAI,EACJhC,KAAK,EACJ6C,KAAc,IAAKA,KAAK,IAAIlB,WAAW,CAACQ,IAAI,CAACU,KAAK,CAAC,CACrD,CAAA;SACF,CAAC,OAAOA,KAAK,EAAE;AACdlB,UAAAA,WAAW,CAACQ,IAAI,CACdU,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAACT,OAAO,GAAGE,MAAM,CAACO,KAAK,CAAC,CACvD,CAAA;AACH,SAAA;AACF,OAAA;AACF,KAAC,CAAC,CACH,CAAA;IAEDjE,SAAS,CAACmE,IAAI,KAAK;AAAE,MAAA,GAAGA,IAAI;AAAE,MAAA,CAAC/D,IAAI,GAAG2C,WAAAA;AAAa,KAAA,CAAC,CAAC,CAAA;AACrDtD,IAAAA,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,GAAG4C,aAAa,CAAA;AAEzC,IAAA,OAAOD,WAAW,CAACtB,MAAM,KAAK,CAAC,CAAA;AACjC,GAAA;EAEA,eAAe2C,cAAcA,CAAC5D,QAAmB,EAAA;IAC/C,MAAM6D,gBAAgB,GAAG7D,QAAQ,IAAIO,MAAM,CAACuD,IAAI,CAAC5E,OAAO,CAACW,OAAO,CAAC,CAAA;AACjE,IAAA,MAAMkE,OAAO,GAAG,MAAMtB,OAAO,CAACC,GAAG,CAC/BmB,gBAAgB,CAACpD,GAAG,CAACb,IAAI,IAAIsB,aAAa,CAACtB,IAAI,CAAC,CAAC,CAClD,CAAA;AAED,IAAA,OAAOmE,OAAO,CAAC7B,KAAK,CAAC8B,KAAK,IAAIA,KAAK,CAAC,CAAA;AACtC,GAAA;EAEA,SAASC,WAAWA,CAACjE,QAAmB,EAAA;IACtC,IAAIA,QAAQ,EAAEiB,MAAM,EAAE;AACpBjB,MAAAA,QAAQ,CAACqB,OAAO,CAAEzB,IAAY,IAAI;QAChCV,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGlB,aAAa,CAACkB,IAAI,CAAC,CAAA;AAC3Cf,QAAAA,gBAAgB,CAACgB,OAAO,CAACqE,MAAM,CAACtE,IAAI,CAAC,CAAA;AACrC,QAAA,OAAOX,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,CAAA;QAChCJ,SAAS,CAACmE,IAAI,KAAK;AAAE,UAAA,GAAGA,IAAI;AAAE,UAAA,CAAC/D,IAAI,GAAG,EAAA;AAAI,SAAA,CAAC,CAAC,CAAA;QAC5Ce,aAAa,CAACf,IAAI,EAAElB,aAAa,CAACkB,IAAI,CAAC,EAAEkB,SAAS,EAAE,IAAI,CAAC,CAAA;AAC3D,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLjC,MAAAA,gBAAgB,CAACgB,OAAO,CAACsE,KAAK,EAAE,CAAA;AAChClF,MAAAA,WAAW,CAACY,OAAO,GAAG,EAAE,CAAA;MAExBU,MAAM,CAACuD,IAAI,CAAC5E,OAAO,CAACW,OAAO,CAAC,CAACwB,OAAO,CAACzB,IAAI,IAAG;QAC1Ce,aAAa,CAACf,IAAI,EAAElB,aAAa,CAACkB,IAAI,CAAC,EAAEkB,SAAS,EAAE,IAAI,CAAC,CAAA;AAC3D,OAAC,CAAC,CAAA;AACJ,KAAA;AAEApB,IAAAA,eAAe,CAACG,OAAO,CAACwB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACvB,cAAc,EAAE,CAAC,CAAC,CAAA;AACvEV,IAAAA,aAAa,CAACsE,IAAI,IAAI,CAACA,IAAI,CAAC,CAAA;AAC9B,GAAA;EAEA,eAAeS,MAAMA,GAAA;IACnB,OAAO,CAAC,MAAMR,cAAc,EAAE,IAAI1E,OAAO,CAACW,OAAO,GAAGiB,SAAS,CAAA;AAC/D,GAAA;AAEA,EAAA,SAASuD,gBAAgBA,CACvBzE,IAAY,EACZ0B,QAAoC,EAAA;AAEpC,IAAA,IAAI,CAAC7B,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,EAAE;AACnCH,MAAAA,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,GAAG,EAAE,CAAA;AACrC,KAAA;IAEAH,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,CAACmD,IAAI,CAACzB,QAAQ,CAAC,CAAA;AAE7C,IAAA,OAAO,MAAK;MACV7B,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,GAAGH,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,CAAC0E,MAAM,CACpEC,EAAE,IAAIA,EAAE,KAAKjD,QAAQ,CACtB,CAAA;KACF,CAAA;AACH,GAAA;EAEA,SAASkD,eAAeA,CACtBlD,QAAqD,EAAA;AAErD5B,IAAAA,eAAe,CAACG,OAAO,CAACkD,IAAI,CAACzB,QAAQ,CAAC,CAAA;AAEtC,IAAA,OAAO,MAAK;AACV5B,MAAAA,eAAe,CAACG,OAAO,GAAGH,eAAe,CAACG,OAAO,CAACyE,MAAM,CACtDC,EAAE,IAAIA,EAAE,KAAKjD,QAAQ,CACtB,CAAA;KACF,CAAA;AACH,GAAA;AAEA,EAAA,SAASmD,iBAAiBA,CACxBC,KAAe,EACfpD,QAAqD,EAAA;AAErD,IAAA,MAAMqD,cAAc,GAAGD,KAAK,CAACjE,GAAG,CAACb,IAAI,IACnCyE,gBAAgB,CAACzE,IAAI,EAAE,MAAK;AAC1B,MAAA,MAAMgF,aAAa,GAAG7E,cAAc,CAAC2E,KAAK,CAAC,CAAA;MAC3CpD,QAAQ,CAACsD,aAAa,CAAC,CAAA;AACzB,KAAC,CAAC,CACH,CAAA;AAED,IAAA,OAAO,MAAK;MACVD,cAAc,CAACtD,OAAO,CAACwD,WAAW,IAAIA,WAAW,EAAE,CAAC,CAAA;KACrD,CAAA;AACH,GAAA;AAEA,EAAA,MAAMhC,YAAY,GAAiB;IACjCuB,MAAM;IACN3C,SAAS;IACTwC,WAAW;IACX7D,aAAa;IACbiC,aAAa;IACb1B,aAAa;IACbb,aAAa;IACb8D,cAAc;IACdrC,cAAc;IACdxB,cAAc;IACd8B,cAAc;IACdvB,cAAc;IACdyB,eAAe;IACf1B,eAAe;IACf+B,iBAAiB;IACjBiC,gBAAgB;IAChBG,eAAe;IACf7F,cAAc;IACdC,cAAc;IACde,gBAAgB;IAChB8E,iBAAiB;AACjBrF,IAAAA,UAAAA;GACD,CAAA;AAED,EAAA,OAAOyD,YAAY,CAAA;AACrB;;ACpUO,MAAMiC,aAAa,GAAG,UAAU,CAAA;AAChC,MAAMC,iBAAiB,GAAG,eAAe,CAAA;AACzC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,iBAAiB,GAAG,cAAc,CAAA;AACxC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,iBAAiB,GAAG,cAAc,CAAA;AACxC,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,mBAAmB,GAAG,gBAAgB,CAAA;AAC5C,MAAMC,oBAAoB,GAAG,iBAAiB,CAAA;AAC9C,MAAMC,mBAAmB,GAAG,gBAAgB,CAAA;AAC5C,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,iBAAiB,GAAG,cAAc;;ACXxC,MAAMC,UAAU,GAAIhF,KAAe,IAAc;EACtD,IAAIA,KAAK,KAAK,MAAM,EAAE;AACpB,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;EAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;AACrB,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;EAEA,IAAI,CAACiF,KAAK,CAACC,MAAM,CAAClF,KAAK,CAAC,CAAC,EAAE;IACzB,OAAOkF,MAAM,CAAClF,KAAK,CAAC,CAAA;AACtB,GAAA;AAEA,EAAA,OAAOA,KAAK,CAAA;AACd,CAAC,CAAA;AAEK,SAAUmF,WAAWA,CAAC9E,MAAc,EAAA;EACxC,OAAOU,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAAA;AAAQ,GAAA,EAAE,CAACgF,CAAC,EAAEC,KAAK,KAAKA,KAAK,CAAC,CAAA;AACpD,CAAA;AAEgB,SAAAC,IAAIA,CAAC,GAAGC,IAAgB,EAAA;AACtC,EAAA,OAAOA,IAAI,CACRC,OAAO,CAACC,GAAG,IAAG;IACb,IAAI,CAACA,GAAG,EAAE;AACR,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;AAEA,IAAA,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;MAC3B,OAAO,CAACA,GAAG,CAAC,CAAA;AACd,KAAA;AAEA,IAAA,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;AAC3B,MAAA,OAAO,CAACpD,MAAM,CAACoD,GAAG,CAAC,CAAC,CAAA;AACtB,KAAA;AAEA,IAAA,IAAI3E,KAAK,CAACC,OAAO,CAAC0E,GAAG,CAAC,EAAE;MACtB,OAAOH,IAAI,CAAC,GAAGG,GAAG,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;AAChC,KAAA;AAEA,IAAA,IAAI,OAAOD,GAAG,KAAK,QAAQ,EAAE;AAC3B,MAAA,OAAO/F,MAAM,CAACC,OAAO,CAAC8F,GAAG,CAAC,CACvBhC,MAAM,CAAC,CAAC,GAAG1D,KAAK,CAAC,KAAK4F,OAAO,CAAC5F,KAAK,CAAC,CAAC,CACrCH,GAAG,CAAC,CAAC,CAACN,GAAG,CAAC,KAAKA,GAAG,CAAC,CAAA;AACxB,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACV,CAAC,CACDmE,MAAM,CAACkC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC,CAAA;AACd;;;;;AC5BA,MAAMC,iBAAiB,GAAG,EAAE,CAAA;AAEtBC,MAAAA,QAAQ,GAAGA,CAAC;AAChBC,EAAAA,SAAS,GAAG7B,iBAAiB;EAC7BnF,IAAI;EACJiH,KAAK;AACLvE,EAAAA,KAAK,GAAG,EAAE;EACVwE,QAAQ;AACRC,EAAAA,SAAS,GAAG,EAAE;AACdC,EAAAA,MAAM,GAAG,UAAU;EACnBhJ,KAAK,GAAG,EAAE;EACViJ,aAAa;AACbC,EAAAA,YAAY,GAAG,EAAE;EACjBC,YAAY;EACZC,aAAa;EACb,GAAGC,KAAAA;AAAK,CACM,KAAI;AAClB,EAAA,MAAMC,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;AAE3C,EAAA,MAAMC,QAAQ,GAAG3I,MAAM,CAAkB,IAAI,CAAC,CAAA;EAE9C,IAAI,CAACwI,WAAW,EAAE;AAChB,IAAA,MAAM,IAAI5D,KAAK,CAAC,qCAAqC,CAAC,CAAA;AACxD,GAAA;EAEA,MAAM;IACJtE,UAAU;IACViD,aAAa;IACbjC,aAAa;IACbN,aAAa;IACba,aAAa;IACbhB,gBAAgB;IAChB8E,iBAAiB;AACjBb,IAAAA,cAAAA;AACD,GAAA,GAAG0D,WAAW,CAAA;EAEf,MAAMI,YAAY,GAAGC,OAAO,CAC1B,MAAM,CAAChG,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAAExC,MAAM,CAACkC,OAAO,CAAC,EACvE,CAACM,QAAQ,CAAC,CACX,CAAA;AAEDc,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIhI,IAAI,IAAI,CAACD,gBAAgB,CAACC,IAAI,CAAC,EAAE;AACnCyC,MAAAA,aAAa,CAACzC,IAAI,EAAE0C,KAAK,CAAC,CAAA;AAC5B,KAAA;AACF,GAAC,EAAE,CAAC1C,IAAI,EAAE0C,KAAK,CAAC,CAAC,CAAA;AAEjBsF,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIT,YAAY,EAAE;AAChBxG,MAAAA,aAAa,CAACf,IAAI,EAAEuH,YAAY,CAAC,CAAA;AACnC,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAENS,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIhI,IAAI,IAAIsH,YAAY,CAACjG,MAAM,GAAG,CAAC,EAAE;AACnC,MAAA,MAAM4D,WAAW,GAAGJ,iBAAiB,CAACyC,YAAY,EAAE,MAAK;AACvDtD,QAAAA,cAAc,CAAC,CAAChE,IAAI,CAAC,CAAC,CAAA;AACxB,OAAC,CAAC,CAAA;AAEF,MAAA,OAAO,MAAK;AACViF,QAAAA,WAAW,EAAE,CAAA;OACd,CAAA;AACH,KAAA;AACF,GAAC,EAAE,CAACqC,YAAY,EAAEtH,IAAI,CAAC,CAAC,CAAA;AAExBgI,EAAAA,SAAS,CAAC,MAAK;IACb,IACEH,QAAQ,CAAC5H,OAAO,IAChB4H,QAAQ,CAAC5H,OAAO,EAAEgI,YAAY,IAAInB,iBAAiB,EACnD;AACAe,MAAAA,QAAQ,CAAC5H,OAAO,CAAC7B,KAAK,CAAC8J,QAAQ,GAAG,UAAU,CAAA;AAC5CL,MAAAA,QAAQ,CAAC5H,OAAO,CAAC7B,KAAK,CAAC+J,SAAS,GAAG,OAAO,CAAA;AAC5C,KAAA;AACF,GAAC,EAAE,CAACN,QAAQ,CAAC5H,OAAO,CAAC,CAAC,CAAA;AAEtB,EAAA,MAAMmI,UAAU,GAAGL,OAAO,CACxB,MAAMrF,KAAK,CAACH,IAAI,CAAES,IAAc,IAAKA,IAAI,CAACE,QAAQ,CAAC,EACnD,CAACR,KAAK,CAAC,CACR,CAAA;EAED,MAAM2F,YAAY,GAAG7H,aAAa,CAAC6G,aAAa,IAAIrH,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;EAE9D,oBACEsI,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACED,IAAAA,KAAK,EAAEA,KAAM;AACb+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;MACE,CAACI,MAAM,GAAGA,MAAM;MAChB,CAACD,SAAS,GAAGA,SAAS;MACtBoB,OAAO,EAAEd,KAAK,CAACc,OAAAA;AAChB,KAAA,CACF,CAAA;AAAE,GAAA,EAEF,CAACd,KAAK,CAACc,OAAO,KAAKtB,KAAK,IAAIjH,IAAI,CAAC,iBAChCsI,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;IAAO8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACwB,IAAAA,OAAO,EAAExI,IAAAA;GAC9CiH,EAAAA,KAAK,IAAIjH,IAAI,EAAC,GACf,EAACoI,UAAU,iBAAIE,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,SAAA,CAAA;AAAY,GAAA,EAAC,GAAO,CAE3D,CACR,EAEAyB,QAAQ,CAAC5H,GAAG,CAACiH,YAAY,EAAE,CAACY,KAAK,EAAEnI,GAAG,KAAI;IACzC,iBAAIoI,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACpK,IAAI,KAAKsK,QAAQ,EAAE;MACpD,MAAM;QAAE5H,KAAK;QAAE,GAAG6H,UAAAA;OAAY,GAAGH,KAAK,CAACjB,KAAK,CAAA;MAC5C,MAAMqB,UAAU,GACd5I,aAAa,CAACmH,aAAa,IAAIrH,IAAI,CAAC,IAAIuH,YAAY,CAAA;MAEtD,oBACEe,KAAA,CAAAjK,aAAA,CAAC0K,sBAAsB,EAAAC,QAAA,KACjBH,UAAU,EAAA;AACd7I,QAAAA,IAAI,EAAEA,IAAK;AACX0I,QAAAA,KAAK,EAAEA,KAAM;AACb1H,QAAAA,KAAK,EAAEA,KAAM;AACb8H,QAAAA,UAAU,EAAEA,UAAW;QACvBP,OAAO,EAAEd,KAAK,CAACc,OAAQ;QACvBU,SAAS,EAAExB,KAAK,CAACwB,SAAU;AAC3B1I,QAAAA,GAAG,EAAE,CAAA,EAAGA,GAAG,CAAA,CAAA,EAAIf,UAAU,CAAG,CAAA;AAC5BqE,QAAAA,KAAK,EAAE+C,OAAO,CAACyB,YAAY,CAAE;AAC7BtH,QAAAA,aAAa,EAAEA,aAAc;AAC7BsG,QAAAA,aAAa,EAAEA,aAAc;AAC7BG,QAAAA,aAAa,EAAEA,aAAAA;AACf;AACA;AAAA;AACAnF,QAAAA,IAAI,EAAEwG,UAAU,CAACxG,IAAI,IAAIoF,KAAK,CAACpF,IAAAA;AAAK,OAAA,CACpC,CAAA,CAAA;AAEN,KAAA;AAEA,IAAA,OAAOqG,KAAK,CAAA;GACb,CAAC,EAED,CAACjB,KAAK,CAACc,OAAO,IAAIF,YAAY,iBAC7BC,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAMN,IAAAA,GAAG,EAAE8J,QAAS;IAACV,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;GACzCqB,EAAAA,YACG,CAEL,CAAC,CAAA;AAEV,EAAC;AAED,MAAMU,sBAAsB,GAAGA,CAAC;EAC9BL,KAAK;EACL1I,IAAI;EACJ6D,KAAK;EACLiF,UAAU;EACV/H,aAAa;EACbmI,QAAQ;EACR7B,aAAa;EACb4B,SAAS;EACT,GAAGxB,KAAAA;AACyB,CAAA,KAAI;AAChC,EAAA,MAAMC,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;EAE3C,MAAM,CAACuB,YAAY,EAAEC,eAAe,CAAC,GAAG1J,QAAQ,CAAC,KAAK,CAAC,CAAA;EAEvD,MAAM;AAAES,IAAAA,cAAAA;AAAc,GAAE,GAAGuH,WAAW,IAAI,EAAE,CAAA;AAE5C,EAAA,MAAM2B,YAAY,GAAGA,CAACC,CAAqB,EAAEC,MAAoB,KAAI;AACnE,IAAA,IAAIC,QAAQ,GAAkCF,CAAC,EAAEG,MAAM,GACnDH,CAAC,CAACG,MAAM,CAACzI,KAAK,GACdsI,CAAC,CAAA;AAEL,IAAA,IAAIL,SAAS,EAAE;AACb,MAAA,MAAMS,SAAS,GAAGZ,UAAU,IAAIrB,KAAK,CAACzG,KAAK,CAAA;AAC3C,MAAA,MAAMQ,SAAS,GAAGrB,cAAc,IAAI,CAAA;MAEpCqJ,QAAQ,GAAGP,SAAS,CAACO,QAAQ,EAAEE,SAAS,EAAElI,SAAS,CAAC,CAAA;MAEpD,IAAIgI,QAAQ,KAAKE,SAAS,EAAE;AAC1BJ,QAAAA,CAAC,CAACG,MAAM,CAACzI,KAAK,GAAGwI,QAAQ,CAAA;AAEzBJ,QAAAA,eAAe,CAACrF,IAAI,IAAI,CAACA,IAAI,CAAC,CAAA;AAE9B,QAAA,MAAM4F,OAAO,GAAGC,UAAU,CAAC,MAAK;UAE5B3L,QAAQ,CAAC4L,aAAa,CAAC,CAAU7J,OAAAA,EAAAA,IAAI,IAAI,CAC1C,EAAE8J,KAAK,EAAE,CAAA;UAEVC,YAAY,CAACJ,OAAO,CAAC,CAAA;SACtB,EAAE,CAAC,CAAC,CAAA;AAEL,QAAA,OAAA;AACF,OAAA;AACF,KAAA;AAEA5I,IAAAA,aAAa,CAACsG,aAAa,IAAIrH,IAAI,EAAEwJ,QAAQ,CAAC,CAAA;AAC9CN,IAAAA,QAAQ,GAAGI,CAAC,EAAEC,MAAM,CAAC,CAAA;GACtB,CAAA;EAED,oBACEjB,KAAA,CAAAjK,aAAA,CAACqK,KAAK,CAACpK,IAAI,EAAA0K,QAAA,CAAA,EAAA,EACLvB,KAAK,EAAA;AACTzH,IAAAA,IAAI,EAAEA,IAAK;AACXkJ,IAAAA,QAAQ,EAAEG,YAAAA;AAAa,GAAA,EAClBxF,KAAK,GAAG;AAAEA,IAAAA,KAAAA;GAAO,GAAG,EAAE,EAAA;AAC3BtD,IAAAA,GAAG,EAAE,CAAA,EAAGP,IAAI,CAAA,CAAA,EAAImJ,YAAY,CAAG,CAAA;AAC/BnI,IAAAA,KAAK,EAAE8H,UAAU,IAAIrB,KAAK,CAACzG,KAAAA;AAAM,GAAA,CACjC,CAAA,CAAA;AAEN,CAAC,CAAA;AAED+F,QAAQ,CAACiD,WAAW,GAAG,UAAU;;AC/M1B,MAAMpC,WAAW,gBAAGqC,aAAa,CAAsB,IAAI,CAAC,CAAA;AAE7DC,MAAAA,IAAI,GAAgDA,CAAC;EACzDhD,QAAQ;EACRiD,IAAI;EACJ/L,KAAK,GAAG,EAAE;AACV4I,EAAAA,SAAS,GAAG9B,aAAa;AACzBiC,EAAAA,SAAS,GAAG,EAAE;EACdiD,QAAQ;EACRC,cAAc;EACdvL,aAAa,GAAG,EAAE;EAClBE,cAAc;EACdD,cAAc;AACdqI,EAAAA,MAAM,GAAG,YAAY;EACrB,GAAGkD,IAAAA;AAAI,CACR,KAAI;EACH,MAAMC,YAAY,GAAG1L,OAAO,CAACC,aAAa,EAAEC,cAAc,EAAEC,cAAc,CAAC,CAAA;AAC3E,EAAA,MAAMiE,YAAY,GAAGkH,IAAI,IAAII,YAAY,CAAA;AACzC,EAAA,MAAMjL,OAAO,GAAGJ,MAAM,CAAkB,IAAI,CAAC,CAAA;AAE7C,EAAA,MAAMsL,YAAY,GAAG,MAAOlB,CAAiB,IAAI;IAC/CA,CAAC,CAACmB,cAAc,EAAE,CAAA;AAElB,IAAA,IAAI,MAAMxH,YAAY,CAACe,cAAc,EAAE,EAAE;AACvCoG,MAAAA,QAAQ,GAAGnH,YAAY,CAAC9C,cAAc,EAAE,CAAC,CAAA;KAC1C,MAAM,IAAIkK,cAAc,EAAE;AACzB,MAAA,MAAMK,WAAW,GAAGzH,YAAY,CAACvC,cAAc,EAAE,CAAA;AACjD2J,MAAAA,cAAc,CAAC;AAAEzI,QAAAA,MAAM,EAAEqB,YAAY,CAAC9C,cAAc,EAAE;AAAEuK,QAAAA,WAAAA;AAAa,OAAA,CAAC,CAAA;AACxE,KAAA;GACD,CAAA;EAED,MAAM5C,YAAY,GAAGC,OAAO,CAC1B,MAAM,CAAChG,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAAExC,MAAM,CAACkC,OAAO,CAAC,EACvE,CAACM,QAAQ,CAAC,CACX,CAAA;AAEDc,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIjJ,cAAc,EAAE;MAClBkE,YAAY,CAAClE,cAAc,GAAGA,cAAc,CAAA;AAC9C,KAAA;AAEA,IAAA,IAAIC,cAAc,EAAE;MAClBiE,YAAY,CAACjE,cAAc,GAAGA,cAAc,CAAA;AAC9C,KAAA;GACD,EAAE,CAACiE,YAAY,EAAElE,cAAc,EAAEC,cAAc,CAAC,CAAC,CAAA;AAElD,EAAA,oBACEsJ,KAAA,CAAAjK,aAAA,CAACuJ,WAAW,CAAC+C,QAAQ,EAAA;AAAC3J,IAAAA,KAAK,EAAEiC,YAAAA;GAC3BqF,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACED,IAAAA,KAAK,EAAEA,KAAM;AACbL,IAAAA,GAAG,EAAEuB,OAAQ;AACbsL,IAAAA,QAAQ,EAAEJ,YAAa;AACvBrD,IAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,CAAA,EAAIG,SAAS,CAAA,CAAA;AAAG,GAAA,EAEtCsB,QAAQ,CAAC5H,GAAG,CAACiH,YAAY,EAAEY,KAAK,IAAG;IAClC,iBAAIC,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACpK,IAAI,KAAKsK,QAAQ,EAAE;AACpD;AACA;MACA,MAAM;QAAE,GAAGC,UAAAA;OAAY,GAAGH,KAAK,CAACjB,KAAK,CAAA;MAErC,oBACEa,KAAA,CAAAjK,aAAA,CAACqK,KAAK,CAACpK,IAAI,EAAA0K,QAAA,CAAA,EAAA,EACLH,UAAU,EAAA;AACdH,QAAAA,KAAK,EAAEA,KAAM;AACbrG,QAAAA,IAAI,EAAEwG,UAAU,CAACxG,IAAI,IAAIiI,IAAI,CAACjI,IAAK;AACnC+E,QAAAA,MAAM,EAAEyB,UAAU,CAACzB,MAAM,IAAIA,MAAAA;AAAO,OAAA,CAAA,CACpC,CAAA;AAEN,KAAA;AAEA,IAAA,OAAOsB,KAAK,CAAA;GACb,CACG,CACc,CAAC,CAAA;AAE3B,EAAC;AAEDwB,IAAI,CAACW,IAAI,GAAG9D,QAAQ;;;;;AC/FpB,MAAM+D,SAAS,GAAGA,mBAChBxC,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE0M,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXC,EAAAA,OAAO,EAAC,WAAW;AACnBC,EAAAA,IAAI,EAAC,MAAM;AACXC,EAAAA,KAAK,EAAC,4BAAA;AAA4B,CAElC7C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE+M,EAAAA,CAAC,EAAC,sBAAsB;AACxBC,EAAAA,MAAM,EAAC,cAAc;AACrBC,EAAAA,WAAW,EAAC,GAAG;AACfC,EAAAA,aAAa,EAAC,OAAA;AAAO,CAEzB,CAAK,EACN;AAEKC,MAAAA,SAAS,GAAGA,CAAC;AAAEC,EAAAA,MAAAA;AAA6B,CAAA,kBAChDnD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE0M,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXC,EAAAA,OAAO,EAAC,WAAW;AACnBC,EAAAA,IAAI,EAAC,MAAM;AACXC,EAAAA,KAAK,EAAC,4BAAA;AAA4B,CAElC7C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE+M,EAAAA,CAAC,EAAC,mBAAmB;AACrBC,EAAAA,MAAM,EAAC,cAAc;AACrBC,EAAAA,WAAW,EAAC,GAAG;AACfC,EAAAA,aAAa,EAAC,OAAO;AACrBG,EAAAA,cAAc,EAAC,OAAO;AACtBC,EAAAA,SAAS,EAAEF,MAAM,GAAG,qBAAqB,GAAG,EAAA;AAAG,CAEnD,CAAK,EACN;AAED,MAAMG,WAAW,GAAGA,mBAClBtD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,SAAS;AACnBd,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,6TAAA;AAA6T,CAAO,CACzU,EACN;AAED,MAAMU,SAAS,GAAGA,mBAChBxD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,OAAO;AACjBd,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,0LAAA;AAA0L,CAAO,CACtM,EACN;AAED,MAAMW,UAAU,GAAGA,mBACjBzD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,QAAQ;AAClBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,kgBAAA;AAAkgB,CAAO,CAC9gB,EACN;AAED,MAAMY,YAAY,GAAGA,mBACnB1D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,UAAU;AACpBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,8VAAA;AAA8V,CAAO,CAC1W,EACN;AAED,MAAMa,WAAW,GAAGA,mBAClB3D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,mRAAA;AAAmR,CAAO,CAC/R,EACN;AAED,MAAMc,SAAS,GAAGA,mBAChB5D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,EAAAA,SAAS,EAAC,gBAAgB;AAC1B8D,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,gsBAAA;AAAgsB,CAAO,CAC5sB,EACN;AAED,MAAMe,gBAAgB,GAAGA,mBACvB7D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,YAAY;AACtBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,0JAAA;AAA0J,CAAO,CACtK,EACN;AAED,MAAMgB,QAAQ,GAAGA,mBACf9D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,+KAAA;AAA+K,CAAO,CAC9L,eAAA9C,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,oKAAA;AAAoK,CAAO,CAChL,EACN;AAED,MAAMiB,WAAW,GAAGA,mBAClB/D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,YAAY;AACtBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,uzBAAA;AAAuzB,CAAO,CACn0B,EACN;AAED,MAAMkB,SAAS,GAAGA,mBAChBhE,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,QAAQ;AAClBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,qVAAA;AAAqV,CAAO,CACjW,EACN;AAED,MAAMmB,UAAU,GAAGA,mBACjBjE,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACjB,EAAA,WAAA,EAAU,SAAS;AACnBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;EACnB,aAAY,EAAA,MAAA;AAAM,CAElB5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,6TAAA;AAA6T,CAAO,CACzU;;ACnLDoB,MAAAA,WAAW,GAAGA,CAAC;AACnBxF,EAAAA,SAAS,GAAGpB,oBAAoB;EAChC5E,KAAK;EACLkI,QAAQ;AACRuD,EAAAA,WAAW,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;EACxCC,QAAQ;EACR7I,KAAK;AACL8I,EAAAA,MAAM,GAAG,YAAY;EACrBC,MAAM;AACNC,EAAAA,UAAU,GAAG,IAAI;AACjBC,EAAAA,aAAa,GAAG,KAAK;AACrBzK,EAAAA,IAAI,GAAG,OAAO;AACd0K,EAAAA,MAAM,GAAG,MAAM;EACfC,MAAM;EACNC,YAAY;EACZ7O,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;EACd+F,SAAS;EACTC,YAAY;AACZC,EAAAA,QAAQ,GAAG,IAAA;AAAI,CACG,KAAI;AACtB,EAAA,MAAMC,YAAY,GAAGnO,MAAM,CAAiB,IAAI,CAAC,CAAA;EACjD,MAAM,CAACuM,MAAM,EAAE6B,SAAS,CAAC,GAAG5N,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC3C,EAAA,MAAM,CAAC6N,aAAa,EAAEC,gBAAgB,CAAC,GAAG9N,QAAQ,CAEhD,CACAsB,KAAK,GAAG,CAAC,CAAC,IAAImM,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,EACvCnM,KAAK,GAAG,CAAC,CAAC,IAAImM,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,CACxC,CAAC,CAAA;EAEF,MAAM,CAACM,WAAW,EAAEC,cAAc,CAAC,GAAGhO,QAAQ,CAAc,IAAI,CAAC,CAAA;AACjE,EAAA,MAAM,CAACiO,YAAY,EAAEC,eAAe,CAAC,GAAGlO,QAAQ,CAAC,IAAImO,IAAI,EAAE,CAACC,QAAQ,EAAE,CAAC,CAAA;AACvE,EAAA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGtO,QAAQ,CAAC,IAAImO,IAAI,EAAE,CAACI,WAAW,EAAE,CAAC,CAAA;EACxE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGzO,QAAQ,CACtCqN,MAAM,KAAK,OAAO,GAAG,OAAO,GAAGA,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,KAAK,CAClE,CAAA;EAED,MAAMqB,YAAY,GAChBpB,MAAM,EAAEqB,WAAW,IACnBtM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE,EAAA;GAAI,EAAE,CAACgF,CAAC,EAAEiI,CAAC,KAC9B,IAAIT,IAAI,CAAC,CAAC,EAAES,CAAC,CAAC,CAACC,cAAc,CAACvB,MAAM,EAAEA,MAAM,IAAI,SAAS,EAAE;AACzDwB,IAAAA,KAAK,EAAE,OAAA;AACR,GAAA,CAAC,CACH,CAAA;EAEH,MAAMC,cAAc,GAAGzB,MAAM,EAAE0B,aAAa,IAAI,CAC9C,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAA;AAED1G,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM2G,kBAAkB,GAAIC,KAAiB,IAAI;AAC/C,MAAA,IACEvB,YAAY,CAACpN,OAAO,IACpB,CAACoN,YAAY,CAACpN,OAAO,CAAC4O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACpD;QACA6D,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,OAAA;KACD,CAAA;AAEDrP,IAAAA,QAAQ,CAAC6Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;IAE1D,OAAO,MAAM1Q,QAAQ,CAAC8Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;GAC3E,EAAE,EAAE,CAAC,CAAA;EAEN,MAAMK,YAAY,GAAIC,IAAU,IAAI;AAClC,IAAA,IAAI,CAAC1B,aAAa,CAAC,CAAC,CAAC,IAAKA,aAAa,CAAC,CAAC,CAAC,IAAIA,aAAa,CAAC,CAAC,CAAE,EAAE;AAC/DC,MAAAA,gBAAgB,CAAC,CAACyB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAChC,KAAC,MAAM;AACL,MAAA,MAAMC,KAAK,GAAG3B,aAAa,CAAC,CAAC,CAAC,CAAA;MAC9B,MAAM4B,GAAG,GAAGF,IAAI,GAAGC,KAAK,GAAGA,KAAK,GAAGD,IAAI,CAAA;MACvC,MAAMG,KAAK,GAAGH,IAAI,GAAGC,KAAK,GAAGD,IAAI,GAAGC,KAAK,CAAA;AACzC1B,MAAAA,gBAAgB,CAAC,CAAC4B,KAAK,EAAED,GAAG,CAAC,CAAC,CAAA;MAC9BjG,QAAQ,GACN,CAACkG,KAAK,CAACC,WAAW,EAAE,EAAEF,GAAG,CAACE,WAAW,EAAE,CAAC,EACxC,CAACC,UAAU,CAACF,KAAK,CAAC,EAAEE,UAAU,CAACH,GAAG,CAAC,CAAC,CACrC,CAAA;MACD7B,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,KAAA;GACD,CAAA;EAED,MAAMiC,eAAe,GAAIf,KAAa,IAAI;AACxC,IAAA,MAAMS,IAAI,GAAG,IAAIpB,IAAI,CAACE,WAAW,EAAES,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOvB,YAAY,GAAGgC,IAAI,EAAE;AAAE7I,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMuO,cAAc,GAAIC,IAAY,IAAI;AACtC,IAAA,MAAMT,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,GAAG,CAAC,EAAE/B,YAAY,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOV,YAAY,GAAGgC,IAAI,EAAE;AAAE7I,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMoO,UAAU,GAAIL,IAAU,IAAI;AAChC,IAAA,IAAI,OAAOtC,MAAM,KAAK,UAAU,EAAE;MAChC,OAAOA,MAAM,CAACsC,IAAI,CAAC,CAAA;AACrB,KAAA;AAEA,IAAA,OAAO,CAAGtC,EAAAA,MAAM,CAAE,CAAA,CACfgD,OAAO,CAAC,MAAM,EAAEV,IAAI,CAAChB,WAAW,EAAE,CAAC2B,QAAQ,EAAE,CAAC,CAC9CD,OAAO,CAAC,IAAI,EAAE,CAACV,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,EAAE8B,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAChEF,OAAO,CAAC,IAAI,EAAEV,IAAI,CAACa,OAAO,EAAE,CAACF,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;GAC7D,CAAA;EAED,MAAME,SAAS,GAAId,IAAU,IAAI;AAC/B,IAAA,MAAM,CAACC,KAAK,EAAEC,GAAG,CAAC,GAAG5B,aAAa,CAAA;IAElC,OAAO2B,KAAK,IAAIC,GAAG,IAAIF,IAAI,GAAGC,KAAK,IAAID,IAAI,GAAGE,GAAG,CAAA;GAClD,CAAA;EAED,MAAMa,uBAAuB,GAAGA,CAACC,WAAW,GAAG,CAAC,EAAEnN,GAAa,KAAI;IACjE,MAAMoN,QAAQ,GAAGnC,WAAW,CAAA;AAC5B,IAAA,MAAMoC,SAAS,GAAGxC,YAAY,GAAGsC,WAAW,CAAA;IAE5C,oBACE3H,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;AAAU,KAAA,EACnClE,GAAG,IAAI,CAACmN,WAAW,gBAClB3H,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,YAAA,CAAA;KAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MAAQ+R,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAA;AAAE,KAAA,EAC1D,MACM,CACR,eAAA/H,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MACE+R,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAK,CAAC,IACFtC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAEE,YAAY,IACnDD,CAAC,GAAG,CAAC,CAAA;AAEZ,KAAA,EAED,QACM,CACL,CAAC,gBAENhI,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA,IAAK,CACN,eACDiK,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,iBAAA,CAAA;KAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,MAAAA,IAAI,EAAC,QAAQ;MACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjCoJ,MAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,MAAM,CAAA;AAAE,KAAA,EAElC+B,QACK,CACR,eAAA5H,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,MAAAA,IAAI,EAAC,QAAQ;MACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjCoJ,MAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,OAAO,CAAA;AAAE,KAAA,EAEnCC,YAAY,CAAC+B,SAAS,CACjB,CACL,CACL,EAACrN,GAAG,IAAImN,WAAW,gBACjB3H,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,YAAA,CAAA;KAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MACE+R,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAKC,YAAY,IACbvC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IACxCC,CAAC,GAAG,CAAC,CAAA;AAEZ,KAAA,EAED,QACM,CACR,eAAAhI,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MAAQ+R,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAA;KACxD,EAAA,MACM,CACL,CAAC,gBAEN/H,KAAA,CAAAjK,aAAA,CAAK,MAAA,EAAA,IAAA,CAEJ,CAAC,CAAA;GAET,CAAA;EAED,MAAMmS,cAAc,GAAGA,CAACP,WAAW,GAAG,CAAC,EAAEnN,GAAa,KAAI;AACxD,IAAA,MAAM2N,QAAQ,GAAG,IAAI5C,IAAI,CAACE,WAAW,EAAEJ,YAAY,GAAGsC,WAAW,EAAE,CAAC,CAAC,CAAA;AACrE,IAAA,MAAMP,IAAI,GAAGe,QAAQ,CAACxC,WAAW,EAAE,CAAA;AACnC,IAAA,MAAMO,KAAK,GAAGiC,QAAQ,CAAC3C,QAAQ,EAAE,CAAA;AACjC,IAAA,MAAM4C,QAAQ,GAAG,IAAI7C,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAACmC,MAAM,EAAE,CAAA;AAClD,IAAA,MAAMC,WAAW,GAAG,IAAI/C,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAACsB,OAAO,EAAE,CAAA;IAE1D,MAAMe,aAAa,GAAG,CAAC,MAAK;MAC1B,MAAMC,SAAS,GAAG,IAAIjD,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAAA;AAC1C,MAAA,MAAMuC,SAAS,GAAGD,SAAS,CAAChB,OAAO,EAAE,CAAA;MAErC,OAAO/N,KAAK,CAACqE,IAAI,CACf;AAAE/E,QAAAA,MAAM,EAAEqP,QAAAA;OAAU,EACpB,CAACrK,CAAC,EAAEiI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAEuC,SAAS,GAAGL,QAAQ,GAAGpC,CAAC,GAAG,CAAC,CAAC,CAClE,CAAA;AACH,KAAC,GAAG,CAAA;AAEJ,IAAA,MAAM0C,gBAAgB,GAAGjP,KAAK,CAACqE,IAAI,CACjC;AAAE/E,MAAAA,MAAM,EAAEuP,WAAAA;AAAa,KAAA,EACvB,CAACvK,CAAC,EAAEiI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAEF,CAAC,GAAG,CAAC,CAAC,CACvC,CAAA;IAED,MAAM2C,cAAc,GAAGJ,aAAa,CAACxP,MAAM,GAAG2P,gBAAgB,CAAC3P,MAAM,CAAA;AACrE,IAAA,MAAM6P,SAAS,GAAGC,gCAAgC,GAAGF,cAAc,CAAA;AACnE,IAAA,MAAMG,aAAa,GAAGrP,KAAK,CAACqE,IAAI,CAC9B;AAAE/E,MAAAA,MAAM,EAAE6P,SAAAA;AAAS,KAAE,EACrB,CAAC7K,CAAC,EAAEiI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAEF,CAAC,GAAG,CAAC,CAAC,CAC3C,CAAA;IAED,MAAM+C,IAAI,GAAG,CAAC,GAAGR,aAAa,EAAE,GAAGG,gBAAgB,EAAE,GAAGI,aAAa,CAAC,CAAA;IAEtE,oBACE9I,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAK8I,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,UAAA,EAAakH,QAAQ,CAAA,CAAA;KAC/C5F,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,gBAAA,CAAA;AAAmB,KAAA,EAC5CgJ,uBAAuB,CAACC,WAAW,EAAEnN,GAAG,CACtC,CACL,EAACoL,QAAQ,KAAK,KAAK,iBACjB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,cAAA,CAAA;KACzByH,EAAAA,cAAc,CAAC5N,GAAG,CAAC,CAACyQ,GAAG,EAAEhD,CAAC,kBACzBhG,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKkC,MAAAA,GAAG,EAAE+N,CAAE;MAACnH,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;AAAW,KAAA,EAC5CsK,GACE,CACN,CAAC,EACDD,IAAI,CAACxQ,GAAG,CAAC,CAACyQ,GAAG,EAAEhD,CAAC,KAAI;MACnB,MAAMiD,UAAU,GACdD,GAAG,IACH/D,aAAa,CAAChL,IAAI,CAChB6I,CAAC,IAAIA,CAAC,EAAEoG,YAAY,EAAE,KAAKF,GAAG,CAACE,YAAY,EAAE,CAC9C,CAAA;AAEH,MAAA,MAAMC,OAAO,GAAGH,GAAG,IAAIvB,SAAS,CAACuB,GAAG,CAAC,CAAA;MACrC,MAAMI,WAAW,GAAGJ,GAAG,EAAExD,QAAQ,EAAE,KAAKU,KAAK,CAAA;MAE7C,oBACElG,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEkC,QAAAA,GAAG,EAAE+N,CAAE;AACP5B,QAAAA,QAAQ,EAAEO,YAAY,GAAGqE,GAAG,EAAE;AAC5BlL,UAAAA,IAAI,EAAElF,SAAS;AACfsO,UAAAA,EAAE,EAAEtO,SAAAA;AACL,SAAA,CAAE;QACHkP,OAAO,EAAEA,MAAMkB,GAAG,IAAItC,YAAY,CAACsC,GAAG,CAAE;QACxCK,YAAY,EAAEA,MAAML,GAAG,IAAI5D,cAAc,CAAC4D,GAAG,CAAE;AAC/CnK,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,MAAM,EAClB;AACE,UAAA,CAAC,CAAGA,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGuK,UAAU;AACrC,UAAA,CAAC,CAAGvK,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGyK,OAAO;AAClC,UAAA,CAAC,CAAGzK,EAAAA,SAAS,CAAY,UAAA,CAAA,GACvByG,WAAW,IACXF,aAAa,CAAC,CAAC,CAAC,IAChB,CAACA,aAAa,CAAC,CAAC,CAAC,IACjBE,WAAW,GAAGF,aAAa,CAAC,CAAC,CAAC,IAC9BE,WAAW,CAAC+D,YAAY,EAAE,KAAKF,GAAG,EAAEE,YAAY,EAAE;AACpD,UAAA,CAAC,CAAGxK,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAG,CAAC0K,WAAAA;AAChC,SAAA,CACF,CAAA;AAAE,OAAA,EAEFJ,GAAG,EAAExB,OAAO,EACP,CAAC,CAAA;KAEZ,CACE,CACN,EAEA5B,QAAQ,KAAK,OAAO,iBACnB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;KACzBoH,EAAAA,YAAY,CAACvN,GAAG,CAAC,CAACyP,CAAC,EAAEhC,CAAC,kBACrBhG,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE+N,CAAE;MACPnH,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;MAChCoJ,OAAO,EAAEA,MAAK;QACZxC,eAAe,CAACU,CAAC,CAAC,CAAA;QAClBH,WAAW,CAAC,KAAK,CAAC,CAAA;OAClB;MACFzB,QAAQ,EAAE6C,eAAe,CAACjB,CAAC,CAAA;KAE1BgC,EAAAA,CACK,CACT,CACE,CACN,EAEApC,QAAQ,KAAK,MAAM,iBAClB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;KACzBjF,EAAAA,KAAK,CAACqE,IAAI,CAAC;AAAE/E,MAAAA,MAAM,EAAE,EAAA;AAAE,KAAE,EAAE,CAACgF,CAAC,EAAEiI,CAAC,KAAI;AACnC,MAAA,MAAMoB,IAAI,GAAG3B,WAAW,GAAG6D,UAAU,GAAGtD,CAAC,CAAA;MAEzC,oBACEhG,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEkC,QAAAA,GAAG,EAAEmP,IAAK;QACVvI,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B0F,QAAAA,QAAQ,EAAE+C,cAAc,CAACC,IAAI,CAAE;QAC/BU,OAAO,EAAEA,MAAK;UACZpC,cAAc,CAAC0B,IAAI,CAAC,CAAA;UACpBvB,WAAW,CAAC,OAAO,CAAC,CAAA;AACtB,SAAA;AAAE,OAAA,EAEDuB,IACK,CAAC,CAAA;KAEZ,CACE,CAEJ,CAAC,CAAA;GAET,CAAA;EAED,MAAMmC,WAAW,GAAGA,MAAK;AACvBrE,IAAAA,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAC9BtE,QAAQ,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;GAC3B,CAAA;EAED,oBACEZ,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,GAAG,EAAEsP,YAAa;AAClBjP,IAAAA,KAAK,EAAEA,KAAM;AACb+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,kBAAkB,EAC9B;AACE,MAAA,CAAC,GAAGA,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AAC9B,MAAA,CAAC8E,SAAS,GAAGA,SAAAA;AACd,KAAA,CACF,CAAA;GAEDmB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,oBAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,QAAQ;AACb6I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACE8K,UAAU,EAAE,CAAC1E,QAAQ;AACrB,MAAA,CAAC,CAAGpG,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;MAC7B,CAAC,CAAA,EAAGmD,SAAS,CAAA,SAAA,CAAW,GAAG0F,QAAAA;AAC5B,KAAA,CACF,CAAE;AACHA,IAAAA,QAAQ,EAAEA,QAAS;AACnB0D,IAAAA,OAAO,EAAEA,MAAM9C,SAAS,CAAC,CAAC7B,MAAM,CAAA;AAAE,GAAA,EAEjCmB,MAAM,eACPtE,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACE0T,IAAAA,QAAQ,EAAEjF,aAAc;IACxB3F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,cAAA,CAAA;AACxCyF,IAAAA,WAAW,EAAEA,WAAW,CAAC,CAAC,CAAE;AAC5BzL,IAAAA,KAAK,EAAEuM,aAAa,CAAC,CAAC,CAAC,GAAG+B,UAAU,CAAC/B,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAA;AAAG,GAE9D,CAAA,eAAAjF,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,gBAAA,CAAA;AAAmB,GAAA,EAC7CkG,SAAS,iBAAI5E,KAAA,CAAAjK,aAAA,CAAC8N,gBAAgB,EAAA,KAC3B,CACN,eAAA7D,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACE0T,IAAAA,QAAQ,EAAEjF,aAAc;IACxB3F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,cAAA,CAAA;AACxCyF,IAAAA,WAAW,EAAEA,WAAW,CAAC,CAAC,CAAE;AAC5BzL,IAAAA,KAAK,EAAEuM,aAAa,CAAC,CAAC,CAAC,GAAG+B,UAAU,CAAC/B,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAA;AAAG,GAE9D,CAAA,eAAAjF,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;AAAQ,GAAA,EAClC6F,UAAU,KAAKU,aAAa,CAAC,CAAC,CAAC,IAAIA,aAAa,CAAC,CAAC,CAAC,CAAC,gBACnDjF,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEyB,WAAAA;GAC9CvJ,eAAAA,KAAA,CAAAjK,aAAA,CAACyM,SAAS,MACZ,CAAM,CAAC,gBAEPxC,KAAA,CAAAjK,aAAA,CAAC2N,YAAY,EAAA,IAAA,CAEX,CACA,CACL,CAEL,EAACP,MAAM,iBACLnD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,sBAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,eAAA,CAAA;GACzBwJ,EAAAA,cAAc,CAAC,CAAC,EAAEtC,QAAQ,KAAK,KAAK,CAAC,EACrCA,QAAQ,KAAK,KAAK,IAAIsC,cAAc,CAAC,CAAC,EAAEtC,QAAQ,KAAK,KAAK,CACxD,CACF,CAEJ,CAAC,CAAA;AAEV;;;;;ACzXA,MAAM8D,YAAU,GAAG,EAAE,CAAA;AACrB,MAAMC,eAAe,GAAG,CAAC,CAAA;AAClB,MAAML,UAAU,GAAG,CAAC,CAAA;AACpB,MAAMrB,YAAY,GAAG,EAAE,CAAA;AACvB,MAAMY,gCAAgC,GAAG,EAAE,CAAA;AAElD,MAAMe,mBAAmB,GAAGA,CAAC;EAC3BlR,KAAK;EACLkI,QAAQ;EACRiJ,gBAAgB;EAChBzF,QAAQ;EACR7I,KAAK;AACL4I,EAAAA,WAAW,GAAG,aAAa;AAC3BzF,EAAAA,SAAS,GAAGrB,mBAAmB;EAC/B4C,OAAO;EACPf,aAAa;EACbwF,MAAM;AACNoF,EAAAA,SAAS,GAAG,YAAY;EACxBjF,YAAY;AACZ9K,EAAAA,IAAI,GAAG,OAAO;AACdsK,EAAAA,MAAM,GAAG,YAAY;EACrB0F,iBAAiB;AACjBC,EAAAA,SAAS,GAAG,IAAI;AAChBzF,EAAAA,UAAU,GAAG,KAAK;EAClBI,YAAY;EACZsF,UAAU;AACVxF,EAAAA,MAAM,GAAG,MAAM;EACfH,MAAM;AACN4F,EAAAA,WAAW,GAAG,KAAK;AACnB1F,EAAAA,aAAa,GAAG,KAAK;AACrBM,EAAAA,QAAQ,GAAG,IAAA;AAAI,CACE,KAAI;AACrB,EAAA,MAAMC,YAAY,GAAGnO,MAAM,CAAiB,IAAI,CAAC,CAAA;AACjD,EAAA,MAAMuT,WAAW,GAAGzR,KAAK,IAAImM,YAAY,CAAA;AACzC,EAAA,MAAMuF,iBAAiB,GAAGxT,MAAM,CAAqB,IAAI,CAAC,CAAA;EAC1D,MAAM,CAACyT,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGlT,QAAQ,CAC1D,EAAE,CACH,CAAA;AAED,EAAA,MAAMmT,OAAO,GAAG,IAAIhF,IAAI,EAAE,CAAA;EAE1B,MAAM,CAACiF,YAAY,EAAEC,eAAe,CAAC,GAAGrT,QAAQ,CAC9C+S,WAAW,CACZ,CAAA;AAED,EAAA,MAAM,CAACO,uBAAuB,EAAEC,0BAA0B,CAAC,GAAGvT,QAAQ,CAEpE+S,WAAW,GAAGnD,UAAU,CAACmD,WAAW,CAAC,GAAGvR,SAAS,CAAC,CAAA;EAEpD,MAAM,CAACuK,MAAM,EAAE6B,SAAS,CAAC,GAAG5N,QAAQ,CAAC8S,WAAW,CAAC,CAAA;EACjD,MAAM,CAACzE,WAAW,EAAEC,cAAc,CAAC,GAAGtO,QAAQ,CAC5C+S,WAAW,GAAG,IAAI5E,IAAI,CAAC4E,WAAW,CAAC,CAACxE,WAAW,EAAE,GAAG4E,OAAO,CAAC5E,WAAW,EAAE,CAC1E,CAAA;EAED,MAAM,CAACN,YAAY,EAAEC,eAAe,CAAC,GAAGlO,QAAQ,CAC9C+S,WAAW,GAAG,IAAI5E,IAAI,CAAC4E,WAAW,CAAC,CAAC3E,QAAQ,EAAE,GAAG+E,OAAO,CAAC/E,QAAQ,EAAE,CACpE,CAAA;EAED,MAAM,CAACI,QAAQ,EAAEC,WAAW,CAAC,GAAGzO,QAAQ,CACtCqN,MAAM,KAAK,OAAO,GAAG,OAAO,GAAGA,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,KAAK,CAClE,CAAA;EAED,MAAMqB,YAAY,GAChBpB,MAAM,EAAEqB,WAAW,IACnBtM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE,EAAA;GAAI,EAAE,CAACgF,CAAC,EAAEiI,CAAC,KAC9B,IAAIT,IAAI,CAAC,CAAC,EAAES,CAAC,CAAC,CAACC,cAAc,CAACvB,MAAM,EAAEA,MAAM,IAAI,SAAS,EAAE;AACzDwB,IAAAA,KAAK,EAAE,OAAA;AACR,GAAA,CAAC,CACH,CAAA;EAEH,MAAMC,cAAc,GAAGzB,MAAM,EAAE0B,aAAa,IAAI,CAC9C,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAA;AAED1G,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM2G,kBAAkB,GAAIC,KAAiB,IAAI;AAC/C,MAAA,IACEvB,YAAY,CAACpN,OAAO,IACpB,CAACoN,YAAY,CAACpN,OAAO,CAAC4O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACpD;QACA6D,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,OAAA;KACD,CAAA;AAED,IAAA,MAAM4F,UAAU,GAAG,IAAIC,eAAe,EAAE,CAAA;AAExC,IAAA,IAAI1H,MAAM,EAAE;AACV2H,MAAAA,iCAAiC,EAAE,CAAA;AAEnCnV,MAAAA,QAAQ,CAAC6Q,gBAAgB,CAAC,QAAQ,EAAEsE,iCAAiC,EAAE;QACrEC,MAAM,EAAEH,UAAU,CAACG,MAAAA;AACpB,OAAA,CAAC,CAAA;AAEFpV,MAAAA,QAAQ,CAAC6Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,EAAE;QACzD0E,MAAM,EAAEH,UAAU,CAACG,MAAAA;AACpB,OAAA,CAAC,CAAA;AACJ,KAAA;AAEA,IAAA,OAAO,MAAK;MACVH,UAAU,CAACI,KAAK,EAAE,CAAA;KACnB,CAAA;AACH,GAAC,EAAE,CAAC7H,MAAM,CAAC,CAAC,CAAA;AAEZzD,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIqK,iBAAiB,IAAIhF,YAAY,CAACpN,OAAO,EAAE;MAC7CyS,iBAAiB,CAACzS,OAAO,GAAGoS,iBAAiB,CAAChF,YAAY,CAACpN,OAAO,CAAC,CAAA;AACrE,KAAA;AACF,GAAC,EAAE,CAACoS,iBAAiB,CAAC,CAAC,CAAA;EAEvB,MAAMzB,WAAW,GAAGA,CAAClB,IAAY,EAAElB,KAAa,KAC9C,IAAIX,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAACsB,OAAO,EAAE,CAAA;AAExC,EAAA,MAAMyD,eAAe,GAAGA,CAAC7D,IAAY,EAAElB,KAAa,KAClD,IAAIX,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAACmC,MAAM,EAAE,CAAA;EAEnC,SAASrB,UAAUA,CAACL,IAAU,EAAA;AAC5B,IAAA,IAAI,OAAOtC,MAAM,KAAK,UAAU,EAAE;MAChC,OAAOA,MAAM,CAACsC,IAAI,CAAC,CAAA;AACrB,KAAA;AAEA,IAAA,IAAI,OAAOtC,MAAM,KAAK,QAAQ,EAAE;AAC9BsC,MAAAA,IAAI,GAAG,IAAIpB,IAAI,CAACoB,IAAI,CAAC,CAAA;AAErB,MAAA,OAAOtC,MAAM,CACVgD,OAAO,CAAC,MAAM,EAAEV,IAAI,CAAChB,WAAW,EAAE,CAAC2B,QAAQ,EAAE,CAAC,CAC9CD,OAAO,CAAC,IAAI,EAAE,CAACV,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,EAAE8B,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAChEF,OAAO,CAAC,IAAI,EAAEV,IAAI,CAACa,OAAO,EAAE,CAACF,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;AAC9D,KAAA;IAEA,OAAO,CAAA,EAAGZ,IAAI,CAAChB,WAAW,EAAE,CAAA,CAAA,EAAIgB,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,CAAImB,CAAAA,EAAAA,IAAI,CAACa,OAAO,EAAE,CAAE,CAAA,CAAA;AACzE,GAAA;EAEA,MAAMd,YAAY,GAAGA,CAACsC,GAAW,EAAE9C,KAAa,EAAEkB,IAAY,KAAI;AAChE,IAAA,IAAIhD,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEA,MAAMuC,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE8C,GAAG,CAAC,CAAA;IAEvC,IAAIrE,YAAY,GAAGgC,IAAI,EAAE;AAAE7I,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAW,KAAA,CAAC,EAAE;AAC5D,MAAA,OAAA;AACF,KAAA;IAEA0M,eAAe,CAACY,KAAK,CAAC,CAAA;IACtBR,cAAc,CAAC0B,IAAI,CAAC,CAAA;IACpBqD,eAAe,CAAC9D,IAAI,CAAC,CAAA;AAErB,IAAA,MAAMuE,SAAS,GAAGlE,UAAU,CAACL,IAAI,CAAC,CAAA;IAClCgE,0BAA0B,CAACO,SAAS,CAAC,CAAA;IACrCtK,QAAQ,GAAG+F,IAAI,CAACI,WAAW,EAAE,EAAEmE,SAAS,CAAC,CAAA;IACzCrB,gBAAgB,GAAGlD,IAAI,CAACI,WAAW,EAAE,EAAEmE,SAAS,EAAE;AAAEC,MAAAA,KAAK,EAAEvS,SAAAA;AAAS,KAAE,CAAC,CAAA;IACvEoM,SAAS,CAAC,KAAK,CAAC,CAAA;GACjB,CAAA;EAED,MAAMoG,cAAc,GAAGA,MAAK;IAC1BX,eAAe,CAAC7R,SAAS,CAAC,CAAA;IAC1B+R,0BAA0B,CAAC/R,SAAS,CAAC,CAAA;AACrCgI,IAAAA,QAAQ,GAAG,IAAI,EAAE,EAAE,CAAC,CAAA;GACrB,CAAA;EAED,MAAMqG,eAAe,GAAIf,KAAa,IAAI;AACxC,IAAA,MAAMS,IAAI,GAAG,IAAIpB,IAAI,CAACE,WAAW,EAAES,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOvB,YAAY,GAAGgC,IAAI,EAAE;AAAE7I,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMuO,cAAc,GAAIC,IAAY,IAAI;AACtC,IAAA,MAAMT,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,GAAG,CAAC,EAAE/B,YAAY,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOV,YAAY,GAAGgC,IAAI,EAAE;AAAE7I,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,SAASkS,iCAAiCA,GAAA;IACxC,MAAMO,yBAAyB,GAC7B,CAACtG,YAAY,CAACpN,OAAO,EAAEgI,YAAY,IAAI,CAAC,IAAIgK,eAAe,CAAA;AAE7D,IAAA,MAAM2B,0BAA0B,GAC9BvG,YAAY,CAACpN,OAAO,EAAE4T,qBAAqB,EAAE,CAACC,GAAG,IAAI,CAAC,CAAA;AAExD,IAAA,MAAMC,6BAA6B,GACjCC,MAAM,CAACC,WAAW,IACjB5G,YAAY,CAACpN,OAAO,EAAE4T,qBAAqB,EAAE,CAACK,MAAM,IAAI,CAAC,CAAC,CAAA;AAE7D,IAAA,MAAMC,8BAA8B,GAClC9G,YAAY,CAACpN,OAAO,EAAE4J,aAAa,CAAC,CAAA,CAAA,EAAI7C,SAAS,CAAW,SAAA,CAAA,CAAC,EACzDiB,YAAY,IAAI,CAAC,CAAA;IAEvB2K,qBAAqB,CACnB,CAAC,SAAS,EAAE,UAAU,CAAC,CAACzR,QAAQ,CAACiR,SAAS,CAAC,GACvC;AACElK,MAAAA,QAAQ,EAAE,UAAU;MACpB4L,GAAG,EACDF,0BAA0B,GAAGO,8BAA8B,GAAG,CAAC,GAC3DR,yBAAyB,GACzB,CAACQ,8BAAAA;AACR,KAAA,GACD;AACEjM,MAAAA,QAAQ,EAAE,UAAU;MACpB4L,GAAG,EACDC,6BAA6B,GAAGI,8BAA8B,GAC1D,CAAC,GACD,EAAEA,8BAA8B,GAAGR,yBAAyB,CAAA;AACnE,KAAA,CACN,CAAA;AACH,GAAA;EAEA,MAAM7C,SAAS,GAAGnD,YAAY,KAAK,CAAC,GAAG4C,YAAY,GAAG5C,YAAY,GAAG,CAAC,CAAA;EACtE,MAAMyG,SAAS,GAAGzG,YAAY,KAAK4C,YAAY,GAAG,CAAC,GAAG5C,YAAY,GAAG,CAAC,CAAA;EACtE,MAAM0G,aAAa,GAAG1G,YAAY,KAAK,CAAC,GAAGI,WAAW,GAAG,CAAC,GAAGA,WAAW,CAAA;EACxE,MAAMuG,aAAa,GACjB3G,YAAY,KAAK4C,YAAY,GAAGxC,WAAW,GAAG,CAAC,GAAGA,WAAW,CAAA;AAE/D,EAAA,MAAMgD,SAAS,GAAGH,WAAW,CAAC7C,WAAW,EAAEJ,YAAY,CAAC,CAAA;AACxD,EAAA,MAAM+C,QAAQ,GAAG6C,eAAe,CAACxF,WAAW,EAAEJ,YAAY,CAAC,CAAA;AAC3D,EAAA,MAAMkD,aAAa,GAAGD,WAAW,CAACyD,aAAa,EAAEvD,SAAS,CAAC,CAAA;AAC3D,EAAA,MAAMyD,aAAa,GACjBpD,gCAAgC,IAAIT,QAAQ,GAAGK,SAAS,CAAC,CAAA;AAE3D,EAAA,MAAMM,IAAI,GAAG,CACX,GAAGtP,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAEqP,QAAAA;AAAU,GAAA,EAAE,CAACrK,CAAC,EAAEiI,CAAC,MAAM;AAC7CgD,IAAAA,GAAG,EAAET,aAAa,GAAGH,QAAQ,GAAGpC,CAAC,GAAG,CAAC;AACrCrO,IAAAA,OAAO,EAAE,KAAK;AACduO,IAAAA,KAAK,EAAEsC,SAAS;AAChBpB,IAAAA,IAAI,EAAE2E,aAAAA;AACP,GAAA,CAAC,CAAC,EACH,GAAGtS,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE0P,SAAAA;AAAW,GAAA,EAAE,CAAC1K,CAAC,EAAEiI,CAAC,MAAM;IAC9CgD,GAAG,EAAEhD,CAAC,GAAG,CAAC;AACVrO,IAAAA,OAAO,EAAE,IAAI;AACbuO,IAAAA,KAAK,EAAEb,YAAY;AACnB+B,IAAAA,IAAI,EAAE3B,WAAAA;AACP,GAAA,CAAC,CAAC,EACH,GAAGhM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAEkT,aAAAA;AAAe,GAAA,EAAE,CAAClO,CAAC,EAAEiI,CAAC,MAAM;IAClDgD,GAAG,EAAEhD,CAAC,GAAG,CAAC;AACVrO,IAAAA,OAAO,EAAE,KAAK;AACduO,IAAAA,KAAK,EAAE4F,SAAS;AAChB1E,IAAAA,IAAI,EAAE4E,aAAAA;GACP,CAAC,CAAC,CACJ,CAAA;EAED,oBACEhM,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,GAAG,EAAEsP,YAAa;AAClBlG,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,YAAY,EACxB;MACEuB,OAAO;AACP,MAAA,CAAC,CAAGvB,EAAAA,SAAS,CAAI3E,CAAAA,EAAAA,IAAI,EAAE,GAAGA,IAAAA;AAC3B,KAAA,CACF,CAAA;GAEDiG,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,cAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,QAAQ;AACb6I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACE8K,UAAU,EAAE,CAAC1E,QAAQ;AACrB,MAAA,CAAC,CAAGpG,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,MAAA,CAAC,GAAGmD,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;MAC9B,CAAC,CAAA,EAAG2E,SAAS,CAAA,SAAA,CAAW,GAAG0F,QAAAA;AAC5B,KAAA,CACF,CAAE;AACHA,IAAAA,QAAQ,EAAEA,QAAS;AACnB0D,IAAAA,OAAO,EAAEA,MAAM9C,SAAS,CAAC,CAAC7B,MAAM,CAAA;AAAE,GAAA,EAEjCmB,MAAM,IAAI,IAAI,eACftE,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACEgE,IAAAA,IAAI,EAAE2P,YAAW;AACjBtF,IAAAA,QAAQ,EAAEA,QAAS;AACnBqF,IAAAA,QAAQ,EAAEjF,aAAc;IACxB3F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgC,6BAAA,CAAA;AACvDyF,IAAAA,WAAW,EAAEA,WAAY;AACzBrO,IAAAA,KAAK,EAAE;AAAEoW,MAAAA,OAAO,EAAE/I,MAAM,GAAG,KAAK,GAAG,CAAA;KAAI;AACvC0B,IAAAA,YAAY,EAAE6F,uBAAAA;AAAwB,GAExC,CAAA,eAAA1K,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;AAAQ,GAAA,EAClC6F,UAAU,IAAIiG,YAAY,gBACzBxK,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEsD,cAAAA;GAC7C,EAAA,OAAO7G,UAAU,KAAK,QAAQ,IAAIA,UAAU,CAAC4H,SAAS,GACrD5H,UAAU,CAAC4H,SAAS,gBAEpBnM,KAAA,CAAAjK,aAAA,CAACyM,SAAS,MAAG,CAEX,CAAC,GAEPyH,UAAU,iBAAIjK,KAAA,CAAAjK,aAAA,CAAC2N,YAAY,EAAA,IAAA,CAC5B,EACAnI,KAAK,IAAI2D,aAAa,gBAAGc,KAAA,CAAAjK,aAAA,CAAC6N,SAAS,EAAA,IAAG,CAAA,GAAG,IACtC,CACA,CACL,CAEL,eAAA5D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACED,IAAAA,KAAK,EAAEsU,iBAAiB,CAACzS,OAAO,GAAG;AAAEiI,MAAAA,QAAQ,EAAE,UAAA;KAAY,GAAG,EAAG;IACjEf,SAAS,EAAEZ,IAAI,CAAC,CACd6L,SAAS,EACT,CAAA,EAAGpL,SAAS,CAAA,iBAAA,CAAmB,EAC/B;AACE0N,MAAAA,IAAI,EAAEjJ,MAAAA;AACP,KAAA,CACF,CAAA;AAAE,GAAA,EAEFA,MAAM,iBACLnD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAY,SAAA,CAAA;AAAC5I,IAAAA,KAAK,EAAEuU,kBAAAA;GAC9CrK,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,YAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IAAQ+R,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAA;AAAE,GAAA,EAC1D,MACM,CACR,eAAA/H,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IACE+R,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAK,CAAC,IACFtC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAEE,YAAY,IACnDD,CAAC,GAAG,CAAC,CAAA;AAEZ,GAAA,EAED,QACM,CACL,CACL,eAAAhI,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,iBAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,QAAQ;IACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjCoJ,IAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,MAAM,CAAA;AAAE,GAAA,EAElCJ,WACK,CACR,eAAAzF,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,QAAQ;IACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjCoJ,IAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,OAAO,CAAA;GAEjCC,EAAAA,YAAY,CAACT,YAAY,CACpB,CACL,CACL,eAAArF,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,YAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IACE+R,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAKC,YAAY,IACbvC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IACxCC,CAAC,GAAG,CAAC,CAAA;AAEZ,GAAA,EAED,QACM,CACR,eAAAhI,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IAAQ+R,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAA;GACxD,EAAA,MACM,CACL,CACF,CAEL,EAACnC,QAAQ,KAAK,KAAK,iBACjB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,SAAA,CAAA;GACzByH,EAAAA,cAAc,CAAC5N,GAAG,CAACyQ,GAAG,iBACrBhJ,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKkC,IAAAA,GAAG,EAAE+Q,GAAI;IAACnK,SAAS,EAAE,GAAGH,SAAS,CAAA,WAAA,CAAA;GACnCsK,EAAAA,GACE,CACN,CAAC,EACDD,IAAI,CAACxQ,GAAG,CAAC,CAAC;IAAEyQ,GAAG;IAAErR,OAAO;IAAEuO,KAAK;AAAEkB,IAAAA,IAAAA;GAAM,EAAEiF,GAAG,KAAI;IAC/C,MAAMpD,UAAU,GACduB,YAAY,IACZA,YAAY,CAAChD,OAAO,EAAE,KAAKwB,GAAG,IAC9BwB,YAAY,CAAChF,QAAQ,EAAE,KAAKU,KAAK,IACjCsE,YAAY,CAAC7E,WAAW,EAAE,KAAKyB,IAAI,CAAA;IAErC,oBACEpH,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MACEkC,GAAG,EAAE,GAAGmP,IAAI,CAAA,CAAA,EAAIlB,KAAK,CAAI8C,CAAAA,EAAAA,GAAG,CAAIqD,CAAAA,EAAAA,GAAG,CAAG,CAAA;AACtCxN,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,MAAM,EAClB;AACE,QAAA,CAAC,CAAGA,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGuK,UAAU;AACrC,QAAA,CAAC,CAAGvK,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAG,CAAC/G,OAAAA;AAChC,OAAA,CACF,CAAE;MACHmQ,OAAO,EAAEA,MAAMpB,YAAY,CAACsC,GAAG,EAAE9C,KAAK,EAAEkB,IAAI,CAAE;AAC9ChD,MAAAA,QAAQ,EAAEO,YAAY,GAAG,IAAIY,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE8C,GAAG,CAAC,EAAE;AACnDlL,QAAAA,IAAI,EAAElF,SAAS;AACfsO,QAAAA,EAAE,EAAEtO,SAAAA;OACL,CAAA;AAAE,KAAA,EAEFoQ,GACK,CAAC,CAAA;GAEZ,CACE,CACN,EAEApD,QAAQ,KAAK,OAAO,iBACnB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;GACzBoH,EAAAA,YAAY,CAACvN,GAAG,CAAC,CAACyP,CAAC,EAAEhC,CAAC,kBACrBhG,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEkC,IAAAA,GAAG,EAAE+N,CAAE;IACPnH,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;IAChCoJ,OAAO,EAAEA,MAAK;MACZxC,eAAe,CAACU,CAAC,CAAC,CAAA;MAClBH,WAAW,CAAC,KAAK,CAAC,CAAA;KAClB;IACFzB,QAAQ,EAAE6C,eAAe,CAACjB,CAAC,CAAA;GAE1BgC,EAAAA,CACK,CACT,CACE,CACN,EAEApC,QAAQ,KAAK,MAAM,iBAClB5F,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,KAAA,CAAA;GACzBjF,EAAAA,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE,EAAA;AAAE,GAAE,EAAE,CAACgF,CAAC,EAAEiI,CAAC,KAAI;AACnC,IAAA,MAAMoB,IAAI,GAAG3B,WAAW,GAAG6D,UAAU,GAAGtD,CAAC,CAAA;IAEzC,oBACEhG,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;AACEkC,MAAAA,GAAG,EAAEmP,IAAK;MACVvI,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B0F,MAAAA,QAAQ,EAAE+C,cAAc,CAACC,IAAI,CAAE;MAC/BU,OAAO,EAAEA,MAAK;QACZpC,cAAc,CAAC0B,IAAI,CAAC,CAAA;QACpBvB,WAAW,CAAC,OAAO,CAAC,CAAA;AACtB,OAAA;AAAE,KAAA,EAEDuB,IACK,CAAC,CAAA;AAEb,GAAC,CACE,CACN,EAEA4C,SAAS,iBACRhK,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,WAAA,CAAA;AACrC5I,IAAAA,KAAK,EAAE;AAAEwW,MAAAA,UAAU,EAAE,QAAA;AAAU,KAAA;GAE/BtM,eAAAA,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;IACjC0F,QAAQ,EAAEO,YAAY,GACpB,IAAIY,IAAI,CACNgF,OAAO,CAAC/C,OAAO,EAAE,EACjB+C,OAAO,CAAC/E,QAAQ,EAAE,EAClB+E,OAAO,CAAC5E,WAAW,EAAE,CACtB,EACD;AAAE7H,MAAAA,IAAI,EAAElF,SAAS;AAAEsO,MAAAA,EAAE,EAAEtO,SAAAA;AAAS,KAAE,CAClC;IACFkP,OAAO,EAAEA,MAAK;AACZpB,MAAAA,YAAY,CACV6D,OAAO,CAAC/C,OAAO,EAAE,EACjB+C,OAAO,CAAC/E,QAAQ,EAAE,EAClB+E,OAAO,CAAC5E,WAAW,EAAE,CACtB,CAAA;AACH,KAAA;GAECjB,EAAAA,MAAM,EAAE6H,KAAK,IAAI,OACZ,CACL,CAEJ,CAEJ,CACF,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,MAAMC,UAAU,GAAGnU,MAAM,CAACoU,MAAM,CAAC7C,mBAAmB,EAAE;AACpD1F,EAAAA,WAAAA;AACD,CAAA;;;;;AChdD,MAAMwI,KAAK,GAAG,EAAE,CAAA;AAChB,MAAMhD,UAAU,GAAG,EAAE,CAAA;AACrB,MAAMiD,mBAAmB,GAAG,CAAC,CAAA;AAC7B,MAAMC,mBAAmB,GAAG,EAAE,CAAA;AAC9B,MAAMC,uBAAuB,GAAG,CAAC,CAAA;AAEjC,MAAMC,GAAG,GAAIC,GAAW,IAAa/R,MAAM,CAAC+R,GAAG,CAAC,CAACxF,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAE3DyF,MAAAA,UAAU,GAAwBA,CAAC;AACvCtO,EAAAA,SAAS,GAAGnB,mBAAmB;EAC/BzH,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;EACdoO,YAAY;AACZzI,EAAAA,aAAa,GAAG,KAAK;AACrBH,EAAAA,MAAM,GAAG,UAAU;AACnBQ,EAAAA,YAAY,GAAG,IAAI;EACnBnM,KAAK,EAAEwU,SAAS,GAAG,IAAI;EACvBtM,QAAQ;EACRuM,MAAM;EACNC,QAAQ;AACRC,EAAAA,OAAO,GAAG,IAAI;AACdlB,EAAAA,SAAS,gBAAGnM,KAAA,CAAAjK,aAAA,CAACyM,SAAS,MAAA,CAAG;AACzByH,EAAAA,UAAU,gBAAGjK,KAAA,CAAAjK,aAAA,CAAC+N,QAAQ,MAAG,CAAA;AACzBK,EAAAA,WAAW,GAAG,aAAA;AAAa,CAC5B,KAAI;EACH,MAAM,CAACmJ,IAAI,EAAEC,OAAO,CAAC,GAAGnW,QAAQ,CAAU,KAAK,CAAC,CAAA;EAChD,MAAM,CAACoW,UAAU,EAAEC,aAAa,CAAC,GAAGrW,QAAQ,CAC1C8V,SAAS,IAAIrI,YAAY,GAAG,IAAIU,IAAI,CAAC2H,SAAS,IAAIrI,YAAY,CAAC,GAAG,IAAI,CACvE,CAAA;EAED,MAAM,CAAC6I,SAAS,EAAEC,YAAY,CAAC,GAAGvW,QAAQ,CAAc,IAAI,CAAC,CAAA;AAE7D,EAAA,MAAMwW,QAAQ,GAAGhX,MAAM,CAAmB,IAAI,CAAC,CAAA;AAC/C,EAAA,MAAMiX,QAAQ,GAAGjX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC7C,EAAA,MAAMkX,OAAO,GAAGlX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC5C,EAAA,MAAMmX,SAAS,GAAGnX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC9C,EAAA,MAAMoX,SAAS,GAAGpX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAE9C8I,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM2G,kBAAkB,GAAIrF,CAAa,IAAI;AAC3C,MAAA,IACE6M,QAAQ,CAAClW,OAAO,IAChB,CAACkW,QAAQ,CAAClW,OAAO,CAAC4O,QAAQ,CAACvF,CAAC,CAACG,MAAc,CAAC,IAC5CyM,QAAQ,CAACjW,OAAO,IAChB,CAACiW,QAAQ,CAACjW,OAAO,CAAC4O,QAAQ,CAACvF,CAAC,CAACG,MAAc,CAAC,EAC5C;QACAoM,OAAO,CAAC,KAAK,CAAC,CAAA;QACdI,YAAY,CAAC,IAAI,CAAC,CAAA;QAElB,IAAI,CAACH,UAAU,EAAE;AACf5M,UAAAA,QAAQ,GAAG,IAAgB,EAAE,EAAE,CAAC,CAAA;AAClC,SAAA;AACF,OAAA;KACD,CAAA;AAEDjL,IAAAA,QAAQ,CAAC6Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;AAE1D,IAAA,OAAO,MAAK;AACV1Q,MAAAA,QAAQ,CAAC8Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;KAC9D,CAAA;AACH,GAAC,EAAE,CAACmH,UAAU,EAAE5M,QAAQ,CAAC,CAAC,CAAA;AAE1BlB,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI4N,IAAI,EAAE;MACRK,YAAY,CAACH,UAAU,GAAG,IAAIjI,IAAI,CAACiI,UAAU,CAAC,GAAG,IAAI,CAAC,CAAA;MAEtD,MAAM;AAAES,QAAAA,IAAI,GAAG,CAAC;AAAEC,QAAAA,MAAM,GAAG,CAAC;AAAEC,QAAAA,MAAM,GAAG,CAAA;AAAG,OAAA,GAAGC,YAAY,CAACZ,UAAU,CAAC,CAAA;AACrEa,MAAAA,WAAW,CAACP,OAAsC,EAAEG,IAAI,IAAI,CAAC,CAAC,CAAA;AAC9DI,MAAAA,WAAW,CAACN,SAAwC,EAAEG,MAAM,IAAI,CAAC,CAAC,CAAA;AAClEG,MAAAA,WAAW,CAACL,SAAwC,EAAEG,MAAM,IAAI,CAAC,CAAC,CAAA;AACpE,KAAA;AACF,GAAC,EAAE,CAACb,IAAI,EAAEE,UAAU,CAAC,CAAC,CAAA;AAEtB9N,EAAAA,SAAS,CAAC,MAAK;IACb0N,QAAQ,GAAGM,SAAS,CAAC,CAAA;AACvB,GAAC,EAAE,CAACA,SAAS,EAAEN,QAAQ,CAAC,CAAC,CAAA;EAEzB,MAAMpG,UAAU,GAAIL,IAAiB,IAAY;IAC/C,IAAI,CAACA,IAAI,EAAE;AACT,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;IAEA,OAAO,CAAA,EAAGtC,MAAM,CAAE,CAAA,CACfgD,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC2H,QAAQ,EAAE,CAAC,CAAC,CACtCjH,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC4H,UAAU,EAAE,CAAC,CAAC,CACxClH,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC6H,UAAU,EAAE,CAAC,CAAC,CAAA;GAC5C,CAAA;EAED,MAAMJ,YAAY,GAAIzH,IAAiB,KAAM;AAC3CsH,IAAAA,IAAI,EAAEtH,IAAI,EAAE2H,QAAQ,EAAE,IAAI,IAAI;AAC9BJ,IAAAA,MAAM,EAAEvH,IAAI,EAAE4H,UAAU,EAAE,IAAI,IAAI;AAClCJ,IAAAA,MAAM,EAAExH,IAAI,EAAE6H,UAAU,EAAE,IAAI,IAAA;AAC/B,GAAA,CAAC,CAAA;AAEF,EAAA,MAAMC,WAAW,GAAGA,CAClBzY,IAAkC,EAClCiY,IAAI,GAAG,CAAC,EACRC,MAAM,GAAG,CAAC,KACE;IACZ,MAAM9J,QAAQ,GAAG6I,YAAY,GAAGS,SAAS,IAAI,IAAInI,IAAI,EAAE,CAAC,CAAA;IAExD,IAAI,CAACnB,QAAQ,EAAE;AACb,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;IAEA,IAAIpO,IAAI,KAAK,MAAM,EAAE;AACnB,MAAA,OAAOoO,QAAQ,CAACsK,aAAa,IAAI,IAAI,EAAE,CAAA;AACzC,KAAA;IAEA,IAAI1Y,IAAI,KAAK,QAAQ,EAAE;AACrB,MAAA,OAAOoO,QAAQ,CAACuK,eAAe,GAAGV,IAAI,CAAC,IAAI,EAAE,CAAA;AAC/C,KAAA;IAEA,IAAIjY,IAAI,KAAK,QAAQ,EAAE;MACrB,OAAOoO,QAAQ,CAACwK,eAAe,GAAGX,IAAI,EAAEC,MAAM,CAAC,IAAI,EAAE,CAAA;AACvD,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACV,CAAA;AAED,EAAA,MAAMG,WAAW,GAAGA,CAClB5Y,GAA8B,EAC9BoZ,aAAqB,KACb;AACR,IAAA,MAAMC,EAAE,GAAGrZ,GAAG,CAACkC,OAAO,EAAEoX,gBAAgB,CAAC,KAAK,CAAC,CAACF,aAAa,CAAC,CAAA;AAE9D,IAAA,IAAIC,EAAE,IAAIrZ,GAAG,CAACkC,OAAO,EAAE;AACrBlC,MAAAA,GAAG,CAACkC,OAAO,CAACqX,QAAQ,CAAC;AACnBxD,QAAAA,GAAG,EAAEsD,EAAE,CAACG,SAAS,GAAGtC,mBAAmB,GAAG,CAAC;AAC3CuC,QAAAA,QAAQ,EAAE,QAAA;AACX,OAAA,CAAC,CAAA;AACJ,KAAA;GACD,CAAA;EAED,MAAMC,eAAe,GAAGA,CAAClB,IAAY,EAAEC,MAAc,EAAEC,MAAc,KAAI;AACvE,IAAA,MAAMiB,OAAO,GAAG,IAAI7J,IAAI,EAAE,CAAA;IAC1B6J,OAAO,CAACC,QAAQ,CAACpB,IAAI,EAAEC,MAAM,EAAEC,MAAM,EAAE,CAAC,CAAC,CAAA;IACzCR,YAAY,CAACyB,OAAO,CAAC,CAAA;GACtB,CAAA;AAED,EAAA,MAAME,YAAY,GAAGA,CAACC,CAAS,EAAEC,IAAc,KAAU;IACvD,MAAM;AAAEtB,MAAAA,MAAM,GAAG,CAAC;AAAEC,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGC,YAAY,CAACV,SAAS,CAAC,CAAA;IAE1D,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACtB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;MAEA,IAAI,CAACtB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAP,eAAe,CAACI,CAAC,EAAErB,MAAM,IAAI,CAAC,EAAEC,MAAM,IAAI,CAAC,CAAC,CAAA;AAC5CE,IAAAA,WAAW,CAACP,OAAsC,EAAEyB,CAAC,CAAC,CAAA;GACvD,CAAA;AAED,EAAA,MAAME,cAAc,GAAGA,CAACzH,CAAS,EAAEwH,IAAc,KAAU;IACzD,MAAM;AAAEvB,MAAAA,IAAI,GAAG,CAAC;AAAEE,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGC,YAAY,CAACV,SAAS,CAAC,CAAA;IAExD,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACvB,IAAI,EAAE;AACTqB,QAAAA,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACvB,OAAA;MAEA,IAAI,CAACnB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAP,eAAe,CAAClB,IAAI,IAAI,CAAC,EAAEjG,CAAC,EAAEmG,MAAM,IAAI,CAAC,CAAC,CAAA;AAC1CE,IAAAA,WAAW,CAACN,SAAwC,EAAE/F,CAAC,CAAC,CAAA;GACzD,CAAA;AAED,EAAA,MAAM0H,cAAc,GAAGA,CAACC,CAAS,EAAEH,IAAc,KAAU;IACzD,MAAM;AAAEvB,MAAAA,IAAI,GAAG,CAAC;AAAEC,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGE,YAAY,CAACV,SAAS,CAAC,CAAA;IAExD,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACvB,IAAI,EAAE;AACTqB,QAAAA,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACvB,OAAA;MAEA,IAAI,CAACpB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAN,eAAe,CAAClB,IAAI,IAAI,CAAC,EAAEC,MAAM,IAAI,CAAC,EAAEyB,CAAC,CAAC,CAAA;AAC1CtB,IAAAA,WAAW,CAACL,SAAwC,EAAE2B,CAAC,CAAC,CAAA;GACzD,CAAA;EAED,MAAMpG,WAAW,GAAIvI,CAAoC,IAAU;IACjEA,CAAC,EAAE4O,eAAe,EAAE,CAAA;IACpBnC,aAAa,CAAC,IAAI,CAAC,CAAA;IACnBE,YAAY,CAAC,IAAI,CAAC,CAAA;AAClB/M,IAAAA,QAAQ,GAAG,IAAgB,EAAE,EAAE,CAAC,CAAA;GACjC,CAAA;EAED,MAAMiP,aAAa,GAAGA,MAAW;AAC/B,IAAA,MAAMC,GAAG,GAAG,IAAIvK,IAAI,EAAE,CAAA;IACtBoI,YAAY,CAACmC,GAAG,CAAC,CAAA;IACjBrC,aAAa,CAACqC,GAAG,CAAC,CAAA;AAClBlP,IAAAA,QAAQ,GAAGkP,GAAG,EAAE9I,UAAU,CAAC8I,GAAG,CAAC,CAAC,CAAA;IAChC1C,QAAQ,GAAG0C,GAAG,CAAC,CAAA;IACfvC,OAAO,CAAC,KAAK,CAAC,CAAA;GACf,CAAA;EAED,MAAMwC,cAAc,GAAGA,MAAW;AAChC,IAAA,IAAIrC,SAAS,EAAE;MACbD,aAAa,CAACC,SAAS,CAAC,CAAA;AACxB9M,MAAAA,QAAQ,GAAG8M,SAAS,EAAE1G,UAAU,CAAC0G,SAAS,CAAC,CAAC,CAAA;MAC5CN,QAAQ,GAAGM,SAAS,CAAC,CAAA;AACvB,KAAA;IAEAH,OAAO,CAAC,KAAK,CAAC,CAAA;GACf,CAAA;EAED,MAAMyC,cAAc,GAAIhP,CAAgC,IAAI;IAC1D,MAAMiP,QAAQ,GAAGjP,CAAC,CAACG,MAAM,CAACzI,KAAK,CAACwX,IAAI,EAAE,CAAA;IACtC,MAAMC,SAAS,GAAG,2BAA2B,CAAA;AAC7C,IAAA,MAAMC,KAAK,GAAGH,QAAQ,CAACG,KAAK,CAACD,SAAS,CAAC,CAAA;AAEvC,IAAA,IAAIC,KAAK,EAAE;MACT,MAAM,GAAGC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC,GAAGH,KAAK,CAAA;AAClC,MAAA,MAAMb,CAAC,GAAGiB,QAAQ,CAACH,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5B,MAAA,MAAMrI,CAAC,GAAGwI,QAAQ,CAACF,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5B,MAAA,MAAMX,CAAC,GAAGa,QAAQ,CAACD,IAAI,EAAE,EAAE,CAAC,CAAA;AAE5B,MAAA,IACEhB,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG7C,KAAK,IACT1E,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG4E,mBAAmB,IACvB+C,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG/C,mBAAmB,IACvB,CAAC6B,WAAW,CAAC,MAAM,CAAC,CAAC5V,QAAQ,CAAC0W,CAAC,CAAC,IAChC,CAACd,WAAW,CAAC,QAAQ,EAAEc,CAAC,CAAC,CAAC1W,QAAQ,CAACmP,CAAC,CAAC,IACrC,CAACyG,WAAW,CAAC,QAAQ,EAAEc,CAAC,EAAEvH,CAAC,CAAC,CAACnP,QAAQ,CAAC8W,CAAC,CAAC,EACxC;QACAL,YAAY,CAACC,CAAC,CAAC,CAAA;QACfE,cAAc,CAACzH,CAAC,CAAC,CAAA;QACjB0H,cAAc,CAACC,CAAC,CAAC,CAAA;AACnB,OAAA;AACF,KAAA;GACD,CAAA;EAED,MAAMc,aAAa,GAAGA,MAAgB;AACpC,IAAA,MAAMC,KAAK,GAAGjX,KAAK,CAACqE,IAAI,CACtB;MAAE/E,MAAM,EAAE2T,KAAK,GAAGG,uBAAAA;AAAyB,KAAA,EAC3C,CAAC9O,CAAC,EAAEiI,CAAC,KAAMA,CAAC,GAAG0G,KAAK,GAAG1G,CAAC,GAAG,KAAM,CAClC,CAAA;AAED,IAAA,MAAM2K,cAAc,GAAGlX,KAAK,CAACqE,IAAI,CAC/B;MAAE/E,MAAM,EAAE6T,mBAAmB,GAAGC,uBAAAA;AAAyB,KAAA,EACzD,CAAC9O,CAAC,EAAEiI,CAAC,KAAMA,CAAC,GAAG4G,mBAAmB,GAAG5G,CAAC,GAAG,KAAM,CAChD,CAAA;IAED,MAAM;AACJiI,MAAAA,IAAI,EAAE2C,YAAY;AAClB1C,MAAAA,MAAM,EAAE2C,cAAc;AACtB1C,MAAAA,MAAM,EAAE2C,cAAAA;AACT,KAAA,GAAG1C,YAAY,CAACV,SAAS,CAAC,CAAA;AAE3B,IAAA,MAAMqD,WAAW,GAAGH,YAAY,IAAI,CAAC,CAAA;AACrC,IAAA,MAAMI,aAAa,GAAGH,cAAc,IAAI,CAAC,CAAA;AAEzC,IAAA,oBACE7Q,KAAA,CAAAjK,aAAA,CACEiK,KAAAA,EAAAA,IAAAA,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;KAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKN,MAAAA,GAAG,EAAEqY,OAAQ;MAACjP,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;AAAU,KAAA,EACjDgS,KAAK,CAACnY,GAAG,CAAC,CAACgX,CAAC,EAAEvR,KAAK,KAClBuR,CAAC,KAAK,KAAK,gBACTvP,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE,CAAA,EAAGsX,CAAC,CAAA,CAAA,EAAIvR,KAAK,CAAG,CAAA;MACrBa,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B5I,MAAAA,KAAK,EAAE;AAAEoW,QAAAA,OAAO,EAAE,CAAC;AAAE+E,QAAAA,UAAU,EAAE,MAAM;AAAEC,QAAAA,MAAM,EAAE,SAAA;AAAW,OAAA;AAAC,KAAA,EAE7D,GACG,CAAC,gBAENlR,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAEsX,CAAE;AACP1Q,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,QAAA,CAAC,CAAGA,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAC3B+P,WAAW,CAAC,MAAM,CAAC,CAAC5V,QAAQ,CAAC0W,CAAC,CAAC;AACjC,QAAA,CAAC,CAAG7Q,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGkS,YAAY,KAAKrB,CAAAA;AAClD,OAAA,CACF,CAAE;AACHzH,MAAAA,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,MAAM,CAAC,CAAC5V,QAAQ,CAAC0W,CAAC,CAAC,IAAID,YAAY,CAACC,CAAC,CAAA;KAGnDzC,EAAAA,GAAG,CAACyC,CAAC,CACH,CACN,CAEA,CACL,eAAAvP,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKN,MAAAA,GAAG,EAAEsY,SAAU;MAAClP,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;AAAU,KAAA,EACnDiS,cAAc,CAACpY,GAAG,CAAC,CAACyP,CAAC,EAAEhK,KAAK,KAC3BgK,CAAC,KAAK,KAAK,gBACThI,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE,CAAA,EAAG+P,CAAC,CAAA,CAAA,EAAIhK,KAAK,CAAG,CAAA;MACrBa,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B5I,MAAAA,KAAK,EAAE;AAAEoW,QAAAA,OAAO,EAAE,CAAC;AAAE+E,QAAAA,UAAU,EAAE,MAAM;AAAEC,QAAAA,MAAM,EAAE,SAAA;AAAW,OAAA;AAAC,KAAA,EAE7D,GACG,CAAC,gBAENlR,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE+P,CAAE;AACPnJ,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,QAAA,CAAC,CAAGA,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAG+P,WAAW,CACzC,QAAQ,EACRsC,WAAW,CACZ,CAAClY,QAAQ,CAACmP,CAAC,CAAC;AACb,QAAA,CAAC,CAAGtJ,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGmS,cAAc,KAAK7I,CAAAA;AACpD,OAAA,CACF,CAAE;AACHF,MAAAA,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,QAAQ,EAAEsC,WAAW,CAAC,CAAClY,QAAQ,CAACmP,CAAC,CAAC,IAC/CyH,cAAc,CAACzH,CAAC,CAAA;KAGjB8E,EAAAA,GAAG,CAAC9E,CAAC,CACH,CACN,CAEA,CACL,eAAAhI,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKN,MAAAA,GAAG,EAAEuY,SAAU;MAACnP,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;AAAU,KAAA,EACnDiS,cAAc,CAACpY,GAAG,CAAC,CAACoX,CAAC,EAAE3R,KAAK,KAC3B2R,CAAC,KAAK,KAAK,gBACT3P,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE,CAAA,EAAG0X,CAAC,CAAA,CAAA,EAAI3R,KAAK,CAAG,CAAA;MACrBa,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B5I,MAAAA,KAAK,EAAE;AAAEoW,QAAAA,OAAO,EAAE,CAAC;AAAE+E,QAAAA,UAAU,EAAE,MAAM;AAAEC,QAAAA,MAAM,EAAE,SAAA;AAAW,OAAA;AAAC,KAAA,EAE7D,GACG,CAAC,gBAENlR,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEkC,MAAAA,GAAG,EAAE0X,CAAE;AACP9Q,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,QAAA,CAAC,GAAGA,SAAS,CAAA,cAAA,CAAgB,GAAG+P,WAAW,CACzC,QAAQ,EACRsC,WAAW,EACXC,aAAa,CACd,CAACnY,QAAQ,CAAC8W,CAAC,CAAC;AACb,QAAA,CAAC,CAAGjR,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGoS,cAAc,KAAKnB,CAAAA;AACpD,OAAA,CACF,CAAE;MACH7H,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,QAAQ,EAAEsC,WAAW,EAAEC,aAAa,CAAC,CAACnY,QAAQ,CACzD8W,CAAC,CACF,IAAID,cAAc,CAACC,CAAC,CAAA;KAGtB7C,EAAAA,GAAG,CAAC6C,CAAC,CACH,CACN,CAEA,CACF,CACL,eAAA3P,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;AAAW,KAAA,EACpC2O,OAAO,gBACNrN,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;MAAK8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAW,QAAA,CAAA;AAACoJ,MAAAA,OAAO,EAAE+H,aAAAA;KAC/C,EAAA,KACG,CAAC,gBAEN7P,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA,IAAK,CACN,eACDiK,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;MACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;MACjC0F,QAAQ,EACNwM,YAAY,KAAK,IAAI,IACrBC,cAAc,KAAK,IAAI,IACvBC,cAAc,KAAK,IACpB;AACDhJ,MAAAA,OAAO,EAAEiI,cAAAA;KAET,EAAA,IACM,CACL,CACF,CAAC,CAAA;GAET,CAAA;EAED,oBACE/P,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAEZ,IAAI,CAAC,CAAC,CAAA,EAAGS,SAAS,CAAU,QAAA,CAAA,EAAEG,SAAS,CAAC,CAAE;AAAC/I,IAAAA,KAAK,EAAEA,KAAAA;GAChEkK,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,cAAA,CAAA;AACxCoJ,IAAAA,OAAO,EAAEA,MAAMyF,OAAO,CAAC,IAAI,CAAA;AAAE,GAAA,eAE7BvN,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA2K,QAAA,CAAA;AACEjL,IAAAA,GAAG,EAAEmY,QAAS;AACd7T,IAAAA,IAAI,EAAE2P,UAAW;AACjBvF,IAAAA,WAAW,EAAEA,WAAY;IACzBtF,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAChC+K,IAAAA,QAAQ,EAAEjF,aAAc;AACxB5D,IAAAA,QAAQ,EAAEoP,cAAAA;AAAe,GAAA,EACpB1C,IAAI,GAAG,EAAE,GAAG;IAAE5U,KAAK,EAAEsO,UAAU,CAACwG,UAAU,CAAA;GAAG,EAAA;IAClDL,MAAM,EAAGnM,CAA+B,IAAI;MAC1CmM,MAAM,GAAGnM,CAAC,EAAE;AAAEmQ,QAAAA,MAAM,EAAE,OAAA;AAAS,OAAA,CAAC,CAAA;AAClC,KAAA;AAAE,GAAA,CAEJ,CAAA,eAAAnR,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;AAAS,GAAA,EAClCyN,SAAS,IAAIqB,UAAU,gBACtBxN,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEyB,WAAAA;AAAY,GAAA,EACzD4C,SACG,CAAC,GAEPlC,UAAU,iBACRjK,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;IACjCoJ,OAAO,EAAE9G,CAAC,IAAG;MACXA,CAAC,CAAC4O,eAAe,EAAE,CAAA;MACnBrC,OAAO,CAAC,IAAI,CAAC,CAAA;AACf,KAAA;GAECtD,EAAAA,UACG,CAGP,CACF,CAEL,EAACqD,IAAI,iBACHtN,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKN,IAAAA,GAAG,EAAEoY,QAAS;IAAChP,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;AAAS,GAAA,EACjD+R,aAAa,EACX,CAEJ,CAAC,CAAA;AAEV;;;;;;;;ACzbA,MAAMW,QAAQ,gBAAGC,UAAU,CACzB,CACE;AACE3S,EAAAA,SAAS,GAAGvB,iBAAiB;EAC7BzE,KAAK;AACLmG,EAAAA,SAAS,GAAG,EAAE;EACd/I,KAAK;EACLwb,QAAQ;EACRC,YAAY;EACZC,QAAQ;EACRC,MAAM;AACN3M,EAAAA,QAAQ,GAAG,IAAI;AACf/K,EAAAA,IAAI,GAAG,OAAO;EACd2X,MAAM;EACNC,aAAa;AACbC,EAAAA,OAAO,GAAG,UAAU;EACpBrW,KAAK;AACLgJ,EAAAA,UAAU,GAAG,KAAK;EAClB,GAAGpF,KAAAA;AACJ,CAAA,EACD1J,GAAsC,KACpC;AACF,EAAA,MAAM,CAACoc,UAAU,EAAEC,aAAa,CAAC,GAAG1a,QAAQ,CAACsB,KAAK,EAAE4O,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AACrE,EAAA,MAAMyK,WAAW,GAAGnb,MAAM,CAAsB,IAAI,CAAC,CAAA;AAErD8I,EAAAA,SAAS,CAAC,MAAK;IACb,MAAMsS,QAAQ,GACXvc,GAAsC,EAAEkC,OAAO,IAAIoa,WAAW,CAACpa,OAAO,CAAA;IAEzE,IAAIqa,QAAQ,IAAIV,QAAQ,EAAE;AACxBU,MAAAA,QAAQ,CAAClc,KAAK,CAAC4M,MAAM,GAAG,MAAM,CAAA;MAC9BsP,QAAQ,CAAClc,KAAK,CAAC4M,MAAM,GAAG,CAAGsP,EAAAA,QAAQ,CAACC,YAAY,CAAI,EAAA,CAAA,CAAA;AAEpD,MAAA,IAAIT,QAAQ,EAAE;AACZA,QAAAA,QAAQ,CAAC;UACP/O,KAAK,EAAEuP,QAAQ,CAACE,WAAW;UAC3BxP,MAAM,EAAEsP,QAAQ,CAACC,YAAAA;AAClB,SAAA,CAAC,CAAA;AACJ,OAAA;AACF,KAAA;GACD,EAAE,CAACJ,UAAU,EAAEP,QAAQ,EAAEE,QAAQ,EAAE/b,GAAG,CAAC,CAAC,CAAA;EAEzC,MAAMsL,YAAY,GAAIC,CAAmC,IAAI;AAC3D8Q,IAAAA,aAAa,CAAC9Q,CAAC,CAACG,MAAM,CAACzI,KAAK,CAAC,CAAA;IAE7B,IAAIyG,KAAK,CAACyB,QAAQ,EAAE;AAClBzB,MAAAA,KAAK,CAACyB,QAAQ,CAACI,CAAC,CAAC,CAAA;AACnB,KAAA;GACD,CAAA;EAED,MAAMmR,aAAa,GAAInR,CAAqC,IAAI;AAC9D,IAAA,IAAIA,CAAC,CAAC/I,GAAG,KAAK,OAAO,IAAIsZ,YAAY,EAAE;MACrCA,YAAY,CAACvQ,CAAC,CAAC,CAAA;AACjB,KAAA;GACD,CAAA;EAED,MAAMuI,WAAW,GAAGA,MAAK;IACvBuI,aAAa,CAAC,EAAE,CAAC,CAAA;IAEjB,IAAI3S,KAAK,CAACyB,QAAQ,EAAE;MAClBzB,KAAK,CAACyB,QAAQ,CAAC;AACbO,QAAAA,MAAM,EAAE;AAAEzI,UAAAA,KAAK,EAAE,EAAA;AAAI,SAAA;AACc,OAAA,CAAC,CAAA;AACxC,KAAA;GACD,CAAA;EAED,oBACEsH,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAK8I,IAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAYiT,SAAAA,EAAAA,aAAa,IAAI,EAAE,CAAA,CAAA;AAAG,GAAA,eAC5D3R,KAAA,CAAAjK,aAAA,CAAA2K,UAAAA,EAAAA,QAAA,KACMvB,KAAK,EAAA;IACT1J,GAAG,EAAEA,GAAG,IAAIsc,WAAY;AACxBrZ,IAAAA,KAAK,EAAEmZ,UAAW;AAClBjR,IAAAA,QAAQ,EAAEG,YAAa;AACvBqR,IAAAA,SAAS,EAAED,aAAc;AACzBrc,IAAAA,KAAK,EAAE;MAAE,GAAG2b,MAAM,EAAEO,QAAQ;MAAE,GAAGlc,KAAAA;KAAQ;AACzC+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAIA,CAAAA,EAAAA,SAAS,CAAI3E,CAAAA,EAAAA,IAAI,IAAI2E,SAAS,CAAA,CAAA,EAAIkT,OAAO,CAAI/S,CAAAA,EAAAA,SAAS,EAAE,EACxE;AACE,MAAA,CAAC,CAAGH,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGoG,QAAQ;AACnC,MAAA,CAAC,GAAGpG,SAAS,CAAA,QAAA,CAAU,GAAGgT,MAAM,KAAK,SAAS;AAC9C,MAAA,CAAC,GAAGhT,SAAS,CAAA,MAAA,CAAQ,GAAGgT,MAAM,KAAK,OAAO,IAAInW,KAAAA;AAC/C,KAAA,CACF,CAAA;GAGH,CAAA,CAAA,EAACgJ,UAAU,IAAIsN,UAAU,iBACvB7R,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IAAQ8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEyB,WAAAA;GAChD,EAAA,QACM,CAEP,CAAC,CAAA;AAEV,CAAC,EACF;AAED6H,QAAQ,CAAC1P,WAAW,GAAG,UAAU;;AC7FjC,MAAM2Q,cAAc,gBAAGhB,UAAU,CAC/B,CACE;AACEtX,EAAAA,IAAI,GAAG,OAAO;EACdwB,KAAK;EACL+W,MAAM;EACNhO,MAAM;EACNiO,UAAU;EACVC,WAAW;EACXjB,YAAY;AACZnN,EAAAA,QAAQ,GAAG,KAAK;AAChBG,EAAAA,UAAU,GAAG,KAAK;AAClB7F,EAAAA,SAAS,GAAG3B,cAAc;AAC1B8B,EAAAA,SAAS,GAAG,EAAE;AACdnG,EAAAA,KAAK,GAAGE,SAAS;EACjB6Z,UAAU;EACVxS,OAAO;EACPf,aAAa;EACb,GAAGC,KAAAA;AACQ,CAAA,EACb1J,GAAmC,KACjC;AACF,EAAA,MAAMmY,QAAQ,GAAGhX,MAAM,CAAmB,IAAI,CAAC,CAAA;EAC/C,MAAM,CAAC8b,aAAa,EAAEC,gBAAgB,CAAC,GAAGvb,QAAQ,CAACsB,KAAK,IAAI,EAAE,CAAC,CAAA;EAC/D,MAAM,CAACka,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGzb,QAAQ,CAAC,KAAK,CAAC,CAAA;EAEjE0b,mBAAmB,CAACrd,GAAG,EAAE,OAAO;AAC9B;AACA;AACA+L,IAAAA,KAAK,EAAEoM,QAAQ,CAACjW,OAAO,EAAE6J,KAAK;IAC9BuR,KAAK,EAAEnF,QAAQ,CAACjW,OAAO;AACvBqb,IAAAA,IAAI,EAAGpF,QAAQ,CAACjW,OAA4B,CAACqb,IAAI;IACjDC,aAAa,EAAErF,QAAQ,CAACjW,OAAO;AAC/Bub,IAAAA,iBAAiB,EAAEA,CAACtM,KAAa,EAAEC,GAAW,KAAI;MAChD,IAAI+G,QAAQ,CAACjW,OAAO,EAAE;QACpBiW,QAAQ,CAACjW,OAAO,CAACub,iBAAiB,CAACtM,KAAK,EAAEC,GAAG,CAAC,CAAA;AAChD,OAAA;AACF,KAAA;AACD,GAAA,CAAC,CAAC,CAAA;EAEH,MAAM9F,YAAY,GAAIC,CAAqB,IAAI;AAC7C2R,IAAAA,gBAAgB,CAAC3R,CAAC,CAACG,MAAM,CAACzI,KAAe,CAAC,CAAA;AAE1CyG,IAAAA,KAAK,CAACyB,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACpB,CAAA;EAED,MAAMuI,WAAW,GAAIvI,CAA4C,IAAI;IACnE2R,gBAAgB,CAAC,EAAE,CAAC,CAAA;AAEpB3R,IAAAA,CAAC,CAACG,MAAM,CAACzI,KAAK,GAAG,EAAE,CAAA;AAEnByG,IAAAA,KAAK,CAACyB,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACpB,CAAA;EAED,MAAMmS,eAAe,GAAInS,CAAkC,IAAI;AAC7D,IAAA,IAAIA,CAAC,CAAC/I,GAAG,KAAK,OAAO,IAAIsZ,YAAY,EAAE;MACrCA,YAAY,CAACvQ,CAAC,CAAC,CAAA;AACjB,KAAA;GACD,CAAA;EAED,oBACEhB,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,YAAY,EACxB;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,MAAA,CAAC,CAAGmD,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAG0F,QAAQ;AACnC,MAAA,CAAC,GAAG1F,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AAC9BkG,MAAAA,OAAO,EAAEA,OAAAA;KACV,EACDpB,SAAS,CACV,CAAE;IACH/I,KAAK,EAAEqJ,KAAK,CAACrJ,KAAAA;AAAM,GAAA,EAElB0c,WAAW,iBACVxS,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM8I,IAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUA,SAAS,CAAA,OAAA,CAAA;AAAU,GAAA,EACvD8T,WACG,CACP,eAEDxS,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;AAAW,GAAA,EACpC4F,MAAM,iBAAItE,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;GAAY4F,EAAAA,MAAa,CAAC,eAElEtE,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA2K,QAAA,CAAA,EAAA,EACMvB,KAAK,EAAA;AACT1J,IAAAA,GAAG,EAAEmY,QAAAA;AAAS,GAAA,EACTzO,KAAK,CAACnJ,IAAI,KAAK,UAAU,IAAIyc,UAAU,GACxC;AACEzc,IAAAA,IAAI,EAAE4c,iBAAiB,GAAG,MAAM,GAAG,UAAA;GACpC,GACD,EAAE,EAAA;AACNxO,IAAAA,QAAQ,EAAEA,QAAS;AACnB1L,IAAAA,KAAK,EAAEga,aAAc;AACrB9R,IAAAA,QAAQ,EAAEG,YAAa;AACvBqR,IAAAA,SAAS,EAAEe,eAAgB;AAC3BtU,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CAACS,SAAS,EAAEG,SAAS,CAAC,CAAA;AAAE,GAAA,CAG1C,CAAA,eAAAmB,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEyB,WAAAA;GAC7ChF,EAAAA,UAAU,IAAImO,aAAa,gBAAG1S,KAAA,CAAAjK,aAAA,CAAC6N,SAAS,EAAA,IAAG,CAAA,GAAG,IAC3C,CAEN,EAAC,CAAC0O,MAAM,IAAIG,UAAU,kBACpBzS,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA2K,QAAA,CAAA;IACE7B,SAAS,EAAE,GAAGH,SAAS,CAAA,OAAA,CAAA;GAClB+T,EAAAA,UAAU,KAAK7Z,SAAS,GACzB;IACEkP,OAAO,EAAEA,MAAM+K,oBAAoB,CAACO,IAAI,IAAI,CAACA,IAAI,CAAA;AAClD,GAAA,GACD,EAAE,CAAA,EAELd,MAAM,IAAIG,UAAU,GAAGG,iBAAiB,CAAC,EACzCrX,KAAK,IAAI2D,aAAa,gBAAGc,KAAA,CAAAjK,aAAA,CAAC6N,SAAS,EAAA,IAAG,CAAA,GAAG,IACtC,CAEL,CAEL,EAAC2O,UAAU,gBACTvS,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM8I,IAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUA,SAAS,CAAA,MAAA,CAAA;AAAS,GAAA,EACtD6T,UACG,CAAC,GACL,IACD,CAAC,CAAA;AAEV,CAAC,CACF,CAAA;AAEDF,cAAc,CAAC3Q,WAAW,GAAG,OAAO,CAAA;AAE9B2R,MAAAA,KAAK,GAAGhB,eAEb;AAEDgB,KAAK,CAACC,QAAQ,GAAGlC,QAAQ;;;;;AChJnBmC,MAAAA,WAAW,GAAGA,CAAC;AACnB7U,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;EACd2U,OAAO;EACPpP,QAAQ;EACRxF,QAAQ;AACR7E,EAAAA,IAAI,GAAG,OAAO;EACd,GAAGoF,KAAAA;AACc,CAAA,KAAI;EACrB,oBACEa,KAAA,CAAAjK,aAAA,CAAC0d,KAAK,EAAA/S,QAAA,KACAvB,KAAK,EAAA;AACTqU,IAAAA,OAAO,EAAEA,OAAQ;AACjBpP,IAAAA,QAAQ,EAAEA,QAAS;AACnBvF,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,SAAS,EACrB;MACE0F,QAAQ;MACR,CAACvF,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC,GAAGH,SAAS,CAAA,QAAA,EAAW3E,IAAI,CAAA,CAAE,GAAGA,IAAI;MACrC,CAAC,CAAA,EAAG2E,SAAS,CAAA,eAAA,CAAiB,GAAG8U,OAAAA;AAClC,KAAA,CACF,CAAA;GAEDxT,CAAAA,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,eAAA,CAAA;AAAkB,GAAA,EAC5CE,QAAQ,IAAIO,KAAK,CAACzG,KACf,CACD,CAAC,CAAA;AAEZ;;;;;ACpBMgb,MAAAA,UAAU,GAAGA,CAAC;EAClB7O,YAAY;EACZnM,KAAK;AACLqB,EAAAA,IAAI,GAAG,OAAO;EACdqK,QAAQ;EACR1M,IAAI;EACJic,EAAE;EACF7d,KAAK,GAAG,EAAE;AACV8d,EAAAA,WAAW,GAAG,SAAS;EACvBC,KAAK;AACLnV,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;AACdiV,EAAAA,OAAO,GAAG,EAAE;EACZlV,QAAQ;EACR,GAAGO,KAAAA;AACa,CAAA,KAAI;AACpB,EAAA,MAAM4U,aAAa,GAAGtU,OAAO,CAC3B,MAAO/G,KAAK,KAAKE,SAAS,GAAGF,KAAK,GAAGmM,YAAa,EAClD,CAACnM,KAAK,EAAEmM,YAAY,CAAC,CACtB,CAAA;EAED,MAAMmP,cAAc,GAAGA,MAAK;AAC1B,IAAA,IAAIF,OAAO,CAAC/a,MAAM,GAAG,CAAC,EAAE;MACtB,OAAO+a,OAAO,CAACvb,GAAG,CAAC,CAAC0I,MAAM,EAAEhJ,GAAG,KAAI;QACjC,MAAMgc,WAAW,GAAG,OAAOhT,MAAM,KAAK,QAAQ,GAAGA,MAAM,CAACvI,KAAK,GAAGuI,MAAM,CAAA;QACtE,MAAMiT,WAAW,GAAG,OAAOjT,MAAM,KAAK,QAAQ,GAAGA,MAAM,CAACtC,KAAK,GAAGsC,MAAM,CAAA;AAEtE,QAAA,oBACEjB,KAAA,CAAAjK,aAAA,CAAC0d,KAAK,EAAA/S,QAAA,CAAA;AACJhI,UAAAA,KAAK,EAAEub,WAAY;AACnBhc,UAAAA,GAAG,EAAE,CAAA,EAAGA,GAAG,CAAA,CAAA,EAAIgc,WAAW,CAAG,CAAA;UAC7BT,OAAO,EAAEO,aAAa,KAAKE,WAAY;UACvC7P,QAAQ,EACNA,QAAQ,IAAK,OAAOnD,MAAM,KAAK,QAAQ,IAAIA,MAAM,CAACmD,QAAAA;SAEhDjF,EAAAA,KAAK,CAER+U,EAAAA,WACI,CAAC,CAAA;AAEZ,OAAC,CAAC,CAAA;AACJ,KAAA;AAEA,IAAA,OAAO/T,QAAQ,CAAC5H,GAAG,CAACqG,QAAQ,EAAEwB,KAAK,IAAG;AACpC,MAAA,iBACEC,cAAc,CAACD,KAAK,CAAC,KACpBA,KAAK,CAACpK,IAAI,KAAKyd,KAAK,IAAIrT,KAAK,CAACpK,IAAI,KAAKud,WAAW,CAAC,EACpD;QACA,oBAAOY,YAAY,CAAC/T,KAAqB,EAAE;AACzC,UAAA,GAAGjB,KAAK;AACR,UAAA,IAAIiB,KAAK,CAACpK,IAAI,KAAKud,WAAW,GAAG;YAAExZ,IAAI;AAAE6Z,YAAAA,WAAAA;WAAa,GAAG,EAAE,CAAC;AAC5D;AACA;UACA/O,YAAY;AACZT,UAAAA,QAAQ,EAAEA,QAAQ,IAAKhE,KAAK,CAACjB,KAA+B,CAACiF,QAAQ;AACrEoP,UAAAA,OAAO,EAAEO,aAAa,KAAM3T,KAAK,CAACjB,KAA6B,CAACzG,KAAK;UACrEhB,IAAI,EAAEA,IAAI,IAAIwF,cAAAA;AACf,SAAA,CAAC,CAAA;AACJ,OAAA;AAEA,MAAA,OAAOkD,KAAK,CAAA;AACd,KAAC,CAAC,CAAA;GACH,CAAA;EAED,oBACEJ,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4d,IAAAA,EAAE,EAAEA,EAAG;AACP7d,IAAAA,KAAK,EAAEA,KAAM;AACb+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACEmV,KAAK;MACLhV,SAAS;AACT,MAAA,CAAC,GAAGH,SAAS,CAAA,OAAA,EAAU3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AACpC,MAAA,CAAC,CAAG2E,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAGkV,WAAW,KAAK,OAAA;AAC/C,KAAA,CACF,CAAA;GAEAI,EAAAA,cAAc,EACZ,CAAC,CAAA;AAEV;;;;;ACxFA,MAAMI,cAAc,gBAAG/C,UAAU,CAC/B,CACE;AACE3S,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;EACdnG,KAAK;EACLkI,QAAQ;EACRkH,OAAO;EACP1D,QAAQ;EACRxF,QAAQ;EACRlH,IAAI;EACJ2c,KAAK;EACLC,cAAc;EACdd,OAAO;EACPrG,MAAM;EACNoH,OAAO;EACPlL,YAAY;EACZmL,YAAY;AACZvU,EAAAA,OAAAA;AACD,CAAA,EACDxK,GAAmC,KACjC;EACF,MAAMsL,YAAY,GAAGA,MAAK;IACxB,IAAI,CAACqD,QAAQ,EAAE;AACb0D,MAAAA,OAAO,GAAGpK,UAAU,CAAC2W,KAAK,IAAI3b,KAAK,CAAC,CAAC,CAAA;AACrCkI,MAAAA,QAAQ,GAAGlD,UAAU,CAAC2W,KAAK,IAAI3b,KAAK,CAAC,CAAC,CAAA;AACxC,KAAA;GACD,CAAA;AAEDgH,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI4U,cAAc,IAAId,OAAO,EAAE;AAC7B5S,MAAAA,QAAQ,GAAGlD,UAAU,CAAChF,KAAK,CAAC,CAAC,CAAA;AAC/B,KAAA;AACF,GAAC,EAAE,CAAC4b,cAAc,EAAEd,OAAO,CAAC,CAAC,CAAA;EAE7B,oBACExT,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAI;AACT4e,IAAAA,KAAK,EAAEA,KAAM;AACbhL,IAAAA,YAAY,EAAEA,YAAa;AAC3BmL,IAAAA,YAAY,EAAEA,YAAa;AAC3B3V,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACE0F,QAAQ;AACRnE,MAAAA,OAAO,EAAEA,OAAO;AAChB,MAAA,CAACpB,SAAS,GAAGA,SAAAA;AACd,KAAA,CACF,CAAA;GAEDmB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACE2B,IAAAA,IAAI,EAAEA,IAAK;AACX1B,IAAAA,IAAI,EAAC,OAAO;AACZ8R,IAAAA,OAAO,EAAEA,OAAQ;AACjB1D,IAAAA,QAAQ,EAAEA,QAAS;AACnBxD,IAAAA,QAAQ,EAAEG,YAAa;AACvBoM,IAAAA,MAAM,EAAEnM,CAAC,IAAImM,MAAM,GAAGnM,CAAC,CAAE;AACzBuT,IAAAA,OAAO,EAAEvT,CAAC,IAAIuT,OAAO,GAAGvT,CAAC,CAAA;AAAE,GAE7B,CAAA,eAAAhB,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,CAAA,EAAIA,SAAS,CAAA,CAAA,EAAI0F,QAAQ,GAAG,UAAU,GAAG,SAAS,EAAE,CACjE,CAAA;AAAE,GAEL,CAAA,eAAApE,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;AAAS,GAAA,EACnCE,QAAQ,IAAIyV,KAAK,IAAI3b,KAClB,CACD,CAAC,CAAA;AAEZ,CAAC,CACF,CAAA;AAED0b,cAAc,CAAC1S,WAAW,GAAG,OAAO,CAAA;AACpC,MAAM+R,KAAK,GAAGpb,MAAM,CAACoU,MAAM,CAAC2H,cAAc,EAAE;AAC1CK,EAAAA,KAAK,EAAEf,UAAU;AACjBgB,EAAAA,MAAM,EAAEnB,WAAAA;AACT,CAAA;;;;;AChFKoB,MAAAA,MAAM,GAAoBA,CAAC;EAC/Bjc,KAAK;EACLkG,QAAQ;EACRwF,QAAQ;AACRvF,EAAAA,SAAS,GAAG,EAAE;EACd/I,KAAK;EACLgS,OAAO;EACP8M,MAAM;AACNlW,EAAAA,SAAS,GAAG1B,eAAe;EAC3B6X,QAAQ;AACRR,EAAAA,KAAAA;AAAK,CACN,KAAI;EACH,MAAMS,WAAW,GAAsC9T,CAAC,IAAG;AACzD,IAAA,IAAIoD,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEA0D,OAAO,GAAG9G,CAAC,CAAC,CAAA;GACb,CAAA;AAED,EAAA,oBACEhB,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA2K,QAAA,CAAA;IACE7B,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,QAAA,EAAWG,SAAS,CAAA,CAAA,CAAG,EACnC;AACEgW,MAAAA,QAAQ,EAAEA,QAAQ;AAClBzQ,MAAAA,QAAQ,EAAEA,QAAAA;AACX,KAAA,CACF,CAAE;AACHtO,IAAAA,KAAK,EAAEA,KAAM;AACbgS,IAAAA,OAAO,EAAEgN,WAAAA;AAAY,GAAA,EAChBT,KAAK,GAAG;AAAEA,IAAAA,KAAAA;AAAO,GAAA,GAAG,EAAE,CAAA,EAE1BO,MAAM,GAAGA,MAAM,CAAClc,KAAe,CAAC,GAAGkG,QAAQ,IAAIlG,KAC7C,CAAC,CAAA;AAEV;;;;;ACpCMqc,MAAAA,GAAG,GAAuBA,CAAC;AAC/BrW,EAAAA,SAAS,GAAG1B,eAAe;EAC3BlH,KAAK,GAAG,EAAE;EACVkf,OAAO;EACPtc,KAAK;EACLiG,KAAK;EACLsW,QAAQ;EACRC,KAAK;AACL9B,EAAAA,IAAAA;AACD,CAAA,KAAI;EACH,MAAM+B,aAAa,GAAInU,CAA4C,IAAI;IACrEA,CAAC,CAACmB,cAAc,EAAE,CAAA;IAClBnB,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB5O,IAAAA,CAAC,CAACG,MAAM,CAACzI,KAAK,GAAGA,KAAK,CAAA;IAEtBsc,OAAO,CAAChU,CAAC,CAAC,CAAA;GACX,CAAA;EAED,oBACEhB,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACED,IAAAA,KAAK,EAAE;AAAE,MAAA,GAAGA,KAAK;AAAEsf,MAAAA,eAAe,EAAEF,KAAAA;KAAQ;IAC5CrW,SAAS,EAAE,GAAGH,SAAS,CAAA,IAAA,CAAA;AAAO,GAAA,eAE9BsB,KAAA,CAAAjK,aAAA,CAAO4I,MAAAA,EAAAA,IAAAA,EAAAA,KAAK,KAAK/F,SAAS,GAAG+F,KAAK,GAAGjG,KAAY,CAEjD,EAACuc,QAAQ,iBACPjV,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAkB,eAAA,CAAA;AAACoJ,IAAAA,OAAO,EAAEqN,aAAAA;AAAc,GAAA,EACpE/B,IAAI,iBAAIpT,KAAA,CAAAjK,aAAA,CAAAiK,KAAA,CAAAM,QAAA,EAAA,IAAA,EAAE,SACP,CAEL,CAAC,CAAA;AAEV;;;;;ACnCM+U,MAAAA,YAAY,GAAGA,CAAC;EACpBjC,IAAI;EACJtd,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;AACdwV,EAAAA,KAAK,GAAG,SAAS;AACjBiB,EAAAA,WAAW,GAAG,SAAS;AACvB5W,EAAAA,SAAS,GAAG5B,cAAAA;AAAc,CACR,kBAClBkD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACED,EAAAA,KAAK,EAAEA,KAAM;EACb+I,SAAS,EAAE,GAAGH,SAAS,CAAA,CAAA,EAAIA,SAAS,CAAWA,QAAAA,EAAAA,SAAS,UAAUG,SAAS,CAAA,CAAA;AAAG,CAE9EmB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;EAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;AAAS,CAAA,EAClC0U,IAAI,iBACHpT,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE0M,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXC,EAAAA,OAAO,EAAC,WAAW;AACnBE,EAAAA,KAAK,EAAC,4BAAA;AAA4B,CAElC7C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA,IAAA,EAAQse,KAAa,CACrB,eAAArU,KAAA,CAAAjK,aAAA,CAAA,GAAA,EAAA;AAAGsN,EAAAA,SAAS,EAAC,gBAAgB;AAACT,EAAAA,IAAI,EAAC,MAAA;AAAM,CACvC5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,SAAA,EAAA;AAAS6M,EAAAA,IAAI,EAAC,SAAS;AAAC2S,EAAAA,EAAE,EAAC,IAAI;AAACC,EAAAA,EAAE,EAAC,IAAI;AAACC,EAAAA,EAAE,EAAC,IAAI;AAACC,EAAAA,EAAE,EAAC,GAAA;AAAG,CAAU,CAChE,eAAA1V,KAAA,CAAAjK,aAAA,CAAA,GAAA,EAAA;AAAGgN,EAAAA,MAAM,EAAC,SAAA;AAAS,CACjB/C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AAAM+M,EAAAA,CAAC,EAAC,+GAAA;AAA+G,CAAO,CAC9H,eAAA9C,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE+M,EAAAA,CAAC,EAAC,+OAA+O;AACjPF,EAAAA,IAAI,EAAC,SAAA;AAAS,CACT,CACN,CACF,CACA,CAEJ,CACL,eAAA5C,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;EAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,YAAA,CAAA;AAAe,CAAE4W,EAAAA,WAAiB,CAC3D;;;;;ACNP,MAAMK,WAAW,GAAG,GAAG,CAAA;AACvB,MAAMC,iBAAiB,GAAG,EAAE,CAAA;AAC5B,MAAMC,iBAAiB,GAAG,CAAC,CAAA;AAE3B,MAAMC,eAAe,gBAAGzE,UAAU,CAChC,CACE;AACE3S,EAAAA,SAAS,GAAG1B,eAAe;EAC3B2W,EAAE;AACFoC,EAAAA,WAAW,GAAG,EAAE;AAChBC,EAAAA,oBAAoB,GAAG,IAAI;AAC3BC,EAAAA,YAAY,GAAG,IAAI;AACnBC,EAAAA,gBAAgB,GAAG,OAAO;EAC1BtX,QAAQ;AACRkV,EAAAA,OAAO,GAAG,EAAE;AACZqC,EAAAA,UAAU,GAAGR,WAAW;EACxBS,oBAAoB;AACpBC,EAAAA,IAAI,GAAG,SAAS;EAChB3d,KAAK;EACLmM,YAAY;EACZyR,QAAQ;AACRlS,EAAAA,QAAQ,GAAG,KAAK;AAChBmS,EAAAA,OAAO,GAAG,KAAK;AACfpS,EAAAA,WAAW,GAAG,QAAQ;AACtBI,EAAAA,UAAU,GAAG,KAAK;AAClBiS,EAAAA,UAAU,GAAG,KAAK;AAClBtM,EAAAA,WAAW,GAAG,KAAK;AACnBnQ,EAAAA,IAAI,GAAG,OAAO;AACdwB,EAAAA,KAAK,GAAG,KAAK;AACbkb,EAAAA,iBAAiB,GAAG,EAAE;EACtBxM,UAAU;EACVnU,KAAK;EACL4gB,QAAQ;EACRtJ,QAAQ;EACRuJ,UAAU;EACVC,OAAO;EACPhW,QAAQ;AACRiW,EAAAA,UAAU,GAAG,KAAK;AAClBvJ,EAAAA,IAAI,GAAG,KAAK;AACZwJ,EAAAA,SAAS,GAAG,IAAI;AAChBC,EAAAA,eAAe,GAAG,KAAK;EACvBC,SAAS;EACTjN,iBAAiB;EACjBkN,cAAc;EACdhX,OAAO;EACPf,aAAa;AACb4K,EAAAA,SAAS,GAAG,YAAY;AACxBoN,EAAAA,UAAAA;AAAU,CACX,EACDzhB,GAAiC,KACjB;AAChB,EAAA,MAAM0hB,KAAK,GAAGd,IAAI,KAAK,MAAM,CAAA;AAC7B,EAAA,MAAMe,UAAU,GAAGf,IAAI,KAAK,UAAU,CAAA;AACtC,EAAA,MAAMgB,OAAO,GAAGF,KAAK,IAAIC,UAAU,CAAA;AAEnC,EAAA,MAAMnY,YAAY,GAAGQ,OAAO,CAC1B,MAAM/G,KAAK,IAAImM,YAAY,IAAI,EAAE,EACjC,CAACnM,KAAK,EAAEmM,YAAY,CAAC,CACtB,CAAA;AAED,EAAA,MAAMyS,qBAAqB,GAAG7X,OAAO,CACnC,MACE,CAAC,CAAChG,KAAK,CAACC,OAAO,CAACuF,YAAY,CAAC,GAAG,CAACA,YAAY,CAAC,GAAGA,YAAY,EAAE7C,MAAM,CACnE4E,CAAC,IAAIA,CAAC,CACP,EACH,CAAC/B,YAAY,CAAC,CACf,CAAA;EAED,MAAM,CAACsY,OAAO,EAAEC,UAAU,CAAC,GAAGpgB,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC7C,EAAA,MAAMqgB,SAAS,GAAG7gB,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC9C,MAAM,CAAC8gB,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGvgB,QAAQ,CAAS,CAAC,CAAC,CAAA;EACnE,MAAM,CAAC+L,MAAM,EAAE6B,SAAS,CAAC,GAAG5N,QAAQ,CAAC8S,WAAW,IAAIoD,IAAI,CAAC,CAAA;EACzD,MAAM,CAACsK,WAAW,EAAEC,cAAc,CAAC,GAAGzgB,QAAQ,CAAC2e,WAAW,IAAI,EAAE,CAAC,CAAA;EACjE,MAAM,CAAC+B,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG3gB,QAAQ,CAAgB,EAAE,CAAC,CAAA;AAE3E,EAAA,MAAM,CAACyd,QAAQ,EAAEmD,WAAW,CAAC,GAAG5gB,QAAQ,CACtCigB,OAAO,GAAGC,qBAAqB,GAAGrY,YAAY,CAC/C,CAAA;EAED6T,mBAAmB,CAACrd,GAAG,EAAE,OAAO;IAC9B+L,KAAK,EAAEA,MAAMiW,SAAS,CAAC9f,OAAO,EAAE6J,KAAK,EAAE;IACvCwR,IAAI,EAAEA,MAAOyE,SAAS,CAAC9f,OAA4B,EAAEqb,IAAI,EAAE;AAC3D;AACA;IACAhE,QAAQ,EAAEA,CAAC,GAAG9Q,IAAI;AAChB;AACA;AACCuZ,IAAAA,SAAS,CAAC9f,OAA0B,EAAEqX,QAAQ,CAAC,GAAG9Q,IAAI,CAAC;IAC1D+U,aAAa,EAAEwE,SAAS,CAAC9f,OAAAA;AAC1B,GAAA,CAAC,CAAC,CAAA;AAEH,EAAA,MAAMsgB,gBAAgB,GAAGA,MACvB,CAAC7T,QAAQ,IAAIyQ,QAAQ,EAAE9b,MAAM,IAAIye,UAAU,CAAC,IAAI,CAAC,CAAA;EAEnD,MAAMU,gBAAgB,GAAGA,MAAM,CAAC9T,QAAQ,IAAIoT,UAAU,CAAC,KAAK,CAAC,CAAA;AAE7D,EAAA,MAAMW,qBAAqB,GAAGC,WAAW,CAAC,MAAK;IAC7C,IAAI,CAACpC,oBAAoB,EAAE;AACzB,MAAA,OAAA;AACF,KAAA;IAEA6B,cAAc,CAAC,EAAE,CAAC,CAAA;IAElB,MAAMQ,cAAc,GAAGZ,SAAS,CAAC9f,OAAO,EAAE4J,aAAa,CACrD,qCAAqC,CACpB,CAAA;AAEnB,IAAA,IAAI8W,cAAc,EAAE;MAClBA,cAAc,CAACC,SAAS,GAAG,EAAE,CAAA;AAC/B,KAAA;AACF,GAAC,EAAE,CAACtC,oBAAoB,CAAC,CAAC,CAAA;AAE1BtW,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM2G,kBAAkB,GAAIC,KAAiB,IAAU;AACrD,MAAA,IACEmR,SAAS,CAAC9f,OAAO,IACjB,CAAC8f,SAAS,CAAC9f,OAAO,CAAC4O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACjD;QACA6D,SAAS,CAACsI,IAAI,CAAC,CAAA;AAEf,QAAA,IAAI+J,OAAO,EAAE;AACXc,UAAAA,qBAAqB,EAAE,CAAA;AACzB,SAAA;AACF,OAAA;KACD,CAAA;AAEDxiB,IAAAA,QAAQ,CAAC6Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;AAE1D,IAAA,OAAO,MAAK;AACV1Q,MAAAA,QAAQ,CAAC8Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;KAC9D,CAAA;GACF,EAAE,CAAC8R,qBAAqB,EAAE7K,IAAI,EAAE+J,OAAO,CAAC,CAAC,CAAA;AAE1C3X,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI,CAAC+X,SAAS,CAAC9f,OAAO,IAAI,CAACoS,iBAAiB,EAAE;AAC5C,MAAA,OAAA;AACF,KAAA;IAEA,MAAMwO,SAAS,GAAGd,SAAS,CAAC9f,OAAO,CAAC4T,qBAAqB,EAAE,CAAA;IAC3D,MAAMiN,cAAc,GAAGrC,UAAU,CAAA;AACjC,IAAA,MAAMsC,YAAY,GAAG/M,MAAM,CAACC,WAAW,CAAA;AACvC,IAAA,MAAM+M,UAAU,GAAGD,YAAY,GAAGF,SAAS,CAAC3M,MAAM,CAAA;AAClD,IAAA,MAAM+M,UAAU,GAAGJ,SAAS,CAAC/M,GAAG,CAAA;AAEhC,IAAA,IAAIoN,aAAa,GAAkB;AACjCpN,MAAAA,GAAG,EAAE,CAAA,EAAG+M,SAAS,CAAC3M,MAAM,CAAI,EAAA,CAAA;AAC5BiN,MAAAA,IAAI,EAAE,CAAA,EAAGN,SAAS,CAACM,IAAI,CAAI,EAAA,CAAA;AAC3BpW,MAAAA,KAAK,EAAE,CAAA,EAAG8V,SAAS,CAAC9V,KAAK,CAAA,EAAA,CAAA;KAC1B,CAAA;AAED,IAAA,IAAIiW,UAAU,GAAGF,cAAc,IAAIG,UAAU,GAAGH,cAAc,EAAE;AAC9DI,MAAAA,aAAa,GAAG;AACdpN,QAAAA,GAAG,EAAE,CAAG+M,EAAAA,SAAS,CAAC/M,GAAG,GAAGgN,cAAc,CAAI,EAAA,CAAA;AAC1CK,QAAAA,IAAI,EAAE,CAAA,EAAGN,SAAS,CAACM,IAAI,CAAI,EAAA,CAAA;AAC3BpW,QAAAA,KAAK,EAAE,CAAA,EAAG8V,SAAS,CAAC9V,KAAK,CAAA,EAAA,CAAA;OAC1B,CAAA;AACH,KAAA;IAEAsV,mBAAmB,CAACa,aAAa,CAAC,CAAA;AACpC,GAAC,EAAE,CAACzC,UAAU,EAAEpM,iBAAiB,CAAC,CAAC,CAAA;EAEnC,MAAM+O,YAAY,GAAI9X,CAAqB,IAAI;AAC7C6W,IAAAA,cAAc,CAAC7W,CAAC,CAACG,MAAM,CAACzI,KAAe,CAAC,CAAA;AACxCge,IAAAA,QAAQ,GAAG1V,CAAC,CAACG,MAAM,CAACzI,KAAe,CAAC,CAAA;IAEpC,IAAI,CAACyK,MAAM,EAAE;AACX6B,MAAAA,SAAS,CAAC,CAAC7B,MAAM,IAAImK,IAAI,CAAC,CAAA;AAC1B6K,MAAAA,qBAAqB,EAAE,CAAA;AACzB,KAAA;GACD,CAAA;EAED,MAAMY,oBAAoB,GAAGA,MAAK;AAChC,IAAA,IACE3B,UAAU,IACTd,QAAQ,IACPzB,QAAQ,CAAC9b,MAAM,IAAIud,QAAQ,IAC3B,CAACzB,QAAQ,CAAChc,QAAQ,CAAC+e,WAAW,CAAE,EAClC;AACA,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAMoB,cAAc,GAAGpB,WAAW,CAAC1H,IAAI,EAAE,CAAA;AAEzC,IAAA,IAAI,CAAC8I,cAAc,IAAI,CAAC3B,OAAO,IAAIxC,QAAQ,CAAChc,QAAQ,CAACmgB,cAAc,CAAC,EAAE;AACpE,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAMC,eAAe,GAAG,CAAC,GAAGpE,QAAQ,EAAEmE,cAAc,CAAC,CAAA;IAErDpY,QAAQ,GAAGqY,eAAe,CAAC,CAAA;IAC3B7L,QAAQ,GAAG4L,cAAc,CAAC,CAAA;IAE1B,MAAMjG,KAAK,GAAG0E,SAAS,CAAC9f,OAAO,EAAE4J,aAAa,CAAC,OAAO,CAAC,CAAA;AAEvD,IAAA,IAAIwR,KAAK,EAAE;MACTA,KAAK,CAACra,KAAK,GAAG,EAAE,CAAA;AAClB,KAAA;IAEAsf,WAAW,CAACiB,eAAe,CAAC,CAAA;AAC5Bd,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAMzR,YAAY,GAAGA,CACnB1F,CAAqB,EACrBiT,WAAmB,EACnBhT,MAAmB,KACjB;AACF,IAAA,IAAIoW,OAAO,EAAE;AACX,MAAA,IACEf,QAAQ,IACRzB,QAAQ,CAAC9b,MAAM,IAAIud,QAAQ,IAC3B,CAACzB,QAAQ,CAAChc,QAAQ,CAACob,WAAW,CAAC,EAC/B;AACA,QAAA,OAAA;AACF,OAAA;MAEA,MAAMiF,YAAY,GAAGrE,QAAQ,CAAChc,QAAQ,CAACob,WAAW,CAAC,GAC9CY,QAAqB,CAACzY,MAAM,CAAC+c,IAAI,IAAIA,IAAI,KAAKlF,WAAW,CAAC,GAC3D,CAAC,GAAGY,QAAQ,EAAEZ,WAAW,CAAC,CAAA;MAE9B+D,WAAW,CAACkB,YAAY,CAAC,CAAA;AACzBtY,MAAAA,QAAQ,GAAGsY,YAAY,EAAEjY,MAAM,CAAC,CAAA;AAEhC,MAAA,IAAI4T,QAAQ,CAAChc,QAAQ,CAACob,WAAW,CAAC,EAAE;AAClC0C,QAAAA,UAAU,GAAG1C,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACnC,OAAC,MAAM;AACLmM,QAAAA,QAAQ,GAAG6G,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACjC,OAAA;AACF,KAAC,MAAM;MACL+D,SAAS,CAACsI,IAAI,CAAC,CAAA;MACf0K,WAAW,CAAC/D,WAAW,CAAC,CAAA;AACxBrT,MAAAA,QAAQ,GAAGqT,WAAW,EAAEhT,MAAM,CAAC,CAAA;AAC/BmM,MAAAA,QAAQ,GAAG6G,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACjC,KAAA;AAEAkX,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAM5O,WAAW,GAAGA,MAAK;AACvB,IAAA,MAAM7Q,KAAK,GAAG2e,OAAO,GAAG,EAAE,GAAG,EAAE,CAAA;IAE/BW,WAAW,CAACtf,KAAK,CAAC,CAAA;IAClBkI,QAAQ,GAAG,EAAE,CAAC,CAAA;AACdgW,IAAAA,OAAO,IAAI,CAAA;AAEXuB,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAMiB,eAAe,GAAIpY,CAAqB,IAAI;IAChD,MAAMiY,eAAe,GAAG5B,OAAO,GAC1BxC,QAAqB,CAACzY,MAAM,CAAC+c,IAAI,IAAIA,IAAI,KAAKnY,CAAC,CAACG,MAAM,CAACzI,KAAK,CAAC,GAC9DsI,CAAC,CAACG,MAAM,CAACzI,KAAK,CAAA;IAElBkI,QAAQ,GAAGqY,eAAe,CAAC,CAAA;IAC3BjB,WAAW,CAACiB,eAAe,CAAC,CAAA;GAC7B,CAAA;EAED,MAAM9F,eAAe,GACnBnS,CAEC,IACC;AACF,IAAA,MAAMK,OAAO,GAAGC,UAAU,CAAC,MAAK;MAC9BN,CAAC,CAACG,MAAM,CAACzI,KAAK,GAAGsI,CAAC,CAACG,MAAM,CAACmX,SAAS,CAACpI,IAAI,EAAE,CAAC7I,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAE5DwQ,MAAAA,cAAc,CAAC7W,CAAC,CAACG,MAAM,CAACzI,KAAK,CAAC,CAAA;AAC9Bge,MAAAA,QAAQ,GAAG1V,CAAC,CAACG,MAAM,CAACzI,KAAK,CAAC,CAAA;AAE1B,MAAA,IAAIsI,CAAC,CAAC/I,GAAG,KAAK,OAAO,IAAI2f,WAAW,CAAC1H,IAAI,EAAE,KAAK,EAAE,EAAE;QAClD,IAAI,CAACiH,KAAK,EAAE;UACVnW,CAAC,CAAC4O,eAAe,EAAE,CAAA;UACnB5O,CAAC,CAACmB,cAAc,EAAE,CAAA;UAElBV,YAAY,CAACJ,OAAO,CAAC,CAAA;AAErB,UAAA,OAAA;AACF,SAAA;AAEA0X,QAAAA,oBAAoB,EAAE,CAAA;AAEtB/X,QAAAA,CAAC,CAACG,MAAM,CAACmX,SAAS,GAAG,EAAE,CAAA;AACzB,OAAA;MAEA,IACEtX,CAAC,CAAC/I,GAAG,KAAK,WAAW,KACpBof,OAAO,GAAG,CAACO,WAAW,CAAC1H,IAAI,EAAE,CAACnX,MAAM,GAAG6e,WAAW,CAAC1H,IAAI,EAAE,CAACnX,MAAM,CAAC,EAClE;QACA,MAAMkgB,eAAe,GAAG5B,OAAO,GAC1BxC,QAAqB,CAACzY,MAAM,CAC3B+c,IAAI,IAAIA,IAAI,KAAKtE,QAAQ,CAACA,QAAQ,CAAC9b,MAAM,GAAG,CAAC,CAAC,CAC/C,GACD6e,WAAW,CAAC1H,IAAI,EAAE,CAAA;QAEtBtP,QAAQ,GAAGqY,eAAe,CAAC,CAAA;QAC3BjB,WAAW,CAACiB,eAAe,CAAC,CAAA;AAC9B,OAAA;MAEAxX,YAAY,CAACJ,OAAO,CAAC,CAAA;AACvB,KAAC,CAAC,CAAA;GACH,CAAA;AAED,EAAA,MAAMgY,cAAc,GAAG5Z,OAAO,CAAC,MAAK;IAClC,IAAI,CAACqX,SAAS,EAAE;AACd,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;IAEA,OAAOD,UAAU,IAAI1T,MAAM,gBACzBnD,KAAA,CAAAjK,aAAA,CAAC0N,UAAU,EAAA,IAAA,CAAG,gBAEdzD,KAAA,CAAAjK,aAAA,CACGkU,MAAAA,EAAAA,IAAAA,EAAAA,UAAU,IAAK6M,SAAS,iBAAI9W,KAAA,CAAAjK,aAAA,CAACmN,SAAS,EAAA;AAACC,MAAAA,MAAM,EAAEA,MAAAA;AAAO,KAAA,CACnD,CACP,CAAA;GACF,EAAE,CAAC2T,SAAS,EAAED,UAAU,EAAE1T,MAAM,EAAE8G,UAAU,CAAC,CAAC,CAAA;AAE/C,EAAA,MAAMqP,cAAc,GAAG7Z,OAAO,CAAC,MAAK;AAClC,IAAA,OAAOgY,SAAS,CAAC9f,OAAO,GACpBoS,iBAAiB,GAAG0N,SAAS,CAAC9f,OAAO,CAAC,GACtC8f,SAAS,CAAC9f,OAAO,CAAA;AACvB,GAAC,EAAE,CAACoS,iBAAiB,CAAC,CAAC,CAAA;AAEvB,EAAA,MAAMwP,gBAAgB,GAAG3a,QAAQ,GAC7B,CAACnF,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAC7CxC,MAAM,CAAC4E,CAAC,IAAIA,CAAC,CAAC,CACdzI,GAAG,CAAE6H,KAA4B,IAAKA,KAAK,CAACjB,KAAK,CAAC,GACrD2U,OAAO,CAAA;AAEX,EAAA,MAAM0F,eAAe,GAAGD,gBAAgB,CAACnd,MAAM,CAAE6E,MAAkB,IAAI;AACrE,IAAA,IAAI,OAAOgV,YAAY,KAAK,UAAU,EAAE;AACtC,MAAA,OAAOA,YAAY,CAAC2B,WAAW,EAAE3W,MAAM,CAAC,CAAA;AAC1C,KAAA;IAEA,IAAIgV,YAAY,KAAK,KAAK,EAAE;AAC1B,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,MAAMwD,YAAY,GAAG,CAAA,EACnB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC5gB,QAAQ,CAAC,OAAOoI,MAAM,CAACrC,QAAQ,CAAC,GACjDqC,MAAM,CAACrC,QAAQ;AACf;AACA;AACAqC,IAAAA,MAAM,CAACiV,gBAAgB,CAAC,IAAIjV,MAAM,CAACvI,KACzC,CAAE,CAAA,CAAA;AAEF,IAAA,OAAO+gB,YAAY,CAACC,WAAW,EAAE,CAAC7gB,QAAQ,CAAC+e,WAAW,CAAC8B,WAAW,EAAE,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EAEF,MAAMC,kBAAkB,GAAGA,MAAK;IAC9B,IAAI,CAACvV,QAAQ,EAAE;MACbY,SAAS,CAAC,CAAC7B,MAAM,CAAC,CAAA;AACpB,KAAA;AAEA,IAAA,MAAMyW,aAAa,GAAGjkB,QAAQ,CAACkkB,sBAAsB,CACnD,CAAGnb,EAAAA,SAAS,CAAgB,cAAA,CAAA,CAC7B,GAAG,CAAC,CAAmB,CAAA;AAExB,IAAA,IAAIkb,aAAa,EAAE;AACjBjC,MAAAA,mBAAmB,CAACiC,aAAa,CAAC1H,WAAW,GAAG2D,iBAAiB,CAAC,CAAA;AACpE,KAAA;AAEA,IAAA,MAAMxU,OAAO,GAAGC,UAAU,CAAC,MAAK;MAC9B,MAAMwY,WAAW,GAAGnkB,QAAQ,CAACokB,cAAc,CACzC,CAAA,EAAGrb,SAAS,CAAA,iBAAA,CAAmB,CAChC,CAAA;AAED,MAAA,IAAIob,WAAW,EAAE;QACfA,WAAW,EAAEtY,KAAK,EAAE,CAAA;AACtB,OAAA;MAEAC,YAAY,CAACJ,OAAO,CAAC,CAAA;KACtB,EAAE,CAAC,CAAC,CAAA;GACN,CAAA;EAED,MAAM2Y,UAAU,GAAG,CAAC,MAAK;AACvB,IAAA,MAAMlG,OAAO,GAAG0F,eAAe,CAACjhB,GAAG,CACjC,CAAC;MAAEqG,QAAQ;AAAEC,MAAAA,SAAS,GAAG,EAAE;MAAE,GAAGM,KAAAA;AAAK,KAAE,KAAI;AACzC,MAAA,MAAM8J,UAAU,GAAGoO,OAAO,GACtBxC,QAAQ,CAAChc,QAAQ,CAACsG,KAAK,CAACzG,KAAe,CAAC,GACxCyG,KAAK,CAACzG,KAAK,KAAKmc,QAAQ,CAAA;AAE5B,MAAA,oBACE7U,KAAA,CAAAjK,aAAA,CAAC4e,MAAM,EAAAjU,QAAA,CAAA;AACLzI,QAAAA,GAAG,EAAE,CAAA,EAAGkH,KAAK,CAACzG,KAAK,CAAA,CAAA;AAAG,OAAA,EAClByG,KAAK,EAAA;AACT0V,QAAAA,QAAQ,EAAE5L,UAAW;AACrBpK,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdY,SAAS,EACT;AACE,UAAA,CAAC,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG2Y,OAAO,GAC7BpO,UAAU,GACV9J,KAAK,CAACzG,KAAK,KAAKmc,QAAQ;AAC5B,UAAA,CAAC,GAAGnW,SAAS,CAAA,SAAA,CAAW,GACtB4X,QAAQ,IAAIe,OAAO,IAAI,CAACpO,UAAU,GAC9B4L,QAAQ,CAAC9b,MAAM,IAAIud,QAAQ,GAC3B,KAAA;AACP,SAAA,CACF,CAAE;QACHxO,OAAO,EAAE9G,CAAC,IAAG;UACX,IAAI7B,KAAK,CAACiF,QAAQ,EAAE;AAClB,YAAA,OAAA;AACF,WAAA;AAEAsC,UAAAA,YAAY,CACV1F,CAA4B,EAC5B7B,KAAK,CAACzG,KAAe,EACrB;YAAEkG,QAAQ;YAAEC,SAAS;YAAE,GAAGM,KAAAA;AAAK,WAAgB,CAChD,CAAA;SACD;AACF,QAAA,YAAA,EAAYA,KAAK,CAACzG,KAAAA;AAAM,OAAA,CAAA,EAEvBkG,QAAQ,IAAIO,KAAK,CAACzG,KAAK,EAEvB2e,OAAO,IAAIpO,UAAU,iBACpBjJ,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;QAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,cAAA,CAAA;AAAiB,OAAA,EAC3C0X,oBAAoB,KAAK,IAAI,gBAC5BpW,KAAA,CAAAjK,aAAA,CAACyN,SAAS,EAAA,IAAA,CAAG,GAEb4S,oBAEE,CAEF,CAAC,CAAA;AAEb,KAAC,CACF,CAAA;AAED,IAAA,OAAOa,cAAc,GAAGA,cAAc,CAACnD,OAAO,CAAC,GAAGA,OAAO,CAAA;AAC3D,GAAC,GAAG,CAAA;EAEJ,MAAMmG,eAAe,GAAG,CAAC1D,OAAO,IAAIpT,MAAM,iBACxCnD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,WAAW,EACvB;MACE,CAACoL,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC2M,iBAAiB,GAAGA,iBAAAA;AACtB,KAAA,CACF,CAAE;AACH3gB,IAAAA,KAAK,EAAE;AACL,MAAA,GAAGgiB,gBAAgB;AACnBoC,MAAAA,SAAS,EAAE/D,UAAU;MACrB,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAACtd,QAAQ,CAACiR,SAAS,CAAC,GAC3C;QACE0B,GAAG,EACD,EACE,CAACiM,SAAS,CAAC9f,OAAO,EAAE4J,aAAa,CAAC,CAAI7C,CAAAA,EAAAA,SAAS,CAAW,SAAA,CAAA,CAAC,EACvDiB,YAAY,IAAIwW,UAAU,IAAIP,iBAAiB,CACpD,IAAI6B,SAAS,CAAC9f,OAAO,EAAEgI,YAAY,IAAI,CAAC,CAAA;OAC5C,GACD,EAAE,CAAA;AACP,KAAA;AAAC,GAAA,EAED6W,UAAU,iBACTxW,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACEC,IAAAA,IAAI,EAAC,MAAM;IACX6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjChG,IAAAA,KAAK,EAAEkf,WAAY;AACnBhX,IAAAA,QAAQ,EAAEkY,YAAa;AACvB3U,IAAAA,WAAW,EAAC,WAAA;AAAW,GAAA,CAE1B,EAEA,CAACoS,OAAO,iBACPvW,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAA0B,uBAAA,CAAA;AACjD5I,IAAAA,KAAK,EAAE;AACLokB,MAAAA,SAAS,EAAE/D,UAAU;AACrBgE,MAAAA,SAAS,EAAE,MAAA;AACZ,KAAA;GAEAhD,EAAAA,KAAK,IAAI,CAAC,CAACS,WAAW,iBACrB5X,KAAA,CAAAjK,aAAA,CAAC4e,MAAM,EAAA;AACLjc,IAAAA,KAAK,EAAEkf,WAAY;IACnB/Y,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAW,QAAA,CAAA;IAClCoJ,OAAO,EAAE9G,CAAC,IAAG;AACX0F,MAAAA,YAAY,CAAC1F,CAA4B,EAAE4W,WAAW,CAAC,CAAA;KACvD;IACF,YAAYA,EAAAA,WAAAA;GAEXA,EAAAA,WACK,CACT,EAEA4B,eAAe,CAACzgB,MAAM,GACnBihB,UAAU,GACV,CAAC7C,KAAK,GACNJ,eAAe,iBAAI/W,KAAA,CAAAjK,aAAA,CAACqkB,YAAK,MAAG,CAAA,GAC5B,IACD,CAEJ,CACN,CAAA;EAED,oBACEpa,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4d,IAAAA,EAAE,EAAEA,EAAG;AACPle,IAAAA,GAAG,EAAEgiB,SAAU;AACf3hB,IAAAA,KAAK,EAAEA,KAAM;IACb+I,SAAS,EAAEZ,IAAI,CAAC,CACd;MACE,CAAClE,IAAI,GAAGA,IAAI;AACZkG,MAAAA,OAAO,EAAEA,OAAO;MAChB,CAACvB,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,MAAA,CAAC,CAAGmD,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAG2Y,OAAO;MAC/B,CAAC,CAAA,EAAG3Y,SAAS,CAAA,SAAA,CAAW,GAAG0F,QAAAA;AAC5B,KAAA,CACF,CAAA;GAEDpE,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE+R,IAAAA,OAAO,EAAE6R,kBAAmB;AAC5BtQ,IAAAA,YAAY,EAAE4O,gBAAiB;AAC/BzD,IAAAA,YAAY,EAAE0D,gBAAiB;IAC/BrZ,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;AAAW,GAAA,EAEjCmY,UAAU,gBACT7W,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACED,IAAAA,KAAK,EAAE;AACL,MAAA,GAAGA,KAAK;AACR,MAAA,IAAIqN,MAAM,GAAG;QAAEkX,QAAQ,EAAE,GAAG3C,gBAAgB,CAAA,EAAA,CAAA;OAAM,GAAG,EAAE,CAAC;MACxD4C,QAAQ,EAAE,GAAG5C,gBAAgB,CAAA,EAAA,CAAA;KAC7B;IACF7Y,SAAS,EAAE,GAAGH,SAAS,CAAA,cAAA,CAAA;AAAiB,GAAA,EAEvC2Y,OAAO,IACLxC,QAAqB,CAACtc,GAAG,CAAC,CAACgiB,GAAG,EAAEvc,KAAK,KACpCgZ,SAAS,gBACPhX,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKkC,IAAAA,GAAG,EAAE,CAAA,EAAG+F,KAAK,CAAA,CAAA,EAAIuc,GAAG,CAAA,CAAA;AAAG,GAAA,EACzBvD,SAAS,GAAG;AACXrY,IAAAA,KAAK,EACH4a,gBAAgB,CAACiB,IAAI,CAACxZ,CAAC,IAAIA,CAAC,CAACtI,KAAK,KAAK6hB,GAAG,CAAC,EACvC3b,QAAQ,IAAI2b,GAAG;AACrB7hB,IAAAA,KAAK,EAAE6hB,GAAG;AACVvF,IAAAA,OAAO,EAAEoE,eAAe;AACxBnE,IAAAA,QAAQ,EAAE,IAAA;AACX,GAAA,CACE,CAAC,gBAENjV,KAAA,CAAAjK,aAAA,CAACgf,GAAG,EAAA;IACFE,QAAQ,EAAA,IAAA;AACRvc,IAAAA,KAAK,EAAE6hB,GAAI;IACX5b,KAAK,EACH4b,GAAG,KAAK,EAAE,GACNpW,WAAW,GACXoV,gBAAgB,CAACiB,IAAI,CAACxZ,CAAC,IAAIA,CAAC,CAACtI,KAAK,KAAK6hB,GAAG,CAAC,EACvC3b,QAAQ,IAAI2b,GACrB;AACDvF,IAAAA,OAAO,EAAEoE,eAAgB;AACzBnhB,IAAAA,GAAG,EAAE,CAAA,EAAG+F,KAAK,CAAA,CAAA,EAAIuc,GAAG,CAAA,CAAA;AAAG,GAAA,CAE1B,CACF,EAEFpX,MAAM,gBACLnD,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,IAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE+R,OAAO,EAAE9G,CAAC,IAAG;AACX,MAAA,IAAIoD,QAAQ,EAAE;QACZpD,CAAC,CAACmB,cAAc,EAAE,CAAA;QAClBnB,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB,QAAA,OAAA;AACF,OAAA;KACA;AACFwC,IAAAA,SAAS,EAAEe,eAAgB;AAC3Brd,IAAAA,KAAK,EAAE;AACL2M,MAAAA,KAAK,EAAE,MAAM;AACbgY,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,SAAS,EAAE,QAAA;KACX;AACFC,IAAAA,eAAe,EAAC,gBAAgB;IAChChH,EAAE,EAAE,CAAGjV,EAAAA,SAAS,CAAoB,iBAAA,CAAA;IACpCG,SAAS,EAAE,GAAGH,SAAS,CAAA,UAAA,CAAA;GAE3B,CAAK,CAAC,GACJ,CAAC2Y,OAAO,gBACVrX,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAChC5I,IAAAA,KAAK,EAAE;MAAEoW,OAAO,EAAE/I,MAAM,IAAI0R,QAAQ,KAAK,EAAE,GAAG,KAAK,GAAG,GAAA;AAAG,KAAA;AAAG,GAAA,EAE3DA,QAAQ,KAAK,EAAE,GACZ1Q,WAAW,GACXoV,gBAAgB,CAACiB,IAAI,CAACxZ,CAAC,IAAIA,CAAC,CAACtI,KAAK,KAAKmc,QAAQ,CAAC,EAC5CjW,QAAQ,IAAIiW,QACjB,CAAC,GACJ,IACD,CAAC,GACJ,CAACwC,OAAO,gBACVrX,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAChCoJ,IAAAA,OAAO,EAAEA,MAAM,CAAC1D,QAAQ,IAAIY,SAAS,CAAC,CAAC7B,MAAM,IAAImK,IAAI,CAAE;AACvDxX,IAAAA,KAAK,EAAE;MAAEoW,OAAO,EAAE/I,MAAM,IAAI0R,QAAQ,KAAK,EAAE,GAAG,KAAK,GAAG,GAAA;AAAG,KAAA;AAAG,GAAA,EAE3DA,QAAQ,KAAK,EAAE,GACZ1Q,WAAW,GACX,CAAC,MAAK;AACJ,IAAA,MAAMlD,MAAM,GAAGsY,gBAAgB,CAACiB,IAAI,CAClCxZ,CAAC,IAAIA,CAAC,CAACtI,KAAK,KAAKmc,QAAQ,CAC1B,CAAA;IAED,OAAO5T,MAAM,EAAErC,QAAQ,IAAIqC,MAAM,EAAEvI,KAAK,IAAI,IAAI,CAAA;AAClD,GAAC,GACF,CAAC,GACJ,IAAI,EAEP6e,OAAO,IAAI,CAAChB,OAAO,GAClBhS,UAAU,IAAIsQ,QAAQ,gBACpB7U,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAa,UAAA,CAAA;AACpCoJ,IAAAA,OAAO,EAAEyB,WAAAA;AAAY,GAAA,EAEpB2N,UAAU,iBAAIlX,KAAA,CAAAjK,aAAA,CAACyM,SAAS,EAAA,KACnB,CAAC,gBAETxC,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;AAAS,GAAA,EACnC2a,cAAc,EACd9d,KAAK,IAAI2D,aAAa,gBAAGc,KAAA,CAAAjK,aAAA,CAAC6N,SAAS,EAAA,IAAG,CAAA,GAAG,IACtC,CACP,gBAED5D,KAAA,CAAAjK,aAAA,CAAAiK,KAAA,CAAAM,QAAA,EAAA,IAAA,EACG,CAACiW,OAAO,iBACPvW,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;GAC1B2a,EAAAA,cAAc,EACd9d,KAAK,IAAI2D,aAAa,gBAAGc,KAAA,CAAAjK,aAAA,CAAC6N,SAAS,EAAG,IAAA,CAAA,GAAG,IACtC,CACP,EAEA2S,OAAO,iBACNvW,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;GAC3BsB,eAAAA,KAAA,CAAAjK,aAAA,CAACuN,WAAW,EACd,IAAA,CAAM,CAEV,CAEC,CAEL,EAACgW,cAAc,gBACXsB,YAAY,CAACX,eAAe,EAAEX,cAAc,CAAC,GAC7CW,eACD,CAAC,CAAA;AAEV,CAAC,CACF,CAAA;AAEDnE,eAAe,CAACpU,WAAW,GAAG,QAAQ,CAAA;AACtC,MAAMmZ,MAAM,GAAGxiB,MAAM,CAACoU,MAAM,CAACqJ,eAAe,EAAE;AAAEnB,EAAAA,MAAAA;AAAQ,CAAA;;;;;ACjqBxD,MAAMmG,oBAAoB,GAAG;EAC3BC,KAAK,EAAE,CAAGtd,EAAAA,iBAAiB,CAAY,UAAA,CAAA;EACvCud,KAAK,EAAE,CAAGvd,EAAAA,iBAAiB,CAAY,UAAA,CAAA;AACvCwd,EAAAA,OAAO,EAAE,EAAA;CACV,CAAA;AAEKC,MAAAA,cAAc,GAA4BA,CAAC;AAC/Cxc,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B3H,KAAK,GAAG,EAAE;EACVqlB,MAAM;EACNtc,SAAS;AACT9E,EAAAA,IAAI,GAAG,SAAS;AAChBqhB,EAAAA,iBAAiB,GAAG,IAAA;AACrB,CAAA,KAAkB;EACjB,oBACEpb,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG0c,iBAAiB;MAC3C,CAAC,CAAA,EAAG1c,SAAS,CAAA,OAAA,CAAS,GAAGyc,MAAAA;KAC1B,EACDtc,SAAS,CACV,CAAA;GAEDmB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,QAAA,CAAU,EACtBoc,oBAAoB,CAAC/gB,IAAI,CAAC,EAC1B8E,SAAS,CACV,CAAE;AACH/I,IAAAA,KAAK,EAAEA,KAAAA;AAAM,GACR,CACJ,CAAC,CAAA;AAEV;;;;;ACnCO,MAAMulB,mBAAmB,GAAG,EAAE,CAAA;AAC9B,MAAMC,kBAAkB,GAAG,EAAE,CAAA;AAE7B,MAAMC,yBAAyB,GACpCC,MAAqC,IACd;AACvB,EAAA,OAAO,OAAOA,MAAM,KAAK,SAAS,GAC9B;AACEC,IAAAA,KAAK,EAAED,MAAM,EAAEC,KAAK,IAAI,QAAQ;AAChC1hB,IAAAA,IAAI,EAAEyhB,MAAM,EAAEzhB,IAAI,IAAIuhB,kBAAkB;AACxCxlB,IAAAA,KAAK,EAAE0lB,MAAM,EAAE1lB,KAAK,IAAI,EAAE;AAC1B+I,IAAAA,SAAS,EAAE2c,MAAM,EAAE3c,SAAS,IAAI,EAAA;AACjC,GAAA,GACD;AACE4c,IAAAA,KAAK,EAAE,QAAQ;AACf1hB,IAAAA,IAAI,EAAEuhB,kBAAAA;GACP,CAAA;AACP,CAAC,CAAA;AAEKI,MAAAA,cAAc,GAA4BA,CAAC;AAC/Chd,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7BoB,SAAS;AACT4c,EAAAA,KAAK,GAAG,QAAQ;EAChB3lB,KAAK;EACL6lB,YAAY;AACZ5hB,EAAAA,IAAI,GAAGshB,mBAAmB;EAC1BF,MAAM;AACNC,EAAAA,iBAAiB,GAAG,IAAI;EACxB,GAAGjc,KAAAA;AAAK,CACT,KAAkB;AACjB,EAAA,oBACEa,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA2K,QAAA,CAAA;AACE7B,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG0c,iBAAiB;MAC3C,CAAC,CAAA,EAAG1c,SAAS,CAAA,OAAA,CAAS,GAAGyc,MAAAA;KAC1B,EACDtc,SAAS,CACV,CAAE;AACH/I,IAAAA,KAAK,EAAE6lB,YAAAA;AAAa,GAAA,EAChBxc,KAAK,CAAA,eAETa,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CAAC,CAAGS,EAAAA,SAAS,CAAWA,QAAAA,EAAAA,SAAS,CAAW+c,QAAAA,EAAAA,KAAK,CAAE,CAAA,CAAC,CAAE;AACtE3lB,IAAAA,KAAK,EAAE;AACL,MAAA,IAAIiE,IAAI,GAAG;AAAE0I,QAAAA,KAAK,EAAE1I,IAAI;AAAE2I,QAAAA,MAAM,EAAE3I,IAAI;AAAE6hB,QAAAA,UAAU,EAAE7hB,IAAAA;OAAM,GAAG,EAAE,CAAC;MAChE,IAAIjE,KAAK,IAAI,EAAE,CAAA;AAChB,KAAA;AAAC,GAEN,CAAK,CAAC,CAAA;AAEV;;;;;ACrDA,MAAM+lB,gBAAgB,GAAG,EAAE,CAAA;AAErBC,MAAAA,aAAa,GAA2BA,CAAC;AAC7Cpd,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7BoB,SAAS;AACT/I,EAAAA,KAAK,GAAG,EAAE;AAAA,CACX,KAAkB;EACjB,oBACEkK,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAK8I,IAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,UAAUG,SAAS,IAAI,EAAE,CAAG,CAAA;AAAC/I,IAAAA,KAAK,EAAEA,KAAAA;GAC9DkK,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,KAAA,CAAA;AAC/B5I,IAAAA,KAAK,EAAE;AACLimB,MAAAA,QAAQ,EAAE,CAAGjmB,EAAAA,KAAK,EAAE2M,KAAK,IAAIoZ,gBAAgB,CAAI,EAAA,CAAA;AACjD3G,MAAAA,KAAK,EAAE,SAAS;AAChBtV,MAAAA,QAAQ,EAAE,UAAU;AACpB6C,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,MAAM,EAAE,MAAM;MACd,IAAI5M,KAAK,EAAEsf,eAAe,GACtB;QAAEA,eAAe,EAAEtf,KAAK,EAAEsf,eAAAA;OAAiB,GAC3C,EAAE,CAAA;AACP,KAAA;GAEDpV,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE4M,IAAAA,OAAO,EAAC,eAAe;AACvBE,IAAAA,KAAK,EAAC,4BAA4B;AAClCJ,IAAAA,KAAK,EAAC,KAAK;AACXC,IAAAA,MAAM,EAAC,KAAK;AACZE,IAAAA,IAAI,EAAC,cAAA;GAEL5C,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE+M,IAAAA,CAAC,EAAC,i3BAAi3B;IACn3BjE,SAAS,EAAE,GAAGH,SAAS,CAAA,WAAA,CAAA;GAClB,CACJ,CACD,CACH,CAAC,CAAA;AAEV;;;;;ACpCA,MAAMsd,mBAAmB,GAAG;EAC1BjB,KAAK,EAAE,CAAGtd,EAAAA,iBAAiB,CAAW,SAAA,CAAA;EACtCud,KAAK,EAAE,CAAGvd,EAAAA,iBAAiB,CAAW,SAAA,CAAA;AACtCwd,EAAAA,OAAO,EAAE,EAAA;CACV,CAAA;AAEKgB,MAAAA,aAAa,GAA2BA,CAAC;AAC7Cvd,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B3H,KAAK;EACL+d,KAAK;EACLsH,MAAM;EACNtc,SAAS;AACT9E,EAAAA,IAAI,GAAG,SAAA;AACR,CAAA,KAAkB;EACjB,oBACEiG,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,UAAU,EACtB;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAGyc,MAAM;MAC/B,CAAC,CAAA,EAAGzc,SAAS,CAAA,MAAA,CAAQ,GAAGmV,KAAAA;KACzB,EACDhV,SAAS,CACV,CAAA;GAEDmB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE8I,IAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUsd,mBAAmB,CAACjiB,IAAI,CAAC,CACxD8E,CAAAA,EAAAA,SAAS,IAAI,EACf,CAAG,CAAA;AACH/I,IAAAA,KAAK,EAAEA,KAAAA;AAAM,GAEjB,CAAK,CAAC,CAAA;AAEV;;;;;AC5BA,MAAMomB,qBAAqB,GAAG,CAAC,CAAA;AAC/B,MAAMC,sBAAsB,GAAG,CAAC,CAAA;AAE1BC,MAAAA,QAAQ,GAAGA,CAAC;AAChB1d,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B0d,MAAM;EACNtc,SAAS;EACT/I,KAAK;EACL0lB,MAAM;EACNa,SAAS;EACTC,KAAK;EACLjI,KAAK;AACLkI,EAAAA,QAAQ,GAAG,IAAA;AACG,CAAA,KAAkB;AAChC,EAAA,MAAMC,wBAAwB,GAC5B,OAAOnI,KAAK,KAAK,SAAS,GACtB;AACEve,IAAAA,KAAK,EAAE;MAAE2M,KAAK,EAAE4R,KAAK,EAAE5R,KAAK;AAAE,MAAA,GAAG4R,KAAK,EAAEve,KAAAA;KAAO;AAC/C+I,IAAAA,SAAS,EAAEwV,KAAK,EAAExV,SAAS,IAAI,EAAA;GAChC,GACD,EAAE,CAAA;AAER,EAAA,MAAM4d,cAAc,GAAGjB,MAAM,GACzBU,qBAAqB,GACrBC,sBAAsB,CAAA;AAE1B,EAAA,MAAMO,cAAc,GAClB,OAAOL,SAAS,KAAK,SAAS,IAAI,CAACA,SAAS,GACxCI,cAAc,GACdJ,SAAS,EAAEM,IAAI,IAAIF,cAAc,CAAA;EAEvC,oBACEzc,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdS,SAAS,EACT;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAG8c,MAAM;AACpC,MAAA,CAAC,CAAG9c,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAGyc,MAAM;MAC/B,CAAC,CAAA,EAAGzc,SAAS,CAAA,MAAA,CAAQ,GAAG4d,KAAAA;KACzB,EACDzd,SAAS,CACV,CAAE;AACH/I,IAAAA,KAAK,EAAEA,KAAAA;AAAM,GAAA,EAEZ0lB,MAAM,IAAIe,QAAQ,iBACjBvc,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;AAAW,GAAA,eACrCsB,KAAA,CAAAjK,aAAA,CAAC2lB,cAAc,EAAKH,yBAAyB,CAACC,MAAM,CACtD,CAAK,CACN,eAEDxb,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,IAAA,EAAA;IACE8I,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAA,OAAA,EAAU8d,wBAAwB,CAAC3d,SAAS,CAAA,CAAE,EAC1D;MAAE,CAAC,CAAA,EAAGH,SAAS,CAAA,aAAA,CAAe,GAAG8c,MAAAA;AAAQ,KAAA,CAC1C,CAAE;IACH1lB,KAAK,EAAE0mB,wBAAwB,CAAC1mB,KAAAA;GAGlC,CAAA,EAACumB,SAAS,KAAK,KAAK,iBAClBrc,KAAA,CAAAjK,aAAA,CAAA,IAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAa,UAAA,CAAA;AACpC5I,IAAAA,KAAK,EAAE;AACL,MAAA,IAAI,OAAOumB,SAAS,KAAK,SAAS,IAAIA,SAAS,GAC3CA,SAAS,CAACvmB,KAAK,GACf,EAAE,CAAA;AACP,KAAA;GAEA+H,EAAAA,WAAW,CAAC6e,cAAc,CAAC,CAACnkB,GAAG,CAACN,GAAG,iBAClC+H,KAAA,CAAAjK,aAAA,CAAA,IAAA,EAAA;AAAIkC,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAK,CACnB,CACC,CAEH,CACF,CAAC,CAAA;AAEV,EAAC;AAEDmkB,QAAQ,CAACQ,KAAK,GAAGd,aAAa,CAAA;AAC9BM,QAAQ,CAAC/I,KAAK,GAAG4I,aAAa,CAAA;AAC9BG,QAAQ,CAACS,MAAM,GAAGnB,cAAc,CAAA;AAChCU,QAAQ,CAAC1H,MAAM,GAAGwG,cAAc;;;;;ACjFhC,MAAM4B,UAAU,GAAGA,CAAC;AAClB9mB,EAAAA,IAAI,GAAG,SAAS;AAChB4b,EAAAA,OAAO,GAAG,OAAO;AACjBsD,EAAAA,KAAK,GAAG,SAAS;AACjBuG,EAAAA,KAAK,GAAG,SAAS;AACjB1hB,EAAAA,IAAI,GAAG,QAAQ;AACfgjB,EAAAA,QAAQ,GAAG,QAAQ;EACnBle,SAAS;EACT8S,aAAa;AACbqL,EAAAA,UAAU,EAAEC,gBAAgB,GAAG,EAAE;EACjCxL,MAAM,GAAG,EAAE;AACX/S,EAAAA,SAAS,GAAGlB,eAAe;AAC3B0f,EAAAA,YAAY,GAAG,OAAO;AACtB9Y,EAAAA,QAAQ,GAAG,KAAK;AAChB+Y,EAAAA,KAAK,GAAG,KAAK;AACbC,EAAAA,MAAM,GAAG,KAAK;AACdvJ,EAAAA,KAAK,GAAG,KAAK;EACbjV,QAAQ;EACRye,IAAI;EACJC,QAAQ;AACRC,EAAAA,SAAS,GAAG,KAAK;EACjB,GAAGC,SAAAA;AAAS,CACI,KAAkB;AAClC,EAAA,MAAMC,OAAO,GAAGxf,IAAI,CAClBS,SAAS,EACTiT,aAAa,EACb,CAAGjT,EAAAA,SAAS,IAAI1I,IAAI,CAAA,CAAE,EACtB,CAAA,EAAG0I,SAAS,CAAIkT,CAAAA,EAAAA,OAAO,CAAE,CAAA,EACzB,GAAGlT,SAAS,CAAA,CAAA,EAAIwW,KAAK,CAAA,CAAE,EACvB,CAAGxW,EAAAA,SAAS,CAAI+c,CAAAA,EAAAA,KAAK,EAAE,EACvB,CAAA,EAAG/c,SAAS,CAAS3E,MAAAA,EAAAA,IAAI,EAAE,EAC3B;AACE,IAAA,CAAC,CAAG2E,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGmV,KAAK;AAC7B,IAAA,CAAC,CAAGnV,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGye,KAAK;AAC7B,IAAA,CAAC,CAAGze,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAG0e,MAAM;AAC/B,IAAA,CAAC,CAAG1e,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG6e,SAAS;IACnC,CAAC,CAAA,EAAG7e,SAAS,CAAA,SAAA,CAAW,GAAG0F,QAAAA;GAC5B,EACDvF,SAAS,CACV,CAAA;AAED,EAAA,MAAM6e,cAAc,GAAGtZ,QAAQ,IAAImZ,SAAS,CAAA;AAE5C,EAAA,MAAMI,OAAO,gBACX3d,KAAA,CAAAjK,aAAA,CAAAiK,KAAA,CAAAM,QAAA,EACGgd,IAAAA,EAAAA,QAAQ,IAAIJ,YAAY,KAAK,OAAO,iBACnCld,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAEZ,IAAI,CAAC,CAAGS,EAAAA,SAAS,OAAO,EAAEue,gBAAgB,CAAC7J,IAAI,CAAE;IAC5Dtd,KAAK,EAAE2b,MAAM,CAAC2B,IAAAA;AAAK,GAAA,EAElBkK,QACG,CACP,eACDtd,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;GAAaE,EAAAA,QAAe,CACzD,EAAC0e,QAAQ,IAAIJ,YAAY,KAAK,KAAK,iBACjCld,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAEZ,IAAI,CAAC,CAAGS,EAAAA,SAAS,OAAO,EAAEue,gBAAgB,CAAC7J,IAAI,CAAE;IAC5Dtd,KAAK,EAAE2b,MAAM,CAAC2B,IAAAA;GAEbkK,EAAAA,QACG,CAEV,CACD,CAAA;AAED,EAAA,IAAID,IAAI,EAAE;IACR,oBACErd,KAAA,CAAAjK,aAAA,CAAA,GAAA,EAAA;AACE8I,MAAAA,SAAS,EAAE4e,OAAQ;AACnBJ,MAAAA,IAAI,EAAEK,cAAc,GAAG9kB,SAAS,GAAGykB,IAAK;MACxC,eAAeK,EAAAA,cAAAA;AAAe,KAAA,EAE7BC,OACA,CAAC,CAAA;AAER,GAAA;AAEA,EAAA,oBACE3d,KAAA,CAAAjK,aAAA,CAAA,QAAA,EAAA2K,QAAA,CAAA;AACE1K,IAAAA,IAAI,EAAE+mB,QAAS;AACfle,IAAAA,SAAS,EAAE4e,OAAQ;AACnBrZ,IAAAA,QAAQ,EAAEsZ,cAAAA;GACNF,EAAAA,SAAS,CAEZG,EAAAA,OACK,CAAC,CAAA;AAEb,CAAC;;AC3FKC,MAAAA,QAAQ,GAAIze,KAAkB,IAAI;EACtC,MAAM;AACJoX,IAAAA,OAAO,GAAG,KAAK;IACfnD,IAAI;AACJ1U,IAAAA,SAAS,GAAGlB,eAAAA;AACb,GAAA,GAAG2B,KAAK,CAAA;EAET,MAAM,CAAC0e,YAAY,EAAEC,eAAe,CAAC,GAAG1mB,QAAQ,CAAC,KAAK,CAAC,CAAA;AAEvDsI,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI,OAAO6W,OAAO,KAAK,SAAS,EAAE;MAChCuH,eAAe,CAACvH,OAAO,CAAC,CAAA;KACzB,MAAM,IAAI,OAAOA,OAAO,KAAK,QAAQ,IAAIA,OAAO,CAACwH,KAAK,EAAE;AACvD,MAAA,MAAM1c,OAAO,GAAGC,UAAU,CAAC,MAAMwc,eAAe,CAAC,IAAI,CAAC,EAAEvH,OAAO,CAACwH,KAAK,CAAC,CAAA;AACtE,MAAA,OAAO,MAAMtc,YAAY,CAACJ,OAAO,CAAC,CAAA;AACpC,KAAC,MAAM;AACLyc,MAAAA,eAAe,CAAC,CAAC,CAACvH,OAAO,CAAC,CAAA;AAC5B,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;AAEb,EAAA,MAAM+G,QAAQ,GAAG7d,OAAO,CAAC,MAAK;AAC5B,IAAA,OAAOoe,YAAY,GACd,OAAOtH,OAAO,KAAK,QAAQ,IAAIA,OAAO,CAACnD,IAAI,iBAC1CpT,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;MAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;KAAkB,CAChD,GACD0U,IAAI,CAAA;GACT,EAAE,CAACA,IAAI,EAAEyK,YAAY,EAAEtH,OAAO,EAAE7X,SAAS,CAAC,CAAC,CAAA;EAE5C,oBAAOsB,KAAA,CAAAjK,aAAA,CAAC+mB,UAAU,EAAApc,QAAA,KAAKvB,KAAK,EAAA;AAAEoe,IAAAA,SAAS,EAAEM,YAAa;AAACP,IAAAA,QAAQ,EAAEA,QAAAA;AAAS,GAAA,EAAG,CAAA;AAC/E;;;;;ACrBA,MAAMU,UAAU,GAAG,EAAE,CAAA;AACrB,MAAMC,sBAAsB,GAAG,GAAG,CAAA;AAE5BC,MAAAA,MAAM,GAAGA,CAAC;AACdxf,EAAAA,SAAS,GAAGtB,eAAe;AAC3B+gB,EAAAA,QAAQ,GAAG,KAAK;EAChBroB,KAAK;EACL+I,SAAS;EACT+B,QAAQ;EACRwd,MAAM;AACN1mB,EAAAA,IAAI,GAAG,MAAM;AACb2mB,EAAAA,MAAM,GAAG,MAAM;EACfC,OAAO;EACPC,SAAS;EACTC,YAAY;EACZ7M,aAAa;EACb8M,QAAQ;EACRra,QAAQ;EACRsa,eAAe;AACfC,EAAAA,qBAAqB,GAAG,IAAI;EAC5BrI,QAAQ;AACRsI,EAAAA,QAAQ,EAAEC,kBAAkB;EAC5BC,aAAa;EACbC,MAAM;AACNC,EAAAA,QAAQ,GAAG,MAAM;AACjBC,EAAAA,cAAc,GAAG,IAAI;EACrBrgB,QAAQ;EACRqB,OAAO;AACPif,EAAAA,eAAAA;AAAe,CACH,KAAI;AAChB,EAAA,MAAMC,SAAS,GAAGvoB,MAAM,CAAmB,IAAI,CAAC,CAAA;EAChD,MAAM,CAACgoB,QAAQ,EAAEQ,WAAW,CAAC,GAAGhoB,QAAQ,CAAyB,MAC/D,CAACynB,kBAAkB,IAAIK,eAAe,IAAI,EAAE,EAAE3mB,GAAG,CAAC,CAAC8mB,IAAI,EAAEhT,GAAG,MAAM;AAChE,IAAA,GAAGgT,IAAI;AACPC,IAAAA,GAAG,EAAED,IAAI,CAACC,GAAG,IAAI,CAAA,EAAG/Z,IAAI,CAACuK,GAAG,EAAE,CAAA,CAAA,EAAIzD,GAAG,CAAE,CAAA;AACvCqF,IAAAA,MAAM,EAAE2N,IAAI,CAAC3N,MAAM,IAAI,MAAM;AAC7B6N,IAAAA,OAAO,EAAEF,IAAI,CAACE,OAAO,IAAItB,sBAAAA;GAC1B,CAAC,CAAC,CACJ,CAAA;EAED,MAAMuB,cAAc,GAAIC,OAA+B,IAAI;IACzDL,WAAW,CAACK,OAAO,CAAC,CAAA;AAEpB,IAAA,IAAI7e,QAAQ,EAAE;AACZA,MAAAA,QAAQ,CAAC;AACPge,QAAAA,QAAQ,EAAEa,OAAO;AACjBJ,QAAAA,IAAI,EAAEI,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE;AACF,OAAA,CAAC,CAAA;AACzB,KAAA;GACD,CAAA;AAED,EAAA,MAAMC,gBAAgB,GAAG,MACvBpZ,KAA0C,IACxC;AACF,IAAA,MAAMqZ,QAAQ,GAAWlmB,KAAK,CAACqE,IAAI,CAACwI,KAAK,CAACnF,MAAM,CAACye,KAAK,IAAI,EAAE,CAAC,CAAA;IAC7D,IAAIC,WAAW,GAA2BF,QAAQ,CAACpnB,GAAG,CAAC,CAAC8mB,IAAI,EAAErZ,CAAC,MAAM;MACnEsZ,GAAG,EAAE,GAAG/Z,IAAI,CAACuK,GAAG,EAAE,CAAI9J,CAAAA,EAAAA,CAAC,CAAE,CAAA;MACzBtO,IAAI,EAAE2nB,IAAI,CAAC3nB,IAAI;MACfqC,IAAI,EAAEslB,IAAI,CAACtlB,IAAI;MACf/D,IAAI,EAAEqpB,IAAI,CAACrpB,IAAI;AACf0b,MAAAA,MAAM,EAAE,WAAW;AACnB6N,MAAAA,OAAO,EAAE,CAAC;AACVO,MAAAA,aAAa,EAAET,IAAAA;AAChB,KAAA,CAAC,CAAC,CAAA;AAEH,IAAA,IAAIb,YAAY,EAAE;MAChB,MAAMuB,QAAQ,GAA2B,EAAE,CAAA;AAE3C,MAAA,KAAK,IAAI/Z,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG6Z,WAAW,CAAC9mB,MAAM,EAAEiN,CAAC,EAAE,EAAE;AAC3C,QAAA,MAAMqZ,IAAI,GAAGQ,WAAW,CAAC7Z,CAAC,CAAC,CAAC8Z,aAAuB,CAAA;QACnD,MAAME,MAAM,GAAG,MAAMxB,YAAY,CAACa,IAAI,EAAEM,QAAQ,CAAC,CAAA;QAEjD,IAAIK,MAAM,KAAK,KAAK,EAAE;AACpB,UAAA,SAAA;AACF,SAAA;AAEAD,QAAAA,QAAQ,CAACllB,IAAI,CAACglB,WAAW,CAAC7Z,CAAC,CAAC,CAAC,CAAA;AAC/B,OAAA;AAEA6Z,MAAAA,WAAW,GAAGE,QAAQ,CAAA;AACxB,KAAA;IAEA,MAAMN,OAAO,GAAG,CACdtB,QAAQ,GAAG,CAAC,GAAGS,QAAQ,EAAE,GAAGiB,WAAW,CAAC,GAAGA,WAAW,EACtDI,KAAK,CAAC,CAAC,EAAE3J,QAAQ,CAAC,CAAA;IAEpBkJ,cAAc,CAACC,OAAO,CAAC,CAAA;AAEvBI,IAAAA,WAAW,CAAC1mB,OAAO,CAACkmB,IAAI,IAAG;AACzB,MAAA,MAAMa,MAAM,GAAGb,IAAI,CAACS,aAAuB,CAAA;MAE3C,MAAMK,cAAc,GAAIZ,OAAe,IAAI;QACzCF,IAAI,CAACE,OAAO,GAAGA,OAAO,CAAA;AACtBC,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;MAED,MAAMW,WAAW,GAAGA,MAAK;QACvBf,IAAI,CAAC3N,MAAM,GAAG,MAAM,CAAA;QACpB2N,IAAI,CAACE,OAAO,GAAG,GAAG,CAAA;AAClBC,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;MAED,MAAMY,SAAS,GAAGA,MAAK;QACrBhB,IAAI,CAAC3N,MAAM,GAAG,OAAO,CAAA;AACrB8N,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;AAED,MAAA,IAAIX,aAAa,EAAE;AACjBA,QAAAA,aAAa,CAAC;AACZO,UAAAA,IAAI,EAAEa,MAAM;AACZI,UAAAA,SAAS,EAAEF,WAAW;AACtBG,UAAAA,OAAO,EAAEF,SAAS;UAClBG,UAAU,EAAEla,KAAK,IAAG;YAClB,MAAMiZ,OAAO,GAAGkB,IAAI,CAACnE,KAAK,CACvBhW,KAAK,CAACoa,MAAM,IAAIpa,KAAK,CAACqa,KAAK,IAAIra,KAAK,CAACoa,MAAM,CAAC,GAC3CzC,sBAAsB,CACzB,CAAA;YAEDkC,cAAc,CAACZ,OAAO,CAAC,CAAA;AACzB,WAAA;AACD,SAAA,CAAC,CAAA;AACJ,OAAC,MAAM,IAAI,OAAOnB,MAAM,KAAK,QAAQ,EAAE;AACrC,QAAA,MAAMwC,QAAQ,GAAG,IAAIC,QAAQ,EAAE,CAAA;AAC/BD,QAAAA,QAAQ,CAACE,MAAM,CAACppB,IAAI,EAAEwoB,MAAM,CAAC,CAAA;QAE7Ba,KAAK,CAAC3C,MAAM,EAAE;UACZC,MAAM;AACN2C,UAAAA,IAAI,EAAEJ,QAAQ;UACdtC,OAAO;AACP2C,UAAAA,WAAW,EAAEvC,eAAe,GAAG,SAAS,GAAG,aAAA;SAC5C,CAAC,CACCzlB,IAAI,CAACioB,GAAG,IAAG;AACV,UAAA,IAAI,CAACA,GAAG,CAACC,EAAE,EAAE;AACX,YAAA,MAAM,IAAI3lB,KAAK,CAAC,eAAe,CAAC,CAAA;AAClC,WAAA;AAEA,UAAA,OAAO0lB,GAAG,CAACE,IAAI,EAAE,CAAA;SAClB,CAAC,CACDnoB,IAAI,CAACmnB,WAAW,CAAC,CACjBiB,KAAK,CAAChB,SAAS,CAAC,CAAA;AACrB,OAAC,MAAM,IAAI,OAAOjC,MAAM,KAAK,UAAU,EAAE;QACvCA,MAAM,CAAC8B,MAAM,CAAC,CAAA;AACdE,QAAAA,WAAW,EAAE,CAAA;AACf,OAAC,MAAM;AACLA,QAAAA,WAAW,EAAE,CAAA;AACf,OAAA;AACF,KAAC,CAAC,CAAA;IAEF,IAAIjB,SAAS,CAACxnB,OAAO,EAAE;AACrBwnB,MAAAA,SAAS,CAACxnB,OAAO,CAACe,KAAK,GAAG,EAAE,CAAA;AAC9B,KAAA;GACD,CAAA;EAED,MAAM4oB,YAAY,GAAIhC,GAAW,IAAI;IACnC,MAAMS,QAAQ,GAA2B,EAAE,CAAA;IAE3C,IAAIwB,WAAW,GAAqC3oB,SAAS,CAAA;AAE7DgmB,IAAAA,QAAQ,CAACzlB,OAAO,CAACkmB,IAAI,IAAG;AACtB,MAAA,IAAIA,IAAI,CAACC,GAAG,KAAKA,GAAG,EAAE;AACpBS,QAAAA,QAAQ,CAACllB,IAAI,CAACwkB,IAAI,CAAC,CAAA;AACrB,OAAC,MAAM;AACLkC,QAAAA,WAAW,GAAGlC,IAAI,CAAA;AACpB,OAAA;AACF,KAAC,CAAC,CAAA;IAEFG,cAAc,CAACO,QAAQ,CAAC,CAAA;AAExB,IAAA,IAAIwB,WAAW,EAAE;MACf9C,QAAQ,GAAG8C,WAAW,CAAC,CAAA;AACzB,KAAA;GACD,CAAA;EAED,MAAMzM,WAAW,GAAGA,MAAK;IACvB,IAAI,CAAC1Q,QAAQ,IAAIua,qBAAqB,IAAIQ,SAAS,CAACxnB,OAAO,EAAE;AAC3DwnB,MAAAA,SAAS,CAACxnB,OAAO,CAAC6pB,KAAK,EAAE,CAAA;AAC3B,KAAA;GACD,CAAA;EAED,oBACExhB,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAA,QAAA,CAAU,EACtBG,SAAS,EACT8S,aAAa,EACb;AACE1R,MAAAA,OAAO,EAAEA,OAAO;MAChB,CAAC,CAAA,EAAGvB,SAAS,CAAA,SAAA,CAAW,GAAG0F,QAAAA;AAC5B,KAAA,CACF,CAAE;AACHtO,IAAAA,KAAK,EAAEA,KAAAA;GAEPkK,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;AACE8I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CAAC,GAAGS,SAAS,CAAA,CAAE,EAAE,CAAA,EAAGA,SAAS,CAAA,CAAA,EAAIsgB,QAAQ,CAAA,CAAE,CAAC,CAAE;AAC9DlX,IAAAA,OAAO,EAAEgN,WAAAA;AAAY,GAAA,EAEpBlW,QAAQ,eACToB,KAAA,CAAAjK,aAAA,UAAA2K,QAAA,CAAA;AACE1K,IAAAA,IAAI,EAAC,MAAM;AACXP,IAAAA,GAAG,EAAE0pB,SAAU;AACfJ,IAAAA,MAAM,EAAEA,MAAO;AACfZ,IAAAA,QAAQ,EAAEA,QAAS;AACnBvd,IAAAA,QAAQ,EAAE8e,gBAAiB;IAC3B7gB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAChC0F,IAAAA,QAAQ,EAAEA,QAAAA;AAAS,GAAA,EACdma,SAAS,GACV;AACEA,IAAAA,SAAS,EAAE,IAAI;AACfkD,IAAAA,eAAe,EAAE,IAAA;AAClB,GAAA,GACD,EAAE,CAEV,CAAM,CAEN,EAACxC,cAAc,IAAIL,QAAQ,CAAC7lB,MAAM,GAAG,CAAC,iBACpCiH,KAAA,CAAAjK,aAAA,CAAA,IAAA,EAAA;AAAI8I,IAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAASA,MAAAA,EAAAA,SAAS,SAASsgB,QAAQ,CAAA,CAAA;GAC3DJ,EAAAA,QAAQ,CAACrmB,GAAG,CAAC8mB,IAAI,iBAChBrf,KAAA,CAAAjK,aAAA,CAAA,IAAA,EAAA;IACEkC,GAAG,EAAEonB,IAAI,CAACC,GAAI;IACdzgB,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,EAASA,SAAS,CAAS2gB,MAAAA,EAAAA,IAAI,CAAC3N,MAAM,CAAA,CAAA;GAE7D1R,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,OAAA,CAAA;AACjCoJ,IAAAA,OAAO,EAAEA,MAAMwZ,YAAY,CAACjC,IAAI,CAACC,GAAG,CAAA;GAEnCN,EAAAA,QAAQ,KAAK,SAAS,KAAKK,IAAI,CAACS,aAAa,IAAIT,IAAI,CAACqC,GAAG,CAAC;AAAA;AACzD;AACA1hB,EAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACE0M,IAAAA,KAAK,EAAEub,UAAW;AAClBtb,IAAAA,MAAM,EAAEsb,UAAW;IACnB2D,GAAG,EAAEtC,IAAI,CAAC3nB,IAAK;AACfkqB,IAAAA,GAAG,EAAEvC,IAAI,CAACqC,GAAG,IAAIG,GAAG,CAACC,eAAe,CAACzC,IAAI,CAACS,aAAa,CAAE;IACzDjhB,SAAS,EAAE,GAAGH,SAAS,CAAA,eAAA,CAAA;AAAkB,GACzC,CAAA,gBAEFsB,KAAA,CAAAjK,aAAA,CAACgO,WAAW,EAAA,IAAG,CAEb,CACN,eAAA/D,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AAAKD,IAAAA,KAAK,EAAE;AAAE2M,MAAAA,KAAK,EAAE,MAAA;AAAQ,KAAA;GAC3BzC,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,WAAA,CAAA;AACrC5I,IAAAA,KAAK,EAAE;AACL,MAAA,IAAIupB,IAAI,CAAC3N,MAAM,KAAK,WAAW,GAAG;AAAEqQ,QAAAA,YAAY,EAAE,EAAA;OAAI,GAAG,EAAE,CAAA;AAC5D,KAAA;GAED/hB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAoB,iBAAA,CAAA;IAC3CoJ,OAAO,EAAEA,MAAMwZ,YAAY,CAACjC,IAAI,CAACC,GAAG,CAAE;AACtCxpB,IAAAA,KAAK,EAAE;AAAEob,MAAAA,MAAM,EAAE,SAAS;AAAE8Q,MAAAA,UAAU,EAAE,MAAA;KAAS;AACjDC,IAAAA,IAAI,EAAC,QAAQ;IACb,YAAW,EAAA,aAAA;GAEXjiB,eAAAA,KAAA,CAAAjK,aAAA,CAACiO,SAAS,EACZ,IAAA,CAAM,CACH,CACL,EAACqb,IAAI,CAAC3N,MAAM,KAAK,WAAW,iBAC1B1R,KAAA,CAAAjK,aAAA,CAAAiK,KAAA,CAAAM,QAAA,EAAA,IAAA,eACEN,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,mBAAA,CAAA;AAAsB,GAClD,CAAA,eAAAsB,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAA8B,2BAAA,CAAA;AACrD5I,IAAAA,KAAK,EAAE;AAAE2M,MAAAA,KAAK,EAAE,CAAA,EAAG4c,IAAI,CAACE,OAAO,CAAA,CAAA,CAAA;AAAK,KAAA;AAAC,GAEzC,CAAA,CAEC,CACH,CACL,CACC,CAEH,CAAC,CAAA;AAEV;;;;;AC9QA,MAAM2C,QAAQ,gBAAG7Q,UAAU,CACzB,CACE;AACE3S,EAAAA,SAAS,GAAGzB,iBAAiB;AAC7B4B,EAAAA,SAAS,GAAG,EAAE;AACdyV,EAAAA,cAAc,GAAG,KAAK;EACtBd,OAAO;EACP1d,KAAK;AACLsO,EAAAA,QAAQ,GAAG,KAAK;EAChBxD,QAAQ;EACRkH,OAAO;EACPuB,YAAY;EACZmL,YAAY;EACZ2N,UAAU;EACV/P,SAAS;EACTgQ,QAAQ;EACR1qB,IAAI;EACJkH,QAAQ;EACR+U,EAAE;EACF0O,SAAS;AACTrsB,EAAAA,IAAI,GAAG,UAAU;AACjB0C,EAAAA,KAAK,GAAG,KAAK;AACbkC,EAAAA,QAAQ,GAAG,KAAK;AAChBqF,EAAAA,OAAAA;AAAO,CACR,EACDxK,GAAiC,KACjB;EAChB,MAAM6sB,SAAS,GAAG9O,OAAO,KAAK5a,SAAS,GAAG4a,OAAO,GAAGc,cAAc,IAAI5b,KAAK,CAAA;EAC3E,MAAM,CAAC6pB,eAAe,EAAEC,kBAAkB,CAAC,GAAGprB,QAAQ,CAACkrB,SAAS,CAAC,CAAA;EAEjE,MAAMxN,WAAW,GACf9T,CAAoD,IAClD;IACFA,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB,IAAA,IAAIxL,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEAoe,kBAAkB,CAAC,CAACD,eAAe,CAAC,CAAA;AACpCvhB,IAAAA,CAAC,CAACG,MAAM,CAACzI,KAAK,GAAG,CAAC6pB,eAAe,CAAA;IAEjCza,OAAO,GAAG9G,CAAC,CAAC,CAAA;IACZJ,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACd,CAAA;AAEDtB,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI8T,OAAO,KAAK5a,SAAS,EAAE;MACzB4pB,kBAAkB,CAAChP,OAAO,CAAC,CAAA;AAC7B,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;EAEb,oBACExT,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;IAAK8I,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;GAC1BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,KAAA,EAAA;AACEN,IAAAA,GAAG,EAAEA,GAAI;AACTK,IAAAA,KAAK,EAAEA,KAAM;AACbgS,IAAAA,OAAO,EAAEgN,WAAY;AACrBjW,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdS,SAAS,EACTG,SAAS,EACT;AACEoB,MAAAA,OAAO,EAAEA,OAAO;AAChB,MAAA,CAAC,CAAGvB,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAG0F,QAAQ;MACnC,CAAC,CAAA,EAAG1F,SAAS,CAAA,QAAA,CAAU,GAAG6jB,eAAAA;AAC3B,KAAA,CACF,CAAA;GAEDviB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,OAAA,EAAA;AACE4d,IAAAA,EAAE,EAAEA,EAAG;AACP3d,IAAAA,IAAI,EAAEA,IAAK;AACX0B,IAAAA,IAAI,EAAEA,IAAK;AACX0M,IAAAA,QAAQ,EAAEA,QAAS;AACnBge,IAAAA,QAAQ,EAAEA,QAAS;AACnBxnB,IAAAA,QAAQ,EAAEA,QAAS;AACnBynB,IAAAA,SAAS,EAAEA,SAAU;AACrBjQ,IAAAA,SAAS,EAAEA,SAAU;AACrB+P,IAAAA,UAAU,EAAEA,UAAW;AACvB9Y,IAAAA,YAAY,EAAEA,YAAa;AAC3BmL,IAAAA,YAAY,EAAEA,YAAAA;AAAa,GAG7B,CAAA,eAAAxU,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,IAAA,CAAA;GAC3BsB,eAAAA,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IACE8I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,MAAA,CAAA;AAChC5I,IAAAA,KAAK,EAAE;MAAEoW,OAAO,EAAEtO,MAAM,CAAC2kB,eAAe,CAAA;AAAG,KAAA;GAE/C,CAAM,CACH,CAEL,EAAC3jB,QAAQ,iBAAIoB,KAAA,CAAAjK,aAAA,CAAA,MAAA,EAAA;IAAM8I,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,CAAA;GAAWE,EAAAA,QAAe,CACjE,CAAC,CAAA;AAEV,CAAC,EACF;AAEDsjB,QAAQ,CAACxgB,WAAW,GAAG,UAAU;;ACrG1B,MAAM+gB,QAAQ,GAAGA,CAAC;EAAE/qB,IAAI;EAAEmN,YAAY;AAAEhD,EAAAA,IAAAA;AAAI,CAAiB,KAAI;AACtE,EAAA,MAAMzC,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;AAC3C,EAAA,MAAM3E,YAAY,GAAGkH,IAAI,IAAIzC,WAAW,CAAA;EAExC,IAAI,CAACzE,YAAY,EAAE;AACjB,IAAA,MAAM,IAAIa,KAAK,CACb,8DAA8D,CAC/D,CAAA;AACH,GAAA;EAEA,MAAM,CAAC9C,KAAK,EAAEgqB,QAAQ,CAAC,GAAGtrB,QAAQ,CAAC,MAAK;AACtC,IAAA,OAAOM,IAAI,GACPiD,YAAY,CAAC/C,aAAa,CAACF,IAAI,CAAC,IAAImN,YAAY,GAChDlK,YAAY,CAAC9C,cAAc,EAAE,IAAIgN,YAAY,CAAA;AACnD,GAAC,CAAC,CAAA;AAEFnF,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI,CAAChI,IAAI,EAAE;AACT,MAAA,MAAMiF,WAAW,GAAGhC,YAAY,CAAC2B,eAAe,CAAComB,QAAQ,CAAC,CAAA;MAE1D,OAAO,MAAM/lB,WAAW,EAAE,CAAA;AAC5B,KAAA;IAEA,MAAMA,WAAW,GAAGhC,YAAY,CAACwB,gBAAgB,CAACzE,IAAI,EAAEgrB,QAAQ,CAAC,CAAA;IAEjE,OAAO,MAAM/lB,WAAW,EAAE,CAAA;AAC5B,GAAC,EAAE,CAACjF,IAAI,EAAEiD,YAAY,CAAC,CAAC,CAAA;AAExB,EAAA,OAAOjC,KAAK,CAAA;AACd;;;;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/hooks/useForm.ts","../lib/utils/index.ts","../lib/helpers/index.ts","../lib/components/Form/Item/Item.tsx","../lib/components/Form/Form.tsx","../lib/components/Icons/Icons.tsx","../lib/components/DatePicker/RangePicker/RangePicker.tsx","../lib/components/DatePicker/DatePicker.tsx","../lib/components/DatePicker/TimePicker/TimePicker.tsx","../lib/components/Input/Textarea/Textarea.tsx","../lib/components/Input/Input.tsx","../lib/components/Radio/Button/Button.tsx","../lib/components/Radio/Group/Group.tsx","../lib/components/Radio/Radio.tsx","../lib/components/Select/Option/Option.tsx","../lib/components/Select/Tag/Tag.tsx","../lib/components/Empty/Empty.tsx","../lib/components/Select/Select.tsx","../lib/components/Skeleton/Button/Button.tsx","../lib/components/Skeleton/Avatar/Avatar.tsx","../lib/components/Skeleton/Image/Image.tsx","../lib/components/Skeleton/Input/Input.tsx","../lib/components/Skeleton/Skeleton.tsx","../lib/components/Button/Button.tsx","../lib/components/Button/Button.client.tsx","../lib/components/Upload/Upload.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/hooks/useWatch.ts"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","'use client';\n\nimport { useRef, useState } from 'react';\nimport { RuleTypes } from '../types';\nimport type {\n FieldData,\n FieldError,\n FieldInstancesRef,\n FormInstance,\n RuleObject,\n RuleRender\n} from '../types/form';\n\nconst useForm = (\n initialValues: Record<string, RuleTypes> = {},\n onFieldsChange?: (changedFields: FieldData[]) => void,\n onValuesChange?: (\n changedValues: Record<string, RuleTypes>,\n allValues: Record<string, RuleTypes>\n ) => void\n): FormInstance => {\n const touchedFieldsRef = useRef(new Set<string>());\n const rulesRef = useRef<Record<string, RuleObject[] | RuleRender>>({});\n const warningsRef = useRef<Record<string, string[]>>({});\n\n const formRef = useRef<Record<string, RuleTypes>>({ ...initialValues });\n const fieldInstancesRef = useRef<Record<string, FieldInstancesRef>>({});\n\n const [isReseting, setIsReseting] = useState(false);\n const [errors, setErrors] = useState<Record<string, string[]>>({});\n\n const fieldSubscribers = useRef<\n Record<string, ((value: RuleTypes) => void)[]>\n >({});\n\n const formSubscribers = useRef<\n ((values: Record<string, RuleTypes>) => void)[]\n >([]);\n\n function getFieldInstance(name: string): FieldInstancesRef {\n return fieldInstancesRef.current[name] || null;\n }\n\n function getFieldValue(name: string) {\n return formRef.current[name];\n }\n\n function getFieldsValue(nameList?: string[]) {\n if (!nameList) {\n return { ...formRef.current };\n }\n\n return nameList.reduce((acc, key) => {\n acc[key] = formRef.current[key];\n\n return acc;\n }, {} as Record<string, RuleTypes>);\n }\n\n function getFieldError(name: string) {\n return errors[name] || [];\n }\n\n function getFieldWarning(name: string): string[] {\n return warningsRef.current[name] || [];\n }\n\n function getFieldsError(): Pick<FieldError, 'errors' | 'name'>[] {\n return Object.entries(errors).map(([name, err]) => ({ name, errors: err }));\n }\n\n function setFieldValue(\n name: string,\n value: RuleTypes,\n errors?: string[],\n reset?: boolean\n ) {\n if (\n !reset &&\n ([undefined, null].includes(value) || formRef.current[name] === value)\n ) {\n return;\n }\n\n formRef.current[name] = value;\n touchedFieldsRef.current.add(name);\n\n if (!errors?.length) {\n validateField(name).then(() => {\n const allValues = getFieldsValue();\n fieldSubscribers.current[name]?.forEach(callback => callback(value));\n formSubscribers.current.forEach(callback => callback(allValues));\n\n if (onValuesChange) {\n onValuesChange({ [name]: value }, allValues);\n }\n\n if (onFieldsChange) {\n onFieldsChange([{ name, value }]);\n }\n });\n } else {\n setErrors({ [name]: errors });\n }\n }\n\n function setFieldsValue(values: Partial<Record<string, RuleTypes>>) {\n Object.entries(values).forEach(([name, value]) =>\n setFieldValue(name, value as RuleTypes)\n );\n }\n\n function setFields(fields: FieldData[]) {\n fields.forEach(({ name, value, errors }) =>\n setFieldValue(Array.isArray(name) ? name[0] : name, value, errors)\n );\n }\n\n function isFieldTouched(name: string) {\n return touchedFieldsRef.current.has(name);\n }\n\n function isFieldsTouched(nameList?: string[], allFieldsTouched = false) {\n if (!nameList) {\n return touchedFieldsRef.current.size > 0;\n }\n\n return allFieldsTouched\n ? nameList.every(name => touchedFieldsRef.current.has(name))\n : nameList.some(name => touchedFieldsRef.current.has(name));\n }\n\n function isFieldValidating(name: string): boolean {\n return !!name;\n }\n\n function registerField(name: string, rules: RuleObject[] = []) {\n if (!(name in formRef.current)) {\n formRef.current[name] = initialValues?.[name];\n }\n\n rulesRef.current[name] = rules;\n }\n\n async function validateField(name: string) {\n const value = formRef.current[name];\n const rules = rulesRef.current[name] || [];\n const fieldErrors: string[] = [];\n const fieldWarnings: string[] = [];\n\n await Promise.all(\n [rules].flat(1).map(async (rule: RuleTypes) => {\n rule = typeof rule === 'function' ? rule(formInstance) : rule;\n\n if (\n rule.required &&\n (value === undefined ||\n value === null ||\n value === '' ||\n (Array.isArray(value) && !value.length))\n ) {\n fieldErrors.push(rule.message || 'This field is required');\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.min !== undefined &&\n String(value).length < rule.min\n ) {\n fieldErrors.push(\n rule.message || `Must be at least ${rule.min} characters`\n );\n }\n\n if (\n (typeof value === 'string' ||\n typeof value === 'number' ||\n Array.isArray(value)) &&\n rule.max !== undefined &&\n String(value).length > rule.max\n ) {\n fieldErrors.push(\n rule.message || `Must be at most ${rule.max} characters`\n );\n }\n\n if (rule.pattern && !rule.pattern.test(String(value))) {\n fieldErrors.push(rule.message || 'Invalid format');\n }\n\n if (rule.warningPattern && !rule.warningPattern.test(String(value))) {\n fieldWarnings.push(rule.warningMessage || 'Invalid format');\n }\n\n if (rule.validator) {\n try {\n await rule.validator(\n rule,\n value,\n (error?: string) => error && fieldErrors.push(error)\n );\n } catch (error) {\n fieldErrors.push(\n error instanceof Error ? error.message : String(error)\n );\n }\n }\n })\n );\n\n setErrors(prev => ({ ...prev, [name]: fieldErrors }));\n warningsRef.current[name] = fieldWarnings;\n\n return fieldErrors.length === 0;\n }\n\n async function validateFields(nameList?: string[]) {\n const fieldsToValidate = nameList || Object.keys(formRef.current);\n const results = await Promise.all(\n fieldsToValidate.map(name => validateField(name))\n );\n\n return results.every(valid => valid);\n }\n\n function resetFields(nameList?: string[]) {\n if (nameList?.length) {\n nameList.forEach((name: string) => {\n formRef.current[name] = initialValues[name];\n touchedFieldsRef.current.delete(name);\n delete warningsRef.current[name];\n setErrors(prev => ({ ...prev, [name]: [] }));\n setFieldValue(name, initialValues[name], undefined, true);\n });\n } else {\n touchedFieldsRef.current.clear();\n warningsRef.current = {};\n\n Object.keys(formRef.current).forEach(name => {\n setFieldValue(name, initialValues[name], undefined, true);\n });\n }\n\n formSubscribers.current.forEach(callback => callback(getFieldsValue()));\n setIsReseting(prev => !prev);\n }\n\n async function submit() {\n return (await validateFields()) ? formRef.current : undefined;\n }\n\n function subscribeToField(\n name: string,\n callback: (value: RuleTypes) => void\n ) {\n if (!fieldSubscribers.current[name]) {\n fieldSubscribers.current[name] = [];\n }\n\n fieldSubscribers.current[name].push(callback);\n\n return () => {\n fieldSubscribers.current[name] = fieldSubscribers.current[name].filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToForm(\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n formSubscribers.current.push(callback);\n\n return () => {\n formSubscribers.current = formSubscribers.current.filter(\n cb => cb !== callback\n );\n };\n }\n\n function subscribeToFields(\n names: string[],\n callback: (values: Record<string, RuleTypes>) => void\n ) {\n const fieldCallbacks = names.map(name =>\n subscribeToField(name, () => {\n const updatedValues = getFieldsValue(names);\n callback(updatedValues);\n })\n );\n\n return () => {\n fieldCallbacks.forEach(unsubscribe => unsubscribe());\n };\n }\n\n const formInstance: FormInstance = {\n submit,\n setFields,\n resetFields,\n getFieldError,\n registerField,\n setFieldValue,\n getFieldValue,\n validateFields,\n setFieldsValue,\n getFieldsValue,\n isFieldTouched,\n getFieldsError,\n isFieldsTouched,\n getFieldWarning,\n isFieldValidating,\n subscribeToField,\n subscribeToForm,\n onFieldsChange,\n onValuesChange,\n getFieldInstance,\n subscribeToFields,\n isReseting\n };\n\n return formInstance;\n};\n\nexport { useForm };\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","'use client';\n\nimport {\n Children,\n Fragment,\n isValidElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType, SyntheticBaseEvent } from '../../../types';\nimport {\n FormItemChildComponentProps,\n FormItemProps\n} from '../../../types/form';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsFormItem } from '../../../utils';\nimport './style.css';\nimport { FormContext } from '../Form';\n\nconst REF_CLIENT_HEIGHT = 24;\n\nconst FormItem = ({\n prefixCls = prefixClsFormItem,\n name,\n label,\n rules = [],\n children,\n className = '',\n layout = 'vertical',\n style = {},\n valuePropName,\n dependencies = [],\n initialValue,\n feedbackIcons,\n ...props\n}: FormItemProps) => {\n const formContext = useContext(FormContext);\n\n const errorRef = useRef<HTMLSpanElement>(null);\n\n if (!formContext) {\n throw new Error('FormItem must be used within a Form');\n }\n\n const {\n isReseting,\n registerField,\n getFieldError,\n getFieldValue,\n setFieldValue,\n getFieldInstance,\n subscribeToFields,\n validateFields\n } = formContext;\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (name && !getFieldInstance(name)) {\n registerField(name, rules);\n }\n }, [name, rules]);\n\n useEffect(() => {\n if (initialValue) {\n setFieldValue(name, initialValue);\n }\n }, []);\n\n useEffect(() => {\n if (name && dependencies.length > 0) {\n const unsubscribe = subscribeToFields(dependencies, () => {\n validateFields([name]);\n });\n\n return () => {\n unsubscribe();\n };\n }\n }, [dependencies, name]);\n\n useEffect(() => {\n if (\n errorRef.current &&\n errorRef.current?.clientHeight >= REF_CLIENT_HEIGHT\n ) {\n errorRef.current.style.position = 'relative';\n errorRef.current.style.marginTop = '-16px';\n }\n }, [errorRef.current]);\n\n const isRequired = useMemo(\n () => rules.some((rule: RuleType) => rule.required),\n [rules]\n );\n\n const errorMessage = getFieldError(valuePropName || name)?.[0];\n\n return (\n <div\n style={style}\n className={clsx([\n `${prefixCls}`,\n {\n [layout]: layout,\n [className]: className,\n noStyle: props.noStyle\n }\n ])}\n >\n {!props.noStyle && (label || name) && (\n <label className={`${prefixCls}-label`} htmlFor={name}>\n {label || name}:\n {isRequired && <span className={`${prefixCls}-required`}>*</span>}\n {/* @Todo need to add Tooltip like Ant design */}\n </label>\n )}\n\n {Children.map(childrenList, (child, key) => {\n if (isValidElement(child) && child.type !== Fragment) {\n const { value, ...childProps } = child.props;\n const fieldValue =\n getFieldValue(valuePropName || name) ?? initialValue;\n\n return (\n <FormItemChildComponent\n {...childProps}\n name={name}\n child={child}\n value={value}\n fieldValue={fieldValue}\n noStyle={props.noStyle}\n normalize={props.normalize}\n key={`${key}_${isReseting}`}\n error={Boolean(errorMessage)}\n setFieldValue={setFieldValue}\n valuePropName={valuePropName}\n feedbackIcons={feedbackIcons}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n size={childProps.size || props.size}\n />\n );\n }\n\n return child;\n })}\n\n {!props.noStyle && errorMessage && (\n <span ref={errorRef} className={`${prefixCls}-error`}>\n {errorMessage}\n </span>\n )}\n </div>\n );\n};\n\nconst FormItemChildComponent = ({\n child,\n name,\n error,\n fieldValue,\n setFieldValue,\n onChange,\n valuePropName,\n normalize,\n ...props\n}: FormItemChildComponentProps) => {\n const formContext = useContext(FormContext);\n\n const [wasNormalize, setWasNormalize] = useState(false);\n\n const { getFieldsValue } = formContext || {};\n\n const handleChange = (e: SyntheticBaseEvent, option?: OptionProps) => {\n let rawValue: RuleType | SyntheticBaseEvent = e?.target\n ? e.target.value\n : e;\n\n if (normalize) {\n const prevValue = fieldValue ?? props.value;\n const allValues = getFieldsValue?.();\n\n rawValue = normalize(rawValue, prevValue, allValues);\n\n if (rawValue === prevValue) {\n e.target.value = rawValue;\n\n setWasNormalize(prev => !prev);\n\n const timeout = setTimeout(() => {\n (\n document.querySelector(`[name='${name}']`) as HTMLInputElement\n )?.focus();\n\n clearTimeout(timeout);\n }, 0);\n\n return;\n }\n }\n\n setFieldValue(valuePropName || name, rawValue);\n onChange?.(e, option);\n };\n\n return (\n <child.type\n {...props}\n name={name}\n onChange={handleChange}\n {...(error ? { error } : {})}\n key={`${name}_${wasNormalize}`}\n value={fieldValue ?? props.value}\n />\n );\n};\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;","'use client';\n\nimport {\n Children,\n createContext,\n FC,\n Fragment,\n isValidElement,\n SyntheticEvent,\n useEffect,\n useMemo,\n useRef\n} from 'react';\nimport { useForm } from '@/hooks/useForm';\nimport { FormInstance, FormItemProps, FormProps } from '../../types/form';\nimport { prefixClsForm } from '../../utils';\nimport FormItem from './Item/Item';\n\nexport const FormContext = createContext<FormInstance | null>(null);\n\nconst Form: FC<FormProps> & { Item: FC<FormItemProps> } = ({\n children,\n form,\n style = {},\n prefixCls = prefixClsForm,\n className = '',\n onFinish,\n onFinishFailed,\n initialValues = {},\n onValuesChange,\n onFieldsChange,\n layout = 'horizontal',\n ...rest\n}) => {\n const internalForm = useForm(initialValues, onFieldsChange, onValuesChange);\n const formInstance = form || internalForm;\n const formRef = useRef<HTMLFormElement>(null);\n\n const handleSubmit = async (e: SyntheticEvent) => {\n e.preventDefault();\n\n if (await formInstance.validateFields()) {\n onFinish?.(formInstance.getFieldsValue());\n } else if (onFinishFailed) {\n const errorFields = formInstance.getFieldsError();\n onFinishFailed({ values: formInstance.getFieldsValue(), errorFields });\n }\n };\n\n const childrenList = useMemo(\n () => (Array.isArray(children) ? children : [children]).filter(Boolean),\n [children]\n );\n\n useEffect(() => {\n if (onFieldsChange) {\n formInstance.onFieldsChange = onFieldsChange;\n }\n\n if (onValuesChange) {\n formInstance.onValuesChange = onValuesChange;\n }\n }, [formInstance, onFieldsChange, onValuesChange]);\n\n return (\n <FormContext.Provider value={formInstance}>\n <form\n style={style}\n ref={formRef}\n onSubmit={handleSubmit}\n className={`${prefixCls} ${className}`}\n >\n {Children.map(childrenList, child => {\n if (isValidElement(child) && child.type !== Fragment) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n const { ...childProps } = child.props;\n\n return (\n <child.type\n {...childProps}\n child={child}\n size={childProps.size || rest.size}\n layout={childProps.layout || layout}\n />\n );\n }\n\n return child;\n })}\n </form>\n </FormContext.Provider>\n );\n};\n\nForm.Item = FormItem;\n\nexport default Form;\n","const ClearIcon = () => (\n <svg\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 1L13 13M13 1L1 13\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n);\n\nconst ArrowIcon = ({ isOpen }: { isOpen: boolean }) => (\n <svg\n width=\"18\"\n height=\"18\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7 10L12 15L17 10\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n transform={isOpen ? 'rotate(180, 12, 12)' : ''}\n />\n </svg>\n);\n\nconst LoadingIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"loading\"\n width=\"12\"\n height=\"12\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\"></path>\n </svg>\n);\n\nconst CheckIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"check\"\n width=\"12\"\n height=\"12\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\"></path>\n </svg>\n);\n\nconst SearchIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"search\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z\"></path>\n </svg>\n);\n\nconst CalendarIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"calendar\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z\"></path>\n </svg>\n);\n\nconst SuccessIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"check-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z\"></path>\n </svg>\n);\n\nconst ErrorIcon = () => (\n <svg\n className=\"error-svg-icon\"\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"close-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm127.98 274.82h-.04l-.08.06L512 466.75 384.14 338.88c-.04-.05-.06-.06-.08-.06a.12.12 0 00-.07 0c-.03 0-.05.01-.09.05l-45.02 45.02a.2.2 0 00-.05.09.12.12 0 000 .07v.02a.27.27 0 00.06.06L466.75 512 338.88 639.86c-.05.04-.06.06-.06.08a.12.12 0 000 .07c0 .03.01.05.05.09l45.02 45.02a.2.2 0 00.09.05.12.12 0 00.07 0c.02 0 .04-.01.08-.05L512 557.25l127.86 127.87c.04.04.06.05.08.05a.12.12 0 00.07 0c.03 0 .05-.01.09-.05l45.02-45.02a.2.2 0 00.05-.09.12.12 0 000-.07v-.02a.27.27 0 00-.05-.06L557.25 512l127.87-127.86c.04-.04.05-.06.05-.08a.12.12 0 000-.07c0-.03-.01-.05-.05-.09l-45.02-45.02a.2.2 0 00-.09-.05.12.12 0 00-.07 0z\"></path>\n </svg>\n);\n\nconst DateDistanceIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"swap-right\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"></path>\n </svg>\n);\n\nconst TimeIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"clock-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"></path>\n <path d=\"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"></path>\n </svg>\n);\n\nconst StampleIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"paper-clip\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z\"></path>\n </svg>\n);\n\nconst TrashIcon = () => (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"delete\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"></path>\n </svg>\n);\n\nconst SpinerIcon = () => (\n <svg\n viewBox=\"0 0 1024 1024\"\n focusable=\"false\"\n data-icon=\"loading\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\"></path>\n </svg>\n);\n\nexport {\n ClearIcon,\n ArrowIcon,\n LoadingIcon,\n CheckIcon,\n SearchIcon,\n CalendarIcon,\n SuccessIcon,\n ErrorIcon,\n DateDistanceIcon,\n TimeIcon,\n StampleIcon,\n TrashIcon,\n SpinerIcon\n};\n","'use client';\n\nimport { useEffect, useRef, useState } from 'react';\nimport { clsx } from '../../../helpers';\nimport { TRangePickerProps } from '../../../types/datepicker';\nimport { prefixClsRangePicker } from '../../../utils';\nimport './style.css';\nimport { MONTH_LENGTH, NEXT_DAYS_COUNT_AS_CURRENT_MUNTH, NUMBER_SIX } from '../DatePicker';\nimport { CalendarIcon, ClearIcon, DateDistanceIcon } from '../../Icons/Icons';\n\nconst RangePicker = ({\n prefixCls = prefixClsRangePicker,\n value,\n onChange,\n placeholder = ['Start date', 'End date'],\n disabled,\n error,\n format = 'YYYY-MM-DD',\n prefix,\n allowClear = true,\n inputReadOnly = false,\n size = 'large',\n picker = 'date',\n locale,\n disabledDate,\n style = {},\n className = '',\n separator,\n defaultValue,\n bordered = true\n}: TRangePickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [isOpen, setIsOpen] = useState(false);\n const [selectedDates, setSelectedDates] = useState<\n [Date | null, Date | null]\n >([\n value?.[0] || defaultValue?.[0] || null,\n value?.[1] || defaultValue?.[1] || null\n ]);\n\n const [hoveredDate, setHoveredDate] = useState<Date | null>(null);\n const [currentMonth, setCurrentMonth] = useState(new Date().getMonth());\n const [currentYear, setCurrentYear] = useState(new Date().getFullYear());\n const [viewMode, setViewMode] = useState<'day' | 'month' | 'year'>(\n picker === 'month' ? 'month' : picker === 'year' ? 'year' : 'day'\n );\n\n const localeMonths =\n locale?.shortMonths ||\n Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale?.locale || 'default', {\n month: 'short'\n })\n );\n\n const localeWeekdays = locale?.shortWeekDays || [\n 'Su',\n 'Mo',\n 'Tu',\n 'We',\n 'Th',\n 'Fr',\n 'Sa'\n ];\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => document.removeEventListener('mousedown', handleClickOutside);\n }, []);\n\n const handleSelect = (date: Date) => {\n if (!selectedDates[0] || (selectedDates[0] && selectedDates[1])) {\n setSelectedDates([date, null]);\n } else {\n const start = selectedDates[0];\n const end = date < start ? start : date;\n const begin = date < start ? date : start;\n setSelectedDates([begin, end]);\n onChange?.(\n [begin.toUTCString(), end.toUTCString()],\n [formatDate(begin), formatDate(end)]\n );\n setIsOpen(false);\n }\n };\n\n const isMonthDisabled = (month: number) => {\n const date = new Date(currentYear, month + 1, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const isYearDisabled = (year: number) => {\n const date = new Date(year + 1, currentMonth, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const formatDate = (date: Date) => {\n if (typeof format === 'function') {\n return format(date);\n }\n\n return `${format}`\n .replace(/YYYY/, date.getFullYear().toString())\n .replace(/MM/, (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace(/DD/, date.getDate().toString().padStart(2, '0'));\n };\n\n const isInRange = (date: Date) => {\n const [start, end] = selectedDates;\n\n return start && end && date > start && date < end;\n };\n\n const renderMonthYearSelector = (monthOffset = 0, all?: boolean) => {\n const baseYear = currentYear;\n const baseMonth = currentMonth + monthOffset;\n\n return (\n <div className={`${prefixCls}-header`}>\n {all || !monthOffset ? (\n <div className={`${prefixCls}-nav-buttons`}>\n <button onClick={() => setCurrentYear((y: number) => y - 1)}>\n «\n </button>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === 0\n ? (setCurrentYear((y: number) => y - 1), MONTH_LENGTH)\n : m - 1\n )\n }\n >\n ‹\n </button>\n </div>\n ) : (\n <span />\n )}\n <div className={`${prefixCls}-dropdown-selects`}>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('year')}\n >\n {baseYear}\n </button>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('month')}\n >\n {localeMonths[baseMonth]}\n </button>\n </div>\n {all || monthOffset ? (\n <div className={`${prefixCls}-nav-buttons`}>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === MONTH_LENGTH\n ? (setCurrentYear((y: number) => y + 1), 0)\n : m + 1\n )\n }\n >\n ›\n </button>\n <button onClick={() => setCurrentYear((y: number) => y + 1)}>\n »\n </button>\n </div>\n ) : (\n <span />\n )}\n </div>\n );\n };\n\n const renderCalendar = (monthOffset = 0, all?: boolean) => {\n const baseDate = new Date(currentYear, currentMonth + monthOffset, 1);\n const year = baseDate.getFullYear();\n const month = baseDate.getMonth();\n const firstDay = new Date(year, month, 1).getDay();\n const daysInMonth = new Date(year, month + 1, 0).getDate();\n\n const prevMonthDays = (() => {\n const prevMonth = new Date(year, month, 0);\n const totalDays = prevMonth.getDate();\n\n return Array.from(\n { length: firstDay },\n (_, i) => new Date(year, month - 1, totalDays - firstDay + i + 1)\n );\n })();\n\n const currentMonthDays = Array.from(\n { length: daysInMonth },\n (_, i) => new Date(year, month, i + 1)\n );\n\n const totalDisplayed = prevMonthDays.length + currentMonthDays.length;\n const remaining = NEXT_DAYS_COUNT_AS_CURRENT_MUNTH - totalDisplayed;\n const nextMonthDays = Array.from(\n { length: remaining },\n (_, i) => new Date(year, month + 1, i + 1)\n );\n\n const days = [...prevMonthDays, ...currentMonthDays, ...nextMonthDays];\n\n return (\n <div className={`${prefixCls}-calendar ${viewMode}`}>\n <div className={`${prefixCls}-calendar-header`}>\n {renderMonthYearSelector(monthOffset, all)}\n </div>\n {viewMode === 'day' && (\n <div className={`${prefixCls}-days-grid day`}>\n {localeWeekdays.map((day, i) => (\n <div key={i} className={`${prefixCls}-weekday`}>\n {day}\n </div>\n ))}\n {days.map((day, i) => {\n const isSelected =\n day &&\n selectedDates.some(\n d => d?.toDateString() === day.toDateString()\n );\n\n const inRange = day && isInRange(day);\n const isSameMonth = day?.getMonth() === month;\n\n return (\n <button\n key={i}\n disabled={disabledDate?.(day, {\n from: undefined,\n to: undefined\n })}\n onClick={() => day && handleSelect(day)}\n onMouseEnter={() => day && setHoveredDate(day)}\n className={clsx([\n `${prefixCls}-day`,\n {\n [`${prefixCls}-selected`]: isSelected,\n [`${prefixCls}-in-range`]: inRange,\n [`${prefixCls}-hover-end`]:\n hoveredDate &&\n selectedDates[0] &&\n !selectedDates[1] &&\n hoveredDate > selectedDates[0] &&\n hoveredDate.toDateString() === day?.toDateString(),\n [`${prefixCls}-other-month`]: !isSameMonth\n }\n ])}\n >\n {day?.getDate()}\n </button>\n );\n })}\n </div>\n )}\n\n {viewMode === 'month' && (\n <div className={`${prefixCls}-grid`}>\n {localeMonths.map((m, i) => (\n <button\n key={i}\n className={`${prefixCls}-month`}\n onClick={() => {\n setCurrentMonth(i);\n setViewMode('day');\n }}\n disabled={isMonthDisabled(i)}\n >\n {m}\n </button>\n ))}\n </div>\n )}\n\n {viewMode === 'year' && (\n <div className={`${prefixCls}-grid`}>\n {Array.from({ length: 12 }, (_, i) => {\n const year = currentYear - NUMBER_SIX + i;\n\n return (\n <button\n key={year}\n className={`${prefixCls}-year`}\n disabled={isYearDisabled(year)}\n onClick={() => {\n setCurrentYear(year);\n setViewMode('month');\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n )}\n </div>\n );\n };\n\n const handleClear = () => {\n setSelectedDates([null, null]);\n onChange?.(null, ['', '']);\n };\n\n return (\n <div\n ref={containerRef}\n style={style}\n className={clsx([\n `${prefixCls}-range-container`,\n {\n [`${prefixCls}-${size}`]: size,\n [className]: className\n }\n ])}\n >\n <div className={`${prefixCls}-range-input-wrapper`}>\n <button\n type=\"button\"\n className={clsx([\n `${prefixCls}-input`,\n {\n noBordered: !bordered,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n disabled={disabled}\n onClick={() => setIsOpen(!isOpen)}\n >\n {prefix}\n <input\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date`}\n placeholder={placeholder[0]}\n value={selectedDates[0] ? formatDate(selectedDates[0]) : ''}\n />\n <span className={`${prefixCls}-range-separator`}>\n {separator || <DateDistanceIcon />}\n </span>\n <input\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date`}\n placeholder={placeholder[1]}\n value={selectedDates[1] ? formatDate(selectedDates[1]) : ''}\n />\n <span className={`${prefixCls}-icon`}>\n {allowClear && (selectedDates[0] || selectedDates[1]) ? (\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n <ClearIcon />\n </span>\n ) : (\n <CalendarIcon />\n )}\n </span>\n </button>\n </div>\n\n {isOpen && (\n <div className={`${prefixCls}-dropdown-wrapper show`}>\n <div className={`${prefixCls}-dropdown-range`}>\n {renderCalendar(0, viewMode !== 'day')}\n {viewMode === 'day' && renderCalendar(1, viewMode !== 'day')}\n </div>\n </div>\n )}\n </div>\n );\n};\n\nexport default RangePicker;\n","'use client';\n\nimport { CSSProperties, useEffect, useRef, useState } from 'react';\nimport { clsx } from '../../helpers';\nimport { TDatePickerProps } from '../../types/datepicker';\nimport { prefixClsDatePicker } from '../../utils';\nimport RangePicker from './RangePicker/RangePicker';\nimport './style.css';\nimport { CalendarIcon, ClearIcon, ErrorIcon } from '../Icons/Icons';\n\nconst INPUT_SIZE = 12;\nconst CONTENT_PADDING = 6;\nexport const NUMBER_SIX = 6;\nexport const MONTH_LENGTH = 11;\nexport const NEXT_DAYS_COUNT_AS_CURRENT_MUNTH = 35;\n\nconst DatePickerComponent = ({\n value,\n onChange,\n onCalendarChange,\n disabled,\n error,\n placeholder = 'Select date',\n prefixCls = prefixClsDatePicker,\n noStyle,\n feedbackIcons,\n locale,\n placement = 'bottomLeft',\n defaultValue,\n size = 'large',\n format = 'YYYY-MM-DD',\n getPopupContainer,\n showToday = true,\n allowClear = false,\n disabledDate,\n suffixIcon,\n picker = 'date',\n prefix,\n defaultOpen = false,\n inputReadOnly = false,\n bordered = true\n}: TDatePickerProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const initialDate = value || defaultValue;\n const popupContainerRef = useRef<HTMLElement | null>(null);\n const [placementPossition, setPlacementPossition] = useState<CSSProperties>(\n {}\n );\n\n const DateNow = new Date();\n\n const [selectedDate, setSelectedDate] = useState<Date | undefined>(\n initialDate\n );\n\n const [selectedDatePlaceholder, setSelectedDatePlaceholder] = useState<\n string | undefined\n >(initialDate ? formatDate(initialDate) : undefined);\n\n const [isOpen, setIsOpen] = useState(defaultOpen);\n const [currentYear, setCurrentYear] = useState(\n initialDate ? new Date(initialDate).getFullYear() : DateNow.getFullYear()\n );\n\n const [currentMonth, setCurrentMonth] = useState(\n initialDate ? new Date(initialDate).getMonth() : DateNow.getMonth()\n );\n\n const [viewMode, setViewMode] = useState<'day' | 'month' | 'year'>(\n picker === 'month' ? 'month' : picker === 'year' ? 'year' : 'day'\n );\n\n const localeMonths =\n locale?.shortMonths ||\n Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale?.locale || 'default', {\n month: 'short'\n })\n );\n\n const localeWeekdays = locale?.shortWeekDays || [\n 'Su',\n 'Mo',\n 'Tu',\n 'We',\n 'Th',\n 'Fr',\n 'Sa'\n ];\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (\n containerRef.current &&\n !containerRef.current.contains(event.target as Node)\n ) {\n setIsOpen(false);\n }\n };\n\n const controller = new AbortController();\n\n if (isOpen) {\n calculateDatePickerPopupPossition();\n\n document.addEventListener('scroll', calculateDatePickerPopupPossition, {\n signal: controller.signal\n });\n\n document.addEventListener('mousedown', handleClickOutside, {\n signal: controller.signal\n });\n }\n\n return () => {\n controller.abort();\n };\n }, [isOpen]);\n\n useEffect(() => {\n if (getPopupContainer && containerRef.current) {\n popupContainerRef.current = getPopupContainer(containerRef.current);\n }\n }, [getPopupContainer]);\n\n const daysInMonth = (year: number, month: number) =>\n new Date(year, month + 1, 0).getDate();\n\n const firstDayOfMonth = (year: number, month: number) =>\n new Date(year, month, 1).getDay();\n\n function formatDate(date: Date): string {\n if (typeof format === 'function') {\n return format(date);\n }\n\n if (typeof format === 'string') {\n date = new Date(date);\n\n return format\n .replace(/YYYY/, date.getFullYear().toString())\n .replace(/MM/, (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace(/DD/, date.getDate().toString().padStart(2, '0'));\n }\n\n return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;\n }\n\n const handleSelect = (day: number, month: number, year: number) => {\n if (disabled) {\n return;\n }\n\n const date = new Date(year, month, day);\n\n if (disabledDate?.(date, { from: undefined, to: undefined })) {\n return;\n }\n\n setCurrentMonth(month);\n setCurrentYear(year);\n setSelectedDate(date);\n\n const formatted = formatDate(date);\n setSelectedDatePlaceholder(formatted);\n onChange?.(date.toUTCString(), formatted);\n onCalendarChange?.(date.toUTCString(), formatted, { range: undefined });\n setIsOpen(false);\n };\n\n const clearSelection = () => {\n setSelectedDate(undefined);\n setSelectedDatePlaceholder(undefined);\n onChange?.(null, '');\n };\n\n const isMonthDisabled = (month: number) => {\n const date = new Date(currentYear, month + 1, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n const isYearDisabled = (year: number) => {\n const date = new Date(year + 1, currentMonth, 1);\n\n return disabledDate?.(date, { from: undefined, to: undefined });\n };\n\n function calculateDatePickerPopupPossition() {\n const datePickerContainerHeight =\n (containerRef.current?.clientHeight || 0) + CONTENT_PADDING;\n\n const datePickerPossitionFromTop =\n containerRef.current?.getBoundingClientRect().top || 0;\n\n const datePickerPossitionFromBottom =\n window.innerHeight -\n (containerRef.current?.getBoundingClientRect().bottom || 0);\n\n const datePickerContainerPopupHeight =\n containerRef.current?.querySelector(`.${prefixCls}-dropdown`)\n ?.clientHeight || 0;\n\n setPlacementPossition(\n ['topLeft', 'topRight'].includes(placement)\n ? {\n position: 'absolute',\n top:\n datePickerPossitionFromTop - datePickerContainerPopupHeight < 0\n ? datePickerContainerHeight\n : -datePickerContainerPopupHeight\n }\n : {\n position: 'absolute',\n top:\n datePickerPossitionFromBottom > datePickerContainerPopupHeight\n ? 0\n : -(datePickerContainerPopupHeight + datePickerContainerHeight)\n }\n );\n }\n\n const prevMonth = currentMonth === 0 ? MONTH_LENGTH : currentMonth - 1;\n const nextMonth = currentMonth === MONTH_LENGTH ? 0 : currentMonth + 1;\n const prevMonthYear = currentMonth === 0 ? currentYear - 1 : currentYear;\n const nextMonthYear =\n currentMonth === MONTH_LENGTH ? currentYear + 1 : currentYear;\n\n const totalDays = daysInMonth(currentYear, currentMonth);\n const firstDay = firstDayOfMonth(currentYear, currentMonth);\n const prevMonthDays = daysInMonth(prevMonthYear, prevMonth);\n const nextDaysCount =\n NEXT_DAYS_COUNT_AS_CURRENT_MUNTH - (firstDay + totalDays);\n\n const days = [\n ...Array.from({ length: firstDay }, (_, i) => ({\n day: prevMonthDays - firstDay + i + 1,\n current: false,\n month: prevMonth,\n year: prevMonthYear\n })),\n ...Array.from({ length: totalDays }, (_, i) => ({\n day: i + 1,\n current: true,\n month: currentMonth,\n year: currentYear\n })),\n ...Array.from({ length: nextDaysCount }, (_, i) => ({\n day: i + 1,\n current: false,\n month: nextMonth,\n year: nextMonthYear\n }))\n ];\n\n return (\n <div\n ref={containerRef}\n className={clsx([\n `${prefixCls}-container`,\n {\n noStyle,\n [`${prefixCls}-${size}`]: size\n }\n ])}\n >\n <div className={`${prefixCls}-input-wrapper`}>\n <button\n type=\"button\"\n className={clsx([\n `${prefixCls}-input`,\n {\n noBordered: !bordered,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-${size}`]: size,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n disabled={disabled}\n onClick={() => setIsOpen(!isOpen)}\n >\n {prefix || null}\n <input\n size={INPUT_SIZE}\n disabled={disabled}\n readOnly={inputReadOnly}\n className={`${prefixCls}-selected-date globalEllipsis`}\n placeholder={placeholder}\n style={{ opacity: isOpen ? '0.6' : 1 }}\n defaultValue={selectedDatePlaceholder}\n />\n <span className={`${prefixCls}-icon`}>\n {allowClear && selectedDate ? (\n <span className={`${prefixCls}-clear`} onClick={clearSelection}>\n {typeof allowClear === 'object' && allowClear.clearIcon ? (\n allowClear.clearIcon\n ) : (\n <ClearIcon />\n )}\n </span>\n ) : (\n suffixIcon || <CalendarIcon />\n )}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n </button>\n </div>\n\n <div\n style={popupContainerRef.current ? { position: 'absolute' } : {}}\n className={clsx([\n placement,\n `${prefixCls}-dropdown-wrapper`,\n {\n show: isOpen\n }\n ])}\n >\n {isOpen && (\n <div className={`${prefixCls}-dropdown`} style={placementPossition}>\n <div className={`${prefixCls}-header`}>\n <div className={`${prefixCls}-nav-buttons`}>\n <button onClick={() => setCurrentYear((y: number) => y - 1)}>\n «\n </button>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === 0\n ? (setCurrentYear((y: number) => y - 1), MONTH_LENGTH)\n : m - 1\n )\n }\n >\n ‹\n </button>\n </div>\n <div className={`${prefixCls}-dropdown-selects`}>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('year')}\n >\n {currentYear}\n </button>\n <button\n type=\"button\"\n className={`${prefixCls}-select`}\n onClick={() => setViewMode('month')}\n >\n {localeMonths[currentMonth]}\n </button>\n </div>\n <div className={`${prefixCls}-nav-buttons`}>\n <button\n onClick={() =>\n setCurrentMonth((m: number) =>\n m === MONTH_LENGTH\n ? (setCurrentYear((y: number) => y + 1), 0)\n : m + 1\n )\n }\n >\n ›\n </button>\n <button onClick={() => setCurrentYear((y: number) => y + 1)}>\n »\n </button>\n </div>\n </div>\n\n {viewMode === 'day' && (\n <div className={`${prefixCls}-grid day`}>\n {localeWeekdays.map(day => (\n <div key={day} className={`${prefixCls}-day-header`}>\n {day}\n </div>\n ))}\n {days.map(({ day, current, month, year }, idx) => {\n const isSelected =\n selectedDate &&\n selectedDate.getDate() === day &&\n selectedDate.getMonth() === month &&\n selectedDate.getFullYear() === year;\n\n return (\n <button\n key={`${year}-${month}-${day}-${idx}`}\n className={clsx([\n `${prefixCls}-day`,\n {\n [`${prefixCls}-selected`]: isSelected,\n [`${prefixCls}-other-month`]: !current\n }\n ])}\n onClick={() => handleSelect(day, month, year)}\n disabled={disabledDate?.(new Date(year, month, day), {\n from: undefined,\n to: undefined\n })}\n >\n {day}\n </button>\n );\n })}\n </div>\n )}\n\n {viewMode === 'month' && (\n <div className={`${prefixCls}-grid`}>\n {localeMonths.map((m, i) => (\n <button\n key={i}\n className={`${prefixCls}-month`}\n onClick={() => {\n setCurrentMonth(i);\n setViewMode('day');\n }}\n disabled={isMonthDisabled(i)}\n >\n {m}\n </button>\n ))}\n </div>\n )}\n\n {viewMode === 'year' && (\n <div className={`${prefixCls}-grid`}>\n {Array.from({ length: 12 }, (_, i) => {\n const year = currentYear - NUMBER_SIX + i;\n\n return (\n <button\n key={year}\n className={`${prefixCls}-year`}\n disabled={isYearDisabled(year)}\n onClick={() => {\n setCurrentYear(year);\n setViewMode('month');\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n )}\n\n {showToday && (\n <div\n className={`${prefixCls}-day-footer`}\n style={{ gridColumn: 'span 7' }}\n >\n <button\n className={`${prefixCls}-select`}\n disabled={disabledDate?.(\n new Date(\n DateNow.getDate(),\n DateNow.getMonth(),\n DateNow.getFullYear()\n ),\n { from: undefined, to: undefined }\n )}\n onClick={() => {\n handleSelect(\n DateNow.getDate(),\n DateNow.getMonth(),\n DateNow.getFullYear()\n );\n }}\n >\n {locale?.today || 'Today'}\n </button>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n );\n};\n\nconst DatePicker = Object.assign(DatePickerComponent, {\n RangePicker\n});\n\nexport default DatePicker;\n","'use client';\n\nimport {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent as ReactMouseEvent,\n ReactNode,\n RefObject,\n useEffect,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType } from '../../../types';\nimport { TimePickerProps } from '../../../types/datepicker';\nimport { prefixClsTimePicker } from '../../../utils';\nimport './style.css';\nimport { ClearIcon, TimeIcon } from '../../Icons/Icons';\n\nconst HOURS = 24;\nconst INPUT_SIZE = 13;\nconst TIME_OPTION_PADDING = 4;\nconst MINUTES_AND_SECONDS = 60;\nconst ADD_EMPTY_SECTION_COUNT = 5;\n\nconst pad = (num: number): string => String(num).padStart(2, '0');\n\nconst TimePicker: FC<TimePickerProps> = ({\n prefixCls = prefixClsTimePicker,\n style = {},\n className = '',\n disabledTime,\n inputReadOnly = false,\n format = 'HH:mm:ss',\n defaultValue = null,\n value: propValue = null,\n onChange,\n onBlur,\n onSelect,\n showNow = true,\n clearIcon = <ClearIcon />,\n suffixIcon = <TimeIcon />,\n placeholder = 'Select time'\n}) => {\n const [open, setOpen] = useState<boolean>(false);\n const [innerValue, setInnerValue] = useState<Date | null>(\n propValue || defaultValue ? new Date(propValue || defaultValue) : null\n );\n\n const [tempValue, setTempValue] = useState<Date | null>(null);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const popupRef = useRef<HTMLDivElement>(null);\n const hourRef = useRef<HTMLDivElement>(null);\n const minuteRef = useRef<HTMLDivElement>(null);\n const secondRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n if (\n popupRef.current &&\n !popupRef.current.contains(e.target as Node) &&\n inputRef.current &&\n !inputRef.current.contains(e.target as Node)\n ) {\n setOpen(false);\n setTempValue(null);\n\n if (!innerValue) {\n onChange?.(null as RuleType, '');\n }\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [innerValue, onChange]);\n\n useEffect(() => {\n if (open) {\n setTempValue(innerValue ? new Date(innerValue) : null);\n\n const { hour = 0, minute = 0, second = 0 } = getTimeParts(innerValue);\n scrollToTop(hourRef as { current: HTMLDivElement }, hour || 0);\n scrollToTop(minuteRef as { current: HTMLDivElement }, minute || 0);\n scrollToTop(secondRef as { current: HTMLDivElement }, second || 0);\n }\n }, [open, innerValue]);\n\n useEffect(() => {\n onSelect?.(tempValue);\n }, [tempValue, onSelect]);\n\n const formatDate = (date: Date | null): string => {\n if (!date) {\n return '';\n }\n\n return `${format}`\n .replace(/HH|hh/, pad(date.getHours()))\n .replace(/MM|mm/, pad(date.getMinutes()))\n .replace(/SS|ss/, pad(date.getSeconds()));\n };\n\n const getTimeParts = (date: Date | null) => ({\n hour: date?.getHours() ?? null,\n minute: date?.getMinutes() ?? null,\n second: date?.getSeconds() ?? null\n });\n\n const getDisabled = (\n type: 'hour' | 'minute' | 'second',\n hour = 0,\n minute = 0\n ): number[] => {\n const disabled = disabledTime?.(tempValue || new Date());\n\n if (!disabled) {\n return [];\n }\n\n if (type === 'hour') {\n return disabled.disabledHours?.() || [];\n }\n\n if (type === 'minute') {\n return disabled.disabledMinutes?.(hour) || [];\n }\n\n if (type === 'second') {\n return disabled.disabledSeconds?.(hour, minute) || [];\n }\n\n return [];\n };\n\n const scrollToTop = (\n ref: RefObject<HTMLDivElement>,\n selectedIndex: number\n ): void => {\n const el = ref.current?.querySelectorAll('div')[selectedIndex];\n\n if (el && ref.current) {\n ref.current.scrollTo({\n top: el.offsetTop - TIME_OPTION_PADDING * 2,\n behavior: 'smooth'\n });\n }\n };\n\n const updateTempValue = (hour: number, minute: number, second: number) => {\n const newDate = new Date();\n newDate.setHours(hour, minute, second, 0);\n setTempValue(newDate);\n };\n\n const onSelectHour = (h: number, auto?: boolean): void => {\n const { minute = 0, second = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!minute) {\n onSelectMinute(0, true);\n }\n\n if (!second) {\n onSelectSecond(0, true);\n }\n }\n\n updateTempValue(h, minute || 0, second || 0);\n scrollToTop(hourRef as { current: HTMLDivElement }, h);\n };\n\n const onSelectMinute = (m: number, auto?: boolean): void => {\n const { hour = 0, second = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!hour) {\n onSelectHour(0, true);\n }\n\n if (!second) {\n onSelectSecond(0, true);\n }\n }\n\n updateTempValue(hour || 0, m, second || 0);\n scrollToTop(minuteRef as { current: HTMLDivElement }, m);\n };\n\n const onSelectSecond = (s: number, auto?: boolean): void => {\n const { hour = 0, minute = 0 } = getTimeParts(tempValue);\n\n if (!auto) {\n if (!hour) {\n onSelectHour(0, true);\n }\n\n if (!minute) {\n onSelectMinute(0, true);\n }\n }\n\n updateTempValue(hour || 0, minute || 0, s);\n scrollToTop(secondRef as { current: HTMLDivElement }, s);\n };\n\n const handleClear = (e?: ReactMouseEvent<HTMLSpanElement>): void => {\n e?.stopPropagation();\n setInnerValue(null);\n setTempValue(null);\n onChange?.(null as RuleType, '');\n };\n\n const handleShowNow = (): void => {\n const now = new Date();\n setTempValue(now);\n setInnerValue(now);\n onChange?.(now, formatDate(now));\n onSelect?.(now);\n setOpen(false);\n };\n\n const handleOkButton = (): void => {\n if (tempValue) {\n setInnerValue(tempValue);\n onChange?.(tempValue, formatDate(tempValue));\n onSelect?.(tempValue);\n }\n\n setOpen(false);\n };\n\n const handleOnChange = (e: ChangeEvent<HTMLInputElement>) => {\n const inputVal = e.target.value.trim();\n const timeRegex = /^(\\d{2}):(\\d{2}):(\\d{2})$/;\n const match = inputVal.match(timeRegex);\n\n if (match) {\n const [, hStr, mStr, sStr] = match;\n const h = parseInt(hStr, 10);\n const m = parseInt(mStr, 10);\n const s = parseInt(sStr, 10);\n\n if (\n h >= 0 &&\n h < HOURS &&\n m >= 0 &&\n m < MINUTES_AND_SECONDS &&\n s >= 0 &&\n s < MINUTES_AND_SECONDS &&\n !getDisabled('hour').includes(h) &&\n !getDisabled('minute', h).includes(m) &&\n !getDisabled('second', h, m).includes(s)\n ) {\n onSelectHour(h);\n onSelectMinute(m);\n onSelectSecond(s);\n }\n }\n };\n\n const renderOptions = (): ReactNode => {\n const hours = Array.from(\n { length: HOURS + ADD_EMPTY_SECTION_COUNT },\n (_, i) => (i < HOURS ? i : false)\n );\n\n const minutesSeconds = Array.from(\n { length: MINUTES_AND_SECONDS + ADD_EMPTY_SECTION_COUNT },\n (_, i) => (i < MINUTES_AND_SECONDS ? i : false)\n );\n\n const {\n hour: selectedHour,\n minute: selectedMinute,\n second: selectedSecond\n } = getTimeParts(tempValue);\n\n const currentHour = selectedHour ?? 0;\n const currentMinute = selectedMinute ?? 0;\n\n return (\n <div>\n <div className={`${prefixCls}-panel`}>\n <div ref={hourRef} className={`${prefixCls}-column`}>\n {hours.map((h, index) =>\n h === false ? (\n <div\n key={`${h}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={h}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]:\n getDisabled('hour').includes(h),\n [`${prefixCls}-cell-selected`]: selectedHour === h\n }\n ])}\n onClick={() =>\n !getDisabled('hour').includes(h) && onSelectHour(h)\n }\n >\n {pad(h)}\n </div>\n )\n )}\n </div>\n <div ref={minuteRef} className={`${prefixCls}-column`}>\n {minutesSeconds.map((m, index) =>\n m === false ? (\n <div\n key={`${m}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={m}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]: getDisabled(\n 'minute',\n currentHour\n ).includes(m),\n [`${prefixCls}-cell-selected`]: selectedMinute === m\n }\n ])}\n onClick={() =>\n !getDisabled('minute', currentHour).includes(m) &&\n onSelectMinute(m)\n }\n >\n {pad(m)}\n </div>\n )\n )}\n </div>\n <div ref={secondRef} className={`${prefixCls}-column`}>\n {minutesSeconds.map((s, index) =>\n s === false ? (\n <div\n key={`${s}_${index}`}\n className={`${prefixCls}-cell`}\n style={{ opacity: 0, userSelect: 'none', cursor: 'inherit' }}\n >\n 0\n </div>\n ) : (\n <div\n key={s}\n className={clsx([\n `${prefixCls}-cell`,\n {\n [`${prefixCls}-cell-disabled`]: getDisabled(\n 'second',\n currentHour,\n currentMinute\n ).includes(s),\n [`${prefixCls}-cell-selected`]: selectedSecond === s\n }\n ])}\n onClick={() =>\n !getDisabled('second', currentHour, currentMinute).includes(\n s\n ) && onSelectSecond(s)\n }\n >\n {pad(s)}\n </div>\n )\n )}\n </div>\n </div>\n <div className={`${prefixCls}-actions`}>\n {showNow ? (\n <div className={`${prefixCls}-now-btn`} onClick={handleShowNow}>\n Now\n </div>\n ) : (\n <span />\n )}\n <button\n className={`${prefixCls}-ok-btn`}\n disabled={\n selectedHour === null ||\n selectedMinute === null ||\n selectedSecond === null\n }\n onClick={handleOkButton}\n >\n OK\n </button>\n </div>\n </div>\n );\n };\n\n return (\n <div className={clsx([`${prefixCls}-wrapper`, className])} style={style}>\n <div\n className={`${prefixCls}-input-wrapper`}\n onClick={() => setOpen(true)}\n >\n <input\n ref={inputRef}\n size={INPUT_SIZE}\n placeholder={placeholder}\n className={`${prefixCls}-input`}\n readOnly={inputReadOnly}\n onChange={handleOnChange}\n {...(open ? {} : { value: formatDate(innerValue) })}\n onBlur={(e: FocusEvent<HTMLInputElement>) => {\n onBlur?.(e, { source: 'input' });\n }}\n />\n <div className={`${prefixCls}-icons`}>\n {clearIcon && innerValue ? (\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n {clearIcon}\n </span>\n ) : (\n suffixIcon && (\n <span\n className={`${prefixCls}-suffix`}\n onClick={e => {\n e.stopPropagation();\n setOpen(true);\n }}\n >\n {suffixIcon}\n </span>\n )\n )}\n </div>\n </div>\n\n {open && (\n <div ref={popupRef} className={`${prefixCls}-popup`}>\n {renderOptions()}\n </div>\n )}\n </div>\n );\n};\n\nexport default TimePicker;\n","'use client';\n\nimport {\n ChangeEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n RefObject,\n useEffect,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { TextareaProps } from '../../../types/input';\nimport { prefixClsTextArea } from '../../../utils';\nimport './style.css';\n\nconst Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n prefixCls = prefixClsTextArea,\n value,\n className = '',\n style,\n autoSize,\n onPressEnter,\n onResize,\n styles,\n bordered = true,\n size = 'large',\n status,\n rootClassName,\n variant = 'outlined',\n error,\n allowClear = false,\n ...props\n },\n ref: ForwardedRef<HTMLTextAreaElement>\n ) => {\n const [inputValue, setInputValue] = useState(value?.toString() || '');\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n const textarea =\n (ref as RefObject<HTMLTextAreaElement>)?.current || textareaRef.current;\n\n if (textarea && autoSize) {\n textarea.style.height = 'auto';\n textarea.style.height = `${textarea.scrollHeight}px`;\n\n if (onResize) {\n onResize({\n width: textarea.clientWidth,\n height: textarea.scrollHeight\n });\n }\n }\n }, [inputValue, autoSize, onResize, ref]);\n\n const handleChange = (e: ChangeEvent<HTMLTextAreaElement>) => {\n setInputValue(e.target.value);\n\n if (props.onChange) {\n props.onChange(e);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLTextAreaElement>) => {\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n };\n\n const handleClear = () => {\n setInputValue('');\n\n if (props.onChange) {\n props.onChange({\n target: { value: '' }\n } as ChangeEvent<HTMLTextAreaElement>);\n }\n };\n\n return (\n <div className={`${prefixCls}-wrapper ${rootClassName || ''}`}>\n <textarea\n {...props}\n ref={ref || textareaRef}\n value={inputValue}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n style={{ ...styles?.textarea, ...style }}\n className={clsx([\n `${prefixCls} ${prefixCls}-${size} ${prefixCls}-${variant} ${className}`,\n {\n [`${prefixCls}-bordered`]: bordered,\n [`${prefixCls}-success`]: status === 'success',\n [`${prefixCls}-error`]: status === 'error' || error\n }\n ])}\n />\n\n {allowClear && inputValue && (\n <button className={`${prefixCls}-clear`} onClick={handleClear}>\n ✕\n </button>\n )}\n </div>\n );\n }\n);\n\nTextarea.displayName = 'Textarea';\n\nexport default Textarea;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n useImperativeHandle,\n useRef,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent, TargetProps } from '../../types';\nimport { InputProps } from '../../types/input';\nimport { prefixClsInput } from '../../utils';\nimport './style.css';\nimport Textarea from './Textarea/Textarea';\nimport { ErrorIcon } from '../Icons/Icons';\n\nconst InputComponent = forwardRef(\n (\n {\n size = 'large',\n error,\n suffix,\n prefix,\n addonAfter,\n addonBefore,\n onPressEnter,\n disabled = false,\n allowClear = false,\n prefixCls = prefixClsInput,\n className = '',\n value = undefined,\n iconRender,\n noStyle,\n feedbackIcons,\n ...props\n }: InputProps,\n ref: ForwardedRef<HTMLInputElement>\n ) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const [internalValue, setInternalValue] = useState(value ?? '');\n const [iconRenderVisible, setIconRenderVisible] = useState(false);\n\n useImperativeHandle(ref, () => ({\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n focus: inputRef.current?.focus,\n input: inputRef.current,\n blur: (inputRef.current as HTMLInputElement).blur,\n nativeElement: inputRef.current,\n setSelectionRange: (start: number, end: number) => {\n if (inputRef.current) {\n inputRef.current.setSelectionRange(start, end);\n }\n }\n }));\n\n const handleChange = (e: SyntheticBaseEvent) => {\n setInternalValue(e.target.value as string);\n\n props.onChange?.(e);\n };\n\n const handleClear = (e: MouseEvent<HTMLSpanElement> & TargetProps) => {\n setInternalValue('');\n\n e.target.value = '';\n\n props.onChange?.(e);\n };\n\n const handleOnKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-container`,\n {\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-${size}`]: size,\n noStyle: noStyle\n },\n className\n ])}\n style={props.style}\n >\n {addonBefore && (\n <span className={`${prefixCls}-addon ${prefixCls}-before`}>\n {addonBefore}\n </span>\n )}\n\n <div className={`${prefixCls}-wrapper`}>\n {prefix && <span className={`${prefixCls}-prefix`}>{prefix}</span>}\n\n <input\n {...props}\n ref={inputRef}\n {...(props.type === 'password' && iconRender\n ? {\n type: iconRenderVisible ? 'text' : 'password'\n }\n : {})}\n disabled={disabled}\n value={internalValue}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n className={clsx([prefixCls, className])}\n />\n\n <span className={`${prefixCls}-clear`} onClick={handleClear}>\n {allowClear && internalValue ? <ErrorIcon /> : null}\n </span>\n\n {(suffix || iconRender) && (\n <span\n className={`${prefixCls}-suffix`}\n {...(iconRender !== undefined\n ? {\n onClick: () => setIconRenderVisible(icon => !icon)\n }\n : {})}\n >\n {suffix || iconRender?.(iconRenderVisible)}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )}\n </div>\n\n {addonAfter ? (\n <span className={`${prefixCls}-addon ${prefixCls}-after`}>\n {addonAfter}\n </span>\n ) : null}\n </div>\n );\n }\n);\n\nInputComponent.displayName = 'Input';\n\nconst Input = InputComponent as typeof InputComponent & {\n TextArea: typeof Textarea;\n};\n\nInput.TextArea = Textarea;\n\nexport default Input;\n","'use client';\n\nimport { clsx } from '../../../helpers';\nimport { RadioButtonProps } from '../../../types/radio';\nimport { prefixClsRadio } from '../../../utils';\nimport './style.css';\nimport Radio from '../Radio';\n\nconst RadioButton = ({\n prefixCls = prefixClsRadio,\n className = '',\n checked,\n disabled,\n children,\n size = 'large',\n ...props\n}: RadioButtonProps) => {\n return (\n <Radio\n {...props}\n checked={checked}\n disabled={disabled}\n className={clsx([\n `${prefixCls}-button`,\n {\n disabled,\n [className]: className,\n [`${prefixCls}-button-${size}`]: size,\n [`${prefixCls}-button-checked`]: checked\n }\n ])}\n >\n <span className={`${prefixCls}-button-content`}>\n {children ?? props.value}\n </span>\n </Radio>\n );\n};\n\nexport default RadioButton;\n","'use client';\n\nimport {\n Children,\n cloneElement,\n isValidElement,\n ReactElement,\n useMemo\n} from 'react';\nimport { clsx } from '../../../helpers';\nimport { RuleType } from '../../../types';\nimport { RadioGroupProps } from '../../../types/radio';\nimport { prefixClsRadio } from '../../../utils';\nimport './style.css';\nimport Radio from '../Radio';\nimport RadioButton from '../Button/Button';\n\nconst RadioGroup = ({\n defaultValue,\n value,\n size = 'large',\n disabled,\n name,\n id,\n style = {},\n buttonStyle = 'outline',\n block,\n prefixCls = prefixClsRadio,\n className = '',\n options = [],\n children,\n ...props\n}: RadioGroupProps) => {\n const selectedValue = useMemo(\n () => (value !== undefined ? value : defaultValue),\n [value, defaultValue]\n );\n\n const renderChildren = () => {\n if (options.length > 0) {\n return options.map((option, key) => {\n const optionValue = typeof option === 'object' ? option.value : option;\n const optionLabel = typeof option === 'object' ? option.label : option;\n\n return (\n <Radio\n value={optionValue}\n key={`${key}_${optionValue}`}\n checked={selectedValue === optionValue}\n disabled={\n disabled || (typeof option === 'object' && option.disabled)\n }\n {...props}\n >\n {optionLabel}\n </Radio>\n );\n });\n }\n\n return Children.map(children, child => {\n if (\n isValidElement(child) &&\n (child.type === Radio || child.type === RadioButton)\n ) {\n return cloneElement(child as ReactElement, {\n ...props,\n ...(child.type === RadioButton ? { size, buttonStyle } : {}),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n defaultValue,\n disabled: disabled ?? (child.props as { disabled: boolean }).disabled,\n checked: selectedValue === (child.props as { value: RuleType }).value,\n name: name ?? prefixClsRadio\n });\n }\n\n return child;\n });\n };\n\n return (\n <div\n id={id}\n style={style}\n className={clsx([\n `${prefixCls}-group`,\n {\n block,\n className,\n [`${prefixCls}-group-${size}`]: size,\n [`${prefixCls}-group-solid`]: buttonStyle === 'solid'\n }\n ])}\n >\n {renderChildren()}\n </div>\n );\n};\n\nexport default RadioGroup;\n","'use client';\n\nimport { ForwardedRef, forwardRef, useEffect } from 'react';\nimport { clsx, parseValue } from '../../helpers';\nimport { RadioProps } from '../../types/radio';\nimport { prefixClsRadio } from '../../utils';\nimport RadioButton from './Button/Button';\nimport RadioGroup from './Group/Group';\nimport './style.css';\n\nconst RadioComponent = forwardRef<HTMLLabelElement, RadioProps>(\n (\n {\n prefixCls = prefixClsRadio,\n className = '',\n value,\n onChange,\n onClick,\n disabled,\n children,\n name,\n title,\n defaultChecked,\n checked,\n onBlur,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n noStyle\n },\n ref: ForwardedRef<HTMLLabelElement>\n ) => {\n const handleChange = () => {\n if (!disabled) {\n onClick?.(parseValue(title ?? value));\n onChange?.(parseValue(title ?? value));\n }\n };\n\n useEffect(() => {\n if (defaultChecked ?? checked) {\n onChange?.(parseValue(value));\n }\n }, [defaultChecked, checked]);\n\n return (\n <label\n ref={ref}\n title={title}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n className={clsx([\n `${prefixCls}-label`,\n {\n disabled,\n noStyle: noStyle,\n [className]: className\n }\n ])}\n >\n <input\n name={name}\n type=\"radio\"\n onClick={onClick}\n disabled={disabled}\n onChange={handleChange}\n onBlur={e => onBlur?.(e)}\n onFocus={e => onFocus?.(e)}\n />\n <span\n className={clsx([\n `${prefixCls} ${prefixCls}-${disabled ? 'disabled' : 'enabled'}`\n ])}\n />\n <span className={`${prefixCls}-title`}>\n {children ?? title ?? value}\n </span>\n </label>\n );\n }\n);\n\nRadioComponent.displayName = 'Radio';\nconst Radio = Object.assign(RadioComponent, {\n Group: RadioGroup,\n Button: RadioButton\n});\n\nexport default Radio;\n","import { FC, MouseEventHandler } from 'react';\nimport { clsx } from '../../../helpers';\nimport { OptionProps } from '../../../types/select';\nimport { prefixClsSelect } from '../../../utils';\nimport './style.css';\n\nconst Option: FC<OptionProps> = ({\n value,\n children,\n disabled,\n className = '',\n style,\n onClick,\n render,\n prefixCls = prefixClsSelect,\n selected,\n title\n}) => {\n const handleClick: MouseEventHandler<HTMLDivElement> = e => {\n if (disabled) {\n return;\n }\n\n onClick?.(e);\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-option ${className} `,\n {\n selected: selected,\n disabled: disabled\n }\n ])}\n style={style}\n onClick={handleClick}\n {...(title ? { title } : {})}\n >\n {render ? render(value as string) : children || value}\n </div>\n );\n};\n\nexport default Option;\n","import { FC, MouseEvent } from 'react';\nimport { TargetProps } from '../../../types';\nimport { CustomTagProps } from '../../../types/select';\nimport { prefixClsSelect } from '../../../utils';\nimport './style.css';\n\nconst Tag: FC<CustomTagProps> = ({\n prefixCls = prefixClsSelect,\n style = {},\n onClose,\n value,\n label,\n closable,\n color,\n icon\n}) => {\n const handleOnClick = (e: MouseEvent<HTMLSpanElement> & TargetProps) => {\n e.preventDefault();\n e.stopPropagation();\n\n e.target.value = value;\n\n onClose(e);\n };\n\n return (\n <div\n style={{ ...style, backgroundColor: color }}\n className={`${prefixCls}-tag`}\n >\n <span>{label !== undefined ? label : value}</span>\n\n {closable && (\n <span className={`${prefixCls}-tag-close-icon`} onClick={handleOnClick}>\n {icon || <>✕</>}\n </span>\n )}\n </div>\n );\n};\n\nexport default Tag;\n","import { EmptyContentProps } from '../../types/empty';\nimport { prefixClsEmpty } from '../../utils';\nimport './style.css';\n\nconst EmptyContent = ({\n icon,\n style = {},\n className = '',\n title = 'No Data',\n description = 'No data',\n prefixCls = prefixClsEmpty\n}: EmptyContentProps) => (\n <div\n style={style}\n className={`${prefixCls} ${prefixCls}-normal ${prefixCls}-small ${className}`}\n >\n <div className={`${prefixCls}-image`}>\n {icon || (\n <svg\n width=\"64\"\n height=\"41\"\n viewBox=\"0 0 64 41\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{title}</title>\n <g transform=\"translate(0 1)\" fill=\"none\">\n <ellipse fill=\"#f5f5f5\" cx=\"32\" cy=\"33\" rx=\"32\" ry=\"7\"></ellipse>\n <g stroke=\"#d9d9d9\">\n <path d=\"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"></path>\n <path\n d=\"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\"\n fill=\"#fafafa\"\n ></path>\n </g>\n </g>\n </svg>\n )}\n </div>\n <div className={`${prefixCls}-description`}>{description}</div>\n </div>\n);\n\nexport default EmptyContent;\n","'use client';\n\nimport {\n CSSProperties,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n ReactElement,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport {\n ArrowIcon,\n CheckIcon,\n ClearIcon,\n ErrorIcon,\n LoadingIcon,\n SearchIcon\n} from '@/components/Icons/Icons';\nimport { clsx } from '../../helpers';\nimport { MouseEventHandlerSelect, SyntheticBaseEvent } from '../../types';\nimport { OptionType, SelectProps } from '../../types/select';\nimport { prefixClsSelect } from '../../utils';\nimport Option from './Option/Option';\nimport Tag from './Tag/Tag';\nimport { Empty } from '../Empty';\nimport './style.css';\n\nconst LIST_HEIGHT = 200;\nconst PADDING_PLACEMENT = 18;\nconst PADDING_TAG_INPUT = 4;\n\nconst SelectComponent = forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n prefixCls = prefixClsSelect,\n id,\n searchValue = '',\n autoClearSearchValue = true,\n filterOption = true,\n optionFilterProp = 'value',\n children,\n options = [],\n listHeight = LIST_HEIGHT,\n menuItemSelectedIcon,\n mode = 'default',\n value,\n defaultValue,\n maxCount,\n disabled = false,\n loading = false,\n placeholder = 'Select',\n allowClear = false,\n filterable = false,\n defaultOpen = false,\n size = 'large',\n error = false,\n dropdownClassName = '',\n suffixIcon,\n style,\n onSearch,\n onSelect,\n onDeselect,\n onClear,\n onChange,\n showSearch = false,\n open = false,\n showArrow = true,\n notFoundContent = false,\n tagRender,\n getPopupContainer,\n dropdownRender,\n noStyle,\n feedbackIcons,\n placement = 'bottomLeft',\n removeIcon\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const asTag = mode === 'tags';\n const asMultiple = mode === 'multiple';\n const hasMode = asTag || asMultiple;\n\n const initialValue = useMemo(\n () => value || defaultValue || '',\n [value, defaultValue]\n );\n\n const checkModeInitialValue = useMemo(\n () =>\n (!Array.isArray(initialValue) ? [initialValue] : initialValue).filter(\n e => e\n ),\n [initialValue]\n );\n\n const [isHover, setIsHover] = useState(false);\n const selectRef = useRef<HTMLDivElement>(null);\n const [searchInputWidth, setSearchInputWidth] = useState<number>(0);\n const [isOpen, setIsOpen] = useState(defaultOpen || open);\n const [searchQuery, setSearchQuery] = useState(searchValue || '');\n const [dropdownPosition, setDropdownPosition] = useState<CSSProperties>({});\n\n const [selected, setSelected] = useState(\n hasMode ? checkModeInitialValue : initialValue\n );\n\n useImperativeHandle(ref, () => ({\n focus: () => selectRef.current?.focus(),\n blur: () => (selectRef.current as HTMLInputElement)?.blur(),\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n scrollTo: (...args) =>\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n (selectRef.current as HTMLDivElement)?.scrollTo(...args),\n nativeElement: selectRef.current\n }));\n\n const handleMouseEnter = () =>\n !disabled && selected?.length && setIsHover(true);\n\n const handleMouseLeave = () => !disabled && setIsHover(false);\n\n const handleClearInputValue = useCallback(() => {\n if (!autoClearSearchValue) {\n return;\n }\n\n setSearchQuery('');\n\n const inputContainer = selectRef.current?.querySelector(\n \"[content-editable='plaintext-only']\"\n ) as HTMLDivElement;\n\n if (inputContainer) {\n inputContainer.innerText = '';\n }\n }, [autoClearSearchValue]);\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent): void => {\n if (\n selectRef.current &&\n !selectRef.current.contains(event.target as Node)\n ) {\n setIsOpen(open);\n\n if (hasMode) {\n handleClearInputValue();\n }\n }\n };\n\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, [handleClearInputValue, open, hasMode]);\n\n useEffect(() => {\n if (!selectRef.current || !getPopupContainer) {\n return;\n }\n\n const selectBox = selectRef.current.getBoundingClientRect();\n const dropdownHeight = listHeight;\n const windowHeight = window.innerHeight;\n const spaceBelow = windowHeight - selectBox.bottom;\n const spaceAbove = selectBox.top;\n\n let positionStyle: CSSProperties = {\n top: `${selectBox.bottom}px`,\n left: `${selectBox.left}px`,\n width: `${selectBox.width}px`\n };\n\n if (spaceBelow < dropdownHeight && spaceAbove > dropdownHeight) {\n positionStyle = {\n top: `${selectBox.top - dropdownHeight}px`,\n left: `${selectBox.left}px`,\n width: `${selectBox.width}px`\n };\n }\n\n setDropdownPosition(positionStyle);\n }, [listHeight, getPopupContainer]);\n\n const handleSearch = (e: SyntheticBaseEvent) => {\n setSearchQuery(e.target.value as string);\n onSearch?.(e.target.value as string);\n\n if (!isOpen) {\n setIsOpen(!isOpen || open);\n handleClearInputValue();\n }\n };\n\n const handleEnterAddNewTag = () => {\n if (\n asMultiple ||\n (maxCount &&\n selected.length >= maxCount &&\n !selected.includes(searchQuery))\n ) {\n return;\n }\n\n const newOptionValue = searchQuery.trim();\n\n if (!newOptionValue || !hasMode || selected.includes(newOptionValue)) {\n return;\n }\n\n const updatedSelected = [...selected, newOptionValue];\n\n onChange?.(updatedSelected);\n onSelect?.(newOptionValue);\n\n const input = selectRef.current?.querySelector('input');\n\n if (input) {\n input.value = '';\n }\n\n setSelected(updatedSelected);\n handleClearInputValue();\n };\n\n const handleSelect = (\n e: SyntheticBaseEvent,\n optionValue: string,\n option?: OptionType\n ) => {\n if (hasMode) {\n if (\n maxCount &&\n selected.length >= maxCount &&\n !selected.includes(optionValue)\n ) {\n return;\n }\n\n const newSelection = selected.includes(optionValue)\n ? (selected as string[]).filter(item => item !== optionValue)\n : [...selected, optionValue];\n\n setSelected(newSelection);\n onChange?.(newSelection, option);\n\n if (selected.includes(optionValue)) {\n onDeselect?.(optionValue, option);\n } else {\n onSelect?.(optionValue, option);\n }\n } else {\n setIsOpen(open);\n setSelected(optionValue);\n onChange?.(optionValue, option);\n onSelect?.(optionValue, option);\n }\n\n handleClearInputValue();\n };\n\n const handleClear = () => {\n const value = hasMode ? [] : '';\n\n setSelected(value);\n onChange?.('');\n onClear?.();\n\n handleClearInputValue();\n };\n\n const handleRemoveTag = (e: SyntheticBaseEvent) => {\n const updatedSelected = hasMode\n ? (selected as string[]).filter(item => item !== e.target.value)\n : e.target.value;\n\n onChange?.(updatedSelected);\n setSelected(updatedSelected);\n };\n\n const handleOnKeyDown = (\n e: KeyboardEvent<HTMLInputElement> & {\n target: { value: string; innerText: string };\n }\n ) => {\n const timeout = setTimeout(() => {\n e.target.value = e.target.innerText.trim().replace('\\n', '');\n\n setSearchQuery(e.target.value);\n onSearch?.(e.target.value);\n\n if (e.key === 'Enter' && searchQuery.trim() !== '') {\n if (!asTag) {\n e.stopPropagation();\n e.preventDefault();\n\n clearTimeout(timeout);\n\n return;\n }\n\n handleEnterAddNewTag();\n\n e.target.innerText = '';\n }\n\n if (\n e.key === 'Backspace' &&\n (hasMode ? !searchQuery.trim().length : searchQuery.trim().length)\n ) {\n const updatedSelected = hasMode\n ? (selected as string[]).filter(\n item => item !== selected[selected.length - 1]\n )\n : searchQuery.trim();\n\n onChange?.(updatedSelected);\n setSelected(updatedSelected);\n }\n\n clearTimeout(timeout);\n });\n };\n\n const ArrowContainer = useMemo(() => {\n if (!showArrow) {\n return null;\n }\n\n return showSearch && isOpen ? (\n <SearchIcon />\n ) : (\n <span>\n {suffixIcon || (showArrow && <ArrowIcon isOpen={isOpen} />)}\n </span>\n );\n }, [showArrow, showSearch, isOpen, suffixIcon]);\n\n const popupContainer = useMemo(() => {\n return selectRef.current\n ? getPopupContainer?.(selectRef.current)\n : selectRef.current;\n }, [getPopupContainer]);\n\n const extractedOptions = children\n ? (Array.isArray(children) ? children : [children])\n .filter(e => e)\n .map((child: { props: OptionType }) => child.props)\n : options;\n\n const filteredOptions = extractedOptions.filter((option: OptionType) => {\n if (typeof filterOption === 'function') {\n return filterOption(searchQuery, option);\n }\n\n if (filterOption === false) {\n return true;\n }\n\n const valueToCheck = `${\n ['string', 'number'].includes(typeof option.children)\n ? option.children\n : // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n option[optionFilterProp] || option.value\n }`;\n\n return valueToCheck.toLowerCase().includes(searchQuery.toLowerCase());\n });\n\n const handleTriggerClick = () => {\n if (!disabled) {\n setIsOpen(!isOpen);\n }\n\n const searchContent = document.getElementsByClassName(\n `${prefixCls}-tag-container`\n )?.[0] as HTMLDivElement;\n\n if (searchContent) {\n setSearchInputWidth(searchContent.clientWidth - PADDING_TAG_INPUT);\n }\n\n const timeout = setTimeout(() => {\n const searchInput = document.getElementById(\n `${prefixCls}-search-tag-input`\n );\n\n if (searchInput) {\n searchInput?.focus();\n }\n\n clearTimeout(timeout);\n }, 0);\n };\n\n const dataRender = (() => {\n const options = filteredOptions.map(\n ({ children, className = '', ...props }) => {\n const isSelected = hasMode\n ? selected.includes(props.value as string)\n : props.value === selected;\n\n return (\n <Option\n key={`${props.value}`}\n {...props}\n selected={isSelected}\n className={clsx([\n className,\n {\n [`${prefixCls}-focused`]: hasMode\n ? isSelected\n : props.value === selected,\n [`${prefixCls}-disabled`]:\n maxCount && hasMode && !isSelected\n ? selected.length >= maxCount\n : false\n }\n ])}\n onClick={e => {\n if (props.disabled) {\n return;\n }\n\n handleSelect(\n e as MouseEventHandlerSelect,\n props.value as string,\n { children, className, ...props } as OptionType\n );\n }}\n data-value={props.value}\n >\n {children || props.value}\n\n {hasMode && isSelected && (\n <span className={`${prefixCls}-selected-icon`}>\n {menuItemSelectedIcon === true ? (\n <CheckIcon />\n ) : (\n menuItemSelectedIcon\n )}\n </span>\n )}\n </Option>\n );\n }\n );\n\n return dropdownRender ? dropdownRender(options) : options;\n })();\n\n const dropdownContent = !loading && isOpen && (\n <div\n className={clsx([\n `${prefixCls}-dropdown`,\n {\n [placement]: placement,\n [dropdownClassName]: dropdownClassName\n }\n ])}\n style={{\n ...dropdownPosition,\n maxHeight: listHeight,\n ...(['topLeft', 'topRight'].includes(placement)\n ? {\n top:\n -(\n (selectRef.current?.querySelector(`.${prefixCls}-dropdown`)\n ?.clientHeight || listHeight) + PADDING_PLACEMENT\n ) + (selectRef.current?.clientHeight || 0)\n }\n : {})\n }}\n >\n {filterable && (\n <input\n type=\"text\"\n className={`${prefixCls}-search`}\n value={searchQuery}\n onChange={handleSearch}\n placeholder=\"Search...\"\n />\n )}\n\n {!loading && (\n <div\n className={`${prefixCls}-options globalEllipsis`}\n style={{\n maxHeight: listHeight,\n overflowY: 'auto'\n }}\n >\n {asTag && !!searchQuery && (\n <Option\n value={searchQuery}\n className={`${prefixCls}-focused`}\n onClick={e => {\n handleSelect(e as MouseEventHandlerSelect, searchQuery);\n }}\n data-value={searchQuery}\n >\n {searchQuery}\n </Option>\n )}\n\n {filteredOptions.length\n ? dataRender\n : !asTag\n ? notFoundContent || <Empty />\n : null}\n </div>\n )}\n </div>\n );\n\n return (\n <div\n id={id}\n ref={selectRef}\n style={style}\n className={clsx([\n {\n [size]: size,\n noStyle: noStyle,\n [prefixCls]: prefixCls,\n [`${prefixCls}-error`]: error,\n [`${prefixCls}-multi`]: hasMode,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n >\n <div\n onClick={handleTriggerClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n className={`${prefixCls}-trigger`}\n >\n {showSearch ? (\n <div\n style={{\n ...style,\n ...(isOpen ? { maxWidth: `${searchInputWidth}px` } : {}),\n minWidth: `${searchInputWidth}px`\n }}\n className={`${prefixCls}-tag-container`}\n >\n {hasMode &&\n (selected as string[]).map((tag, index) =>\n tagRender ? (\n <div key={`${index}_${tag}`}>\n {tagRender?.({\n label:\n extractedOptions.find(e => e.value === tag)\n ?.children || tag,\n value: tag,\n onClose: handleRemoveTag,\n closable: true\n })}\n </div>\n ) : (\n <Tag\n closable\n value={tag}\n label={\n tag === ''\n ? placeholder\n : extractedOptions.find(e => e.value === tag)\n ?.children || tag\n }\n onClose={handleRemoveTag}\n key={`${index}_${tag}`}\n />\n )\n )}\n\n {isOpen ? (\n <div className={`${prefixCls}-tag`}>\n <div\n onClick={e => {\n if (disabled) {\n e.preventDefault();\n e.stopPropagation();\n\n return;\n }\n }}\n onKeyDown={handleOnKeyDown}\n style={{\n width: 'auto',\n display: 'ruby',\n textAlign: 'center'\n }}\n contentEditable=\"plaintext-only\"\n id={`${prefixCls}-search-tag-input`}\n className={`${prefixCls}-tag-input`}\n />\n </div>\n ) : !hasMode ? (\n <div\n className={`${prefixCls}-input`}\n style={{ opacity: isOpen || selected === '' ? '0.6' : '1' }}\n >\n {selected === ''\n ? placeholder\n : extractedOptions.find(e => e.value === selected)\n ?.children || selected}\n </div>\n ) : null}\n </div>\n ) : !hasMode ? (\n <div\n className={`${prefixCls}-input`}\n onClick={() => !disabled && setIsOpen(!isOpen || open)}\n style={{ opacity: isOpen || selected === '' ? '0.6' : '1' }}\n >\n {selected === ''\n ? placeholder\n : (() => {\n const option = extractedOptions.find(\n e => e.value === selected\n );\n\n return option?.children || option?.value || null;\n })()}\n </div>\n ) : null}\n\n {isHover && !loading ? (\n allowClear && selected ? (\n <button\n className={`${prefixCls}-clear-btn`}\n onClick={handleClear}\n >\n {removeIcon || <ClearIcon />}\n </button>\n ) : (\n <span className={`${prefixCls}-arrow`}>\n {ArrowContainer}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )\n ) : (\n <>\n {!loading && (\n <span className={`${prefixCls}-arrow`}>\n {ArrowContainer}\n {error && feedbackIcons ? <ErrorIcon /> : null}\n </span>\n )}\n\n {loading && (\n <span className={`${prefixCls}-loading`}>\n <LoadingIcon />\n </span>\n )}\n </>\n )}\n </div>\n\n {popupContainer\n ? createPortal(dropdownContent, popupContainer)\n : dropdownContent}\n </div>\n );\n }\n);\n\nSelectComponent.displayName = 'Select';\nconst Select = Object.assign(SelectComponent, { Option });\n\nexport default Select;\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonButtonProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst BUTTON_SKELETON_SIZE = {\n small: `${prefixClsSkeleton}-button-sm`,\n large: `${prefixClsSkeleton}-button-lg`,\n default: ''\n};\n\nconst SkeletonButton: FC<SkeletonButtonProps> = ({\n prefixCls = prefixClsSkeleton,\n style = {},\n active,\n className,\n size = 'default',\n applyElementStyle = true\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}`,\n {\n [`${prefixCls}-element`]: applyElementStyle,\n [`${prefixCls}-active`]: active\n },\n className\n ])}\n >\n <span\n className={clsx([\n `${prefixCls}-button `,\n BUTTON_SKELETON_SIZE[size],\n className\n ])}\n style={style}\n ></span>\n </div>\n );\n};\n\nexport default SkeletonButton\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonAvatarProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nexport const AVATAR_DEFAULT_SIZE = 32;\nexport const AVATAR_GLOBAL_SIZE = 40;\n\nexport const GET_AVATAR_SKELETON_PROPS = (\n avatar: SkeletonAvatarProps | boolean\n): SkeletonAvatarProps => {\n return typeof avatar !== 'boolean'\n ? {\n shape: avatar?.shape || 'circle',\n size: avatar?.size || AVATAR_GLOBAL_SIZE,\n style: avatar?.style || {},\n className: avatar?.className || ''\n }\n : {\n shape: 'circle',\n size: AVATAR_GLOBAL_SIZE\n };\n};\n\nconst SkeletonAvatar: FC<SkeletonAvatarProps> = ({\n prefixCls = prefixClsSkeleton,\n className,\n shape = 'circle',\n style,\n wrapperStyle,\n size = AVATAR_DEFAULT_SIZE,\n active,\n applyElementStyle = true,\n ...props\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}`,\n {\n [`${prefixCls}-element`]: applyElementStyle,\n [`${prefixCls}-active`]: active\n },\n className\n ])}\n style={wrapperStyle}\n {...props}\n >\n <span\n className={clsx([`${prefixCls}-avatar ${prefixCls}-avatar-${shape}`])}\n style={{\n ...(size ? { width: size, height: size, lineHeight: size } : {}),\n ...(style || {})\n }}\n />\n </div>\n );\n};\n\nexport default SkeletonAvatar","import { FC, ReactElement } from 'react';\nimport { SkeletonImageProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst CUSTOm_ICON_SIZE = 48;\n\nconst SkeletonImage: FC<SkeletonImageProps> = ({\n prefixCls = prefixClsSkeleton,\n className,\n style = {}\n}): ReactElement => {\n return (\n <div className={`${prefixCls}-image ${className || ''}`} style={style}>\n <span\n className={`${prefixCls}-icon`}\n style={{\n fontSize: `${style?.width || CUSTOm_ICON_SIZE}px`,\n color: '#bfbfbf',\n position: 'relative',\n width: '100%',\n height: '100%',\n ...(style?.backgroundColor\n ? { backgroundColor: style?.backgroundColor }\n : {})\n }}\n >\n <svg\n viewBox=\"0 0 1098 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n >\n <path\n d=\"M365.714286 329.142857q0 45.714286-32.036571 77.677714t-77.677714 32.036571-77.677714-32.036571-32.036571-77.677714 32.036571-77.677714 77.677714-32.036571 77.677714 32.036571 32.036571 77.677714zM950.857143 548.571429l0 256-804.571429 0 0-109.714286 182.857143-182.857143 91.428571 91.428571 292.571429-292.571429zM1005.714286 146.285714l-914.285714 0q-7.460571 0-12.873143 5.412571t-5.412571 12.873143l0 694.857143q0 7.460571 5.412571 12.873143t12.873143 5.412571l914.285714 0q7.460571 0 12.873143-5.412571t5.412571-12.873143l0-694.857143q0-7.460571-5.412571-12.873143t-12.873143-5.412571zM1097.142857 164.571429l0 694.857143q0 37.741714-26.843429 64.585143t-64.585143 26.843429l-914.285714 0q-37.741714 0-64.585143-26.843429t-26.843429-64.585143l0-694.857143q0-37.741714 26.843429-64.585143t64.585143-26.843429l914.285714 0q37.741714 0 64.585143 26.843429t26.843429 64.585143z\"\n className={`${prefixCls}-image-path`}\n ></path>\n </svg>\n </span>\n </div>\n );\n};\n\nexport default SkeletonImage\n","import { FC, ReactElement } from 'react';\nimport { clsx } from '../../../helpers';\nimport { SkeletonInputProps } from '../../../types/skeleton';\nimport { prefixClsSkeleton } from '../../../utils';\nimport './style.css';\n\nconst INPUT_SKELETON_SIZE = {\n small: `${prefixClsSkeleton}-input-sm`,\n large: `${prefixClsSkeleton}-input-lg`,\n default: ''\n};\n\nconst SkeletonInput: FC<SkeletonInputProps> = ({\n prefixCls = prefixClsSkeleton,\n style,\n block,\n active,\n className,\n size = 'default'\n}): ReactElement => {\n return (\n <div\n className={clsx([\n `${prefixCls}-element`,\n {\n [`${prefixCls}-active`]: active,\n [`${prefixCls}-block`]: block\n },\n className\n ])}\n >\n <span\n className={`${prefixCls}-input ${INPUT_SKELETON_SIZE[size]} ${\n className || ''\n }`}\n style={style}\n />\n </div>\n );\n};\n\nexport default SkeletonInput","import { ReactElement } from 'react';\nimport { clsx, createArray } from '../../helpers';\nimport { SkeletonProps } from '../../types/skeleton';\nimport { prefixClsSkeleton } from '../../utils';\nimport { SkeletonButton } from './Button';\nimport { SkeletonAvatar } from './Avatar';\nimport { GET_AVATAR_SKELETON_PROPS } from './Avatar/Avatar';\nimport { SkeletonImage } from './Image';\nimport { SkeletonInput } from './Input';\nimport './style.css';\n\nconst PARAGRAPH_AVATAR_ROWS = 2;\nconst PARAGRAPH_DEFAULT_ROWS = 3;\n\nconst Skeleton = ({\n prefixCls = prefixClsSkeleton,\n active,\n className,\n style,\n avatar,\n paragraph,\n round,\n title,\n teamLogo = true\n}: SkeletonProps): ReactElement => {\n const GET_TITLE_SKELETON_PROPS =\n typeof title !== 'boolean'\n ? {\n style: { width: title?.width, ...title?.style },\n className: title?.className || ''\n }\n : {};\n\n const PARAGRAPH_ROWS = avatar\n ? PARAGRAPH_AVATAR_ROWS\n : PARAGRAPH_DEFAULT_ROWS;\n\n const HAS_PHARAGRAPH =\n typeof paragraph === 'boolean' || !paragraph\n ? PARAGRAPH_ROWS\n : paragraph?.rows ?? PARAGRAPH_ROWS;\n\n return (\n <div\n className={clsx([\n prefixCls,\n {\n [`${prefixCls}__withAvatar`]: avatar,\n [`${prefixCls}-active`]: active,\n [`${prefixCls}-round`]: round\n },\n className\n ])}\n style={style}\n >\n {avatar && teamLogo && (\n <div className={`${prefixCls}__header`}>\n <SkeletonAvatar {...GET_AVATAR_SKELETON_PROPS(avatar)} />\n </div>\n )}\n\n <div className={`${prefixCls}-content`}>\n <h3\n className={clsx([\n `${prefixCls}-title ${GET_TITLE_SKELETON_PROPS.className}`,\n { [`${prefixCls}-title-avatar`]: avatar }\n ])}\n style={GET_TITLE_SKELETON_PROPS.style}\n />\n\n {paragraph !== false && (\n <ul\n className={`${prefixCls}-paragraph`}\n style={{\n ...(typeof paragraph !== 'boolean' && paragraph\n ? paragraph.style\n : {})\n }}\n >\n {createArray(HAS_PHARAGRAPH).map(key => (\n <li key={key}></li>\n ))}\n </ul>\n )}\n </div>\n </div>\n );\n};\n\nSkeleton.Image = SkeletonImage;\nSkeleton.Input = SkeletonInput;\nSkeleton.Avatar = SkeletonAvatar;\nSkeleton.Button = SkeletonButton;\n\nexport default Skeleton","import { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\ntype ButtonBaseProps = ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n};\n\nconst ButtonBase = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonBaseProps): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default ButtonBase;\n","'use client';\n\nimport { useEffect, useMemo, useState } from 'react';\nimport ButtonBase from './Button';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\n\nconst MyButton = (props: ButtonProps) => {\n const {\n loading = false,\n icon,\n prefixCls = prefixClsButton,\n } = props;\n\n const [innerLoading, setInnerLoading] = useState(false);\n\n useEffect(() => {\n if (typeof loading === 'boolean') {\n setInnerLoading(loading);\n } else if (typeof loading === 'object' && loading.delay) {\n const timeout = setTimeout(() => setInnerLoading(true), loading.delay);\n return () => clearTimeout(timeout);\n } else {\n setInnerLoading(!!loading);\n }\n }, [loading]);\n\n const iconNode = useMemo(() => {\n return innerLoading\n ? (typeof loading === 'object' && loading.icon) || (\n <span className={`${prefixCls}-spinner`}></span>\n )\n : icon;\n }, [icon, innerLoading, loading, prefixCls]);\n\n return <ButtonBase {...props} isLoading={innerLoading} iconNode={iconNode} />;\n};\n\nexport default MyButton;\n","'use client';\n\nimport { useRef, useState } from 'react';\nimport { clsx } from '../../helpers';\nimport { RuleType } from '../../types';\nimport {\n RcFile,\n UploadChangeParam,\n UploadFile,\n UploadProps\n} from '../../types/upload';\nimport { prefixClsUpload } from '../../utils';\nimport './style.css';\nimport { StampleIcon, TrashIcon } from '../Icons/Icons';\n\nconst IMAGE_SIZE = 40;\nconst IMAGE_PROGRESS_PERCENT = 100;\n\nconst Upload = ({\n prefixCls = prefixClsUpload,\n multiple = false,\n style,\n className,\n onChange,\n action,\n name = 'file',\n method = 'POST',\n headers,\n directory,\n beforeUpload,\n rootClassName,\n onRemove,\n disabled,\n withCredentials,\n openFileDialogOnClick = true,\n maxCount,\n fileList: controlledFileList,\n customRequest,\n accept,\n listType = 'text',\n showUploadList = true,\n children,\n noStyle,\n defaultFileList\n}: UploadProps) => {\n const uploadRef = useRef<HTMLInputElement>(null);\n const [fileList, setFileList] = useState<UploadFile<RuleType>[]>(() =>\n (controlledFileList || defaultFileList || []).map((file, idx) => ({\n ...file,\n uid: file.uid || `${Date.now()}-${idx}`,\n status: file.status || 'done',\n percent: file.percent || IMAGE_PROGRESS_PERCENT\n }))\n );\n\n const updateFileList = (newList: UploadFile<RuleType>[]) => {\n setFileList(newList);\n\n if (onChange) {\n onChange({\n fileList: newList,\n file: newList[0] || {}\n } as UploadChangeParam);\n }\n };\n\n const handleFileChange = async (\n event: React.ChangeEvent<HTMLInputElement>\n ) => {\n const rawFiles: File[] = Array.from(event.target.files || []);\n let uploadFiles: UploadFile<RuleType>[] = rawFiles.map((file, i) => ({\n uid: `${Date.now()}-${i}`,\n name: file.name,\n size: file.size,\n type: file.type,\n status: 'uploading',\n percent: 0,\n originFileObj: file\n }));\n\n if (beforeUpload) {\n const filtered: UploadFile<RuleType>[] = [];\n\n for (let i = 0; i < uploadFiles.length; i++) {\n const file = uploadFiles[i].originFileObj as RcFile;\n const result = await beforeUpload(file, rawFiles);\n\n if (result === false) {\n continue;\n }\n\n filtered.push(uploadFiles[i]);\n }\n\n uploadFiles = filtered;\n }\n\n const newList = (\n multiple ? [...fileList, ...uploadFiles] : uploadFiles\n ).slice(0, maxCount);\n\n updateFileList(newList);\n\n uploadFiles.forEach(file => {\n const rcFile = file.originFileObj as RcFile;\n\n const updateProgress = (percent: number) => {\n file.percent = percent;\n updateFileList([...newList]);\n };\n\n const markSuccess = () => {\n file.status = 'done';\n file.percent = 100;\n updateFileList([...newList]);\n };\n\n const markError = () => {\n file.status = 'error';\n updateFileList([...newList]);\n };\n\n if (customRequest) {\n customRequest({\n file: rcFile,\n onSuccess: markSuccess,\n onError: markError,\n onProgress: event => {\n const percent = Math.round(\n (event.loaded / (event.total || event.loaded)) *\n IMAGE_PROGRESS_PERCENT\n );\n\n updateProgress(percent);\n }\n });\n } else if (typeof action === 'string') {\n const formData = new FormData();\n formData.append(name, rcFile);\n\n fetch(action, {\n method,\n body: formData,\n headers,\n credentials: withCredentials ? 'include' : 'same-origin'\n })\n .then(res => {\n if (!res.ok) {\n throw new Error('Upload failed');\n }\n\n return res.json();\n })\n .then(markSuccess)\n .catch(markError);\n } else if (typeof action === 'function') {\n action(rcFile);\n markSuccess();\n } else {\n markSuccess();\n }\n });\n\n if (uploadRef.current) {\n uploadRef.current.value = '';\n }\n };\n\n const handleRemove = (uid: string) => {\n const filtered: UploadFile<RuleType>[] = [];\n\n let removedFile: UploadFile<RuleType> | undefined = undefined;\n\n fileList.forEach(file => {\n if (file.uid !== uid) {\n filtered.push(file);\n } else {\n removedFile = file;\n }\n });\n\n updateFileList(filtered);\n\n if (removedFile) {\n onRemove?.(removedFile);\n }\n };\n\n const handleClick = () => {\n if (!disabled && openFileDialogOnClick && uploadRef.current) {\n uploadRef.current.click();\n }\n };\n\n return (\n <div\n className={clsx([\n `${prefixCls}-wrapper`,\n className,\n rootClassName,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled\n }\n ])}\n style={style}\n >\n <span\n className={clsx([`${prefixCls}`, `${prefixCls}-${listType}`])}\n onClick={handleClick}\n >\n {children}\n <input\n type=\"file\"\n ref={uploadRef}\n accept={accept}\n multiple={multiple}\n onChange={handleFileChange}\n className={`${prefixCls}-input`}\n disabled={disabled}\n {...(directory\n ? {\n directory: true,\n webkitdirectory: true\n }\n : {})}\n />\n </span>\n\n {showUploadList && fileList.length > 0 && (\n <ul className={`${prefixCls}-list ${prefixCls}-list-${listType}`}>\n {fileList.map(file => (\n <li\n key={file.uid}\n className={`${prefixCls}-item ${prefixCls}-item-${file.status}`}\n >\n <span\n className={`${prefixCls}-remove`}\n onClick={() => handleRemove(file.uid)}\n >\n {listType === 'picture' && (file.originFileObj || file.url) ? (\n // eslint-disable-next-line @next/next/no-img-element\n <img\n width={IMAGE_SIZE}\n height={IMAGE_SIZE}\n alt={file.name}\n src={file.url || URL.createObjectURL(file.originFileObj)}\n className={`${prefixCls}-item-thumbnail`}\n />\n ) : (\n <StampleIcon />\n )}\n </span>\n <div style={{ width: '100%' }}>\n <div\n className={`${prefixCls}-item-title`}\n style={{\n ...(file.status === 'uploading' ? { marginBottom: 12 } : {})\n }}\n >\n <span\n className={`${prefixCls}-item-remove-icon`}\n onClick={() => handleRemove(file.uid)}\n style={{ cursor: 'pointer', marginLeft: 'auto' }}\n role=\"button\"\n aria-label=\"Remove file\"\n >\n <TrashIcon />\n </span>\n </div>\n {file.status === 'uploading' && (\n <>\n <div className={`${prefixCls}-item-progress-line`} />\n <div\n className={`${prefixCls}-item-progress-line-percent`}\n style={{ width: `${file.percent}%` }}\n />\n </>\n )}\n </div>\n </li>\n ))}\n </ul>\n )}\n </div>\n );\n};\n\nexport default Upload;\n","'use client';\n\nimport {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport { prefixClsCheckbox } from '../../utils';\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n defaultChecked = false,\n checked,\n style,\n disabled = false,\n onChange,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n value = false,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={handleClick}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n );\n }\n);\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Checkbox;\n","import { useContext, useEffect, useState } from 'react';\nimport { FormContext } from '@/components/Form/Form';\nimport { RuleType } from '../types';\nimport { FormInstance } from '../types/form';\n\ntype UseWatchProps = {\n name?: string;\n defaultValue?: RuleType;\n form?: FormInstance;\n};\n\nexport const useWatch = ({ name, defaultValue, form }: UseWatchProps) => {\n const formContext = useContext(FormContext);\n const formInstance = form || formContext;\n\n if (!formInstance) {\n throw new Error(\n 'useWatch must be used within a Form or with a form instance.'\n );\n }\n\n const [value, setValue] = useState(() => {\n return name\n ? formInstance.getFieldValue(name) ?? defaultValue\n : formInstance.getFieldsValue() ?? defaultValue;\n });\n\n useEffect(() => {\n if (!name) {\n const unsubscribe = formInstance.subscribeToForm(setValue);\n\n return () => unsubscribe();\n }\n\n const unsubscribe = formInstance.subscribeToField(name, setValue);\n\n return () => unsubscribe();\n }, [name, formInstance]);\n\n return value;\n};\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","useForm","initialValues","onFieldsChange","onValuesChange","touchedFieldsRef","useRef","Set","rulesRef","warningsRef","formRef","fieldInstancesRef","isReseting","setIsReseting","useState","errors","setErrors","fieldSubscribers","formSubscribers","getFieldInstance","name","current","getFieldValue","getFieldsValue","nameList","reduce","acc","key","getFieldError","getFieldWarning","getFieldsError","Object","entries","map","err","setFieldValue","value","reset","undefined","includes","add","length","validateField","then","allValues","forEach","callback","setFieldsValue","values","setFields","fields","Array","isArray","isFieldTouched","has","isFieldsTouched","allFieldsTouched","size","every","some","isFieldValidating","registerField","rules","fieldErrors","fieldWarnings","Promise","all","flat","rule","formInstance","required","push","message","min","String","max","pattern","test","warningPattern","warningMessage","validator","error","Error","prev","validateFields","fieldsToValidate","keys","results","valid","resetFields","delete","clear","submit","subscribeToField","filter","cb","subscribeToForm","subscribeToFields","names","fieldCallbacks","updatedValues","unsubscribe","prefixClsForm","prefixClsFormItem","prefixClsEmpty","prefixClsInput","prefixClsSelect","prefixClsCheckbox","prefixClsRadio","prefixClsTextArea","prefixClsUpload","prefixClsDatePicker","prefixClsRangePicker","prefixClsTimePicker","prefixClsButton","prefixClsSkeleton","parseValue","isNaN","Number","createArray","from","_","index","clsx","args","flatMap","arg","split","Boolean","join","REF_CLIENT_HEIGHT","FormItem","prefixCls","label","children","className","layout","valuePropName","dependencies","initialValue","feedbackIcons","props","formContext","useContext","FormContext","errorRef","childrenList","useMemo","useEffect","clientHeight","position","marginTop","isRequired","errorMessage","_jsxs","noStyle","htmlFor","_jsx","Children","child","isValidElement","Fragment","childProps","fieldValue","_createElement","FormItemChildComponent","normalize","onChange","wasNormalize","setWasNormalize","handleChange","e","option","rawValue","target","prevValue","timeout","setTimeout","querySelector","focus","clearTimeout","displayName","createContext","Form","form","onFinish","onFinishFailed","rest","internalForm","handleSubmit","preventDefault","errorFields","Provider","onSubmit","Item","ClearIcon","width","height","viewBox","fill","xmlns","d","stroke","strokeWidth","strokeLinecap","ArrowIcon","isOpen","strokeLinejoin","transform","LoadingIcon","focusable","CheckIcon","SearchIcon","CalendarIcon","SuccessIcon","ErrorIcon","DateDistanceIcon","TimeIcon","StampleIcon","TrashIcon","SpinerIcon","RangePicker","placeholder","disabled","format","prefix","allowClear","inputReadOnly","picker","locale","disabledDate","separator","defaultValue","bordered","containerRef","setIsOpen","selectedDates","setSelectedDates","hoveredDate","setHoveredDate","currentMonth","setCurrentMonth","Date","getMonth","currentYear","setCurrentYear","getFullYear","viewMode","setViewMode","localeMonths","shortMonths","i","toLocaleString","month","localeWeekdays","shortWeekDays","handleClickOutside","event","contains","addEventListener","removeEventListener","handleSelect","date","start","end","begin","toUTCString","formatDate","isMonthDisabled","to","isYearDisabled","year","replace","toString","padStart","getDate","isInRange","renderMonthYearSelector","monthOffset","baseYear","baseMonth","onClick","y","m","MONTH_LENGTH","renderCalendar","baseDate","firstDay","getDay","daysInMonth","prevMonthDays","prevMonth","totalDays","currentMonthDays","totalDisplayed","remaining","NEXT_DAYS_COUNT_AS_CURRENT_MUNTH","nextMonthDays","days","day","isSelected","toDateString","inRange","isSameMonth","onMouseEnter","NUMBER_SIX","handleClear","noBordered","readOnly","INPUT_SIZE","CONTENT_PADDING","DatePickerComponent","onCalendarChange","placement","getPopupContainer","showToday","suffixIcon","defaultOpen","initialDate","popupContainerRef","placementPossition","setPlacementPossition","DateNow","selectedDate","setSelectedDate","selectedDatePlaceholder","setSelectedDatePlaceholder","controller","AbortController","calculateDatePickerPopupPossition","signal","abort","firstDayOfMonth","formatted","range","clearSelection","datePickerContainerHeight","datePickerPossitionFromTop","getBoundingClientRect","top","datePickerPossitionFromBottom","window","innerHeight","bottom","datePickerContainerPopupHeight","nextMonth","prevMonthYear","nextMonthYear","nextDaysCount","opacity","clearIcon","show","idx","gridColumn","today","DatePicker","assign","HOURS","TIME_OPTION_PADDING","MINUTES_AND_SECONDS","ADD_EMPTY_SECTION_COUNT","pad","num","TimePicker","disabledTime","propValue","onBlur","onSelect","showNow","open","setOpen","innerValue","setInnerValue","tempValue","setTempValue","inputRef","popupRef","hourRef","minuteRef","secondRef","hour","minute","second","getTimeParts","scrollToTop","getHours","getMinutes","getSeconds","getDisabled","disabledHours","disabledMinutes","disabledSeconds","selectedIndex","el","querySelectorAll","scrollTo","offsetTop","behavior","updateTempValue","newDate","setHours","onSelectHour","h","auto","onSelectMinute","onSelectSecond","s","stopPropagation","handleShowNow","now","handleOkButton","handleOnChange","inputVal","trim","timeRegex","match","hStr","mStr","sStr","parseInt","renderOptions","hours","minutesSeconds","selectedHour","selectedMinute","selectedSecond","currentHour","currentMinute","userSelect","cursor","source","Textarea","forwardRef","autoSize","onPressEnter","onResize","styles","status","rootClassName","variant","inputValue","setInputValue","textareaRef","textarea","scrollHeight","clientWidth","handleKeyDown","onKeyDown","InputComponent","suffix","addonAfter","addonBefore","iconRender","internalValue","setInternalValue","iconRenderVisible","setIconRenderVisible","useImperativeHandle","input","blur","nativeElement","setSelectionRange","handleOnKeyDown","icon","Input","TextArea","RadioButton","checked","Radio","RadioGroup","id","buttonStyle","block","options","selectedValue","renderChildren","optionValue","optionLabel","cloneElement","RadioComponent","title","defaultChecked","onFocus","onMouseLeave","Group","Button","Option","render","selected","handleClick","Tag","onClose","closable","color","handleOnClick","backgroundColor","_Fragment","EmptyContent","description","cx","cy","rx","ry","LIST_HEIGHT","PADDING_PLACEMENT","PADDING_TAG_INPUT","SelectComponent","searchValue","autoClearSearchValue","filterOption","optionFilterProp","listHeight","menuItemSelectedIcon","mode","maxCount","loading","filterable","dropdownClassName","onSearch","onDeselect","onClear","showSearch","showArrow","notFoundContent","tagRender","dropdownRender","removeIcon","asTag","asMultiple","hasMode","checkModeInitialValue","isHover","setIsHover","selectRef","searchInputWidth","setSearchInputWidth","searchQuery","setSearchQuery","dropdownPosition","setDropdownPosition","setSelected","handleMouseEnter","handleMouseLeave","handleClearInputValue","useCallback","inputContainer","innerText","selectBox","dropdownHeight","windowHeight","spaceBelow","spaceAbove","positionStyle","left","handleSearch","handleEnterAddNewTag","newOptionValue","updatedSelected","newSelection","item","handleRemoveTag","ArrowContainer","popupContainer","extractedOptions","filteredOptions","valueToCheck","toLowerCase","handleTriggerClick","searchContent","getElementsByClassName","searchInput","getElementById","dataRender","dropdownContent","maxHeight","overflowY","Empty","maxWidth","minWidth","tag","find","display","textAlign","contentEditable","createPortal","Select","BUTTON_SKELETON_SIZE","small","large","default","SkeletonButton","active","applyElementStyle","AVATAR_DEFAULT_SIZE","AVATAR_GLOBAL_SIZE","GET_AVATAR_SKELETON_PROPS","avatar","shape","SkeletonAvatar","wrapperStyle","lineHeight","CUSTOm_ICON_SIZE","SkeletonImage","fontSize","INPUT_SKELETON_SIZE","SkeletonInput","PARAGRAPH_AVATAR_ROWS","PARAGRAPH_DEFAULT_ROWS","Skeleton","paragraph","round","teamLogo","GET_TITLE_SKELETON_PROPS","PARAGRAPH_ROWS","HAS_PHARAGRAPH","rows","Image","Avatar","ButtonBase","htmlType","classNames","customClassNames","iconPosition","ghost","danger","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","MyButton","innerLoading","setInnerLoading","delay","IMAGE_SIZE","IMAGE_PROGRESS_PERCENT","Upload","multiple","action","method","headers","directory","beforeUpload","onRemove","withCredentials","openFileDialogOnClick","fileList","controlledFileList","customRequest","accept","listType","showUploadList","defaultFileList","uploadRef","setFileList","file","uid","percent","updateFileList","newList","handleFileChange","rawFiles","files","uploadFiles","originFileObj","filtered","result","slice","rcFile","updateProgress","markSuccess","markError","onSuccess","onError","onProgress","Math","loaded","total","formData","FormData","append","fetch","body","credentials","res","ok","json","catch","handleRemove","removedFile","click","webkitdirectory","url","alt","src","URL","createObjectURL","marginBottom","marginLeft","role","Checkbox","onKeyPress","tabIndex","autoFocus","isChecked","internalChecked","setInternalChecked","useWatch","setValue"],"mappings":";;;;AAAA,SAASA,WAAWA,CAACC,GAAG,EAAEC,GAAG,EAAE;EAC7B,IAAKA,GAAG,KAAK,KAAK,CAAC,EAAGA,GAAG,GAAG,EAAE,CAAA;AAC9B,EAAA,IAAIC,QAAQ,GAAGD,GAAG,CAACC,QAAQ,CAAA;AAE3B,EAAA,IAAI,CAACF,GAAG,IAAI,OAAOG,QAAQ,KAAK,WAAW,EAAE;AAAE,IAAA,OAAA;AAAQ,GAAA;AAEvD,EAAA,IAAIC,IAAI,GAAGD,QAAQ,CAACC,IAAI,IAAID,QAAQ,CAACE,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AACpE,EAAA,IAAIC,KAAK,GAAGH,QAAQ,CAACI,aAAa,CAAC,OAAO,CAAC,CAAA;EAC3CD,KAAK,CAACE,IAAI,GAAG,UAAU,CAAA;EAEvB,IAAIN,QAAQ,KAAK,KAAK,EAAE;IACtB,IAAIE,IAAI,CAACK,UAAU,EAAE;MACnBL,IAAI,CAACM,YAAY,CAACJ,KAAK,EAAEF,IAAI,CAACK,UAAU,CAAC,CAAA;AAC3C,KAAC,MAAM;AACLL,MAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC,CAAA;AACzB,KAAA;AACF,GAAC,MAAM;AACLF,IAAAA,IAAI,CAACO,WAAW,CAACL,KAAK,CAAC,CAAA;AACzB,GAAA;EAEA,IAAIA,KAAK,CAACM,UAAU,EAAE;AACpBN,IAAAA,KAAK,CAACM,UAAU,CAACC,OAAO,GAAGb,GAAG,CAAA;AAChC,GAAC,MAAM;IACLM,KAAK,CAACK,WAAW,CAACR,QAAQ,CAACW,cAAc,CAACd,GAAG,CAAC,CAAC,CAAA;AACjD,GAAA;AACF;;;;;ACZMe,MAAAA,OAAO,GAAGA,CACdC,aAA2C,GAAA,EAAE,EAC7CC,cAAqD,EACrDC,cAGS,KACO;EAChB,MAAMC,gBAAgB,GAAGC,MAAM,CAAC,IAAIC,GAAG,EAAU,CAAC,CAAA;AAClD,EAAA,MAAMC,QAAQ,GAAGF,MAAM,CAA4C,EAAE,CAAC,CAAA;AACtE,EAAA,MAAMG,WAAW,GAAGH,MAAM,CAA2B,EAAE,CAAC,CAAA;EAExD,MAAMI,OAAO,GAAGJ,MAAM,CAA4B;IAAE,GAAGJ,aAAAA;AAAe,GAAA,CAAC,CAAA;AACvE,EAAA,MAAMS,iBAAiB,GAAGL,MAAM,CAAoC,EAAE,CAAC,CAAA;EAEvE,MAAM,CAACM,UAAU,EAAEC,aAAa,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACnD,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGF,QAAQ,CAA2B,EAAE,CAAC,CAAA;AAElE,EAAA,MAAMG,gBAAgB,GAAGX,MAAM,CAE7B,EAAE,CAAC,CAAA;AAEL,EAAA,MAAMY,eAAe,GAAGZ,MAAM,CAE5B,EAAE,CAAC,CAAA;EAEL,SAASa,gBAAgBA,CAACC,IAAY,EAAA;AACpC,IAAA,OAAOT,iBAAiB,CAACU,OAAO,CAACD,IAAI,CAAC,IAAI,IAAI,CAAA;AAChD,GAAA;EAEA,SAASE,aAAaA,CAACF,IAAY,EAAA;AACjC,IAAA,OAAOV,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,CAAA;AAC9B,GAAA;EAEA,SAASG,cAAcA,CAACC,QAAmB,EAAA;IACzC,IAAI,CAACA,QAAQ,EAAE;MACb,OAAO;AAAE,QAAA,GAAGd,OAAO,CAACW,OAAAA;OAAS,CAAA;AAC/B,KAAA;IAEA,OAAOG,QAAQ,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAI;MAClCD,GAAG,CAACC,GAAG,CAAC,GAAGjB,OAAO,CAACW,OAAO,CAACM,GAAG,CAAC,CAAA;AAE/B,MAAA,OAAOD,GAAG,CAAA;KACX,EAAE,EAA+B,CAAC,CAAA;AACrC,GAAA;EAEA,SAASE,aAAaA,CAACR,IAAY,EAAA;AACjC,IAAA,OAAOL,MAAM,CAACK,IAAI,CAAC,IAAI,EAAE,CAAA;AAC3B,GAAA;EAEA,SAASS,eAAeA,CAACT,IAAY,EAAA;AACnC,IAAA,OAAOX,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,IAAI,EAAE,CAAA;AACxC,GAAA;EAEA,SAASU,cAAcA,GAAA;AACrB,IAAA,OAAOC,MAAM,CAACC,OAAO,CAACjB,MAAM,CAAC,CAACkB,GAAG,CAAC,CAAC,CAACb,IAAI,EAAEc,GAAG,CAAC,MAAM;MAAEd,IAAI;AAAEL,MAAAA,MAAM,EAAEmB,GAAAA;AAAG,KAAE,CAAC,CAAC,CAAA;AAC7E,GAAA;EAEA,SAASC,aAAaA,CACpBf,IAAY,EACZgB,KAAgB,EAChBrB,MAAiB,EACjBsB,KAAe,EAAA;IAEf,IACE,CAACA,KAAK,KACL,CAACC,SAAS,EAAE,IAAI,CAAC,CAACC,QAAQ,CAACH,KAAK,CAAC,IAAI1B,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,KAAKgB,KAAK,CAAC,EACtE;AACA,MAAA,OAAA;AACF,KAAA;AAEA1B,IAAAA,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGgB,KAAK,CAAA;AAC7B/B,IAAAA,gBAAgB,CAACgB,OAAO,CAACmB,GAAG,CAACpB,IAAI,CAAC,CAAA;AAElC,IAAA,IAAI,CAACL,MAAM,EAAE0B,MAAM,EAAE;AACnBC,MAAAA,aAAa,CAACtB,IAAI,CAAC,CAACuB,IAAI,CAAC,MAAK;AAC5B,QAAA,MAAMC,SAAS,GAAGrB,cAAc,EAAE,CAAA;AAClCN,QAAAA,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,EAAEyB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACV,KAAK,CAAC,CAAC,CAAA;QACpElB,eAAe,CAACG,OAAO,CAACwB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACF,SAAS,CAAC,CAAC,CAAA;AAEhE,QAAA,IAAIxC,cAAc,EAAE;AAClBA,UAAAA,cAAc,CAAC;AAAE,YAAA,CAACgB,IAAI,GAAGgB,KAAAA;WAAO,EAAEQ,SAAS,CAAC,CAAA;AAC9C,SAAA;AAEA,QAAA,IAAIzC,cAAc,EAAE;AAClBA,UAAAA,cAAc,CAAC,CAAC;YAAEiB,IAAI;AAAEgB,YAAAA,KAAAA;AAAK,WAAE,CAAC,CAAC,CAAA;AACnC,SAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLpB,MAAAA,SAAS,CAAC;AAAE,QAAA,CAACI,IAAI,GAAGL,MAAAA;AAAQ,OAAA,CAAC,CAAA;AAC/B,KAAA;AACF,GAAA;EAEA,SAASgC,cAAcA,CAACC,MAA0C,EAAA;IAChEjB,MAAM,CAACC,OAAO,CAACgB,MAAM,CAAC,CAACH,OAAO,CAAC,CAAC,CAACzB,IAAI,EAAEgB,KAAK,CAAC,KAC3CD,aAAa,CAACf,IAAI,EAAEgB,KAAkB,CAAC,CACxC,CAAA;AACH,GAAA;EAEA,SAASa,SAASA,CAACC,MAAmB,EAAA;IACpCA,MAAM,CAACL,OAAO,CAAC,CAAC;MAAEzB,IAAI;MAAEgB,KAAK;AAAErB,MAAAA,MAAAA;KAAQ,KACrCoB,aAAa,CAACgB,KAAK,CAACC,OAAO,CAAChC,IAAI,CAAC,GAAGA,IAAI,CAAC,CAAC,CAAC,GAAGA,IAAI,EAAEgB,KAAK,EAAErB,MAAM,CAAC,CACnE,CAAA;AACH,GAAA;EAEA,SAASsC,cAAcA,CAACjC,IAAY,EAAA;AAClC,IAAA,OAAOf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAA;AAC3C,GAAA;AAEA,EAAA,SAASmC,eAAeA,CAAC/B,QAAmB,EAAEgC,gBAAgB,GAAG,KAAK,EAAA;IACpE,IAAI,CAAChC,QAAQ,EAAE;AACb,MAAA,OAAOnB,gBAAgB,CAACgB,OAAO,CAACoC,IAAI,GAAG,CAAC,CAAA;AAC1C,KAAA;AAEA,IAAA,OAAOD,gBAAgB,GACnBhC,QAAQ,CAACkC,KAAK,CAACtC,IAAI,IAAIf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAC,GAC1DI,QAAQ,CAACmC,IAAI,CAACvC,IAAI,IAAIf,gBAAgB,CAACgB,OAAO,CAACiC,GAAG,CAAClC,IAAI,CAAC,CAAC,CAAA;AAC/D,GAAA;EAEA,SAASwC,iBAAiBA,CAACxC,IAAY,EAAA;IACrC,OAAO,CAAC,CAACA,IAAI,CAAA;AACf,GAAA;AAEA,EAAA,SAASyC,aAAaA,CAACzC,IAAY,EAAE0C,QAAsB,EAAE,EAAA;AAC3D,IAAA,IAAI,EAAE1C,IAAI,IAAIV,OAAO,CAACW,OAAO,CAAC,EAAE;MAC9BX,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGlB,aAAa,GAAGkB,IAAI,CAAC,CAAA;AAC/C,KAAA;AAEAZ,IAAAA,QAAQ,CAACa,OAAO,CAACD,IAAI,CAAC,GAAG0C,KAAK,CAAA;AAChC,GAAA;EAEA,eAAepB,aAAaA,CAACtB,IAAY,EAAA;AACvC,IAAA,MAAMgB,KAAK,GAAG1B,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,CAAA;IACnC,MAAM0C,KAAK,GAAGtD,QAAQ,CAACa,OAAO,CAACD,IAAI,CAAC,IAAI,EAAE,CAAA;IAC1C,MAAM2C,WAAW,GAAa,EAAE,CAAA;IAChC,MAAMC,aAAa,GAAa,EAAE,CAAA;AAElC,IAAA,MAAMC,OAAO,CAACC,GAAG,CACf,CAACJ,KAAK,CAAC,CAACK,IAAI,CAAC,CAAC,CAAC,CAAClC,GAAG,CAAC,MAAOmC,IAAe,IAAI;MAC5CA,IAAI,GAAG,OAAOA,IAAI,KAAK,UAAU,GAAGA,IAAI,CAACC,YAAY,CAAC,GAAGD,IAAI,CAAA;AAE7D,MAAA,IACEA,IAAI,CAACE,QAAQ,KACZlC,KAAK,KAAKE,SAAS,IAClBF,KAAK,KAAK,IAAI,IACdA,KAAK,KAAK,EAAE,IACXe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,IAAI,CAACA,KAAK,CAACK,MAAO,CAAC,EAC1C;QACAsB,WAAW,CAACQ,IAAI,CAACH,IAAI,CAACI,OAAO,IAAI,wBAAwB,CAAC,CAAA;AAC5D,OAAA;AAEA,MAAA,IACE,CAAC,OAAOpC,KAAK,KAAK,QAAQ,IACxB,OAAOA,KAAK,KAAK,QAAQ,IACzBe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,KACtBgC,IAAI,CAACK,GAAG,KAAKnC,SAAS,IACtBoC,MAAM,CAACtC,KAAK,CAAC,CAACK,MAAM,GAAG2B,IAAI,CAACK,GAAG,EAC/B;AACAV,QAAAA,WAAW,CAACQ,IAAI,CACdH,IAAI,CAACI,OAAO,IAAI,CAAA,iBAAA,EAAoBJ,IAAI,CAACK,GAAG,CAAA,WAAA,CAAa,CAC1D,CAAA;AACH,OAAA;AAEA,MAAA,IACE,CAAC,OAAOrC,KAAK,KAAK,QAAQ,IACxB,OAAOA,KAAK,KAAK,QAAQ,IACzBe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,KACtBgC,IAAI,CAACO,GAAG,KAAKrC,SAAS,IACtBoC,MAAM,CAACtC,KAAK,CAAC,CAACK,MAAM,GAAG2B,IAAI,CAACO,GAAG,EAC/B;AACAZ,QAAAA,WAAW,CAACQ,IAAI,CACdH,IAAI,CAACI,OAAO,IAAI,CAAA,gBAAA,EAAmBJ,IAAI,CAACO,GAAG,CAAA,WAAA,CAAa,CACzD,CAAA;AACH,OAAA;AAEA,MAAA,IAAIP,IAAI,CAACQ,OAAO,IAAI,CAACR,IAAI,CAACQ,OAAO,CAACC,IAAI,CAACH,MAAM,CAACtC,KAAK,CAAC,CAAC,EAAE;QACrD2B,WAAW,CAACQ,IAAI,CAACH,IAAI,CAACI,OAAO,IAAI,gBAAgB,CAAC,CAAA;AACpD,OAAA;AAEA,MAAA,IAAIJ,IAAI,CAACU,cAAc,IAAI,CAACV,IAAI,CAACU,cAAc,CAACD,IAAI,CAACH,MAAM,CAACtC,KAAK,CAAC,CAAC,EAAE;QACnE4B,aAAa,CAACO,IAAI,CAACH,IAAI,CAACW,cAAc,IAAI,gBAAgB,CAAC,CAAA;AAC7D,OAAA;MAEA,IAAIX,IAAI,CAACY,SAAS,EAAE;QAClB,IAAI;AACF,UAAA,MAAMZ,IAAI,CAACY,SAAS,CAClBZ,IAAI,EACJhC,KAAK,EACJ6C,KAAc,IAAKA,KAAK,IAAIlB,WAAW,CAACQ,IAAI,CAACU,KAAK,CAAC,CACrD,CAAA;SACF,CAAC,OAAOA,KAAK,EAAE;AACdlB,UAAAA,WAAW,CAACQ,IAAI,CACdU,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAACT,OAAO,GAAGE,MAAM,CAACO,KAAK,CAAC,CACvD,CAAA;AACH,SAAA;AACF,OAAA;AACF,KAAC,CAAC,CACH,CAAA;IAEDjE,SAAS,CAACmE,IAAI,KAAK;AAAE,MAAA,GAAGA,IAAI;AAAE,MAAA,CAAC/D,IAAI,GAAG2C,WAAAA;AAAa,KAAA,CAAC,CAAC,CAAA;AACrDtD,IAAAA,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,GAAG4C,aAAa,CAAA;AAEzC,IAAA,OAAOD,WAAW,CAACtB,MAAM,KAAK,CAAC,CAAA;AACjC,GAAA;EAEA,eAAe2C,cAAcA,CAAC5D,QAAmB,EAAA;IAC/C,MAAM6D,gBAAgB,GAAG7D,QAAQ,IAAIO,MAAM,CAACuD,IAAI,CAAC5E,OAAO,CAACW,OAAO,CAAC,CAAA;AACjE,IAAA,MAAMkE,OAAO,GAAG,MAAMtB,OAAO,CAACC,GAAG,CAC/BmB,gBAAgB,CAACpD,GAAG,CAACb,IAAI,IAAIsB,aAAa,CAACtB,IAAI,CAAC,CAAC,CAClD,CAAA;AAED,IAAA,OAAOmE,OAAO,CAAC7B,KAAK,CAAC8B,KAAK,IAAIA,KAAK,CAAC,CAAA;AACtC,GAAA;EAEA,SAASC,WAAWA,CAACjE,QAAmB,EAAA;IACtC,IAAIA,QAAQ,EAAEiB,MAAM,EAAE;AACpBjB,MAAAA,QAAQ,CAACqB,OAAO,CAAEzB,IAAY,IAAI;QAChCV,OAAO,CAACW,OAAO,CAACD,IAAI,CAAC,GAAGlB,aAAa,CAACkB,IAAI,CAAC,CAAA;AAC3Cf,QAAAA,gBAAgB,CAACgB,OAAO,CAACqE,MAAM,CAACtE,IAAI,CAAC,CAAA;AACrC,QAAA,OAAOX,WAAW,CAACY,OAAO,CAACD,IAAI,CAAC,CAAA;QAChCJ,SAAS,CAACmE,IAAI,KAAK;AAAE,UAAA,GAAGA,IAAI;AAAE,UAAA,CAAC/D,IAAI,GAAG,EAAA;AAAI,SAAA,CAAC,CAAC,CAAA;QAC5Ce,aAAa,CAACf,IAAI,EAAElB,aAAa,CAACkB,IAAI,CAAC,EAAEkB,SAAS,EAAE,IAAI,CAAC,CAAA;AAC3D,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLjC,MAAAA,gBAAgB,CAACgB,OAAO,CAACsE,KAAK,EAAE,CAAA;AAChClF,MAAAA,WAAW,CAACY,OAAO,GAAG,EAAE,CAAA;MAExBU,MAAM,CAACuD,IAAI,CAAC5E,OAAO,CAACW,OAAO,CAAC,CAACwB,OAAO,CAACzB,IAAI,IAAG;QAC1Ce,aAAa,CAACf,IAAI,EAAElB,aAAa,CAACkB,IAAI,CAAC,EAAEkB,SAAS,EAAE,IAAI,CAAC,CAAA;AAC3D,OAAC,CAAC,CAAA;AACJ,KAAA;AAEApB,IAAAA,eAAe,CAACG,OAAO,CAACwB,OAAO,CAACC,QAAQ,IAAIA,QAAQ,CAACvB,cAAc,EAAE,CAAC,CAAC,CAAA;AACvEV,IAAAA,aAAa,CAACsE,IAAI,IAAI,CAACA,IAAI,CAAC,CAAA;AAC9B,GAAA;EAEA,eAAeS,MAAMA,GAAA;IACnB,OAAO,CAAC,MAAMR,cAAc,EAAE,IAAI1E,OAAO,CAACW,OAAO,GAAGiB,SAAS,CAAA;AAC/D,GAAA;AAEA,EAAA,SAASuD,gBAAgBA,CACvBzE,IAAY,EACZ0B,QAAoC,EAAA;AAEpC,IAAA,IAAI,CAAC7B,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,EAAE;AACnCH,MAAAA,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,GAAG,EAAE,CAAA;AACrC,KAAA;IAEAH,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,CAACmD,IAAI,CAACzB,QAAQ,CAAC,CAAA;AAE7C,IAAA,OAAO,MAAK;MACV7B,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,GAAGH,gBAAgB,CAACI,OAAO,CAACD,IAAI,CAAC,CAAC0E,MAAM,CACpEC,EAAE,IAAIA,EAAE,KAAKjD,QAAQ,CACtB,CAAA;KACF,CAAA;AACH,GAAA;EAEA,SAASkD,eAAeA,CACtBlD,QAAqD,EAAA;AAErD5B,IAAAA,eAAe,CAACG,OAAO,CAACkD,IAAI,CAACzB,QAAQ,CAAC,CAAA;AAEtC,IAAA,OAAO,MAAK;AACV5B,MAAAA,eAAe,CAACG,OAAO,GAAGH,eAAe,CAACG,OAAO,CAACyE,MAAM,CACtDC,EAAE,IAAIA,EAAE,KAAKjD,QAAQ,CACtB,CAAA;KACF,CAAA;AACH,GAAA;AAEA,EAAA,SAASmD,iBAAiBA,CACxBC,KAAe,EACfpD,QAAqD,EAAA;AAErD,IAAA,MAAMqD,cAAc,GAAGD,KAAK,CAACjE,GAAG,CAACb,IAAI,IACnCyE,gBAAgB,CAACzE,IAAI,EAAE,MAAK;AAC1B,MAAA,MAAMgF,aAAa,GAAG7E,cAAc,CAAC2E,KAAK,CAAC,CAAA;MAC3CpD,QAAQ,CAACsD,aAAa,CAAC,CAAA;AACzB,KAAC,CAAC,CACH,CAAA;AAED,IAAA,OAAO,MAAK;MACVD,cAAc,CAACtD,OAAO,CAACwD,WAAW,IAAIA,WAAW,EAAE,CAAC,CAAA;KACrD,CAAA;AACH,GAAA;AAEA,EAAA,MAAMhC,YAAY,GAAiB;IACjCuB,MAAM;IACN3C,SAAS;IACTwC,WAAW;IACX7D,aAAa;IACbiC,aAAa;IACb1B,aAAa;IACbb,aAAa;IACb8D,cAAc;IACdrC,cAAc;IACdxB,cAAc;IACd8B,cAAc;IACdvB,cAAc;IACdyB,eAAe;IACf1B,eAAe;IACf+B,iBAAiB;IACjBiC,gBAAgB;IAChBG,eAAe;IACf7F,cAAc;IACdC,cAAc;IACde,gBAAgB;IAChB8E,iBAAiB;AACjBrF,IAAAA,UAAAA;GACD,CAAA;AAED,EAAA,OAAOyD,YAAY,CAAA;AACrB;;ACpUO,MAAMiC,aAAa,GAAG,UAAU,CAAA;AAChC,MAAMC,iBAAiB,GAAG,eAAe,CAAA;AACzC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,iBAAiB,GAAG,cAAc,CAAA;AACxC,MAAMC,cAAc,GAAG,WAAW,CAAA;AAClC,MAAMC,iBAAiB,GAAG,cAAc,CAAA;AACxC,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,mBAAmB,GAAG,gBAAgB,CAAA;AAC5C,MAAMC,oBAAoB,GAAG,iBAAiB,CAAA;AAC9C,MAAMC,mBAAmB,GAAG,gBAAgB,CAAA;AAC5C,MAAMC,eAAe,GAAG,YAAY,CAAA;AACpC,MAAMC,iBAAiB,GAAG,cAAc;;ACXxC,MAAMC,UAAU,GAAIhF,KAAe,IAAc;EACtD,IAAIA,KAAK,KAAK,MAAM,EAAE;AACpB,IAAA,OAAO,IAAI,CAAA;AACb,GAAA;EAEA,IAAIA,KAAK,KAAK,OAAO,EAAE;AACrB,IAAA,OAAO,KAAK,CAAA;AACd,GAAA;EAEA,IAAI,CAACiF,KAAK,CAACC,MAAM,CAAClF,KAAK,CAAC,CAAC,EAAE;IACzB,OAAOkF,MAAM,CAAClF,KAAK,CAAC,CAAA;AACtB,GAAA;AAEA,EAAA,OAAOA,KAAK,CAAA;AACd,CAAC,CAAA;AAEK,SAAUmF,WAAWA,CAAC9E,MAAc,EAAA;EACxC,OAAOU,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAAA;AAAQ,GAAA,EAAE,CAACgF,CAAC,EAAEC,KAAK,KAAKA,KAAK,CAAC,CAAA;AACpD,CAAA;AAEgB,SAAAC,IAAIA,CAAC,GAAGC,IAAgB,EAAA;AACtC,EAAA,OAAOA,IAAI,CACRC,OAAO,CAACC,GAAG,IAAG;IACb,IAAI,CAACA,GAAG,EAAE;AACR,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;AAEA,IAAA,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;MAC3B,OAAO,CAACA,GAAG,CAAC,CAAA;AACd,KAAA;AAEA,IAAA,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;AAC3B,MAAA,OAAO,CAACpD,MAAM,CAACoD,GAAG,CAAC,CAAC,CAAA;AACtB,KAAA;AAEA,IAAA,IAAI3E,KAAK,CAACC,OAAO,CAAC0E,GAAG,CAAC,EAAE;MACtB,OAAOH,IAAI,CAAC,GAAGG,GAAG,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC,CAAA;AAChC,KAAA;AAEA,IAAA,IAAI,OAAOD,GAAG,KAAK,QAAQ,EAAE;AAC3B,MAAA,OAAO/F,MAAM,CAACC,OAAO,CAAC8F,GAAG,CAAC,CACvBhC,MAAM,CAAC,CAAC,GAAG1D,KAAK,CAAC,KAAK4F,OAAO,CAAC5F,KAAK,CAAC,CAAC,CACrCH,GAAG,CAAC,CAAC,CAACN,GAAG,CAAC,KAAKA,GAAG,CAAC,CAAA;AACxB,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACV,CAAC,CACDmE,MAAM,CAACkC,OAAO,CAAC,CACfC,IAAI,CAAC,GAAG,CAAC,CAAA;AACd;;;;;AC5BA,MAAMC,iBAAiB,GAAG,EAAE,CAAA;AAEtBC,MAAAA,QAAQ,GAAGA,CAAC;AAChBC,EAAAA,SAAS,GAAG7B,iBAAiB;EAC7BnF,IAAI;EACJiH,KAAK;AACLvE,EAAAA,KAAK,GAAG,EAAE;EACVwE,QAAQ;AACRC,EAAAA,SAAS,GAAG,EAAE;AACdC,EAAAA,MAAM,GAAG,UAAU;EACnBhJ,KAAK,GAAG,EAAE;EACViJ,aAAa;AACbC,EAAAA,YAAY,GAAG,EAAE;EACjBC,YAAY;EACZC,aAAa;EACb,GAAGC,KAAAA;AAAK,CACM,KAAI;AAClB,EAAA,MAAMC,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;AAE3C,EAAA,MAAMC,QAAQ,GAAG3I,MAAM,CAAkB,IAAI,CAAC,CAAA;EAE9C,IAAI,CAACwI,WAAW,EAAE;AAChB,IAAA,MAAM,IAAI5D,KAAK,CAAC,qCAAqC,CAAC,CAAA;AACxD,GAAA;EAEA,MAAM;IACJtE,UAAU;IACViD,aAAa;IACbjC,aAAa;IACbN,aAAa;IACba,aAAa;IACbhB,gBAAgB;IAChB8E,iBAAiB;AACjBb,IAAAA,cAAAA;AACD,GAAA,GAAG0D,WAAW,CAAA;EAEf,MAAMI,YAAY,GAAGC,OAAO,CAC1B,MAAM,CAAChG,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAAExC,MAAM,CAACkC,OAAO,CAAC,EACvE,CAACM,QAAQ,CAAC,CACX,CAAA;AAEDc,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIhI,IAAI,IAAI,CAACD,gBAAgB,CAACC,IAAI,CAAC,EAAE;AACnCyC,MAAAA,aAAa,CAACzC,IAAI,EAAE0C,KAAK,CAAC,CAAA;AAC5B,KAAA;AACF,GAAC,EAAE,CAAC1C,IAAI,EAAE0C,KAAK,CAAC,CAAC,CAAA;AAEjBsF,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIT,YAAY,EAAE;AAChBxG,MAAAA,aAAa,CAACf,IAAI,EAAEuH,YAAY,CAAC,CAAA;AACnC,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAENS,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIhI,IAAI,IAAIsH,YAAY,CAACjG,MAAM,GAAG,CAAC,EAAE;AACnC,MAAA,MAAM4D,WAAW,GAAGJ,iBAAiB,CAACyC,YAAY,EAAE,MAAK;AACvDtD,QAAAA,cAAc,CAAC,CAAChE,IAAI,CAAC,CAAC,CAAA;AACxB,OAAC,CAAC,CAAA;AAEF,MAAA,OAAO,MAAK;AACViF,QAAAA,WAAW,EAAE,CAAA;OACd,CAAA;AACH,KAAA;AACF,GAAC,EAAE,CAACqC,YAAY,EAAEtH,IAAI,CAAC,CAAC,CAAA;AAExBgI,EAAAA,SAAS,CAAC,MAAK;IACb,IACEH,QAAQ,CAAC5H,OAAO,IAChB4H,QAAQ,CAAC5H,OAAO,EAAEgI,YAAY,IAAInB,iBAAiB,EACnD;AACAe,MAAAA,QAAQ,CAAC5H,OAAO,CAAC7B,KAAK,CAAC8J,QAAQ,GAAG,UAAU,CAAA;AAC5CL,MAAAA,QAAQ,CAAC5H,OAAO,CAAC7B,KAAK,CAAC+J,SAAS,GAAG,OAAO,CAAA;AAC5C,KAAA;AACF,GAAC,EAAE,CAACN,QAAQ,CAAC5H,OAAO,CAAC,CAAC,CAAA;AAEtB,EAAA,MAAMmI,UAAU,GAAGL,OAAO,CACxB,MAAMrF,KAAK,CAACH,IAAI,CAAES,IAAc,IAAKA,IAAI,CAACE,QAAQ,CAAC,EACnD,CAACR,KAAK,CAAC,CACR,CAAA;EAED,MAAM2F,YAAY,GAAG7H,aAAa,CAAC6G,aAAa,IAAIrH,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;EAE9D,OACEsI;AACElK,IAAAA,KAAK,EAAEA,KAAK;AACZ+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;MACE,CAACI,MAAM,GAAGA,MAAM;MAChB,CAACD,SAAS,GAAGA,SAAS;MACtBoB,OAAO,EAAEd,KAAK,CAACc,OAAAA;AAChB,KAAA,CACF,CAAC;AAAArB,IAAAA,QAAA,EAAA,CAED,CAACO,KAAK,CAACc,OAAO,KAAKtB,KAAK,IAAIjH,IAAI,CAAC,IAChCsI,IAAA,CAAA,OAAA,EAAA;MAAOnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEwB,MAAAA,OAAO,EAAExI,IAAI;AAClDkH,MAAAA,QAAA,EAAA,CAAAD,KAAK,IAAIjH,IAAI,EAAA,GAAA,EACboI,UAAU,IAAIK,GAAM,CAAA,MAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAW,SAAA,CAAA;AAAAE,QAAAA,QAAA,EAAA,GAAA;AAAA,OAAA,CAAU,CAAA;AAE3D,KAAA,CACT,EAEAwB,QAAQ,CAAC7H,GAAG,CAACiH,YAAY,EAAE,CAACa,KAAK,EAAEpI,GAAG,KAAI;MACzC,iBAAIqI,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACrK,IAAI,KAAKuK,QAAQ,EAAE;QACpD,MAAM;UAAE7H,KAAK;UAAE,GAAG8H,UAAAA;SAAY,GAAGH,KAAK,CAAClB,KAAK,CAAA;QAC5C,MAAMsB,UAAU,GACd7I,aAAa,CAACmH,aAAa,IAAIrH,IAAI,CAAC,IAAIuH,YAAY,CAAA;QAEtD,oBACEyB,aAAC,CAAAC,sBAAsB,EACjB;AAAA,UAAA,GAAAH,UAAU;AACd9I,UAAAA,IAAI,EAAEA,IAAI;AACV2I,UAAAA,KAAK,EAAEA,KAAK;AACZ3H,UAAAA,KAAK,EAAEA,KAAK;AACZ+H,UAAAA,UAAU,EAAEA,UAAU;UACtBR,OAAO,EAAEd,KAAK,CAACc,OAAO;UACtBW,SAAS,EAAEzB,KAAK,CAACyB,SAAS;AAC1B3I,UAAAA,GAAG,EAAE,CAAA,EAAGA,GAAG,CAAA,CAAA,EAAIf,UAAU,CAAE,CAAA;AAC3BqE,UAAAA,KAAK,EAAE+C,OAAO,CAACyB,YAAY,CAAC;AAC5BtH,UAAAA,aAAa,EAAEA,aAAa;AAC5BsG,UAAAA,aAAa,EAAEA,aAAa;AAC5BG,UAAAA,aAAa,EAAEA,aAAa;AAC5B;AACA;AACAnF,UAAAA,IAAI,EAAEyG,UAAU,CAACzG,IAAI,IAAIoF,KAAK,CAACpF,IAAAA;AAC/B,SAAA,CAAA,CAAA;AAEN,OAAA;AAEA,MAAA,OAAOsG,KAAK,CAAA;AACd,KAAC,CAAC,EAED,CAAClB,KAAK,CAACc,OAAO,IAAIF,YAAY,IAC7BI,GAAA,CAAA,MAAA,EAAA;AAAM1K,MAAAA,GAAG,EAAE8J,QAAQ;MAAEV,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AACjDE,MAAAA,QAAA,EAAAmB,YAAAA;AACI,KAAA,CACR,CAAA;AACG,GAAA,CAAA,CAAA;AAEV,EAAC;AAED,MAAMY,sBAAsB,GAAGA,CAAC;EAC9BN,KAAK;EACL3I,IAAI;EACJ6D,KAAK;EACLkF,UAAU;EACVhI,aAAa;EACboI,QAAQ;EACR9B,aAAa;EACb6B,SAAS;EACT,GAAGzB,KAAAA;AACyB,CAAA,KAAI;AAChC,EAAA,MAAMC,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;EAE3C,MAAM,CAACwB,YAAY,EAAEC,eAAe,CAAC,GAAG3J,QAAQ,CAAC,KAAK,CAAC,CAAA;EAEvD,MAAM;AAAES,IAAAA,cAAAA;AAAc,GAAE,GAAGuH,WAAW,IAAI,EAAE,CAAA;AAE5C,EAAA,MAAM4B,YAAY,GAAGA,CAACC,CAAqB,EAAEC,MAAoB,KAAI;AACnE,IAAA,IAAIC,QAAQ,GAAkCF,CAAC,EAAEG,MAAM,GACnDH,CAAC,CAACG,MAAM,CAAC1I,KAAK,GACduI,CAAC,CAAA;AAEL,IAAA,IAAIL,SAAS,EAAE;AACb,MAAA,MAAMS,SAAS,GAAGZ,UAAU,IAAItB,KAAK,CAACzG,KAAK,CAAA;AAC3C,MAAA,MAAMQ,SAAS,GAAGrB,cAAc,IAAI,CAAA;MAEpCsJ,QAAQ,GAAGP,SAAS,CAACO,QAAQ,EAAEE,SAAS,EAAEnI,SAAS,CAAC,CAAA;MAEpD,IAAIiI,QAAQ,KAAKE,SAAS,EAAE;AAC1BJ,QAAAA,CAAC,CAACG,MAAM,CAAC1I,KAAK,GAAGyI,QAAQ,CAAA;AAEzBJ,QAAAA,eAAe,CAACtF,IAAI,IAAI,CAACA,IAAI,CAAC,CAAA;AAE9B,QAAA,MAAM6F,OAAO,GAAGC,UAAU,CAAC,MAAK;UAE5B5L,QAAQ,CAAC6L,aAAa,CAAC,CAAU9J,OAAAA,EAAAA,IAAI,IAAI,CAC1C,EAAE+J,KAAK,EAAE,CAAA;UAEVC,YAAY,CAACJ,OAAO,CAAC,CAAA;SACtB,EAAE,CAAC,CAAC,CAAA;AAEL,QAAA,OAAA;AACF,OAAA;AACF,KAAA;AAEA7I,IAAAA,aAAa,CAACsG,aAAa,IAAIrH,IAAI,EAAEyJ,QAAQ,CAAC,CAAA;AAC9CN,IAAAA,QAAQ,GAAGI,CAAC,EAAEC,MAAM,CAAC,CAAA;GACtB,CAAA;AAED,EAAA,oBACER,cAACL,KAAK,CAACrK,IAAI,EACL;AAAA,IAAA,GAAAmJ,KAAK;AACTzH,IAAAA,IAAI,EAAEA,IAAI;AACVmJ,IAAAA,QAAQ,EAAEG,YAAY;AAAA,IAAA,IACjBzF,KAAK,GAAG;AAAEA,MAAAA,KAAAA;KAAO,GAAG,EAAE,CAAC;AAC5BtD,IAAAA,GAAG,EAAE,CAAA,EAAGP,IAAI,CAAA,CAAA,EAAIoJ,YAAY,CAAE,CAAA;AAC9BpI,IAAAA,KAAK,EAAE+H,UAAU,IAAItB,KAAK,CAACzG,KAAAA;AAC3B,GAAA,CAAA,CAAA;AAEN,CAAC,CAAA;AAED+F,QAAQ,CAACkD,WAAW,GAAG,UAAU;;AC/M1B,MAAMrC,WAAW,gBAAGsC,aAAa,CAAsB,IAAI,CAAC,CAAA;AAE7DC,MAAAA,IAAI,GAAgDA,CAAC;EACzDjD,QAAQ;EACRkD,IAAI;EACJhM,KAAK,GAAG,EAAE;AACV4I,EAAAA,SAAS,GAAG9B,aAAa;AACzBiC,EAAAA,SAAS,GAAG,EAAE;EACdkD,QAAQ;EACRC,cAAc;EACdxL,aAAa,GAAG,EAAE;EAClBE,cAAc;EACdD,cAAc;AACdqI,EAAAA,MAAM,GAAG,YAAY;EACrB,GAAGmD,IAAAA;AAAI,CACR,KAAI;EACH,MAAMC,YAAY,GAAG3L,OAAO,CAACC,aAAa,EAAEC,cAAc,EAAEC,cAAc,CAAC,CAAA;AAC3E,EAAA,MAAMiE,YAAY,GAAGmH,IAAI,IAAII,YAAY,CAAA;AACzC,EAAA,MAAMlL,OAAO,GAAGJ,MAAM,CAAkB,IAAI,CAAC,CAAA;AAE7C,EAAA,MAAMuL,YAAY,GAAG,MAAOlB,CAAiB,IAAI;IAC/CA,CAAC,CAACmB,cAAc,EAAE,CAAA;AAElB,IAAA,IAAI,MAAMzH,YAAY,CAACe,cAAc,EAAE,EAAE;AACvCqG,MAAAA,QAAQ,GAAGpH,YAAY,CAAC9C,cAAc,EAAE,CAAC,CAAA;KAC1C,MAAM,IAAImK,cAAc,EAAE;AACzB,MAAA,MAAMK,WAAW,GAAG1H,YAAY,CAACvC,cAAc,EAAE,CAAA;AACjD4J,MAAAA,cAAc,CAAC;AAAE1I,QAAAA,MAAM,EAAEqB,YAAY,CAAC9C,cAAc,EAAE;AAAEwK,QAAAA,WAAAA;AAAa,OAAA,CAAC,CAAA;AACxE,KAAA;GACD,CAAA;EAED,MAAM7C,YAAY,GAAGC,OAAO,CAC1B,MAAM,CAAChG,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAAExC,MAAM,CAACkC,OAAO,CAAC,EACvE,CAACM,QAAQ,CAAC,CACX,CAAA;AAEDc,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIjJ,cAAc,EAAE;MAClBkE,YAAY,CAAClE,cAAc,GAAGA,cAAc,CAAA;AAC9C,KAAA;AAEA,IAAA,IAAIC,cAAc,EAAE;MAClBiE,YAAY,CAACjE,cAAc,GAAGA,cAAc,CAAA;AAC9C,KAAA;GACD,EAAE,CAACiE,YAAY,EAAElE,cAAc,EAAEC,cAAc,CAAC,CAAC,CAAA;AAElD,EAAA,OACEyJ,GAAC,CAAAb,WAAW,CAACgD,QAAQ;AAAC5J,IAAAA,KAAK,EAAEiC,YAAY;AAAAiE,IAAAA,QAAA,EACvCuB;AACErK,MAAAA,KAAK,EAAEA,KAAK;AACZL,MAAAA,GAAG,EAAEuB,OAAO;AACZuL,MAAAA,QAAQ,EAAEJ,YAAY;AACtBtD,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,CAAA,EAAIG,SAAS,CAAE,CAAA;MAErCD,QAAA,EAAAwB,QAAQ,CAAC7H,GAAG,CAACiH,YAAY,EAAEa,KAAK,IAAG;QAClC,iBAAIC,cAAc,CAACD,KAAK,CAAC,IAAIA,KAAK,CAACrK,IAAI,KAAKuK,QAAQ,EAAE;AACpD;AACA;UACA,MAAM;YAAE,GAAGC,UAAAA;WAAY,GAAGH,KAAK,CAAClB,KAAK,CAAA;AAErC,UAAA,OACEgB,GAAA,CAACE,KAAK,CAACrK,IAAI,EAAA;AAAA,YAAA,GACLwK,UAAU;AACdH,YAAAA,KAAK,EAAEA,KAAK;AACZtG,YAAAA,IAAI,EAAEyG,UAAU,CAACzG,IAAI,IAAIkI,IAAI,CAAClI,IAAI;AAClC+E,YAAAA,MAAM,EAAE0B,UAAU,CAAC1B,MAAM,IAAIA,MAAAA;AAAM,WAAA,CACnC,CAAA;AAEN,SAAA;AAEA,QAAA,OAAOuB,KAAK,CAAA;OACb,CAAA;KAAC,CAAA;AAEiB,GAAA,CAAA,CAAA;AAE3B,EAAC;AAEDwB,IAAI,CAACW,IAAI,GAAG/D,QAAQ;;;;;AC/FpB,MAAMgE,SAAS,GAAGA,MAChBtC,GAAA,CAAA,KAAA,EAAA;AACEuC,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXC,EAAAA,OAAO,EAAC,WAAW;AACnBC,EAAAA,IAAI,EAAC,MAAM;AACXC,EAAAA,KAAK,EAAC,4BAA4B;YAElC3C,GACE,CAAA,MAAA,EAAA;AAAA4C,IAAAA,CAAC,EAAC,sBAAsB;AACxBC,IAAAA,MAAM,EAAC,cAAc;AACrBC,IAAAA,WAAW,EAAC,GAAG;AACfC,IAAAA,aAAa,EAAC,OAAA;GAAO,CAAA;AAEnB,CAAA,EACP;AAEKC,MAAAA,SAAS,GAAGA,CAAC;AAAEC,EAAAA,MAAAA;AAAM,CAAuB,KAChDjD,GACE,CAAA,KAAA,EAAA;AAAAuC,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXC,EAAAA,OAAO,EAAC,WAAW;AACnBC,EAAAA,IAAI,EAAC,MAAM;AACXC,EAAAA,KAAK,EAAC,4BAA4B;YAElC3C,GACE,CAAA,MAAA,EAAA;AAAA4C,IAAAA,CAAC,EAAC,mBAAmB;AACrBC,IAAAA,MAAM,EAAC,cAAc;AACrBC,IAAAA,WAAW,EAAC,GAAG;AACfC,IAAAA,aAAa,EAAC,OAAO;AACrBG,IAAAA,cAAc,EAAC,OAAO;AACtBC,IAAAA,SAAS,EAAEF,MAAM,GAAG,qBAAqB,GAAG,EAAA;GAC5C,CAAA;AAAA,CAAA,EAEL;AAED,MAAMG,WAAW,GAAGA,MAClBpD,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,SAAS;AACnBd,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,6TAAA;GAAqU,CAAA;AAAA,CAAA,EAEhV;AAED,MAAMU,SAAS,GAAGA,MAChBtD,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,OAAO;AACjBd,EAAAA,KAAK,EAAC,IAAI;AACVC,EAAAA,MAAM,EAAC,IAAI;AACXE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,0LAAA;GAAkM,CAAA;AAAA,CAAA,EAE7M;AAED,MAAMW,UAAU,GAAGA,MACjBvD,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,QAAQ;AAClBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,kgBAAA;GAA0gB,CAAA;AAAA,CAAA,EAErhB;AAED,MAAMY,YAAY,GAAGA,MACnBxD,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,UAAU;AACpBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,8VAAA;GAAsW,CAAA;AAAA,CAAA,EAEjX;AAED,MAAMa,WAAW,GAAGA,MAClBzD,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,mRAAA;GAA2R,CAAA;AAAA,CAAA,EAEtS;AAED,MAAMc,SAAS,GAAGA,MAChB1D;AACEtB,EAAAA,SAAS,EAAC,gBAAgB;AAC1B+D,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;eACP,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;iBACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,gsBAAA;GAAwsB,CAAA;AAAA,CAAA,EAEntB;AAED,MAAMe,gBAAgB,GAAGA,MACvB3D,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,YAAY;AACtBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,0JAAA;GAAkK,CAAA;AAAA,CAAA,EAE7K;AAED,MAAMgB,QAAQ,GAAGA,MACf/D,IAAA,CAAA,KAAA,EAAA;AACE4C,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,cAAc;AACxBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;iBACP,MAAM;AAAAjE,EAAAA,QAAA,EAAA,CAElBuB;AAAM4C,IAAAA,CAAC,EAAC,+KAAA;AAAuL,GAAA,CAAA,EAC/L5C;AAAM4C,IAAAA,CAAC,EAAC,oKAAA;AAA4K,GAAA,CAAA,CAAA;AAAA,CAAA,EAEvL;AAED,MAAMiB,WAAW,GAAGA,MAClB7D,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,YAAY;AACtBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,uzBAAA;GAA+zB,CAAA;AAAA,CAAA,EAE10B;AAED,MAAMkB,SAAS,GAAGA,MAChB9D,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,QAAQ;AAClBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,qVAAA;GAA6V,CAAA;AAAA,CAAA,EAExW;AAED,MAAMmB,UAAU,GAAGA,MACjB/D,GACE,CAAA,KAAA,EAAA;AAAAyC,EAAAA,OAAO,EAAC,eAAe;AACvBY,EAAAA,SAAS,EAAC,OAAO;AACP,EAAA,WAAA,EAAA,SAAS;AACnBd,EAAAA,KAAK,EAAC,KAAK;AACXC,EAAAA,MAAM,EAAC,KAAK;AACZE,EAAAA,IAAI,EAAC,cAAc;AAAA,EAAA,aAAA,EACP,MAAM;AAAAjE,EAAAA,QAAA,EAElBuB;AAAM4C,IAAAA,CAAC,EAAC,6TAAA;GAAqU,CAAA;AAAA,CAAA;;AClL3UoB,MAAAA,WAAW,GAAGA,CAAC;AACnBzF,EAAAA,SAAS,GAAGpB,oBAAoB;EAChC5E,KAAK;EACLmI,QAAQ;AACRuD,EAAAA,WAAW,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;EACxCC,QAAQ;EACR9I,KAAK;AACL+I,EAAAA,MAAM,GAAG,YAAY;EACrBC,MAAM;AACNC,EAAAA,UAAU,GAAG,IAAI;AACjBC,EAAAA,aAAa,GAAG,KAAK;AACrB1K,EAAAA,IAAI,GAAG,OAAO;AACd2K,EAAAA,MAAM,GAAG,MAAM;EACfC,MAAM;EACNC,YAAY;EACZ9O,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;EACdgG,SAAS;EACTC,YAAY;AACZC,EAAAA,QAAQ,GAAG,IAAA;AAAI,CACG,KAAI;AACtB,EAAA,MAAMC,YAAY,GAAGpO,MAAM,CAAiB,IAAI,CAAC,CAAA;EACjD,MAAM,CAACwM,MAAM,EAAE6B,SAAS,CAAC,GAAG7N,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC3C,EAAA,MAAM,CAAC8N,aAAa,EAAEC,gBAAgB,CAAC,GAAG/N,QAAQ,CAEhD,CACAsB,KAAK,GAAG,CAAC,CAAC,IAAIoM,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,EACvCpM,KAAK,GAAG,CAAC,CAAC,IAAIoM,YAAY,GAAG,CAAC,CAAC,IAAI,IAAI,CACxC,CAAC,CAAA;EAEF,MAAM,CAACM,WAAW,EAAEC,cAAc,CAAC,GAAGjO,QAAQ,CAAc,IAAI,CAAC,CAAA;AACjE,EAAA,MAAM,CAACkO,YAAY,EAAEC,eAAe,CAAC,GAAGnO,QAAQ,CAAC,IAAIoO,IAAI,EAAE,CAACC,QAAQ,EAAE,CAAC,CAAA;AACvE,EAAA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGvO,QAAQ,CAAC,IAAIoO,IAAI,EAAE,CAACI,WAAW,EAAE,CAAC,CAAA;EACxE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG1O,QAAQ,CACtCsN,MAAM,KAAK,OAAO,GAAG,OAAO,GAAGA,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,KAAK,CAClE,CAAA;EAED,MAAMqB,YAAY,GAChBpB,MAAM,EAAEqB,WAAW,IACnBvM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE,EAAA;GAAI,EAAE,CAACgF,CAAC,EAAEkI,CAAC,KAC9B,IAAIT,IAAI,CAAC,CAAC,EAAES,CAAC,CAAC,CAACC,cAAc,CAACvB,MAAM,EAAEA,MAAM,IAAI,SAAS,EAAE;AACzDwB,IAAAA,KAAK,EAAE,OAAA;AACR,GAAA,CAAC,CACH,CAAA;EAEH,MAAMC,cAAc,GAAGzB,MAAM,EAAE0B,aAAa,IAAI,CAC9C,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAA;AAED3G,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM4G,kBAAkB,GAAIC,KAAiB,IAAI;AAC/C,MAAA,IACEvB,YAAY,CAACrN,OAAO,IACpB,CAACqN,YAAY,CAACrN,OAAO,CAAC6O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACpD;QACA6D,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,OAAA;KACD,CAAA;AAEDtP,IAAAA,QAAQ,CAAC8Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;IAE1D,OAAO,MAAM3Q,QAAQ,CAAC+Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;GAC3E,EAAE,EAAE,CAAC,CAAA;EAEN,MAAMK,YAAY,GAAIC,IAAU,IAAI;AAClC,IAAA,IAAI,CAAC1B,aAAa,CAAC,CAAC,CAAC,IAAKA,aAAa,CAAC,CAAC,CAAC,IAAIA,aAAa,CAAC,CAAC,CAAE,EAAE;AAC/DC,MAAAA,gBAAgB,CAAC,CAACyB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAChC,KAAC,MAAM;AACL,MAAA,MAAMC,KAAK,GAAG3B,aAAa,CAAC,CAAC,CAAC,CAAA;MAC9B,MAAM4B,GAAG,GAAGF,IAAI,GAAGC,KAAK,GAAGA,KAAK,GAAGD,IAAI,CAAA;MACvC,MAAMG,KAAK,GAAGH,IAAI,GAAGC,KAAK,GAAGD,IAAI,GAAGC,KAAK,CAAA;AACzC1B,MAAAA,gBAAgB,CAAC,CAAC4B,KAAK,EAAED,GAAG,CAAC,CAAC,CAAA;MAC9BjG,QAAQ,GACN,CAACkG,KAAK,CAACC,WAAW,EAAE,EAAEF,GAAG,CAACE,WAAW,EAAE,CAAC,EACxC,CAACC,UAAU,CAACF,KAAK,CAAC,EAAEE,UAAU,CAACH,GAAG,CAAC,CAAC,CACrC,CAAA;MACD7B,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,KAAA;GACD,CAAA;EAED,MAAMiC,eAAe,GAAIf,KAAa,IAAI;AACxC,IAAA,MAAMS,IAAI,GAAG,IAAIpB,IAAI,CAACE,WAAW,EAAES,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOvB,YAAY,GAAGgC,IAAI,EAAE;AAAE9I,MAAAA,IAAI,EAAElF,SAAS;AAAEuO,MAAAA,EAAE,EAAEvO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMwO,cAAc,GAAIC,IAAY,IAAI;AACtC,IAAA,MAAMT,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,GAAG,CAAC,EAAE/B,YAAY,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOV,YAAY,GAAGgC,IAAI,EAAE;AAAE9I,MAAAA,IAAI,EAAElF,SAAS;AAAEuO,MAAAA,EAAE,EAAEvO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMqO,UAAU,GAAIL,IAAU,IAAI;AAChC,IAAA,IAAI,OAAOtC,MAAM,KAAK,UAAU,EAAE;MAChC,OAAOA,MAAM,CAACsC,IAAI,CAAC,CAAA;AACrB,KAAA;AAEA,IAAA,OAAO,CAAGtC,EAAAA,MAAM,CAAE,CAAA,CACfgD,OAAO,CAAC,MAAM,EAAEV,IAAI,CAAChB,WAAW,EAAE,CAAC2B,QAAQ,EAAE,CAAC,CAC9CD,OAAO,CAAC,IAAI,EAAE,CAACV,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,EAAE8B,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAChEF,OAAO,CAAC,IAAI,EAAEV,IAAI,CAACa,OAAO,EAAE,CAACF,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;GAC7D,CAAA;EAED,MAAME,SAAS,GAAId,IAAU,IAAI;AAC/B,IAAA,MAAM,CAACC,KAAK,EAAEC,GAAG,CAAC,GAAG5B,aAAa,CAAA;IAElC,OAAO2B,KAAK,IAAIC,GAAG,IAAIF,IAAI,GAAGC,KAAK,IAAID,IAAI,GAAGE,GAAG,CAAA;GAClD,CAAA;EAED,MAAMa,uBAAuB,GAAGA,CAACC,WAAW,GAAG,CAAC,EAAEpN,GAAa,KAAI;IACjE,MAAMqN,QAAQ,GAAGnC,WAAW,CAAA;AAC5B,IAAA,MAAMoC,SAAS,GAAGxC,YAAY,GAAGsC,WAAW,CAAA;IAE5C,OACE5H,IAAK,CAAA,KAAA,EAAA;MAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;MAClCE,QAAA,EAAA,CAAApE,GAAG,IAAI,CAACoN,WAAW,GAClB5H,IAAK,CAAA,KAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,YAAA,CAAA;AACxCE,QAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,QAAA,EAAA;UAAQ4H,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC;AAAApJ,UAAAA,QAAA,EAAA,QAAA;AAAA,SAAA,CAElD,EACTuB,GAAA,CAAA,QAAA,EAAA;UACE4H,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAK,CAAC,IACFtC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAEE,YAAY,IACnDD,CAAC,GAAG,CAAC,CACV;AAIIrJ,UAAAA,QAAA,EAAA,QAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CACL,GAENuB,GAAQ,CAAA,MAAA,EAAA,EAAA,CACT,EACDH,IAAK,CAAA,KAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAmB,iBAAA,CAAA;AAAAE,QAAAA,QAAA,EAAA,CAC7CuB,GACE,CAAA,QAAA,EAAA;AAAAnK,UAAAA,IAAI,EAAC,QAAQ;UACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAChCqJ,UAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,MAAM,CAAC;AAEjClH,UAAAA,QAAA,EAAAiJ,QAAAA;UACM,EACT1H,GAAA,CAAA,QAAA,EAAA;AACEnK,UAAAA,IAAI,EAAC,QAAQ;UACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAChCqJ,UAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,OAAO,CAAC;UAAAlH,QAAA,EAElCmH,YAAY,CAAC+B,SAAS,CAAA;UAChB,CAAA;OACL,CAAA,EACLtN,GAAG,IAAIoN,WAAW,GACjB5H;QAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,YAAA,CAAA;AACxCE,QAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,QAAA,EAAA;UACE4H,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAKC,YAAY,IACbvC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IACxCC,CAAC,GAAG,CAAC,CACV;AAIIrJ,UAAAA,QAAA,EAAA,QAAA;AAAA,SAAA,CAAA,EACTuB,GAAQ,CAAA,QAAA,EAAA;UAAA4H,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC;;UAElD,CAAA;OACL,CAAA,GAEN7H,GAAA,CAAA,MAAA,EAAA,EAAA,CACD,CAAA;AAAA,KAAA,CACG,CAAA;GAET,CAAA;EAED,MAAMgI,cAAc,GAAGA,CAACP,WAAW,GAAG,CAAC,EAAEpN,GAAa,KAAI;AACxD,IAAA,MAAM4N,QAAQ,GAAG,IAAI5C,IAAI,CAACE,WAAW,EAAEJ,YAAY,GAAGsC,WAAW,EAAE,CAAC,CAAC,CAAA;AACrE,IAAA,MAAMP,IAAI,GAAGe,QAAQ,CAACxC,WAAW,EAAE,CAAA;AACnC,IAAA,MAAMO,KAAK,GAAGiC,QAAQ,CAAC3C,QAAQ,EAAE,CAAA;AACjC,IAAA,MAAM4C,QAAQ,GAAG,IAAI7C,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAACmC,MAAM,EAAE,CAAA;AAClD,IAAA,MAAMC,WAAW,GAAG,IAAI/C,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAACsB,OAAO,EAAE,CAAA;IAE1D,MAAMe,aAAa,GAAG,CAAC,MAAK;MAC1B,MAAMC,SAAS,GAAG,IAAIjD,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAAA;AAC1C,MAAA,MAAMuC,SAAS,GAAGD,SAAS,CAAChB,OAAO,EAAE,CAAA;MAErC,OAAOhO,KAAK,CAACqE,IAAI,CACf;AAAE/E,QAAAA,MAAM,EAAEsP,QAAAA;OAAU,EACpB,CAACtK,CAAC,EAAEkI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAEuC,SAAS,GAAGL,QAAQ,GAAGpC,CAAC,GAAG,CAAC,CAAC,CAClE,CAAA;AACH,KAAC,GAAG,CAAA;AAEJ,IAAA,MAAM0C,gBAAgB,GAAGlP,KAAK,CAACqE,IAAI,CACjC;AAAE/E,MAAAA,MAAM,EAAEwP,WAAAA;AAAa,KAAA,EACvB,CAACxK,CAAC,EAAEkI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAEF,CAAC,GAAG,CAAC,CAAC,CACvC,CAAA;IAED,MAAM2C,cAAc,GAAGJ,aAAa,CAACzP,MAAM,GAAG4P,gBAAgB,CAAC5P,MAAM,CAAA;AACrE,IAAA,MAAM8P,SAAS,GAAGC,gCAAgC,GAAGF,cAAc,CAAA;AACnE,IAAA,MAAMG,aAAa,GAAGtP,KAAK,CAACqE,IAAI,CAC9B;AAAE/E,MAAAA,MAAM,EAAE8P,SAAAA;AAAS,KAAE,EACrB,CAAC9K,CAAC,EAAEkI,CAAC,KAAK,IAAIT,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAEF,CAAC,GAAG,CAAC,CAAC,CAC3C,CAAA;IAED,MAAM+C,IAAI,GAAG,CAAC,GAAGR,aAAa,EAAE,GAAGG,gBAAgB,EAAE,GAAGI,aAAa,CAAC,CAAA;IAEtE,OACE/I,IAAA,CAAA,KAAA,EAAA;AAAKnB,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,UAAA,EAAamH,QAAQ,CAAE,CAAA;iBACjD1F,GAAK,CAAA,KAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAkB,gBAAA,CAAA;AAAAE,QAAAA,QAAA,EAC3C+I,uBAAuB,CAACC,WAAW,EAAEpN,GAAG,CAAA;QACrC,EACLqL,QAAQ,KAAK,KAAK,IACjB7F,IAAA,CAAA,KAAA,EAAA;QAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AACzCE,QAAAA,QAAA,EAAA,CAAAwH,cAAc,CAAC7N,GAAG,CAAC,CAAC0Q,GAAG,EAAEhD,CAAC,KACzB9F,GAAA,CAAA,KAAA,EAAA;UAAatB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAC3CE,UAAAA,QAAA,EAAAqK,GAAAA;AADO,SAAA,EAAAhD,CAAC,CAGZ,CAAC,EACD+C,IAAI,CAACzQ,GAAG,CAAC,CAAC0Q,GAAG,EAAEhD,CAAC,KAAI;UACnB,MAAMiD,UAAU,GACdD,GAAG,IACH/D,aAAa,CAACjL,IAAI,CAChB8I,CAAC,IAAIA,CAAC,EAAEoG,YAAY,EAAE,KAAKF,GAAG,CAACE,YAAY,EAAE,CAC9C,CAAA;AAEH,UAAA,MAAMC,OAAO,GAAGH,GAAG,IAAIvB,SAAS,CAACuB,GAAG,CAAC,CAAA;UACrC,MAAMI,WAAW,GAAGJ,GAAG,EAAExD,QAAQ,EAAE,KAAKU,KAAK,CAAA;UAE7C,OACEhG;AAEEkE,YAAAA,QAAQ,EAAEO,YAAY,GAAGqE,GAAG,EAAE;AAC5BnL,cAAAA,IAAI,EAAElF,SAAS;AACfuO,cAAAA,EAAE,EAAEvO,SAAAA;AACL,aAAA,CAAC;YACFmP,OAAO,EAAEA,MAAMkB,GAAG,IAAItC,YAAY,CAACsC,GAAG,CAAC;YACvCK,YAAY,EAAEA,MAAML,GAAG,IAAI5D,cAAc,CAAC4D,GAAG,CAAC;AAC9CpK,YAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,MAAM,EAClB;AACE,cAAA,CAAC,CAAGA,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGwK,UAAU;AACrC,cAAA,CAAC,CAAGxK,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAG0K,OAAO;AAClC,cAAA,CAAC,CAAG1K,EAAAA,SAAS,CAAY,UAAA,CAAA,GACvB0G,WAAW,IACXF,aAAa,CAAC,CAAC,CAAC,IAChB,CAACA,aAAa,CAAC,CAAC,CAAC,IACjBE,WAAW,GAAGF,aAAa,CAAC,CAAC,CAAC,IAC9BE,WAAW,CAAC+D,YAAY,EAAE,KAAKF,GAAG,EAAEE,YAAY,EAAE;AACpD,cAAA,CAAC,CAAGzK,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAG,CAAC2K,WAAAA;AAChC,aAAA,CACF,CAAC;AAAAzK,YAAAA,QAAA,EAEDqK,GAAG,EAAExB,OAAO;WAtBR,EAAAxB,CAAC,CAuBC,CAAA;AAEb,SAAC,CAAC,CAAA;OACE,CACP,EAEAJ,QAAQ,KAAK,OAAO,IACnB1F,GAAA,CAAA,KAAA,EAAA;QAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAAAE,QAAAA,QAAA,EAChCmH,YAAY,CAACxN,GAAG,CAAC,CAAC0P,CAAC,EAAEhC,CAAC,KACrB9F,GAAA,CAAA,QAAA,EAAA;UAEEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;UAC/BqJ,OAAO,EAAEA,MAAK;YACZxC,eAAe,CAACU,CAAC,CAAC,CAAA;YAClBH,WAAW,CAAC,KAAK,CAAC,CAAA;WACnB;AACDzB,UAAAA,QAAQ,EAAE6C,eAAe,CAACjB,CAAC,CAAC;oBAE3BgC,CAAAA;SAAC,EARGhC,CAAC,CAUT,CAAA;OACG,CACP,EAEAJ,QAAQ,KAAK,MAAM,IAClB1F;QAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;kBAChCjF,KAAK,CAACqE,IAAI,CAAC;AAAE/E,UAAAA,MAAM,EAAE,EAAA;SAAI,EAAE,CAACgF,CAAC,EAAEkI,CAAC,KAAI;AACnC,UAAA,MAAMoB,IAAI,GAAG3B,WAAW,GAAG6D,UAAU,GAAGtD,CAAC,CAAA;UAEzC,OACE9F,GAEE,CAAA,QAAA,EAAA;YAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B2F,YAAAA,QAAQ,EAAE+C,cAAc,CAACC,IAAI,CAAC;YAC9BU,OAAO,EAAEA,MAAK;cACZpC,cAAc,CAAC0B,IAAI,CAAC,CAAA;cACpBvB,WAAW,CAAC,OAAO,CAAC,CAAA;aACrB;sBAEAuB,IAAAA;WAAI,EARAA,IAAI,CASF,CAAA;SAEZ,CAAA;AAAC,OAAA,CAEL,CAAA;AAAA,KAAA,CACG,CAAA;GAET,CAAA;EAED,MAAMmC,WAAW,GAAGA,MAAK;AACvBrE,IAAAA,gBAAgB,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAC9BtE,QAAQ,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;GAC3B,CAAA;EAED,OACEb,IAAA,CAAA,KAAA,EAAA;AACEvK,IAAAA,GAAG,EAAEuP,YAAY;AACjBlP,IAAAA,KAAK,EAAEA,KAAK;AACZ+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,kBAAkB,EAC9B;AACE,MAAA,CAAC,GAAGA,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AAC9B,MAAA,CAAC8E,SAAS,GAAGA,SAAAA;AACd,KAAA,CACF,CAAC;eAEFsB,GAAK,CAAA,KAAA,EAAA;MAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAsB,oBAAA,CAAA;AAAAE,MAAAA,QAAA,EAChDoB,IACE,CAAA,QAAA,EAAA;AAAAhK,QAAAA,IAAI,EAAC,QAAQ;AACb6I,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;UACE+K,UAAU,EAAE,CAAC1E,QAAQ;AACrB,UAAA,CAAC,CAAGrG,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;UAC7B,CAAC,CAAA,EAAGmD,SAAS,CAAA,SAAA,CAAW,GAAG2F,QAAAA;AAC5B,SAAA,CACF,CAAC;AACFA,QAAAA,QAAQ,EAAEA,QAAQ;AAClB0D,QAAAA,OAAO,EAAEA,MAAM9C,SAAS,CAAC,CAAC7B,MAAM,CAAC;AAEhCxE,QAAAA,QAAA,EAAA,CAAA2F,MAAM,EACPpE,GACE,CAAA,OAAA,EAAA;AAAAuJ,UAAAA,QAAQ,EAAEjF,aAAa;UACvB5F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AACvC0F,UAAAA,WAAW,EAAEA,WAAW,CAAC,CAAC,CAAC;AAC3B1L,UAAAA,KAAK,EAAEwM,aAAa,CAAC,CAAC,CAAC,GAAG+B,UAAU,CAAC/B,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAA;UACzD,EACF/E,GAAA,CAAA,MAAA,EAAA;UAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAkB,gBAAA,CAAA;UAC5CE,QAAA,EAAAiG,SAAS,IAAI1E,GAAC,CAAA2D,gBAAgB;AAC1B,SAAA,CAAA,EACP3D,GACE,CAAA,OAAA,EAAA;AAAAuJ,UAAAA,QAAQ,EAAEjF,aAAa;UACvB5F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AACvC0F,UAAAA,WAAW,EAAEA,WAAW,CAAC,CAAC,CAAC;AAC3B1L,UAAAA,KAAK,EAAEwM,aAAa,CAAC,CAAC,CAAC,GAAG+B,UAAU,CAAC/B,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAA;AACzD,SAAA,CAAA,EACF/E,GAAM,CAAA,MAAA,EAAA;UAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAAAE,UAAAA,QAAA,EACjC4F,UAAU,KAAKU,aAAa,CAAC,CAAC,CAAC,IAAIA,aAAa,CAAC,CAAC,CAAC,CAAC,GACnD/E,GAAM,CAAA,MAAA,EAAA;YAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEqJ,YAAAA,OAAO,EAAEyB,WAAW;AAAA5K,YAAAA,QAAA,EACzDuB,GAAC,CAAAsC,SAAS;AACL,WAAA,CAAA,GAEPtC,IAACwD,YAAY,EAAA,EAAA,CAAA;AAEV,SAAA,CAAA,CAAA;OAAA,CAAA;MAEL,EAELP,MAAM,IACLjD,GAAK,CAAA,KAAA,EAAA;MAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAwB,sBAAA,CAAA;AAClDE,MAAAA,QAAA,EAAAoB,IAAA,CAAA,KAAA,EAAA;QAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,eAAA,CAAA;QAC1CE,QAAA,EAAA,CAAAuJ,cAAc,CAAC,CAAC,EAAEtC,QAAQ,KAAK,KAAK,CAAC,EACrCA,QAAQ,KAAK,KAAK,IAAIsC,cAAc,CAAC,CAAC,EAAEtC,QAAQ,KAAK,KAAK,CAAC,CAAA;;AAE1D,KAAA,CACP,CAAA;AACG,GAAA,CAAA,CAAA;AAEV;;;;;ACzXA,MAAM8D,YAAU,GAAG,EAAE,CAAA;AACrB,MAAMC,eAAe,GAAG,CAAC,CAAA;AAClB,MAAML,UAAU,GAAG,CAAC,CAAA;AACpB,MAAMrB,YAAY,GAAG,EAAE,CAAA;AACvB,MAAMY,gCAAgC,GAAG,EAAE,CAAA;AAElD,MAAMe,mBAAmB,GAAGA,CAAC;EAC3BnR,KAAK;EACLmI,QAAQ;EACRiJ,gBAAgB;EAChBzF,QAAQ;EACR9I,KAAK;AACL6I,EAAAA,WAAW,GAAG,aAAa;AAC3B1F,EAAAA,SAAS,GAAGrB,mBAAmB;EAC/B4C,OAAO;EACPf,aAAa;EACbyF,MAAM;AACNoF,EAAAA,SAAS,GAAG,YAAY;EACxBjF,YAAY;AACZ/K,EAAAA,IAAI,GAAG,OAAO;AACduK,EAAAA,MAAM,GAAG,YAAY;EACrB0F,iBAAiB;AACjBC,EAAAA,SAAS,GAAG,IAAI;AAChBzF,EAAAA,UAAU,GAAG,KAAK;EAClBI,YAAY;EACZsF,UAAU;AACVxF,EAAAA,MAAM,GAAG,MAAM;EACfH,MAAM;AACN4F,EAAAA,WAAW,GAAG,KAAK;AACnB1F,EAAAA,aAAa,GAAG,KAAK;AACrBM,EAAAA,QAAQ,GAAG,IAAA;AAAI,CACE,KAAI;AACrB,EAAA,MAAMC,YAAY,GAAGpO,MAAM,CAAiB,IAAI,CAAC,CAAA;AACjD,EAAA,MAAMwT,WAAW,GAAG1R,KAAK,IAAIoM,YAAY,CAAA;AACzC,EAAA,MAAMuF,iBAAiB,GAAGzT,MAAM,CAAqB,IAAI,CAAC,CAAA;EAC1D,MAAM,CAAC0T,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGnT,QAAQ,CAC1D,EAAE,CACH,CAAA;AAED,EAAA,MAAMoT,OAAO,GAAG,IAAIhF,IAAI,EAAE,CAAA;EAE1B,MAAM,CAACiF,YAAY,EAAEC,eAAe,CAAC,GAAGtT,QAAQ,CAC9CgT,WAAW,CACZ,CAAA;AAED,EAAA,MAAM,CAACO,uBAAuB,EAAEC,0BAA0B,CAAC,GAAGxT,QAAQ,CAEpEgT,WAAW,GAAGnD,UAAU,CAACmD,WAAW,CAAC,GAAGxR,SAAS,CAAC,CAAA;EAEpD,MAAM,CAACwK,MAAM,EAAE6B,SAAS,CAAC,GAAG7N,QAAQ,CAAC+S,WAAW,CAAC,CAAA;EACjD,MAAM,CAACzE,WAAW,EAAEC,cAAc,CAAC,GAAGvO,QAAQ,CAC5CgT,WAAW,GAAG,IAAI5E,IAAI,CAAC4E,WAAW,CAAC,CAACxE,WAAW,EAAE,GAAG4E,OAAO,CAAC5E,WAAW,EAAE,CAC1E,CAAA;EAED,MAAM,CAACN,YAAY,EAAEC,eAAe,CAAC,GAAGnO,QAAQ,CAC9CgT,WAAW,GAAG,IAAI5E,IAAI,CAAC4E,WAAW,CAAC,CAAC3E,QAAQ,EAAE,GAAG+E,OAAO,CAAC/E,QAAQ,EAAE,CACpE,CAAA;EAED,MAAM,CAACI,QAAQ,EAAEC,WAAW,CAAC,GAAG1O,QAAQ,CACtCsN,MAAM,KAAK,OAAO,GAAG,OAAO,GAAGA,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,KAAK,CAClE,CAAA;EAED,MAAMqB,YAAY,GAChBpB,MAAM,EAAEqB,WAAW,IACnBvM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE,EAAA;GAAI,EAAE,CAACgF,CAAC,EAAEkI,CAAC,KAC9B,IAAIT,IAAI,CAAC,CAAC,EAAES,CAAC,CAAC,CAACC,cAAc,CAACvB,MAAM,EAAEA,MAAM,IAAI,SAAS,EAAE;AACzDwB,IAAAA,KAAK,EAAE,OAAA;AACR,GAAA,CAAC,CACH,CAAA;EAEH,MAAMC,cAAc,GAAGzB,MAAM,EAAE0B,aAAa,IAAI,CAC9C,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,CACL,CAAA;AAED3G,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM4G,kBAAkB,GAAIC,KAAiB,IAAI;AAC/C,MAAA,IACEvB,YAAY,CAACrN,OAAO,IACpB,CAACqN,YAAY,CAACrN,OAAO,CAAC6O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACpD;QACA6D,SAAS,CAAC,KAAK,CAAC,CAAA;AAClB,OAAA;KACD,CAAA;AAED,IAAA,MAAM4F,UAAU,GAAG,IAAIC,eAAe,EAAE,CAAA;AAExC,IAAA,IAAI1H,MAAM,EAAE;AACV2H,MAAAA,iCAAiC,EAAE,CAAA;AAEnCpV,MAAAA,QAAQ,CAAC8Q,gBAAgB,CAAC,QAAQ,EAAEsE,iCAAiC,EAAE;QACrEC,MAAM,EAAEH,UAAU,CAACG,MAAAA;AACpB,OAAA,CAAC,CAAA;AAEFrV,MAAAA,QAAQ,CAAC8Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,EAAE;QACzD0E,MAAM,EAAEH,UAAU,CAACG,MAAAA;AACpB,OAAA,CAAC,CAAA;AACJ,KAAA;AAEA,IAAA,OAAO,MAAK;MACVH,UAAU,CAACI,KAAK,EAAE,CAAA;KACnB,CAAA;AACH,GAAC,EAAE,CAAC7H,MAAM,CAAC,CAAC,CAAA;AAEZ1D,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAIsK,iBAAiB,IAAIhF,YAAY,CAACrN,OAAO,EAAE;MAC7C0S,iBAAiB,CAAC1S,OAAO,GAAGqS,iBAAiB,CAAChF,YAAY,CAACrN,OAAO,CAAC,CAAA;AACrE,KAAA;AACF,GAAC,EAAE,CAACqS,iBAAiB,CAAC,CAAC,CAAA;EAEvB,MAAMzB,WAAW,GAAGA,CAAClB,IAAY,EAAElB,KAAa,KAC9C,IAAIX,IAAI,CAAC6B,IAAI,EAAElB,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAACsB,OAAO,EAAE,CAAA;AAExC,EAAA,MAAMyD,eAAe,GAAGA,CAAC7D,IAAY,EAAElB,KAAa,KAClD,IAAIX,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE,CAAC,CAAC,CAACmC,MAAM,EAAE,CAAA;EAEnC,SAASrB,UAAUA,CAACL,IAAU,EAAA;AAC5B,IAAA,IAAI,OAAOtC,MAAM,KAAK,UAAU,EAAE;MAChC,OAAOA,MAAM,CAACsC,IAAI,CAAC,CAAA;AACrB,KAAA;AAEA,IAAA,IAAI,OAAOtC,MAAM,KAAK,QAAQ,EAAE;AAC9BsC,MAAAA,IAAI,GAAG,IAAIpB,IAAI,CAACoB,IAAI,CAAC,CAAA;AAErB,MAAA,OAAOtC,MAAM,CACVgD,OAAO,CAAC,MAAM,EAAEV,IAAI,CAAChB,WAAW,EAAE,CAAC2B,QAAQ,EAAE,CAAC,CAC9CD,OAAO,CAAC,IAAI,EAAE,CAACV,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,EAAE8B,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAChEF,OAAO,CAAC,IAAI,EAAEV,IAAI,CAACa,OAAO,EAAE,CAACF,QAAQ,EAAE,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;AAC9D,KAAA;IAEA,OAAO,CAAA,EAAGZ,IAAI,CAAChB,WAAW,EAAE,CAAA,CAAA,EAAIgB,IAAI,CAACnB,QAAQ,EAAE,GAAG,CAAC,CAAImB,CAAAA,EAAAA,IAAI,CAACa,OAAO,EAAE,CAAE,CAAA,CAAA;AACzE,GAAA;EAEA,MAAMd,YAAY,GAAGA,CAACsC,GAAW,EAAE9C,KAAa,EAAEkB,IAAY,KAAI;AAChE,IAAA,IAAIhD,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEA,MAAMuC,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE8C,GAAG,CAAC,CAAA;IAEvC,IAAIrE,YAAY,GAAGgC,IAAI,EAAE;AAAE9I,MAAAA,IAAI,EAAElF,SAAS;AAAEuO,MAAAA,EAAE,EAAEvO,SAAAA;AAAW,KAAA,CAAC,EAAE;AAC5D,MAAA,OAAA;AACF,KAAA;IAEA2M,eAAe,CAACY,KAAK,CAAC,CAAA;IACtBR,cAAc,CAAC0B,IAAI,CAAC,CAAA;IACpBqD,eAAe,CAAC9D,IAAI,CAAC,CAAA;AAErB,IAAA,MAAMuE,SAAS,GAAGlE,UAAU,CAACL,IAAI,CAAC,CAAA;IAClCgE,0BAA0B,CAACO,SAAS,CAAC,CAAA;IACrCtK,QAAQ,GAAG+F,IAAI,CAACI,WAAW,EAAE,EAAEmE,SAAS,CAAC,CAAA;IACzCrB,gBAAgB,GAAGlD,IAAI,CAACI,WAAW,EAAE,EAAEmE,SAAS,EAAE;AAAEC,MAAAA,KAAK,EAAExS,SAAAA;AAAS,KAAE,CAAC,CAAA;IACvEqM,SAAS,CAAC,KAAK,CAAC,CAAA;GACjB,CAAA;EAED,MAAMoG,cAAc,GAAGA,MAAK;IAC1BX,eAAe,CAAC9R,SAAS,CAAC,CAAA;IAC1BgS,0BAA0B,CAAChS,SAAS,CAAC,CAAA;AACrCiI,IAAAA,QAAQ,GAAG,IAAI,EAAE,EAAE,CAAC,CAAA;GACrB,CAAA;EAED,MAAMqG,eAAe,GAAIf,KAAa,IAAI;AACxC,IAAA,MAAMS,IAAI,GAAG,IAAIpB,IAAI,CAACE,WAAW,EAAES,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOvB,YAAY,GAAGgC,IAAI,EAAE;AAAE9I,MAAAA,IAAI,EAAElF,SAAS;AAAEuO,MAAAA,EAAE,EAAEvO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,MAAMwO,cAAc,GAAIC,IAAY,IAAI;AACtC,IAAA,MAAMT,IAAI,GAAG,IAAIpB,IAAI,CAAC6B,IAAI,GAAG,CAAC,EAAE/B,YAAY,EAAE,CAAC,CAAC,CAAA;IAEhD,OAAOV,YAAY,GAAGgC,IAAI,EAAE;AAAE9I,MAAAA,IAAI,EAAElF,SAAS;AAAEuO,MAAAA,EAAE,EAAEvO,SAAAA;AAAS,KAAE,CAAC,CAAA;GAChE,CAAA;EAED,SAASmS,iCAAiCA,GAAA;IACxC,MAAMO,yBAAyB,GAC7B,CAACtG,YAAY,CAACrN,OAAO,EAAEgI,YAAY,IAAI,CAAC,IAAIiK,eAAe,CAAA;AAE7D,IAAA,MAAM2B,0BAA0B,GAC9BvG,YAAY,CAACrN,OAAO,EAAE6T,qBAAqB,EAAE,CAACC,GAAG,IAAI,CAAC,CAAA;AAExD,IAAA,MAAMC,6BAA6B,GACjCC,MAAM,CAACC,WAAW,IACjB5G,YAAY,CAACrN,OAAO,EAAE6T,qBAAqB,EAAE,CAACK,MAAM,IAAI,CAAC,CAAC,CAAA;AAE7D,IAAA,MAAMC,8BAA8B,GAClC9G,YAAY,CAACrN,OAAO,EAAE6J,aAAa,CAAC,CAAA,CAAA,EAAI9C,SAAS,CAAW,SAAA,CAAA,CAAC,EACzDiB,YAAY,IAAI,CAAC,CAAA;IAEvB4K,qBAAqB,CACnB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC1R,QAAQ,CAACkR,SAAS,CAAC,GACvC;AACEnK,MAAAA,QAAQ,EAAE,UAAU;MACpB6L,GAAG,EACDF,0BAA0B,GAAGO,8BAA8B,GAAG,CAAC,GAC3DR,yBAAyB,GACzB,CAACQ,8BAAAA;AACR,KAAA,GACD;AACElM,MAAAA,QAAQ,EAAE,UAAU;MACpB6L,GAAG,EACDC,6BAA6B,GAAGI,8BAA8B,GAC1D,CAAC,GACD,EAAEA,8BAA8B,GAAGR,yBAAyB,CAAA;AACnE,KAAA,CACN,CAAA;AACH,GAAA;EAEA,MAAM7C,SAAS,GAAGnD,YAAY,KAAK,CAAC,GAAG4C,YAAY,GAAG5C,YAAY,GAAG,CAAC,CAAA;EACtE,MAAMyG,SAAS,GAAGzG,YAAY,KAAK4C,YAAY,GAAG,CAAC,GAAG5C,YAAY,GAAG,CAAC,CAAA;EACtE,MAAM0G,aAAa,GAAG1G,YAAY,KAAK,CAAC,GAAGI,WAAW,GAAG,CAAC,GAAGA,WAAW,CAAA;EACxE,MAAMuG,aAAa,GACjB3G,YAAY,KAAK4C,YAAY,GAAGxC,WAAW,GAAG,CAAC,GAAGA,WAAW,CAAA;AAE/D,EAAA,MAAMgD,SAAS,GAAGH,WAAW,CAAC7C,WAAW,EAAEJ,YAAY,CAAC,CAAA;AACxD,EAAA,MAAM+C,QAAQ,GAAG6C,eAAe,CAACxF,WAAW,EAAEJ,YAAY,CAAC,CAAA;AAC3D,EAAA,MAAMkD,aAAa,GAAGD,WAAW,CAACyD,aAAa,EAAEvD,SAAS,CAAC,CAAA;AAC3D,EAAA,MAAMyD,aAAa,GACjBpD,gCAAgC,IAAIT,QAAQ,GAAGK,SAAS,CAAC,CAAA;AAE3D,EAAA,MAAMM,IAAI,GAAG,CACX,GAAGvP,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAEsP,QAAAA;AAAU,GAAA,EAAE,CAACtK,CAAC,EAAEkI,CAAC,MAAM;AAC7CgD,IAAAA,GAAG,EAAET,aAAa,GAAGH,QAAQ,GAAGpC,CAAC,GAAG,CAAC;AACrCtO,IAAAA,OAAO,EAAE,KAAK;AACdwO,IAAAA,KAAK,EAAEsC,SAAS;AAChBpB,IAAAA,IAAI,EAAE2E,aAAAA;AACP,GAAA,CAAC,CAAC,EACH,GAAGvS,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAE2P,SAAAA;AAAW,GAAA,EAAE,CAAC3K,CAAC,EAAEkI,CAAC,MAAM;IAC9CgD,GAAG,EAAEhD,CAAC,GAAG,CAAC;AACVtO,IAAAA,OAAO,EAAE,IAAI;AACbwO,IAAAA,KAAK,EAAEb,YAAY;AACnB+B,IAAAA,IAAI,EAAE3B,WAAAA;AACP,GAAA,CAAC,CAAC,EACH,GAAGjM,KAAK,CAACqE,IAAI,CAAC;AAAE/E,IAAAA,MAAM,EAAEmT,aAAAA;AAAe,GAAA,EAAE,CAACnO,CAAC,EAAEkI,CAAC,MAAM;IAClDgD,GAAG,EAAEhD,CAAC,GAAG,CAAC;AACVtO,IAAAA,OAAO,EAAE,KAAK;AACdwO,IAAAA,KAAK,EAAE4F,SAAS;AAChB1E,IAAAA,IAAI,EAAE4E,aAAAA;GACP,CAAC,CAAC,CACJ,CAAA;EAED,OACEjM;AACEvK,IAAAA,GAAG,EAAEuP,YAAY;AACjBnG,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,YAAY,EACxB;MACEuB,OAAO;AACP,MAAA,CAAC,CAAGvB,EAAAA,SAAS,CAAI3E,CAAAA,EAAAA,IAAI,EAAE,GAAGA,IAAAA;AAC3B,KAAA,CACF,CAAC;eAEFoG,GAAK,CAAA,KAAA,EAAA;MAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AAAAE,MAAAA,QAAA,EAC1CoB,IACE,CAAA,QAAA,EAAA;AAAAhK,QAAAA,IAAI,EAAC,QAAQ;AACb6I,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;UACE+K,UAAU,EAAE,CAAC1E,QAAQ;AACrB,UAAA,CAAC,CAAGrG,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,UAAA,CAAC,GAAGmD,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;UAC9B,CAAC,CAAA,EAAG2E,SAAS,CAAA,SAAA,CAAW,GAAG2F,QAAAA;AAC5B,SAAA,CACF,CAAC;AACFA,QAAAA,QAAQ,EAAEA,QAAQ;AAClB0D,QAAAA,OAAO,EAAEA,MAAM9C,SAAS,CAAC,CAAC7B,MAAM,CAAC;QAAAxE,QAAA,EAAA,CAEhC2F,MAAM,IAAI,IAAI,EACfpE,GAAA,CAAA,OAAA,EAAA;AACEpG,UAAAA,IAAI,EAAE4P,YAAU;AAChBtF,UAAAA,QAAQ,EAAEA,QAAQ;AAClBqF,UAAAA,QAAQ,EAAEjF,aAAa;UACvB5F,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAA+B,6BAAA,CAAA;AACtD0F,UAAAA,WAAW,EAAEA,WAAW;AACxBtO,UAAAA,KAAK,EAAE;AAAEqW,YAAAA,OAAO,EAAE/I,MAAM,GAAG,KAAK,GAAG,CAAA;WAAG;AACtC0B,UAAAA,YAAY,EAAE6F,uBAAAA;AAAuB,SAAA,CACrC,EACF3K,IAAM,CAAA,MAAA,EAAA;UAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;UAAAE,QAAA,EAAA,CACjC4F,UAAU,IAAIiG,YAAY,GACzBtK,GAAA,CAAA,MAAA,EAAA;YAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEqJ,YAAAA,OAAO,EAAEsD,cAAc;AAAAzM,YAAAA,QAAA,EAC3D,OAAO4F,UAAU,KAAK,QAAQ,IAAIA,UAAU,CAAC4H,SAAS,GACrD5H,UAAU,CAAC4H,SAAS,GAEpBjM,GAAA,CAACsC,SAAS,EAAG,EAAA,CAAA;WAEV,CAAA,GAEPyH,UAAU,IAAI/J,IAACwD,YAAY,EAAA,EAAA,CAC5B,EACApI,KAAK,IAAI2D,aAAa,GAAGiB,GAAC,CAAA0D,SAAS,EAAG,EAAA,CAAA,GAAG,IAAI,CAAA;UACzC,CAAA;OACA,CAAA;AAAA,KAAA,CACL,EAEN1D,GACE,CAAA,KAAA,EAAA;AAAArK,MAAAA,KAAK,EAAEuU,iBAAiB,CAAC1S,OAAO,GAAG;AAAEiI,QAAAA,QAAQ,EAAE,UAAA;OAAY,GAAG,EAAE;MAChEf,SAAS,EAAEZ,IAAI,CAAC,CACd8L,SAAS,EACT,CAAA,EAAGrL,SAAS,CAAA,iBAAA,CAAmB,EAC/B;AACE2N,QAAAA,IAAI,EAAEjJ,MAAAA;AACP,OAAA,CACF,CAAC;AAEDxE,MAAAA,QAAA,EAAAwE,MAAM,IACLpD,IAAK,CAAA,KAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAW,SAAA,CAAA;AAAE5I,QAAAA,KAAK,EAAEwU,kBAAkB;AAChE1L,QAAAA,QAAA,EAAA,CAAAoB,IAAA,CAAA,KAAA,EAAA;UAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAAAE,UAAAA,QAAA,EAAA,CACnCoB,IAAK,CAAA,KAAA,EAAA;YAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,YAAA,CAAA;uBACxCyB,GAAQ,CAAA,QAAA,EAAA;cAAA4H,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC;AAElDpJ,cAAAA,QAAA,EAAA,QAAA;AAAA,aAAA,CAAA,EACTuB,GACE,CAAA,QAAA,EAAA;cAAA4H,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAK,CAAC,IACFtC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAEE,YAAY,IACnDD,CAAC,GAAG,CAAC,CACV;AAAArJ,cAAAA,QAAA,EAAA,QAAA;AAAA,aAAA,CAII,CAAA;YACL,EACNoB,IAAA,CAAA,KAAA,EAAA;YAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAmB,iBAAA,CAAA;AAAAE,YAAAA,QAAA,EAAA,CAC7CuB;AACEnK,cAAAA,IAAI,EAAC,QAAQ;cACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAChCqJ,cAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,MAAM,CAAC;wBAEjCJ,WAAAA;AAAW,aAAA,CACL,EACTvF,GACE,CAAA,QAAA,EAAA;AAAAnK,cAAAA,IAAI,EAAC,QAAQ;cACb6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAChCqJ,cAAAA,OAAO,EAAEA,MAAMjC,WAAW,CAAC,OAAO,CAAC;cAElClH,QAAA,EAAAmH,YAAY,CAACT,YAAY,CAAA;cACnB,CAAA;AACL,WAAA,CAAA,EACNtF;YAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,YAAA,CAAA;uBACxCyB,GACE,CAAA,QAAA,EAAA;cAAA4H,OAAO,EAAEA,MACPxC,eAAe,CAAE0C,CAAS,IACxBA,CAAC,KAAKC,YAAY,IACbvC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IACxCC,CAAC,GAAG,CAAC,CACV;;cAII,EACT9H,GAAA,CAAA,QAAA,EAAA;cAAQ4H,OAAO,EAAEA,MAAMpC,cAAc,CAAEqC,CAAS,IAAKA,CAAC,GAAG,CAAC,CAAC;AAElDpJ,cAAAA,QAAA,EAAA,QAAA;AAAA,aAAA,CAAA,CAAA;AAAA,WAAA,CACL,CAAA;UACF,EAELiH,QAAQ,KAAK,KAAK,IACjB7F,IAAA,CAAA,KAAA,EAAA;UAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAW,SAAA,CAAA;UAAAE,QAAA,EAAA,CACpCwH,cAAc,CAAC7N,GAAG,CAAC0Q,GAAG,IACrB9I,GAAA,CAAA,KAAA,EAAA;YAAetB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAa,WAAA,CAAA;sBAChDuK,GAAAA;WAAG,EADIA,GAAG,CAGd,CAAC,EACDD,IAAI,CAACzQ,GAAG,CAAC,CAAC;YAAE0Q,GAAG;YAAEtR,OAAO;YAAEwO,KAAK;AAAEkB,YAAAA,IAAAA;WAAM,EAAEiF,GAAG,KAAI;YAC/C,MAAMpD,UAAU,GACduB,YAAY,IACZA,YAAY,CAAChD,OAAO,EAAE,KAAKwB,GAAG,IAC9BwB,YAAY,CAAChF,QAAQ,EAAE,KAAKU,KAAK,IACjCsE,YAAY,CAAC7E,WAAW,EAAE,KAAKyB,IAAI,CAAA;YAErC,OACElH,GAAA,CAAA,QAAA,EAAA;AAEEtB,cAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,MAAM,EAClB;AACE,gBAAA,CAAC,CAAGA,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGwK,UAAU;AACrC,gBAAA,CAAC,CAAGxK,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAG,CAAC/G,OAAAA;AAChC,eAAA,CACF,CAAC;cACFoQ,OAAO,EAAEA,MAAMpB,YAAY,CAACsC,GAAG,EAAE9C,KAAK,EAAEkB,IAAI,CAAC;AAC7ChD,cAAAA,QAAQ,EAAEO,YAAY,GAAG,IAAIY,IAAI,CAAC6B,IAAI,EAAElB,KAAK,EAAE8C,GAAG,CAAC,EAAE;AACnDnL,gBAAAA,IAAI,EAAElF,SAAS;AACfuO,gBAAAA,EAAE,EAAEvO,SAAAA;AACL,eAAA,CAAC;AAEDgG,cAAAA,QAAA,EAAAqK,GAAAA;aAdI,EAAA,CAAG5B,EAAAA,IAAI,CAAIlB,CAAAA,EAAAA,KAAK,IAAI8C,GAAG,CAAA,CAAA,EAAIqD,GAAG,CAAA,CAAE,CAe9B,CAAA;AAEb,WAAC,CAAC,CAAA;SACE,CACP,EAEAzG,QAAQ,KAAK,OAAO,IACnB1F,GAAA,CAAA,KAAA,EAAA;UAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAAAE,UAAAA,QAAA,EAChCmH,YAAY,CAACxN,GAAG,CAAC,CAAC0P,CAAC,EAAEhC,CAAC,KACrB9F,GAAA,CAAA,QAAA,EAAA;YAEEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;YAC/BqJ,OAAO,EAAEA,MAAK;cACZxC,eAAe,CAACU,CAAC,CAAC,CAAA;cAClBH,WAAW,CAAC,KAAK,CAAC,CAAA;aACnB;AACDzB,YAAAA,QAAQ,EAAE6C,eAAe,CAACjB,CAAC,CAAC;sBAE3BgC,CAAAA;WAAC,EARGhC,CAAC,CAUT,CAAA;SACG,CACP,EAEAJ,QAAQ,KAAK,MAAM,IAClB1F;UAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;oBAChCjF,KAAK,CAACqE,IAAI,CAAC;AAAE/E,YAAAA,MAAM,EAAE,EAAA;WAAI,EAAE,CAACgF,CAAC,EAAEkI,CAAC,KAAI;AACnC,YAAA,MAAMoB,IAAI,GAAG3B,WAAW,GAAG6D,UAAU,GAAGtD,CAAC,CAAA;YAEzC,OACE9F,GAEE,CAAA,QAAA,EAAA;cAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B2F,cAAAA,QAAQ,EAAE+C,cAAc,CAACC,IAAI,CAAC;cAC9BU,OAAO,EAAEA,MAAK;gBACZpC,cAAc,CAAC0B,IAAI,CAAC,CAAA;gBACpBvB,WAAW,CAAC,OAAO,CAAC,CAAA;eACrB;wBAEAuB,IAAAA;aAAI,EARAA,IAAI,CASF,CAAA;WAEZ,CAAA;AAAC,SAAA,CAEL,EAEA4C,SAAS,IACR9J,GAAA,CAAA,KAAA,EAAA;UACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAa,WAAA,CAAA;AACpC5I,UAAAA,KAAK,EAAE;AAAEyW,YAAAA,UAAU,EAAE,QAAA;WAAU;oBAE/BpM,GACE,CAAA,QAAA,EAAA;YAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;YAChC2F,QAAQ,EAAEO,YAAY,GACpB,IAAIY,IAAI,CACNgF,OAAO,CAAC/C,OAAO,EAAE,EACjB+C,OAAO,CAAC/E,QAAQ,EAAE,EAClB+E,OAAO,CAAC5E,WAAW,EAAE,CACtB,EACD;AAAE9H,cAAAA,IAAI,EAAElF,SAAS;AAAEuO,cAAAA,EAAE,EAAEvO,SAAAA;AAAS,aAAE,CACnC;YACDmP,OAAO,EAAEA,MAAK;AACZpB,cAAAA,YAAY,CACV6D,OAAO,CAAC/C,OAAO,EAAE,EACjB+C,OAAO,CAAC/E,QAAQ,EAAE,EAClB+E,OAAO,CAAC5E,WAAW,EAAE,CACtB,CAAA;aACF;AAEAhH,YAAAA,QAAA,EAAA+F,MAAM,EAAE6H,KAAK,IAAI,OAAA;WAAO,CAAA;AAEvB,SAAA,CACP,CAAA;OACG,CAAA;AAEJ,KAAA,CAAA,CAAA;AAAA,GAAA,CACF,CAAA;AAEV,CAAC,CAAA;AAED,MAAMC,UAAU,GAAGpU,MAAM,CAACqU,MAAM,CAAC7C,mBAAmB,EAAE;AACpD1F,EAAAA,WAAAA;AACD,CAAA;;;;;AChdD,MAAMwI,KAAK,GAAG,EAAE,CAAA;AAChB,MAAMhD,UAAU,GAAG,EAAE,CAAA;AACrB,MAAMiD,mBAAmB,GAAG,CAAC,CAAA;AAC7B,MAAMC,mBAAmB,GAAG,EAAE,CAAA;AAC9B,MAAMC,uBAAuB,GAAG,CAAC,CAAA;AAEjC,MAAMC,GAAG,GAAIC,GAAW,IAAahS,MAAM,CAACgS,GAAG,CAAC,CAACxF,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAE3DyF,MAAAA,UAAU,GAAwBA,CAAC;AACvCvO,EAAAA,SAAS,GAAGnB,mBAAmB;EAC/BzH,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;EACdqO,YAAY;AACZzI,EAAAA,aAAa,GAAG,KAAK;AACrBH,EAAAA,MAAM,GAAG,UAAU;AACnBQ,EAAAA,YAAY,GAAG,IAAI;EACnBpM,KAAK,EAAEyU,SAAS,GAAG,IAAI;EACvBtM,QAAQ;EACRuM,MAAM;EACNC,QAAQ;AACRC,EAAAA,OAAO,GAAG,IAAI;AACdlB,EAAAA,SAAS,GAAGjM,GAAC,CAAAsC,SAAS,EAAG,EAAA,CAAA;AACzByH,EAAAA,UAAU,GAAG/J,GAAC,CAAA4D,QAAQ,EAAG,EAAA,CAAA;AACzBK,EAAAA,WAAW,GAAG,aAAA;AAAa,CAC5B,KAAI;EACH,MAAM,CAACmJ,IAAI,EAAEC,OAAO,CAAC,GAAGpW,QAAQ,CAAU,KAAK,CAAC,CAAA;EAChD,MAAM,CAACqW,UAAU,EAAEC,aAAa,CAAC,GAAGtW,QAAQ,CAC1C+V,SAAS,IAAIrI,YAAY,GAAG,IAAIU,IAAI,CAAC2H,SAAS,IAAIrI,YAAY,CAAC,GAAG,IAAI,CACvE,CAAA;EAED,MAAM,CAAC6I,SAAS,EAAEC,YAAY,CAAC,GAAGxW,QAAQ,CAAc,IAAI,CAAC,CAAA;AAE7D,EAAA,MAAMyW,QAAQ,GAAGjX,MAAM,CAAmB,IAAI,CAAC,CAAA;AAC/C,EAAA,MAAMkX,QAAQ,GAAGlX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC7C,EAAA,MAAMmX,OAAO,GAAGnX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC5C,EAAA,MAAMoX,SAAS,GAAGpX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAC9C,EAAA,MAAMqX,SAAS,GAAGrX,MAAM,CAAiB,IAAI,CAAC,CAAA;AAE9C8I,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM4G,kBAAkB,GAAIrF,CAAa,IAAI;AAC3C,MAAA,IACE6M,QAAQ,CAACnW,OAAO,IAChB,CAACmW,QAAQ,CAACnW,OAAO,CAAC6O,QAAQ,CAACvF,CAAC,CAACG,MAAc,CAAC,IAC5CyM,QAAQ,CAAClW,OAAO,IAChB,CAACkW,QAAQ,CAAClW,OAAO,CAAC6O,QAAQ,CAACvF,CAAC,CAACG,MAAc,CAAC,EAC5C;QACAoM,OAAO,CAAC,KAAK,CAAC,CAAA;QACdI,YAAY,CAAC,IAAI,CAAC,CAAA;QAElB,IAAI,CAACH,UAAU,EAAE;AACf5M,UAAAA,QAAQ,GAAG,IAAgB,EAAE,EAAE,CAAC,CAAA;AAClC,SAAA;AACF,OAAA;KACD,CAAA;AAEDlL,IAAAA,QAAQ,CAAC8Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;AAE1D,IAAA,OAAO,MAAK;AACV3Q,MAAAA,QAAQ,CAAC+Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;KAC9D,CAAA;AACH,GAAC,EAAE,CAACmH,UAAU,EAAE5M,QAAQ,CAAC,CAAC,CAAA;AAE1BnB,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI6N,IAAI,EAAE;MACRK,YAAY,CAACH,UAAU,GAAG,IAAIjI,IAAI,CAACiI,UAAU,CAAC,GAAG,IAAI,CAAC,CAAA;MAEtD,MAAM;AAAES,QAAAA,IAAI,GAAG,CAAC;AAAEC,QAAAA,MAAM,GAAG,CAAC;AAAEC,QAAAA,MAAM,GAAG,CAAA;AAAG,OAAA,GAAGC,YAAY,CAACZ,UAAU,CAAC,CAAA;AACrEa,MAAAA,WAAW,CAACP,OAAsC,EAAEG,IAAI,IAAI,CAAC,CAAC,CAAA;AAC9DI,MAAAA,WAAW,CAACN,SAAwC,EAAEG,MAAM,IAAI,CAAC,CAAC,CAAA;AAClEG,MAAAA,WAAW,CAACL,SAAwC,EAAEG,MAAM,IAAI,CAAC,CAAC,CAAA;AACpE,KAAA;AACF,GAAC,EAAE,CAACb,IAAI,EAAEE,UAAU,CAAC,CAAC,CAAA;AAEtB/N,EAAAA,SAAS,CAAC,MAAK;IACb2N,QAAQ,GAAGM,SAAS,CAAC,CAAA;AACvB,GAAC,EAAE,CAACA,SAAS,EAAEN,QAAQ,CAAC,CAAC,CAAA;EAEzB,MAAMpG,UAAU,GAAIL,IAAiB,IAAY;IAC/C,IAAI,CAACA,IAAI,EAAE;AACT,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;IAEA,OAAO,CAAA,EAAGtC,MAAM,CAAE,CAAA,CACfgD,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC2H,QAAQ,EAAE,CAAC,CAAC,CACtCjH,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC4H,UAAU,EAAE,CAAC,CAAC,CACxClH,OAAO,CAAC,OAAO,EAAEyF,GAAG,CAACnG,IAAI,CAAC6H,UAAU,EAAE,CAAC,CAAC,CAAA;GAC5C,CAAA;EAED,MAAMJ,YAAY,GAAIzH,IAAiB,KAAM;AAC3CsH,IAAAA,IAAI,EAAEtH,IAAI,EAAE2H,QAAQ,EAAE,IAAI,IAAI;AAC9BJ,IAAAA,MAAM,EAAEvH,IAAI,EAAE4H,UAAU,EAAE,IAAI,IAAI;AAClCJ,IAAAA,MAAM,EAAExH,IAAI,EAAE6H,UAAU,EAAE,IAAI,IAAA;AAC/B,GAAA,CAAC,CAAA;AAEF,EAAA,MAAMC,WAAW,GAAGA,CAClB1Y,IAAkC,EAClCkY,IAAI,GAAG,CAAC,EACRC,MAAM,GAAG,CAAC,KACE;IACZ,MAAM9J,QAAQ,GAAG6I,YAAY,GAAGS,SAAS,IAAI,IAAInI,IAAI,EAAE,CAAC,CAAA;IAExD,IAAI,CAACnB,QAAQ,EAAE;AACb,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;IAEA,IAAIrO,IAAI,KAAK,MAAM,EAAE;AACnB,MAAA,OAAOqO,QAAQ,CAACsK,aAAa,IAAI,IAAI,EAAE,CAAA;AACzC,KAAA;IAEA,IAAI3Y,IAAI,KAAK,QAAQ,EAAE;AACrB,MAAA,OAAOqO,QAAQ,CAACuK,eAAe,GAAGV,IAAI,CAAC,IAAI,EAAE,CAAA;AAC/C,KAAA;IAEA,IAAIlY,IAAI,KAAK,QAAQ,EAAE;MACrB,OAAOqO,QAAQ,CAACwK,eAAe,GAAGX,IAAI,EAAEC,MAAM,CAAC,IAAI,EAAE,CAAA;AACvD,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACV,CAAA;AAED,EAAA,MAAMG,WAAW,GAAGA,CAClB7Y,GAA8B,EAC9BqZ,aAAqB,KACb;AACR,IAAA,MAAMC,EAAE,GAAGtZ,GAAG,CAACkC,OAAO,EAAEqX,gBAAgB,CAAC,KAAK,CAAC,CAACF,aAAa,CAAC,CAAA;AAE9D,IAAA,IAAIC,EAAE,IAAItZ,GAAG,CAACkC,OAAO,EAAE;AACrBlC,MAAAA,GAAG,CAACkC,OAAO,CAACsX,QAAQ,CAAC;AACnBxD,QAAAA,GAAG,EAAEsD,EAAE,CAACG,SAAS,GAAGtC,mBAAmB,GAAG,CAAC;AAC3CuC,QAAAA,QAAQ,EAAE,QAAA;AACX,OAAA,CAAC,CAAA;AACJ,KAAA;GACD,CAAA;EAED,MAAMC,eAAe,GAAGA,CAAClB,IAAY,EAAEC,MAAc,EAAEC,MAAc,KAAI;AACvE,IAAA,MAAMiB,OAAO,GAAG,IAAI7J,IAAI,EAAE,CAAA;IAC1B6J,OAAO,CAACC,QAAQ,CAACpB,IAAI,EAAEC,MAAM,EAAEC,MAAM,EAAE,CAAC,CAAC,CAAA;IACzCR,YAAY,CAACyB,OAAO,CAAC,CAAA;GACtB,CAAA;AAED,EAAA,MAAME,YAAY,GAAGA,CAACC,CAAS,EAAEC,IAAc,KAAU;IACvD,MAAM;AAAEtB,MAAAA,MAAM,GAAG,CAAC;AAAEC,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGC,YAAY,CAACV,SAAS,CAAC,CAAA;IAE1D,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACtB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;MAEA,IAAI,CAACtB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAP,eAAe,CAACI,CAAC,EAAErB,MAAM,IAAI,CAAC,EAAEC,MAAM,IAAI,CAAC,CAAC,CAAA;AAC5CE,IAAAA,WAAW,CAACP,OAAsC,EAAEyB,CAAC,CAAC,CAAA;GACvD,CAAA;AAED,EAAA,MAAME,cAAc,GAAGA,CAACzH,CAAS,EAAEwH,IAAc,KAAU;IACzD,MAAM;AAAEvB,MAAAA,IAAI,GAAG,CAAC;AAAEE,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGC,YAAY,CAACV,SAAS,CAAC,CAAA;IAExD,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACvB,IAAI,EAAE;AACTqB,QAAAA,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACvB,OAAA;MAEA,IAAI,CAACnB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAP,eAAe,CAAClB,IAAI,IAAI,CAAC,EAAEjG,CAAC,EAAEmG,MAAM,IAAI,CAAC,CAAC,CAAA;AAC1CE,IAAAA,WAAW,CAACN,SAAwC,EAAE/F,CAAC,CAAC,CAAA;GACzD,CAAA;AAED,EAAA,MAAM0H,cAAc,GAAGA,CAACC,CAAS,EAAEH,IAAc,KAAU;IACzD,MAAM;AAAEvB,MAAAA,IAAI,GAAG,CAAC;AAAEC,MAAAA,MAAM,GAAG,CAAA;AAAC,KAAE,GAAGE,YAAY,CAACV,SAAS,CAAC,CAAA;IAExD,IAAI,CAAC8B,IAAI,EAAE;MACT,IAAI,CAACvB,IAAI,EAAE;AACTqB,QAAAA,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACvB,OAAA;MAEA,IAAI,CAACpB,MAAM,EAAE;AACXuB,QAAAA,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACzB,OAAA;AACF,KAAA;IAEAN,eAAe,CAAClB,IAAI,IAAI,CAAC,EAAEC,MAAM,IAAI,CAAC,EAAEyB,CAAC,CAAC,CAAA;AAC1CtB,IAAAA,WAAW,CAACL,SAAwC,EAAE2B,CAAC,CAAC,CAAA;GACzD,CAAA;EAED,MAAMpG,WAAW,GAAIvI,CAAoC,IAAU;IACjEA,CAAC,EAAE4O,eAAe,EAAE,CAAA;IACpBnC,aAAa,CAAC,IAAI,CAAC,CAAA;IACnBE,YAAY,CAAC,IAAI,CAAC,CAAA;AAClB/M,IAAAA,QAAQ,GAAG,IAAgB,EAAE,EAAE,CAAC,CAAA;GACjC,CAAA;EAED,MAAMiP,aAAa,GAAGA,MAAW;AAC/B,IAAA,MAAMC,GAAG,GAAG,IAAIvK,IAAI,EAAE,CAAA;IACtBoI,YAAY,CAACmC,GAAG,CAAC,CAAA;IACjBrC,aAAa,CAACqC,GAAG,CAAC,CAAA;AAClBlP,IAAAA,QAAQ,GAAGkP,GAAG,EAAE9I,UAAU,CAAC8I,GAAG,CAAC,CAAC,CAAA;IAChC1C,QAAQ,GAAG0C,GAAG,CAAC,CAAA;IACfvC,OAAO,CAAC,KAAK,CAAC,CAAA;GACf,CAAA;EAED,MAAMwC,cAAc,GAAGA,MAAW;AAChC,IAAA,IAAIrC,SAAS,EAAE;MACbD,aAAa,CAACC,SAAS,CAAC,CAAA;AACxB9M,MAAAA,QAAQ,GAAG8M,SAAS,EAAE1G,UAAU,CAAC0G,SAAS,CAAC,CAAC,CAAA;MAC5CN,QAAQ,GAAGM,SAAS,CAAC,CAAA;AACvB,KAAA;IAEAH,OAAO,CAAC,KAAK,CAAC,CAAA;GACf,CAAA;EAED,MAAMyC,cAAc,GAAIhP,CAAgC,IAAI;IAC1D,MAAMiP,QAAQ,GAAGjP,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAACyX,IAAI,EAAE,CAAA;IACtC,MAAMC,SAAS,GAAG,2BAA2B,CAAA;AAC7C,IAAA,MAAMC,KAAK,GAAGH,QAAQ,CAACG,KAAK,CAACD,SAAS,CAAC,CAAA;AAEvC,IAAA,IAAIC,KAAK,EAAE;MACT,MAAM,GAAGC,IAAI,EAAEC,IAAI,EAAEC,IAAI,CAAC,GAAGH,KAAK,CAAA;AAClC,MAAA,MAAMb,CAAC,GAAGiB,QAAQ,CAACH,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5B,MAAA,MAAMrI,CAAC,GAAGwI,QAAQ,CAACF,IAAI,EAAE,EAAE,CAAC,CAAA;AAC5B,MAAA,MAAMX,CAAC,GAAGa,QAAQ,CAACD,IAAI,EAAE,EAAE,CAAC,CAAA;AAE5B,MAAA,IACEhB,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG7C,KAAK,IACT1E,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG4E,mBAAmB,IACvB+C,CAAC,IAAI,CAAC,IACNA,CAAC,GAAG/C,mBAAmB,IACvB,CAAC6B,WAAW,CAAC,MAAM,CAAC,CAAC7V,QAAQ,CAAC2W,CAAC,CAAC,IAChC,CAACd,WAAW,CAAC,QAAQ,EAAEc,CAAC,CAAC,CAAC3W,QAAQ,CAACoP,CAAC,CAAC,IACrC,CAACyG,WAAW,CAAC,QAAQ,EAAEc,CAAC,EAAEvH,CAAC,CAAC,CAACpP,QAAQ,CAAC+W,CAAC,CAAC,EACxC;QACAL,YAAY,CAACC,CAAC,CAAC,CAAA;QACfE,cAAc,CAACzH,CAAC,CAAC,CAAA;QACjB0H,cAAc,CAACC,CAAC,CAAC,CAAA;AACnB,OAAA;AACF,KAAA;GACD,CAAA;EAED,MAAMc,aAAa,GAAGA,MAAgB;AACpC,IAAA,MAAMC,KAAK,GAAGlX,KAAK,CAACqE,IAAI,CACtB;MAAE/E,MAAM,EAAE4T,KAAK,GAAGG,uBAAAA;AAAyB,KAAA,EAC3C,CAAC/O,CAAC,EAAEkI,CAAC,KAAMA,CAAC,GAAG0G,KAAK,GAAG1G,CAAC,GAAG,KAAM,CAClC,CAAA;AAED,IAAA,MAAM2K,cAAc,GAAGnX,KAAK,CAACqE,IAAI,CAC/B;MAAE/E,MAAM,EAAE8T,mBAAmB,GAAGC,uBAAAA;AAAyB,KAAA,EACzD,CAAC/O,CAAC,EAAEkI,CAAC,KAAMA,CAAC,GAAG4G,mBAAmB,GAAG5G,CAAC,GAAG,KAAM,CAChD,CAAA;IAED,MAAM;AACJiI,MAAAA,IAAI,EAAE2C,YAAY;AAClB1C,MAAAA,MAAM,EAAE2C,cAAc;AACtB1C,MAAAA,MAAM,EAAE2C,cAAAA;AACT,KAAA,GAAG1C,YAAY,CAACV,SAAS,CAAC,CAAA;AAE3B,IAAA,MAAMqD,WAAW,GAAGH,YAAY,IAAI,CAAC,CAAA;AACrC,IAAA,MAAMI,aAAa,GAAGH,cAAc,IAAI,CAAC,CAAA;IAEzC,OACE9Q,IACE,CAAA,KAAA,EAAA;AAAApB,MAAAA,QAAA,EAAA,CAAAoB,IAAA,CAAA,KAAA,EAAA;QAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAClCE,QAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,KAAA,EAAA;AAAK1K,UAAAA,GAAG,EAAEsY,OAAO;UAAElP,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAAAE,UAAAA,QAAA,EAChD+R,KAAK,CAACpY,GAAG,CAAC,CAACiX,CAAC,EAAExR,KAAK,KAClBwR,CAAC,KAAK,KAAK,GACTrP,GAEE,CAAA,KAAA,EAAA;YAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B5I,YAAAA,KAAK,EAAE;AAAEqW,cAAAA,OAAO,EAAE,CAAC;AAAE+E,cAAAA,UAAU,EAAE,MAAM;AAAEC,cAAAA,MAAM,EAAE,SAAA;aAAW;;aAFvD,CAAG3B,EAAAA,CAAC,CAAIxR,CAAAA,EAAAA,KAAK,CAAE,CAAA,CAKhB,GAENmC,GAAA,CAAA,KAAA,EAAA;AAEEtB,YAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,cAAA,CAAC,CAAGA,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAC3BgQ,WAAW,CAAC,MAAM,CAAC,CAAC7V,QAAQ,CAAC2W,CAAC,CAAC;AACjC,cAAA,CAAC,CAAG9Q,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGmS,YAAY,KAAKrB,CAAAA;AAClD,aAAA,CACF,CAAC;AACFzH,YAAAA,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,MAAM,CAAC,CAAC7V,QAAQ,CAAC2W,CAAC,CAAC,IAAID,YAAY,CAACC,CAAC,CAAC;YAAA5Q,QAAA,EAGpDmO,GAAG,CAACyC,CAAC,CAAA;WAAC,EAbFA,CAAC,CAeT,CAAA;AAEC,SAAA,CAAA,EACNrP,GAAK,CAAA,KAAA,EAAA;AAAA1K,UAAAA,GAAG,EAAEuY,SAAS;UAAEnP,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;oBAClDkS,cAAc,CAACrY,GAAG,CAAC,CAAC0P,CAAC,EAAEjK,KAAK,KAC3BiK,CAAC,KAAK,KAAK,GACT9H,GAAA,CAAA,KAAA,EAAA;YAEEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B5I,YAAAA,KAAK,EAAE;AAAEqW,cAAAA,OAAO,EAAE,CAAC;AAAE+E,cAAAA,UAAU,EAAE,MAAM;AAAEC,cAAAA,MAAM,EAAE,SAAA;aAAW;AAAAvS,YAAAA,QAAA,EAAA,GAAA;WAAA,EAFvD,CAAGqJ,EAAAA,CAAC,CAAIjK,CAAAA,EAAAA,KAAK,CAAE,CAAA,CAKhB,GAENmC,GAEE,CAAA,KAAA,EAAA;AAAAtB,YAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,cAAA,CAAC,CAAGA,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGgQ,WAAW,CACzC,QAAQ,EACRsC,WAAW,CACZ,CAACnY,QAAQ,CAACoP,CAAC,CAAC;AACb,cAAA,CAAC,CAAGvJ,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGoS,cAAc,KAAK7I,CAAAA;AACpD,aAAA,CACF,CAAC;AACFF,YAAAA,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,QAAQ,EAAEsC,WAAW,CAAC,CAACnY,QAAQ,CAACoP,CAAC,CAAC,IAC/CyH,cAAc,CAACzH,CAAC,CAAC;YAGlBrJ,QAAA,EAAAmO,GAAG,CAAC9E,CAAC,CAAA;WAhBD,EAAAA,CAAC,CAkBT,CAAA;UAEC,EACN9H,GAAA,CAAA,KAAA,EAAA;AAAK1K,UAAAA,GAAG,EAAEwY,SAAS;UAAEpP,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAClDE,UAAAA,QAAA,EAAAgS,cAAc,CAACrY,GAAG,CAAC,CAACqX,CAAC,EAAE5R,KAAK,KAC3B4R,CAAC,KAAK,KAAK,GACTzP,GAEE,CAAA,KAAA,EAAA;YAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B5I,YAAAA,KAAK,EAAE;AAAEqW,cAAAA,OAAO,EAAE,CAAC;AAAE+E,cAAAA,UAAU,EAAE,MAAM;AAAEC,cAAAA,MAAM,EAAE,SAAA;aAAW;AAAAvS,YAAAA,QAAA,EAAA,GAAA;WAAA,EAFvD,CAAGgR,EAAAA,CAAC,CAAI5R,CAAAA,EAAAA,KAAK,CAAE,CAAA,CAKhB,GAENmC;AAEEtB,YAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,OAAO,EACnB;AACE,cAAA,CAAC,GAAGA,SAAS,CAAA,cAAA,CAAgB,GAAGgQ,WAAW,CACzC,QAAQ,EACRsC,WAAW,EACXC,aAAa,CACd,CAACpY,QAAQ,CAAC+W,CAAC,CAAC;AACb,cAAA,CAAC,CAAGlR,EAAAA,SAAS,CAAgB,cAAA,CAAA,GAAGqS,cAAc,KAAKnB,CAAAA;AACpD,aAAA,CACF,CAAC;YACF7H,OAAO,EAAEA,MACP,CAAC2G,WAAW,CAAC,QAAQ,EAAEsC,WAAW,EAAEC,aAAa,CAAC,CAACpY,QAAQ,CACzD+W,CAAC,CACF,IAAID,cAAc,CAACC,CAAC,CAAC;YAAAhR,QAAA,EAGvBmO,GAAG,CAAC6C,CAAC,CAAA;WAAC,EAlBFA,CAAC,CAoBT,CAAA;AAEC,SAAA,CAAA,CAAA;AAAA,OAAA,CACF,EACN5P,IAAK,CAAA,KAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAAAE,QAAAA,QAAA,EAAA,CACnC0O,OAAO,GACNnN,GAAK,CAAA,KAAA,EAAA;UAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAAEqJ,UAAAA,OAAO,EAAE+H,aAAa;AAAAlR,UAAAA,QAAA,EAAA,KAAA;AAAA,SAAA,CAExD,GAENuB,GAAQ,CAAA,MAAA,EAAA,EAAA,CACT,EACDA,GACE,CAAA,QAAA,EAAA;UAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;UAChC2F,QAAQ,EACNwM,YAAY,KAAK,IAAI,IACrBC,cAAc,KAAK,IAAI,IACvBC,cAAc,KAAK,IAAI;AAEzBhJ,UAAAA,OAAO,EAAEiI,cAAc;AAGhBpR,UAAAA,QAAA,EAAA,IAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CACL,CAAA;AACF,KAAA,CAAA,CAAA;GAET,CAAA;EAED,OACEoB,IAAK,CAAA,KAAA,EAAA;IAAAnB,SAAS,EAAEZ,IAAI,CAAC,CAAC,CAAA,EAAGS,SAAS,CAAU,QAAA,CAAA,EAAEG,SAAS,CAAC,CAAC;AAAE/I,IAAAA,KAAK,EAAEA,KAAK;AACrE8I,IAAAA,QAAA,EAAA,CAAAoB,IAAA,CAAA,KAAA,EAAA;MACEnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AACvCqJ,MAAAA,OAAO,EAAEA,MAAMyF,OAAO,CAAC,IAAI,CAAC;AAE5B5O,MAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,OAAA,EAAA;AACE1K,QAAAA,GAAG,EAAEoY,QAAQ;AACb9T,QAAAA,IAAI,EAAE4P,UAAU;AAChBvF,QAAAA,WAAW,EAAEA,WAAW;QACxBvF,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAC/BgL,QAAAA,QAAQ,EAAEjF,aAAa;AACvB5D,QAAAA,QAAQ,EAAEoP,cAAc;AAAA,QAAA,IACnB1C,IAAI,GAAG,EAAE,GAAG;UAAE7U,KAAK,EAAEuO,UAAU,CAACwG,UAAU,CAAA;AAAC,SAAE,CAAC;QACnDL,MAAM,EAAGnM,CAA+B,IAAI;UAC1CmM,MAAM,GAAGnM,CAAC,EAAE;AAAEmQ,YAAAA,MAAM,EAAE,OAAA;AAAS,WAAA,CAAC,CAAA;AAClC,SAAA;AAAC,OAAA,CACD,EACFjR,GAAK,CAAA,KAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;QAAAE,QAAA,EACjCwN,SAAS,IAAIqB,UAAU,GACtBtN,GAAA,CAAA,MAAA,EAAA;UAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEqJ,UAAAA,OAAO,EAAEyB,WAAW;AAAA5K,UAAAA,QAAA,EACxDwN,SAAAA;AACI,SAAA,CAAA,GAEPlC,UAAU,IACR/J;UACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;UAChCqJ,OAAO,EAAE9G,CAAC,IAAG;YACXA,CAAC,CAAC4O,eAAe,EAAE,CAAA;YACnBrC,OAAO,CAAC,IAAI,CAAC,CAAA;WACd;AAEA5O,UAAAA,QAAA,EAAAsL,UAAAA;SACI,CAAA;AAEV,OAAA,CACG,CAAA;AACF,KAAA,CAAA,EAELqD,IAAI,IACHpN,GAAA,CAAA,KAAA,EAAA;AAAK1K,MAAAA,GAAG,EAAEqY,QAAQ;MAAEjP,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;MAAAE,QAAA,EAChD8R,aAAa,EAAA;AACV,KAAA,CACP,CAAA;AACG,GAAA,CAAA,CAAA;AAEV;;;;;;;;ACzbA,MAAMW,QAAQ,gBAAGC,UAAU,CACzB,CACE;AACE5S,EAAAA,SAAS,GAAGvB,iBAAiB;EAC7BzE,KAAK;AACLmG,EAAAA,SAAS,GAAG,EAAE;EACd/I,KAAK;EACLyb,QAAQ;EACRC,YAAY;EACZC,QAAQ;EACRC,MAAM;AACN3M,EAAAA,QAAQ,GAAG,IAAI;AACfhL,EAAAA,IAAI,GAAG,OAAO;EACd4X,MAAM;EACNC,aAAa;AACbC,EAAAA,OAAO,GAAG,UAAU;EACpBtW,KAAK;AACLiJ,EAAAA,UAAU,GAAG,KAAK;EAClB,GAAGrF,KAAAA;AACJ,CAAA,EACD1J,GAAsC,KACpC;AACF,EAAA,MAAM,CAACqc,UAAU,EAAEC,aAAa,CAAC,GAAG3a,QAAQ,CAACsB,KAAK,EAAE6O,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AACrE,EAAA,MAAMyK,WAAW,GAAGpb,MAAM,CAAsB,IAAI,CAAC,CAAA;AAErD8I,EAAAA,SAAS,CAAC,MAAK;IACb,MAAMuS,QAAQ,GACXxc,GAAsC,EAAEkC,OAAO,IAAIqa,WAAW,CAACra,OAAO,CAAA;IAEzE,IAAIsa,QAAQ,IAAIV,QAAQ,EAAE;AACxBU,MAAAA,QAAQ,CAACnc,KAAK,CAAC6M,MAAM,GAAG,MAAM,CAAA;MAC9BsP,QAAQ,CAACnc,KAAK,CAAC6M,MAAM,GAAG,CAAGsP,EAAAA,QAAQ,CAACC,YAAY,CAAI,EAAA,CAAA,CAAA;AAEpD,MAAA,IAAIT,QAAQ,EAAE;AACZA,QAAAA,QAAQ,CAAC;UACP/O,KAAK,EAAEuP,QAAQ,CAACE,WAAW;UAC3BxP,MAAM,EAAEsP,QAAQ,CAACC,YAAAA;AAClB,SAAA,CAAC,CAAA;AACJ,OAAA;AACF,KAAA;GACD,EAAE,CAACJ,UAAU,EAAEP,QAAQ,EAAEE,QAAQ,EAAEhc,GAAG,CAAC,CAAC,CAAA;EAEzC,MAAMuL,YAAY,GAAIC,CAAmC,IAAI;AAC3D8Q,IAAAA,aAAa,CAAC9Q,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAAC,CAAA;IAE7B,IAAIyG,KAAK,CAAC0B,QAAQ,EAAE;AAClB1B,MAAAA,KAAK,CAAC0B,QAAQ,CAACI,CAAC,CAAC,CAAA;AACnB,KAAA;GACD,CAAA;EAED,MAAMmR,aAAa,GAAInR,CAAqC,IAAI;AAC9D,IAAA,IAAIA,CAAC,CAAChJ,GAAG,KAAK,OAAO,IAAIuZ,YAAY,EAAE;MACrCA,YAAY,CAACvQ,CAAC,CAAC,CAAA;AACjB,KAAA;GACD,CAAA;EAED,MAAMuI,WAAW,GAAGA,MAAK;IACvBuI,aAAa,CAAC,EAAE,CAAC,CAAA;IAEjB,IAAI5S,KAAK,CAAC0B,QAAQ,EAAE;MAClB1B,KAAK,CAAC0B,QAAQ,CAAC;AACbO,QAAAA,MAAM,EAAE;AAAE1I,UAAAA,KAAK,EAAE,EAAA;AAAI,SAAA;AACc,OAAA,CAAC,CAAA;AACxC,KAAA;GACD,CAAA;EAED,OACEsH;AAAKnB,IAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,YAAYkT,aAAa,IAAI,EAAE,CAAE,CAAA;eAC3DzR,GACM,CAAA,UAAA,EAAA;AAAA,MAAA,GAAAhB,KAAK;MACT1J,GAAG,EAAEA,GAAG,IAAIuc,WAAW;AACvBtZ,MAAAA,KAAK,EAAEoZ,UAAU;AACjBjR,MAAAA,QAAQ,EAAEG,YAAY;AACtBqR,MAAAA,SAAS,EAAED,aAAa;AACxBtc,MAAAA,KAAK,EAAE;QAAE,GAAG4b,MAAM,EAAEO,QAAQ;QAAE,GAAGnc,KAAAA;OAAO;AACxC+I,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAIA,CAAAA,EAAAA,SAAS,CAAI3E,CAAAA,EAAAA,IAAI,IAAI2E,SAAS,CAAA,CAAA,EAAImT,OAAO,CAAIhT,CAAAA,EAAAA,SAAS,EAAE,EACxE;AACE,QAAA,CAAC,CAAGH,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAGqG,QAAQ;AACnC,QAAA,CAAC,GAAGrG,SAAS,CAAA,QAAA,CAAU,GAAGiT,MAAM,KAAK,SAAS;AAC9C,QAAA,CAAC,GAAGjT,SAAS,CAAA,MAAA,CAAQ,GAAGiT,MAAM,KAAK,OAAO,IAAIpW,KAAAA;AAC/C,OAAA,CACF,CAAA;KAAC,CACF,EAEDiJ,UAAU,IAAIsN,UAAU,IACvB3R;MAAQtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEqJ,MAAAA,OAAO,EAAEyB,WAAW;AAEpD5K,MAAAA,QAAA,EAAA,QAAA;AAAA,KAAA,CACV,CAAA;AACG,GAAA,CAAA,CAAA;AAEV,CAAC,EACF;AAEDyS,QAAQ,CAAC1P,WAAW,GAAG,UAAU;;AC7FjC,MAAM2Q,cAAc,gBAAGhB,UAAU,CAC/B,CACE;AACEvX,EAAAA,IAAI,GAAG,OAAO;EACdwB,KAAK;EACLgX,MAAM;EACNhO,MAAM;EACNiO,UAAU;EACVC,WAAW;EACXjB,YAAY;AACZnN,EAAAA,QAAQ,GAAG,KAAK;AAChBG,EAAAA,UAAU,GAAG,KAAK;AAClB9F,EAAAA,SAAS,GAAG3B,cAAc;AAC1B8B,EAAAA,SAAS,GAAG,EAAE;AACdnG,EAAAA,KAAK,GAAGE,SAAS;EACjB8Z,UAAU;EACVzS,OAAO;EACPf,aAAa;EACb,GAAGC,KAAAA;AACQ,CAAA,EACb1J,GAAmC,KACjC;AACF,EAAA,MAAMoY,QAAQ,GAAGjX,MAAM,CAAmB,IAAI,CAAC,CAAA;EAC/C,MAAM,CAAC+b,aAAa,EAAEC,gBAAgB,CAAC,GAAGxb,QAAQ,CAACsB,KAAK,IAAI,EAAE,CAAC,CAAA;EAC/D,MAAM,CAACma,iBAAiB,EAAEC,oBAAoB,CAAC,GAAG1b,QAAQ,CAAC,KAAK,CAAC,CAAA;EAEjE2b,mBAAmB,CAACtd,GAAG,EAAE,OAAO;AAC9B;AACA;AACAgM,IAAAA,KAAK,EAAEoM,QAAQ,CAAClW,OAAO,EAAE8J,KAAK;IAC9BuR,KAAK,EAAEnF,QAAQ,CAAClW,OAAO;AACvBsb,IAAAA,IAAI,EAAGpF,QAAQ,CAAClW,OAA4B,CAACsb,IAAI;IACjDC,aAAa,EAAErF,QAAQ,CAAClW,OAAO;AAC/Bwb,IAAAA,iBAAiB,EAAEA,CAACtM,KAAa,EAAEC,GAAW,KAAI;MAChD,IAAI+G,QAAQ,CAAClW,OAAO,EAAE;QACpBkW,QAAQ,CAAClW,OAAO,CAACwb,iBAAiB,CAACtM,KAAK,EAAEC,GAAG,CAAC,CAAA;AAChD,OAAA;AACF,KAAA;AACD,GAAA,CAAC,CAAC,CAAA;EAEH,MAAM9F,YAAY,GAAIC,CAAqB,IAAI;AAC7C2R,IAAAA,gBAAgB,CAAC3R,CAAC,CAACG,MAAM,CAAC1I,KAAe,CAAC,CAAA;AAE1CyG,IAAAA,KAAK,CAAC0B,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACpB,CAAA;EAED,MAAMuI,WAAW,GAAIvI,CAA4C,IAAI;IACnE2R,gBAAgB,CAAC,EAAE,CAAC,CAAA;AAEpB3R,IAAAA,CAAC,CAACG,MAAM,CAAC1I,KAAK,GAAG,EAAE,CAAA;AAEnByG,IAAAA,KAAK,CAAC0B,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACpB,CAAA;EAED,MAAMmS,eAAe,GAAInS,CAAkC,IAAI;AAC7D,IAAA,IAAIA,CAAC,CAAChJ,GAAG,KAAK,OAAO,IAAIuZ,YAAY,EAAE;MACrCA,YAAY,CAACvQ,CAAC,CAAC,CAAA;AACjB,KAAA;GACD,CAAA;EAED,OACEjB,IAAA,CAAA,KAAA,EAAA;AACEnB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,YAAY,EACxB;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,MAAA,CAAC,CAAGmD,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAG2F,QAAQ;AACnC,MAAA,CAAC,GAAG3F,SAAS,CAAA,CAAA,EAAI3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AAC9BkG,MAAAA,OAAO,EAAEA,OAAAA;KACV,EACDpB,SAAS,CACV,CAAC;IACF/I,KAAK,EAAEqJ,KAAK,CAACrJ,KAAK;AAAA8I,IAAAA,QAAA,EAAA,CAEjB6T,WAAW,IACVtS,GAAA,CAAA,MAAA,EAAA;AAAMtB,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUA,SAAS,CAAS,OAAA,CAAA;AACtDE,MAAAA,QAAA,EAAA6T,WAAAA;AACI,KAAA,CACR,EAEDzS,IAAA,CAAA,KAAA,EAAA;MAAKnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AACnCE,MAAAA,QAAA,EAAA,CAAA2F,MAAM,IAAIpE,GAAA,CAAA,MAAA,EAAA;QAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAAAE,QAAAA,QAAA,EAAG2F,MAAAA;AAAM,OAAA,CAAQ,EAElEpE,GAAA,CAAA,OAAA,EAAA;AAAA,QAAA,GACMhB,KAAK;AACT1J,QAAAA,GAAG,EAAEoY,QAAQ;AACT,QAAA,IAAC1O,KAAK,CAACnJ,IAAI,KAAK,UAAU,IAAI0c,UAAU,GACxC;AACE1c,UAAAA,IAAI,EAAE6c,iBAAiB,GAAG,MAAM,GAAG,UAAA;SACpC,GACD,EAAE,CAAC;AACPxO,QAAAA,QAAQ,EAAEA,QAAQ;AAClB3L,QAAAA,KAAK,EAAEia,aAAa;AACpB9R,QAAAA,QAAQ,EAAEG,YAAY;AACtBqR,QAAAA,SAAS,EAAEe,eAAe;AAC1BvU,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CAACS,SAAS,EAAEG,SAAS,CAAC,CAAA;AACtC,OAAA,CAAA,EAEFsB,GAAM,CAAA,MAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAEqJ,QAAAA,OAAO,EAAEyB,WAAW;AACxD5K,QAAAA,QAAA,EAAA4F,UAAU,IAAImO,aAAa,GAAGxS,IAAC0D,SAAS,EAAA,EAAA,CAAG,GAAG,IAAA;OAAI,CAC9C,EAEN,CAAC0O,MAAM,IAAIG,UAAU,KACpB1S,IACE,CAAA,MAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;QAAA,IAC3BgU,UAAU,KAAK9Z,SAAS,GACzB;UACEmP,OAAO,EAAEA,MAAM+K,oBAAoB,CAACO,IAAI,IAAI,CAACA,IAAI,CAAA;SAClD,GACD,EAAE,CAAC;QAENzU,QAAA,EAAA,CAAA2T,MAAM,IAAIG,UAAU,GAAGG,iBAAiB,CAAC,EACzCtX,KAAK,IAAI2D,aAAa,GAAGiB,GAAA,CAAC0D,SAAS,EAAG,EAAA,CAAA,GAAG,IAAI,CAAA;AAAA,OAAA,CAEjD,CAAA;AACG,KAAA,CAAA,EAEL2O,UAAU,GACTrS,GAAM,CAAA,MAAA,EAAA;AAAAtB,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUA,SAAS,CAAQ,MAAA,CAAA;AAAAE,MAAAA,QAAA,EACrD4T,UAAAA;KAAU,CACN,GACL,IAAI,CAAA;AACJ,GAAA,CAAA,CAAA;AAEV,CAAC,CACF,CAAA;AAEDF,cAAc,CAAC3Q,WAAW,GAAG,OAAO,CAAA;AAE9B2R,MAAAA,KAAK,GAAGhB,eAEb;AAEDgB,KAAK,CAACC,QAAQ,GAAGlC,QAAQ;;;;;AChJnBmC,MAAAA,WAAW,GAAGA,CAAC;AACnB9U,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;EACd4U,OAAO;EACPpP,QAAQ;EACRzF,QAAQ;AACR7E,EAAAA,IAAI,GAAG,OAAO;EACd,GAAGoF,KAAAA;AACc,CAAA,KAAI;EACrB,OACEgB,GAAC,CAAAuT,KAAK,EACA;AAAA,IAAA,GAAAvU,KAAK;AACTsU,IAAAA,OAAO,EAAEA,OAAO;AAChBpP,IAAAA,QAAQ,EAAEA,QAAQ;AAClBxF,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,SAAS,EACrB;MACE2F,QAAQ;MACR,CAACxF,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC,GAAGH,SAAS,CAAA,QAAA,EAAW3E,IAAI,CAAA,CAAE,GAAGA,IAAI;MACrC,CAAC,CAAA,EAAG2E,SAAS,CAAA,eAAA,CAAiB,GAAG+U,OAAAA;AAClC,KAAA,CACF,CAAC;cAEFtT,GAAM,CAAA,MAAA,EAAA;MAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,eAAA,CAAA;AAAAE,MAAAA,QAAA,EAC3CA,QAAQ,IAAIO,KAAK,CAACzG,KAAAA;KACd,CAAA;AAAA,GAAA,CACD,CAAA;AAEZ;;;;;ACpBMib,MAAAA,UAAU,GAAGA,CAAC;EAClB7O,YAAY;EACZpM,KAAK;AACLqB,EAAAA,IAAI,GAAG,OAAO;EACdsK,QAAQ;EACR3M,IAAI;EACJkc,EAAE;EACF9d,KAAK,GAAG,EAAE;AACV+d,EAAAA,WAAW,GAAG,SAAS;EACvBC,KAAK;AACLpV,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;AACdkV,EAAAA,OAAO,GAAG,EAAE;EACZnV,QAAQ;EACR,GAAGO,KAAAA;AACa,CAAA,KAAI;AACpB,EAAA,MAAM6U,aAAa,GAAGvU,OAAO,CAC3B,MAAO/G,KAAK,KAAKE,SAAS,GAAGF,KAAK,GAAGoM,YAAa,EAClD,CAACpM,KAAK,EAAEoM,YAAY,CAAC,CACtB,CAAA;EAED,MAAMmP,cAAc,GAAGA,MAAK;AAC1B,IAAA,IAAIF,OAAO,CAAChb,MAAM,GAAG,CAAC,EAAE;MACtB,OAAOgb,OAAO,CAACxb,GAAG,CAAC,CAAC2I,MAAM,EAAEjJ,GAAG,KAAI;QACjC,MAAMic,WAAW,GAAG,OAAOhT,MAAM,KAAK,QAAQ,GAAGA,MAAM,CAACxI,KAAK,GAAGwI,MAAM,CAAA;QACtE,MAAMiT,WAAW,GAAG,OAAOjT,MAAM,KAAK,QAAQ,GAAGA,MAAM,CAACvC,KAAK,GAAGuC,MAAM,CAAA;QAEtE,OACEf,GAAC,CAAAuT,KAAK;AACJhb,UAAAA,KAAK,EAAEwb,WAAW;UAElBT,OAAO,EAAEO,aAAa,KAAKE,WAAW;UACtC7P,QAAQ,EACNA,QAAQ,IAAK,OAAOnD,MAAM,KAAK,QAAQ,IAAIA,MAAM,CAACmD,QAAS;aAEzDlF,KAAK;AAAAP,UAAAA,QAAA,EAERuV,WAAAA;AAAW,SAAA,EAPP,CAAGlc,EAAAA,GAAG,CAAIic,CAAAA,EAAAA,WAAW,EAAE,CAQtB,CAAA;AAEZ,OAAC,CAAC,CAAA;AACJ,KAAA;AAEA,IAAA,OAAO9T,QAAQ,CAAC7H,GAAG,CAACqG,QAAQ,EAAEyB,KAAK,IAAG;AACpC,MAAA,iBACEC,cAAc,CAACD,KAAK,CAAC,KACpBA,KAAK,CAACrK,IAAI,KAAK0d,KAAK,IAAIrT,KAAK,CAACrK,IAAI,KAAKwd,WAAW,CAAC,EACpD;QACA,oBAAOY,YAAY,CAAC/T,KAAqB,EAAE;AACzC,UAAA,GAAGlB,KAAK;AACR,UAAA,IAAIkB,KAAK,CAACrK,IAAI,KAAKwd,WAAW,GAAG;YAAEzZ,IAAI;AAAE8Z,YAAAA,WAAAA;WAAa,GAAG,EAAE,CAAC;AAC5D;AACA;UACA/O,YAAY;AACZT,UAAAA,QAAQ,EAAEA,QAAQ,IAAKhE,KAAK,CAAClB,KAA+B,CAACkF,QAAQ;AACrEoP,UAAAA,OAAO,EAAEO,aAAa,KAAM3T,KAAK,CAAClB,KAA6B,CAACzG,KAAK;UACrEhB,IAAI,EAAEA,IAAI,IAAIwF,cAAAA;AACf,SAAA,CAAC,CAAA;AACJ,OAAA;AAEA,MAAA,OAAOmD,KAAK,CAAA;AACd,KAAC,CAAC,CAAA;GACH,CAAA;EAED,OACEF,GAAA,CAAA,KAAA,EAAA;AACEyT,IAAAA,EAAE,EAAEA,EAAE;AACN9d,IAAAA,KAAK,EAAEA,KAAK;AACZ+I,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACEoV,KAAK;MACLjV,SAAS;AACT,MAAA,CAAC,GAAGH,SAAS,CAAA,OAAA,EAAU3E,IAAI,CAAA,CAAE,GAAGA,IAAI;AACpC,MAAA,CAAC,CAAG2E,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAGmV,WAAW,KAAK,OAAA;AAC/C,KAAA,CACF,CAAC;IAEDjV,QAAA,EAAAqV,cAAc,EAAE;AAAA,GAAA,CACb,CAAA;AAEV;;;;;ACxFA,MAAMI,cAAc,gBAAG/C,UAAU,CAC/B,CACE;AACE5S,EAAAA,SAAS,GAAGxB,cAAc;AAC1B2B,EAAAA,SAAS,GAAG,EAAE;EACdnG,KAAK;EACLmI,QAAQ;EACRkH,OAAO;EACP1D,QAAQ;EACRzF,QAAQ;EACRlH,IAAI;EACJ4c,KAAK;EACLC,cAAc;EACdd,OAAO;EACPrG,MAAM;EACNoH,OAAO;EACPlL,YAAY;EACZmL,YAAY;AACZxU,EAAAA,OAAAA;AACD,CAAA,EACDxK,GAAmC,KACjC;EACF,MAAMuL,YAAY,GAAGA,MAAK;IACxB,IAAI,CAACqD,QAAQ,EAAE;AACb0D,MAAAA,OAAO,GAAGrK,UAAU,CAAC4W,KAAK,IAAI5b,KAAK,CAAC,CAAC,CAAA;AACrCmI,MAAAA,QAAQ,GAAGnD,UAAU,CAAC4W,KAAK,IAAI5b,KAAK,CAAC,CAAC,CAAA;AACxC,KAAA;GACD,CAAA;AAEDgH,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI6U,cAAc,IAAId,OAAO,EAAE;AAC7B5S,MAAAA,QAAQ,GAAGnD,UAAU,CAAChF,KAAK,CAAC,CAAC,CAAA;AAC/B,KAAA;AACF,GAAC,EAAE,CAAC6b,cAAc,EAAEd,OAAO,CAAC,CAAC,CAAA;EAE7B,OACEzT;AACEvK,IAAAA,GAAG,EAAEA,GAAG;AACR6e,IAAAA,KAAK,EAAEA,KAAK;AACZhL,IAAAA,YAAY,EAAEA,YAAY;AAC1BmL,IAAAA,YAAY,EAAEA,YAAY;AAC1B5V,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,QAAQ,EACpB;MACE2F,QAAQ;AACRpE,MAAAA,OAAO,EAAEA,OAAO;AAChB,MAAA,CAACpB,SAAS,GAAGA,SAAAA;AACd,KAAA,CACF,CAAC;AAAAD,IAAAA,QAAA,EAAA,CAEFuB;AACEzI,MAAAA,IAAI,EAAEA,IAAI;AACV1B,MAAAA,IAAI,EAAC,OAAO;AACZ+R,MAAAA,OAAO,EAAEA,OAAO;AAChB1D,MAAAA,QAAQ,EAAEA,QAAQ;AAClBxD,MAAAA,QAAQ,EAAEG,YAAY;AACtBoM,MAAAA,MAAM,EAAEnM,CAAC,IAAImM,MAAM,GAAGnM,CAAC,CAAC;AACxBuT,MAAAA,OAAO,EAAEvT,CAAC,IAAIuT,OAAO,GAAGvT,CAAC,CAAA;AAAC,KAAA,CAC1B,EACFd,GACE,CAAA,MAAA,EAAA;AAAAtB,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,CAAA,EAAIA,SAAS,CAAA,CAAA,EAAI2F,QAAQ,GAAG,UAAU,GAAG,SAAS,EAAE,CACjE,CAAA;MACD,EACFlE,GAAA,CAAA,MAAA,EAAA;MAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAClCE,MAAAA,QAAA,EAAAA,QAAQ,IAAI0V,KAAK,IAAI5b,KAAAA;AACjB,KAAA,CAAA,CAAA;AAAA,GAAA,CACD,CAAA;AAEZ,CAAC,CACF,CAAA;AAED2b,cAAc,CAAC1S,WAAW,GAAG,OAAO,CAAA;AACpC,MAAM+R,KAAK,GAAGrb,MAAM,CAACqU,MAAM,CAAC2H,cAAc,EAAE;AAC1CK,EAAAA,KAAK,EAAEf,UAAU;AACjBgB,EAAAA,MAAM,EAAEnB,WAAAA;AACT,CAAA;;;;;AChFKoB,MAAAA,MAAM,GAAoBA,CAAC;EAC/Blc,KAAK;EACLkG,QAAQ;EACRyF,QAAQ;AACRxF,EAAAA,SAAS,GAAG,EAAE;EACd/I,KAAK;EACLiS,OAAO;EACP8M,MAAM;AACNnW,EAAAA,SAAS,GAAG1B,eAAe;EAC3B8X,QAAQ;AACRR,EAAAA,KAAAA;AAAK,CACN,KAAI;EACH,MAAMS,WAAW,GAAsC9T,CAAC,IAAG;AACzD,IAAA,IAAIoD,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEA0D,OAAO,GAAG9G,CAAC,CAAC,CAAA;GACb,CAAA;EAED,OACEd,GAAA,CAAA,KAAA,EAAA;IACEtB,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,QAAA,EAAWG,SAAS,CAAA,CAAA,CAAG,EACnC;AACEiW,MAAAA,QAAQ,EAAEA,QAAQ;AAClBzQ,MAAAA,QAAQ,EAAEA,QAAAA;AACX,KAAA,CACF,CAAC;AACFvO,IAAAA,KAAK,EAAEA,KAAK;AACZiS,IAAAA,OAAO,EAAEgN,WAAW;AAChB,IAAA,IAACT,KAAK,GAAG;AAAEA,MAAAA,KAAAA;KAAO,GAAG,EAAE,CAAC;IAE3B1V,QAAA,EAAAiW,MAAM,GAAGA,MAAM,CAACnc,KAAe,CAAC,GAAGkG,QAAQ,IAAIlG,KAAAA;AAAK,GAAA,CACjD,CAAA;AAEV;;;;;ACpCMsc,MAAAA,GAAG,GAAuBA,CAAC;AAC/BtW,EAAAA,SAAS,GAAG1B,eAAe;EAC3BlH,KAAK,GAAG,EAAE;EACVmf,OAAO;EACPvc,KAAK;EACLiG,KAAK;EACLuW,QAAQ;EACRC,KAAK;AACL9B,EAAAA,IAAAA;AACD,CAAA,KAAI;EACH,MAAM+B,aAAa,GAAInU,CAA4C,IAAI;IACrEA,CAAC,CAACmB,cAAc,EAAE,CAAA;IAClBnB,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB5O,IAAAA,CAAC,CAACG,MAAM,CAAC1I,KAAK,GAAGA,KAAK,CAAA;IAEtBuc,OAAO,CAAChU,CAAC,CAAC,CAAA;GACX,CAAA;EAED,OACEjB,IACE,CAAA,KAAA,EAAA;AAAAlK,IAAAA,KAAK,EAAE;AAAE,MAAA,GAAGA,KAAK;AAAEuf,MAAAA,eAAe,EAAEF,KAAAA;KAAO;IAC3CtW,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAM,IAAA,CAAA;AAAAE,IAAAA,QAAA,EAAA,CAE7BuB,GAAO,CAAA,MAAA,EAAA;AAAAvB,MAAAA,QAAA,EAAAD,KAAK,KAAK/F,SAAS,GAAG+F,KAAK,GAAGjG,KAAAA;AAAK,KAAA,CAAQ,EAEjDwc,QAAQ,IACP/U,GAAA,CAAA,MAAA,EAAA;MAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAiB,eAAA,CAAA;AAAEqJ,MAAAA,OAAO,EAAEqN,aAAa;AACnExW,MAAAA,QAAA,EAAAyU,IAAI,IAAIlT,GAAA,CAAAmV,UAAA,EAAA;AAAA1W,QAAAA,QAAA,EAAA,QAAA;OAAA,CAAA;AACJ,KAAA,CACR,CAAA;AACG,GAAA,CAAA,CAAA;AAEV;;;;;ACnCM2W,MAAAA,YAAY,GAAGA,CAAC;EACpBlC,IAAI;EACJvd,KAAK,GAAG,EAAE;AACV+I,EAAAA,SAAS,GAAG,EAAE;AACdyV,EAAAA,KAAK,GAAG,SAAS;AACjBkB,EAAAA,WAAW,GAAG,SAAS;AACvB9W,EAAAA,SAAS,GAAG5B,cAAAA;AACM,CAAA,KAClBkD,IACE,CAAA,KAAA,EAAA;AAAAlK,EAAAA,KAAK,EAAEA,KAAK;EACZ+I,SAAS,EAAE,GAAGH,SAAS,CAAA,CAAA,EAAIA,SAAS,CAAWA,QAAAA,EAAAA,SAAS,CAAUG,OAAAA,EAAAA,SAAS,CAAE,CAAA;aAE7EsB,GAAK,CAAA,KAAA,EAAA;IAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAAE,IAAAA,QAAA,EACjCyU,IAAI,IACHrT,IAAA,CAAA,KAAA,EAAA;AACE0C,MAAAA,KAAK,EAAC,IAAI;AACVC,MAAAA,MAAM,EAAC,IAAI;AACXC,MAAAA,OAAO,EAAC,WAAW;AACnBE,MAAAA,KAAK,EAAC,4BAA4B;AAElClE,MAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,OAAA,EAAA;AAAAvB,QAAAA,QAAA,EAAQ0V,KAAAA;AAAK,OAAA,CAAS,EACtBtU,IAAA,CAAA,GAAA,EAAA;AAAGsD,QAAAA,SAAS,EAAC,gBAAgB;AAACT,QAAAA,IAAI,EAAC,MAAM;AACvCjE,QAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,SAAA,EAAA;AAAS0C,UAAAA,IAAI,EAAC,SAAS;AAAC4S,UAAAA,EAAE,EAAC,IAAI;AAACC,UAAAA,EAAE,EAAC,IAAI;AAACC,UAAAA,EAAE,EAAC,IAAI;AAACC,UAAAA,EAAE,EAAC,GAAA;UAAc,EACjE5V,IAAA,CAAA,GAAA,EAAA;AAAGgD,UAAAA,MAAM,EAAC,SAAS;AAAApE,UAAAA,QAAA,EAAA,CACjBuB,GAAM,CAAA,MAAA,EAAA;AAAA4C,YAAAA,CAAC,EAAC,+GAAA;AAA+G,WAAA,CAAQ,EAC/H5C,GAAA,CAAA,MAAA,EAAA;AACE4C,YAAAA,CAAC,EAAC,+OAA+O;AACjPF,YAAAA,IAAI,EAAC,SAAA;AAAS,WAAA,CACR,CAAA;AACN,SAAA,CAAA,CAAA;AAAA,OAAA,CACF,CAAA;KACA,CAAA;AAEJ,GAAA,CAAA,EACN1C;IAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAc,YAAA,CAAA;AAAGE,IAAAA,QAAA,EAAA4W,WAAAA;AAAkB,GAAA,CAAA,CAAA;AAAA,CAAA;;;;;ACLnE,MAAMK,WAAW,GAAG,GAAG,CAAA;AACvB,MAAMC,iBAAiB,GAAG,EAAE,CAAA;AAC5B,MAAMC,iBAAiB,GAAG,CAAC,CAAA;AAE3B,MAAMC,eAAe,gBAAG1E,UAAU,CAChC,CACE;AACE5S,EAAAA,SAAS,GAAG1B,eAAe;EAC3B4W,EAAE;AACFqC,EAAAA,WAAW,GAAG,EAAE;AAChBC,EAAAA,oBAAoB,GAAG,IAAI;AAC3BC,EAAAA,YAAY,GAAG,IAAI;AACnBC,EAAAA,gBAAgB,GAAG,OAAO;EAC1BxX,QAAQ;AACRmV,EAAAA,OAAO,GAAG,EAAE;AACZsC,EAAAA,UAAU,GAAGR,WAAW;EACxBS,oBAAoB;AACpBC,EAAAA,IAAI,GAAG,SAAS;EAChB7d,KAAK;EACLoM,YAAY;EACZ0R,QAAQ;AACRnS,EAAAA,QAAQ,GAAG,KAAK;AAChBoS,EAAAA,OAAO,GAAG,KAAK;AACfrS,EAAAA,WAAW,GAAG,QAAQ;AACtBI,EAAAA,UAAU,GAAG,KAAK;AAClBkS,EAAAA,UAAU,GAAG,KAAK;AAClBvM,EAAAA,WAAW,GAAG,KAAK;AACnBpQ,EAAAA,IAAI,GAAG,OAAO;AACdwB,EAAAA,KAAK,GAAG,KAAK;AACbob,EAAAA,iBAAiB,GAAG,EAAE;EACtBzM,UAAU;EACVpU,KAAK;EACL8gB,QAAQ;EACRvJ,QAAQ;EACRwJ,UAAU;EACVC,OAAO;EACPjW,QAAQ;AACRkW,EAAAA,UAAU,GAAG,KAAK;AAClBxJ,EAAAA,IAAI,GAAG,KAAK;AACZyJ,EAAAA,SAAS,GAAG,IAAI;AAChBC,EAAAA,eAAe,GAAG,KAAK;EACvBC,SAAS;EACTlN,iBAAiB;EACjBmN,cAAc;EACdlX,OAAO;EACPf,aAAa;AACb6K,EAAAA,SAAS,GAAG,YAAY;AACxBqN,EAAAA,UAAAA;AAAU,CACX,EACD3hB,GAAiC,KACjB;AAChB,EAAA,MAAM4hB,KAAK,GAAGd,IAAI,KAAK,MAAM,CAAA;AAC7B,EAAA,MAAMe,UAAU,GAAGf,IAAI,KAAK,UAAU,CAAA;AACtC,EAAA,MAAMgB,OAAO,GAAGF,KAAK,IAAIC,UAAU,CAAA;AAEnC,EAAA,MAAMrY,YAAY,GAAGQ,OAAO,CAC1B,MAAM/G,KAAK,IAAIoM,YAAY,IAAI,EAAE,EACjC,CAACpM,KAAK,EAAEoM,YAAY,CAAC,CACtB,CAAA;AAED,EAAA,MAAM0S,qBAAqB,GAAG/X,OAAO,CACnC,MACE,CAAC,CAAChG,KAAK,CAACC,OAAO,CAACuF,YAAY,CAAC,GAAG,CAACA,YAAY,CAAC,GAAGA,YAAY,EAAE7C,MAAM,CACnE6E,CAAC,IAAIA,CAAC,CACP,EACH,CAAChC,YAAY,CAAC,CACf,CAAA;EAED,MAAM,CAACwY,OAAO,EAAEC,UAAU,CAAC,GAAGtgB,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC7C,EAAA,MAAMugB,SAAS,GAAG/gB,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC9C,MAAM,CAACghB,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGzgB,QAAQ,CAAS,CAAC,CAAC,CAAA;EACnE,MAAM,CAACgM,MAAM,EAAE6B,SAAS,CAAC,GAAG7N,QAAQ,CAAC+S,WAAW,IAAIoD,IAAI,CAAC,CAAA;EACzD,MAAM,CAACuK,WAAW,EAAEC,cAAc,CAAC,GAAG3gB,QAAQ,CAAC6e,WAAW,IAAI,EAAE,CAAC,CAAA;EACjE,MAAM,CAAC+B,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG7gB,QAAQ,CAAgB,EAAE,CAAC,CAAA;AAE3E,EAAA,MAAM,CAAC0d,QAAQ,EAAEoD,WAAW,CAAC,GAAG9gB,QAAQ,CACtCmgB,OAAO,GAAGC,qBAAqB,GAAGvY,YAAY,CAC/C,CAAA;EAED8T,mBAAmB,CAACtd,GAAG,EAAE,OAAO;IAC9BgM,KAAK,EAAEA,MAAMkW,SAAS,CAAChgB,OAAO,EAAE8J,KAAK,EAAE;IACvCwR,IAAI,EAAEA,MAAO0E,SAAS,CAAChgB,OAA4B,EAAEsb,IAAI,EAAE;AAC3D;AACA;IACAhE,QAAQ,EAAEA,CAAC,GAAG/Q,IAAI;AAChB;AACA;AACCyZ,IAAAA,SAAS,CAAChgB,OAA0B,EAAEsX,QAAQ,CAAC,GAAG/Q,IAAI,CAAC;IAC1DgV,aAAa,EAAEyE,SAAS,CAAChgB,OAAAA;AAC1B,GAAA,CAAC,CAAC,CAAA;AAEH,EAAA,MAAMwgB,gBAAgB,GAAGA,MACvB,CAAC9T,QAAQ,IAAIyQ,QAAQ,EAAE/b,MAAM,IAAI2e,UAAU,CAAC,IAAI,CAAC,CAAA;EAEnD,MAAMU,gBAAgB,GAAGA,MAAM,CAAC/T,QAAQ,IAAIqT,UAAU,CAAC,KAAK,CAAC,CAAA;AAE7D,EAAA,MAAMW,qBAAqB,GAAGC,WAAW,CAAC,MAAK;IAC7C,IAAI,CAACpC,oBAAoB,EAAE;AACzB,MAAA,OAAA;AACF,KAAA;IAEA6B,cAAc,CAAC,EAAE,CAAC,CAAA;IAElB,MAAMQ,cAAc,GAAGZ,SAAS,CAAChgB,OAAO,EAAE6J,aAAa,CACrD,qCAAqC,CACpB,CAAA;AAEnB,IAAA,IAAI+W,cAAc,EAAE;MAClBA,cAAc,CAACC,SAAS,GAAG,EAAE,CAAA;AAC/B,KAAA;AACF,GAAC,EAAE,CAACtC,oBAAoB,CAAC,CAAC,CAAA;AAE1BxW,EAAAA,SAAS,CAAC,MAAK;IACb,MAAM4G,kBAAkB,GAAIC,KAAiB,IAAU;AACrD,MAAA,IACEoR,SAAS,CAAChgB,OAAO,IACjB,CAACggB,SAAS,CAAChgB,OAAO,CAAC6O,QAAQ,CAACD,KAAK,CAACnF,MAAc,CAAC,EACjD;QACA6D,SAAS,CAACsI,IAAI,CAAC,CAAA;AAEf,QAAA,IAAIgK,OAAO,EAAE;AACXc,UAAAA,qBAAqB,EAAE,CAAA;AACzB,SAAA;AACF,OAAA;KACD,CAAA;AAED1iB,IAAAA,QAAQ,CAAC8Q,gBAAgB,CAAC,WAAW,EAAEH,kBAAkB,CAAC,CAAA;AAE1D,IAAA,OAAO,MAAK;AACV3Q,MAAAA,QAAQ,CAAC+Q,mBAAmB,CAAC,WAAW,EAAEJ,kBAAkB,CAAC,CAAA;KAC9D,CAAA;GACF,EAAE,CAAC+R,qBAAqB,EAAE9K,IAAI,EAAEgK,OAAO,CAAC,CAAC,CAAA;AAE1C7X,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI,CAACiY,SAAS,CAAChgB,OAAO,IAAI,CAACqS,iBAAiB,EAAE;AAC5C,MAAA,OAAA;AACF,KAAA;IAEA,MAAMyO,SAAS,GAAGd,SAAS,CAAChgB,OAAO,CAAC6T,qBAAqB,EAAE,CAAA;IAC3D,MAAMkN,cAAc,GAAGrC,UAAU,CAAA;AACjC,IAAA,MAAMsC,YAAY,GAAGhN,MAAM,CAACC,WAAW,CAAA;AACvC,IAAA,MAAMgN,UAAU,GAAGD,YAAY,GAAGF,SAAS,CAAC5M,MAAM,CAAA;AAClD,IAAA,MAAMgN,UAAU,GAAGJ,SAAS,CAAChN,GAAG,CAAA;AAEhC,IAAA,IAAIqN,aAAa,GAAkB;AACjCrN,MAAAA,GAAG,EAAE,CAAA,EAAGgN,SAAS,CAAC5M,MAAM,CAAI,EAAA,CAAA;AAC5BkN,MAAAA,IAAI,EAAE,CAAA,EAAGN,SAAS,CAACM,IAAI,CAAI,EAAA,CAAA;AAC3BrW,MAAAA,KAAK,EAAE,CAAA,EAAG+V,SAAS,CAAC/V,KAAK,CAAA,EAAA,CAAA;KAC1B,CAAA;AAED,IAAA,IAAIkW,UAAU,GAAGF,cAAc,IAAIG,UAAU,GAAGH,cAAc,EAAE;AAC9DI,MAAAA,aAAa,GAAG;AACdrN,QAAAA,GAAG,EAAE,CAAGgN,EAAAA,SAAS,CAAChN,GAAG,GAAGiN,cAAc,CAAI,EAAA,CAAA;AAC1CK,QAAAA,IAAI,EAAE,CAAA,EAAGN,SAAS,CAACM,IAAI,CAAI,EAAA,CAAA;AAC3BrW,QAAAA,KAAK,EAAE,CAAA,EAAG+V,SAAS,CAAC/V,KAAK,CAAA,EAAA,CAAA;OAC1B,CAAA;AACH,KAAA;IAEAuV,mBAAmB,CAACa,aAAa,CAAC,CAAA;AACpC,GAAC,EAAE,CAACzC,UAAU,EAAErM,iBAAiB,CAAC,CAAC,CAAA;EAEnC,MAAMgP,YAAY,GAAI/X,CAAqB,IAAI;AAC7C8W,IAAAA,cAAc,CAAC9W,CAAC,CAACG,MAAM,CAAC1I,KAAe,CAAC,CAAA;AACxCke,IAAAA,QAAQ,GAAG3V,CAAC,CAACG,MAAM,CAAC1I,KAAe,CAAC,CAAA;IAEpC,IAAI,CAAC0K,MAAM,EAAE;AACX6B,MAAAA,SAAS,CAAC,CAAC7B,MAAM,IAAImK,IAAI,CAAC,CAAA;AAC1B8K,MAAAA,qBAAqB,EAAE,CAAA;AACzB,KAAA;GACD,CAAA;EAED,MAAMY,oBAAoB,GAAGA,MAAK;AAChC,IAAA,IACE3B,UAAU,IACTd,QAAQ,IACP1B,QAAQ,CAAC/b,MAAM,IAAIyd,QAAQ,IAC3B,CAAC1B,QAAQ,CAACjc,QAAQ,CAACif,WAAW,CAAE,EAClC;AACA,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAMoB,cAAc,GAAGpB,WAAW,CAAC3H,IAAI,EAAE,CAAA;AAEzC,IAAA,IAAI,CAAC+I,cAAc,IAAI,CAAC3B,OAAO,IAAIzC,QAAQ,CAACjc,QAAQ,CAACqgB,cAAc,CAAC,EAAE;AACpE,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,MAAMC,eAAe,GAAG,CAAC,GAAGrE,QAAQ,EAAEoE,cAAc,CAAC,CAAA;IAErDrY,QAAQ,GAAGsY,eAAe,CAAC,CAAA;IAC3B9L,QAAQ,GAAG6L,cAAc,CAAC,CAAA;IAE1B,MAAMlG,KAAK,GAAG2E,SAAS,CAAChgB,OAAO,EAAE6J,aAAa,CAAC,OAAO,CAAC,CAAA;AAEvD,IAAA,IAAIwR,KAAK,EAAE;MACTA,KAAK,CAACta,KAAK,GAAG,EAAE,CAAA;AAClB,KAAA;IAEAwf,WAAW,CAACiB,eAAe,CAAC,CAAA;AAC5Bd,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAM1R,YAAY,GAAGA,CACnB1F,CAAqB,EACrBiT,WAAmB,EACnBhT,MAAmB,KACjB;AACF,IAAA,IAAIqW,OAAO,EAAE;AACX,MAAA,IACEf,QAAQ,IACR1B,QAAQ,CAAC/b,MAAM,IAAIyd,QAAQ,IAC3B,CAAC1B,QAAQ,CAACjc,QAAQ,CAACqb,WAAW,CAAC,EAC/B;AACA,QAAA,OAAA;AACF,OAAA;MAEA,MAAMkF,YAAY,GAAGtE,QAAQ,CAACjc,QAAQ,CAACqb,WAAW,CAAC,GAC9CY,QAAqB,CAAC1Y,MAAM,CAACid,IAAI,IAAIA,IAAI,KAAKnF,WAAW,CAAC,GAC3D,CAAC,GAAGY,QAAQ,EAAEZ,WAAW,CAAC,CAAA;MAE9BgE,WAAW,CAACkB,YAAY,CAAC,CAAA;AACzBvY,MAAAA,QAAQ,GAAGuY,YAAY,EAAElY,MAAM,CAAC,CAAA;AAEhC,MAAA,IAAI4T,QAAQ,CAACjc,QAAQ,CAACqb,WAAW,CAAC,EAAE;AAClC2C,QAAAA,UAAU,GAAG3C,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACnC,OAAC,MAAM;AACLmM,QAAAA,QAAQ,GAAG6G,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACjC,OAAA;AACF,KAAC,MAAM;MACL+D,SAAS,CAACsI,IAAI,CAAC,CAAA;MACf2K,WAAW,CAAChE,WAAW,CAAC,CAAA;AACxBrT,MAAAA,QAAQ,GAAGqT,WAAW,EAAEhT,MAAM,CAAC,CAAA;AAC/BmM,MAAAA,QAAQ,GAAG6G,WAAW,EAAEhT,MAAM,CAAC,CAAA;AACjC,KAAA;AAEAmX,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAM7O,WAAW,GAAGA,MAAK;AACvB,IAAA,MAAM9Q,KAAK,GAAG6e,OAAO,GAAG,EAAE,GAAG,EAAE,CAAA;IAE/BW,WAAW,CAACxf,KAAK,CAAC,CAAA;IAClBmI,QAAQ,GAAG,EAAE,CAAC,CAAA;AACdiW,IAAAA,OAAO,IAAI,CAAA;AAEXuB,IAAAA,qBAAqB,EAAE,CAAA;GACxB,CAAA;EAED,MAAMiB,eAAe,GAAIrY,CAAqB,IAAI;IAChD,MAAMkY,eAAe,GAAG5B,OAAO,GAC1BzC,QAAqB,CAAC1Y,MAAM,CAACid,IAAI,IAAIA,IAAI,KAAKpY,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAAC,GAC9DuI,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAAA;IAElBmI,QAAQ,GAAGsY,eAAe,CAAC,CAAA;IAC3BjB,WAAW,CAACiB,eAAe,CAAC,CAAA;GAC7B,CAAA;EAED,MAAM/F,eAAe,GACnBnS,CAEC,IACC;AACF,IAAA,MAAMK,OAAO,GAAGC,UAAU,CAAC,MAAK;MAC9BN,CAAC,CAACG,MAAM,CAAC1I,KAAK,GAAGuI,CAAC,CAACG,MAAM,CAACoX,SAAS,CAACrI,IAAI,EAAE,CAAC7I,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AAE5DyQ,MAAAA,cAAc,CAAC9W,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAAC,CAAA;AAC9Bke,MAAAA,QAAQ,GAAG3V,CAAC,CAACG,MAAM,CAAC1I,KAAK,CAAC,CAAA;AAE1B,MAAA,IAAIuI,CAAC,CAAChJ,GAAG,KAAK,OAAO,IAAI6f,WAAW,CAAC3H,IAAI,EAAE,KAAK,EAAE,EAAE;QAClD,IAAI,CAACkH,KAAK,EAAE;UACVpW,CAAC,CAAC4O,eAAe,EAAE,CAAA;UACnB5O,CAAC,CAACmB,cAAc,EAAE,CAAA;UAElBV,YAAY,CAACJ,OAAO,CAAC,CAAA;AAErB,UAAA,OAAA;AACF,SAAA;AAEA2X,QAAAA,oBAAoB,EAAE,CAAA;AAEtBhY,QAAAA,CAAC,CAACG,MAAM,CAACoX,SAAS,GAAG,EAAE,CAAA;AACzB,OAAA;MAEA,IACEvX,CAAC,CAAChJ,GAAG,KAAK,WAAW,KACpBsf,OAAO,GAAG,CAACO,WAAW,CAAC3H,IAAI,EAAE,CAACpX,MAAM,GAAG+e,WAAW,CAAC3H,IAAI,EAAE,CAACpX,MAAM,CAAC,EAClE;QACA,MAAMogB,eAAe,GAAG5B,OAAO,GAC1BzC,QAAqB,CAAC1Y,MAAM,CAC3Bid,IAAI,IAAIA,IAAI,KAAKvE,QAAQ,CAACA,QAAQ,CAAC/b,MAAM,GAAG,CAAC,CAAC,CAC/C,GACD+e,WAAW,CAAC3H,IAAI,EAAE,CAAA;QAEtBtP,QAAQ,GAAGsY,eAAe,CAAC,CAAA;QAC3BjB,WAAW,CAACiB,eAAe,CAAC,CAAA;AAC9B,OAAA;MAEAzX,YAAY,CAACJ,OAAO,CAAC,CAAA;AACvB,KAAC,CAAC,CAAA;GACH,CAAA;AAED,EAAA,MAAMiY,cAAc,GAAG9Z,OAAO,CAAC,MAAK;IAClC,IAAI,CAACuX,SAAS,EAAE;AACd,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,OAAOD,UAAU,IAAI3T,MAAM,GACzBjD,GAAA,CAACuD,UAAU,EAAA,EAAA,CAAG,GAEdvD,GACG,CAAA,MAAA,EAAA;MAAAvB,QAAA,EAAAsL,UAAU,IAAK8M,SAAS,IAAI7W,IAACgD,SAAS,EAAA;AAACC,QAAAA,MAAM,EAAEA,MAAAA;OAAM,CAAA;AAAK,KAAA,CAE9D,CAAA;GACF,EAAE,CAAC4T,SAAS,EAAED,UAAU,EAAE3T,MAAM,EAAE8G,UAAU,CAAC,CAAC,CAAA;AAE/C,EAAA,MAAMsP,cAAc,GAAG/Z,OAAO,CAAC,MAAK;AAClC,IAAA,OAAOkY,SAAS,CAAChgB,OAAO,GACpBqS,iBAAiB,GAAG2N,SAAS,CAAChgB,OAAO,CAAC,GACtCggB,SAAS,CAAChgB,OAAO,CAAA;AACvB,GAAC,EAAE,CAACqS,iBAAiB,CAAC,CAAC,CAAA;AAEvB,EAAA,MAAMyP,gBAAgB,GAAG7a,QAAQ,GAC7B,CAACnF,KAAK,CAACC,OAAO,CAACkF,QAAQ,CAAC,GAAGA,QAAQ,GAAG,CAACA,QAAQ,CAAC,EAC7CxC,MAAM,CAAC6E,CAAC,IAAIA,CAAC,CAAC,CACd1I,GAAG,CAAE8H,KAA4B,IAAKA,KAAK,CAAClB,KAAK,CAAC,GACrD4U,OAAO,CAAA;AAEX,EAAA,MAAM2F,eAAe,GAAGD,gBAAgB,CAACrd,MAAM,CAAE8E,MAAkB,IAAI;AACrE,IAAA,IAAI,OAAOiV,YAAY,KAAK,UAAU,EAAE;AACtC,MAAA,OAAOA,YAAY,CAAC2B,WAAW,EAAE5W,MAAM,CAAC,CAAA;AAC1C,KAAA;IAEA,IAAIiV,YAAY,KAAK,KAAK,EAAE;AAC1B,MAAA,OAAO,IAAI,CAAA;AACb,KAAA;AAEA,IAAA,MAAMwD,YAAY,GAAG,CAAA,EACnB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC9gB,QAAQ,CAAC,OAAOqI,MAAM,CAACtC,QAAQ,CAAC,GACjDsC,MAAM,CAACtC,QAAQ;AACf;AACA;AACAsC,IAAAA,MAAM,CAACkV,gBAAgB,CAAC,IAAIlV,MAAM,CAACxI,KACzC,CAAE,CAAA,CAAA;AAEF,IAAA,OAAOihB,YAAY,CAACC,WAAW,EAAE,CAAC/gB,QAAQ,CAACif,WAAW,CAAC8B,WAAW,EAAE,CAAC,CAAA;AACvE,GAAC,CAAC,CAAA;EAEF,MAAMC,kBAAkB,GAAGA,MAAK;IAC9B,IAAI,CAACxV,QAAQ,EAAE;MACbY,SAAS,CAAC,CAAC7B,MAAM,CAAC,CAAA;AACpB,KAAA;AAEA,IAAA,MAAM0W,aAAa,GAAGnkB,QAAQ,CAACokB,sBAAsB,CACnD,CAAGrb,EAAAA,SAAS,CAAgB,cAAA,CAAA,CAC7B,GAAG,CAAC,CAAmB,CAAA;AAExB,IAAA,IAAIob,aAAa,EAAE;AACjBjC,MAAAA,mBAAmB,CAACiC,aAAa,CAAC3H,WAAW,GAAG4D,iBAAiB,CAAC,CAAA;AACpE,KAAA;AAEA,IAAA,MAAMzU,OAAO,GAAGC,UAAU,CAAC,MAAK;MAC9B,MAAMyY,WAAW,GAAGrkB,QAAQ,CAACskB,cAAc,CACzC,CAAA,EAAGvb,SAAS,CAAA,iBAAA,CAAmB,CAChC,CAAA;AAED,MAAA,IAAIsb,WAAW,EAAE;QACfA,WAAW,EAAEvY,KAAK,EAAE,CAAA;AACtB,OAAA;MAEAC,YAAY,CAACJ,OAAO,CAAC,CAAA;KACtB,EAAE,CAAC,CAAC,CAAA;GACN,CAAA;EAED,MAAM4Y,UAAU,GAAG,CAAC,MAAK;AACvB,IAAA,MAAMnG,OAAO,GAAG2F,eAAe,CAACnhB,GAAG,CACjC,CAAC;MAAEqG,QAAQ;AAAEC,MAAAA,SAAS,GAAG,EAAE;MAAE,GAAGM,KAAAA;AAAK,KAAE,KAAI;AACzC,MAAA,MAAM+J,UAAU,GAAGqO,OAAO,GACtBzC,QAAQ,CAACjc,QAAQ,CAACsG,KAAK,CAACzG,KAAe,CAAC,GACxCyG,KAAK,CAACzG,KAAK,KAAKoc,QAAQ,CAAA;MAE5B,OACE9U,IAAA,CAAC4U,MAAM,EAAA;AAAA,QAAA,GAEDzV,KAAK;AACT2V,QAAAA,QAAQ,EAAE5L,UAAU;AACpBrK,QAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdY,SAAS,EACT;AACE,UAAA,CAAC,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG6Y,OAAO,GAC7BrO,UAAU,GACV/J,KAAK,CAACzG,KAAK,KAAKoc,QAAQ;AAC5B,UAAA,CAAC,GAAGpW,SAAS,CAAA,SAAA,CAAW,GACtB8X,QAAQ,IAAIe,OAAO,IAAI,CAACrO,UAAU,GAC9B4L,QAAQ,CAAC/b,MAAM,IAAIyd,QAAQ,GAC3B,KAAA;AACP,SAAA,CACF,CAAC;QACFzO,OAAO,EAAE9G,CAAC,IAAG;UACX,IAAI9B,KAAK,CAACkF,QAAQ,EAAE;AAClB,YAAA,OAAA;AACF,WAAA;AAEAsC,UAAAA,YAAY,CACV1F,CAA4B,EAC5B9B,KAAK,CAACzG,KAAe,EACrB;YAAEkG,QAAQ;YAAEC,SAAS;YAAE,GAAGM,KAAAA;AAAK,WAAgB,CAChD,CAAA;SACF;QAAA,YAAA,EACWA,KAAK,CAACzG,KAAK;mBAEtBkG,QAAQ,IAAIO,KAAK,CAACzG,KAAK,EAEvB6e,OAAO,IAAIrO,UAAU,IACpB/I,GAAM,CAAA,MAAA,EAAA;UAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;AAAAE,UAAAA,QAAA,EAC1C0X,oBAAoB,KAAK,IAAI,GAC5BnW,GAAA,CAACsD,SAAS,EAAG,EAAA,CAAA,GAEb6S,oBAAAA;AACD,SAAA,CAEJ,CAAA;AAAA,OAAA,EAtCI,CAAGnX,EAAAA,KAAK,CAACzG,KAAK,EAAE,CAuCd,CAAA;AAEb,KAAC,CACF,CAAA;AAED,IAAA,OAAOye,cAAc,GAAGA,cAAc,CAACpD,OAAO,CAAC,GAAGA,OAAO,CAAA;AAC3D,GAAC,GAAG,CAAA;EAEJ,MAAMoG,eAAe,GAAG,CAAC1D,OAAO,IAAIrT,MAAM,IACxCpD,IACE,CAAA,KAAA,EAAA;AAAAnB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,WAAW,EACvB;MACE,CAACqL,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC4M,iBAAiB,GAAGA,iBAAAA;AACtB,KAAA,CACF,CAAC;AACF7gB,IAAAA,KAAK,EAAE;AACL,MAAA,GAAGkiB,gBAAgB;AACnBoC,MAAAA,SAAS,EAAE/D,UAAU;MACrB,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAACxd,QAAQ,CAACkR,SAAS,CAAC,GAC3C;QACE0B,GAAG,EACD,EACE,CAACkM,SAAS,CAAChgB,OAAO,EAAE6J,aAAa,CAAC,CAAI9C,CAAAA,EAAAA,SAAS,CAAW,SAAA,CAAA,CAAC,EACvDiB,YAAY,IAAI0W,UAAU,IAAIP,iBAAiB,CACpD,IAAI6B,SAAS,CAAChgB,OAAO,EAAEgI,YAAY,IAAI,CAAC,CAAA;OAC5C,GACD,EAAE,CAAA;KACP;AAAAf,IAAAA,QAAA,EAAA,CAEA8X,UAAU,IACTvW;AACEnK,MAAAA,IAAI,EAAC,MAAM;MACX6I,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;AAChChG,MAAAA,KAAK,EAAEof,WAAW;AAClBjX,MAAAA,QAAQ,EAAEmY,YAAY;AACtB5U,MAAAA,WAAW,EAAC,WAAA;MAEf,EAEA,CAACqS,OAAO,IACPzW,IAAA,CAAA,KAAA,EAAA;MACEnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAyB,uBAAA,CAAA;AAChD5I,MAAAA,KAAK,EAAE;AACLskB,QAAAA,SAAS,EAAE/D,UAAU;AACrBgE,QAAAA,SAAS,EAAE,MAAA;OACZ;MAEAzb,QAAA,EAAA,CAAAyY,KAAK,IAAI,CAAC,CAACS,WAAW,IACrB3X,GAAA,CAACyU,MAAM,EAAA;AACLlc,QAAAA,KAAK,EAAEof,WAAW;QAClBjZ,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;QACjCqJ,OAAO,EAAE9G,CAAC,IAAG;AACX0F,UAAAA,YAAY,CAAC1F,CAA4B,EAAE6W,WAAW,CAAC,CAAA;SACxD;AAAA,QAAA,YAAA,EACWA,WAAW;AAEtBlZ,QAAAA,QAAA,EAAAkZ,WAAAA;QAEJ,EAEA4B,eAAe,CAAC3gB,MAAM,GACnBmhB,UAAU,GACV,CAAC7C,KAAK,GACNJ,eAAe,IAAI9W,GAAA,CAACma,YAAK,EAAG,EAAA,CAAA,GAC5B,IAAI,CAAA;AAAA,KAAA,CAEX,CAAA;AAAA,GAAA,CAEJ,CAAA;EAED,OACEta,IACE,CAAA,KAAA,EAAA;AAAA4T,IAAAA,EAAE,EAAEA,EAAE;AACNne,IAAAA,GAAG,EAAEkiB,SAAS;AACd7hB,IAAAA,KAAK,EAAEA,KAAK;IACZ+I,SAAS,EAAEZ,IAAI,CAAC,CACd;MACE,CAAClE,IAAI,GAAGA,IAAI;AACZkG,MAAAA,OAAO,EAAEA,OAAO;MAChB,CAACvB,SAAS,GAAGA,SAAS;AACtB,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGnD,KAAK;AAC7B,MAAA,CAAC,CAAGmD,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAG6Y,OAAO;MAC/B,CAAC,CAAA,EAAG7Y,SAAS,CAAA,SAAA,CAAW,GAAG2F,QAAAA;AAC5B,KAAA,CACF,CAAC;AAAAzF,IAAAA,QAAA,EAAA,CAEFoB,IACE,CAAA,KAAA,EAAA;AAAA+H,MAAAA,OAAO,EAAE8R,kBAAkB;AAC3BvQ,MAAAA,YAAY,EAAE6O,gBAAgB;AAC9B1D,MAAAA,YAAY,EAAE2D,gBAAgB;MAC9BvZ,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAEhCE,MAAAA,QAAA,EAAA,CAAAmY,UAAU,GACT/W,IACE,CAAA,KAAA,EAAA;AAAAlK,QAAAA,KAAK,EAAE;AACL,UAAA,GAAGA,KAAK;AACR,UAAA,IAAIsN,MAAM,GAAG;YAAEmX,QAAQ,EAAE,GAAG3C,gBAAgB,CAAA,EAAA,CAAA;WAAM,GAAG,EAAE,CAAC;UACxD4C,QAAQ,EAAE,GAAG5C,gBAAgB,CAAA,EAAA,CAAA;SAC9B;QACD/Y,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAgB,cAAA,CAAA;mBAEtC6Y,OAAO,IACLzC,QAAqB,CAACvc,GAAG,CAAC,CAACkiB,GAAG,EAAEzc,KAAK,KACpCkZ,SAAS,GACP/W,GACG,CAAA,KAAA,EAAA;UAAAvB,QAAA,EAAAsY,SAAS,GAAG;AACXvY,YAAAA,KAAK,EACH8a,gBAAgB,CAACiB,IAAI,CAACzZ,CAAC,IAAIA,CAAC,CAACvI,KAAK,KAAK+hB,GAAG,CAAC,EACvC7b,QAAQ,IAAI6b,GAAG;AACrB/hB,YAAAA,KAAK,EAAE+hB,GAAG;AACVxF,YAAAA,OAAO,EAAEqE,eAAe;AACxBpE,YAAAA,QAAQ,EAAE,IAAA;WACX,CAAA;SAAC,EARM,CAAGlX,EAAAA,KAAK,CAAIyc,CAAAA,EAAAA,GAAG,CAAE,CAAA,CASrB,GAENta,IAAC6U,GAAG,EAAA;AACFE,UAAAA,QAAQ,EAAA,IAAA;AACRxc,UAAAA,KAAK,EAAE+hB,GAAG;UACV9b,KAAK,EACH8b,GAAG,KAAK,EAAE,GACNrW,WAAW,GACXqV,gBAAgB,CAACiB,IAAI,CAACzZ,CAAC,IAAIA,CAAC,CAACvI,KAAK,KAAK+hB,GAAG,CAAC,EACvC7b,QAAQ,IAAI6b,GAAG;AAEzBxF,UAAAA,OAAO,EAAEqE,eAAAA;AACJ,SAAA,EAAA,CAAA,EAAGtb,KAAK,CAAA,CAAA,EAAIyc,GAAG,CAAE,CAAA,CAEzB,CACF,EAEFrX,MAAM,GACLjD,GAAA,CAAA,KAAA,EAAA;UAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAM,IAAA,CAAA;oBAChCyB,GACE,CAAA,KAAA,EAAA;YAAA4H,OAAO,EAAE9G,CAAC,IAAG;AACX,cAAA,IAAIoD,QAAQ,EAAE;gBACZpD,CAAC,CAACmB,cAAc,EAAE,CAAA;gBAClBnB,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB,gBAAA,OAAA;AACF,eAAA;aACD;AACDwC,YAAAA,SAAS,EAAEe,eAAe;AAC1Btd,YAAAA,KAAK,EAAE;AACL4M,cAAAA,KAAK,EAAE,MAAM;AACbiY,cAAAA,OAAO,EAAE,MAAM;AACfC,cAAAA,SAAS,EAAE,QAAA;aACZ;AACDC,YAAAA,eAAe,EAAC,gBAAgB;YAChCjH,EAAE,EAAE,CAAGlV,EAAAA,SAAS,CAAmB,iBAAA,CAAA;YACnCG,SAAS,EAAE,GAAGH,SAAS,CAAA,UAAA,CAAA;WAAY,CAAA;SAEjC,CAAA,GACJ,CAAC6Y,OAAO,GACVpX,GAAA,CAAA,KAAA,EAAA;UACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAC/B5I,UAAAA,KAAK,EAAE;YAAEqW,OAAO,EAAE/I,MAAM,IAAI0R,QAAQ,KAAK,EAAE,GAAG,KAAK,GAAG,GAAA;WAAK;UAAAlW,QAAA,EAE1DkW,QAAQ,KAAK,EAAE,GACZ1Q,WAAW,GACXqV,gBAAgB,CAACiB,IAAI,CAACzZ,CAAC,IAAIA,CAAC,CAACvI,KAAK,KAAKoc,QAAQ,CAAC,EAC5ClW,QAAQ,IAAIkW,QAAAA;SAAQ,CACxB,GACJ,IAAI,CAAA;OAAA,CACJ,GACJ,CAACyC,OAAO,GACVpX,GAAA,CAAA,KAAA,EAAA;QACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAC/BqJ,QAAAA,OAAO,EAAEA,MAAM,CAAC1D,QAAQ,IAAIY,SAAS,CAAC,CAAC7B,MAAM,IAAImK,IAAI,CAAC;AACtDzX,QAAAA,KAAK,EAAE;UAAEqW,OAAO,EAAE/I,MAAM,IAAI0R,QAAQ,KAAK,EAAE,GAAG,KAAK,GAAG,GAAA;SAAK;QAE1DlW,QAAA,EAAAkW,QAAQ,KAAK,EAAE,GACZ1Q,WAAW,GACX,CAAC,MAAK;AACJ,UAAA,MAAMlD,MAAM,GAAGuY,gBAAgB,CAACiB,IAAI,CAClCzZ,CAAC,IAAIA,CAAC,CAACvI,KAAK,KAAKoc,QAAQ,CAC1B,CAAA;UAED,OAAO5T,MAAM,EAAEtC,QAAQ,IAAIsC,MAAM,EAAExI,KAAK,IAAI,IAAI,CAAA;AAClD,SAAC,GAAC;AACF,OAAA,CAAA,GACJ,IAAI,EAEP+e,OAAO,IAAI,CAAChB,OAAO,GAClBjS,UAAU,IAAIsQ,QAAQ,GACpB3U,GACE,CAAA,QAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAY,UAAA,CAAA;AACnCqJ,QAAAA,OAAO,EAAEyB,WAAW;QAEnB5K,QAAA,EAAAwY,UAAU,IAAIjX,GAAA,CAACsC,SAAS,EAAA,EAAA,CAAA;AAClB,OAAA,CAAA,GAETzC,IAAM,CAAA,MAAA,EAAA;QAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAClCE,QAAAA,QAAA,EAAA,CAAA2a,cAAc,EACdhe,KAAK,IAAI2D,aAAa,GAAGiB,GAAA,CAAC0D,SAAS,EAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AACzC,OAAA,CACR,GAED7D,IAAA,CAAAsV,UAAA,EAAA;QAAA1W,QAAA,EAAA,CACG,CAAC6X,OAAO,IACPzW,IAAM,CAAA,MAAA,EAAA;UAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAClCE,UAAAA,QAAA,EAAA,CAAA2a,cAAc,EACdhe,KAAK,IAAI2D,aAAa,GAAGiB,GAAA,CAAC0D,SAAS,EAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AACzC,SAAA,CACR,EAEA4S,OAAO,IACNtW,GAAM,CAAA,MAAA,EAAA;UAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AACrCE,UAAAA,QAAA,EAAAuB,GAAA,CAACoD,WAAW,EAAA,EAAA,CAAA;AACP,SAAA,CACR,CAAA;AACA,OAAA,CACJ,CAAA;KACG,CAAA,EAELiW,cAAc,gBACXsB,YAAY,CAACX,eAAe,EAAEX,cAAc,CAAC,GAC7CW,eAAe,CAAA;AACf,GAAA,CAAA,CAAA;AAEV,CAAC,CACF,CAAA;AAEDnE,eAAe,CAACrU,WAAW,GAAG,QAAQ,CAAA;AACtC,MAAMoZ,MAAM,GAAG1iB,MAAM,CAACqU,MAAM,CAACsJ,eAAe,EAAE;AAAEpB,EAAAA,MAAAA;AAAQ,CAAA;;;;;ACjqBxD,MAAMoG,oBAAoB,GAAG;EAC3BC,KAAK,EAAE,CAAGxd,EAAAA,iBAAiB,CAAY,UAAA,CAAA;EACvCyd,KAAK,EAAE,CAAGzd,EAAAA,iBAAiB,CAAY,UAAA,CAAA;AACvC0d,EAAAA,OAAO,EAAE,EAAA;CACV,CAAA;AAEKC,MAAAA,cAAc,GAA4BA,CAAC;AAC/C1c,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B3H,KAAK,GAAG,EAAE;EACVulB,MAAM;EACNxc,SAAS;AACT9E,EAAAA,IAAI,GAAG,SAAS;AAChBuhB,EAAAA,iBAAiB,GAAG,IAAA;AACrB,CAAA,KAAkB;EACjB,OACEnb,GAAA,CAAA,KAAA,EAAA;AACEtB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG4c,iBAAiB;MAC3C,CAAC,CAAA,EAAG5c,SAAS,CAAA,OAAA,CAAS,GAAG2c,MAAAA;KAC1B,EACDxc,SAAS,CACV,CAAC;AAEFD,IAAAA,QAAA,EAAAuB,GAAA,CAAA,MAAA,EAAA;AACEtB,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,GAAGS,SAAS,CAAA,QAAA,CAAU,EACtBsc,oBAAoB,CAACjhB,IAAI,CAAC,EAC1B8E,SAAS,CACV,CAAC;AACF/I,MAAAA,KAAK,EAAEA,KAAAA;KACD,CAAA;AAAA,GAAA,CACJ,CAAA;AAEV;;;;;ACnCO,MAAMylB,mBAAmB,GAAG,EAAE,CAAA;AAC9B,MAAMC,kBAAkB,GAAG,EAAE,CAAA;AAE7B,MAAMC,yBAAyB,GACpCC,MAAqC,IACd;AACvB,EAAA,OAAO,OAAOA,MAAM,KAAK,SAAS,GAC9B;AACEC,IAAAA,KAAK,EAAED,MAAM,EAAEC,KAAK,IAAI,QAAQ;AAChC5hB,IAAAA,IAAI,EAAE2hB,MAAM,EAAE3hB,IAAI,IAAIyhB,kBAAkB;AACxC1lB,IAAAA,KAAK,EAAE4lB,MAAM,EAAE5lB,KAAK,IAAI,EAAE;AAC1B+I,IAAAA,SAAS,EAAE6c,MAAM,EAAE7c,SAAS,IAAI,EAAA;AACjC,GAAA,GACD;AACE8c,IAAAA,KAAK,EAAE,QAAQ;AACf5hB,IAAAA,IAAI,EAAEyhB,kBAAAA;GACP,CAAA;AACP,CAAC,CAAA;AAEKI,MAAAA,cAAc,GAA4BA,CAAC;AAC/Cld,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7BoB,SAAS;AACT8c,EAAAA,KAAK,GAAG,QAAQ;EAChB7lB,KAAK;EACL+lB,YAAY;AACZ9hB,EAAAA,IAAI,GAAGwhB,mBAAmB;EAC1BF,MAAM;AACNC,EAAAA,iBAAiB,GAAG,IAAI;EACxB,GAAGnc,KAAAA;AAAK,CACT,KAAkB;EACjB,OACEgB,GAAA,CAAA,KAAA,EAAA;AACEtB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,EAAE,EACd;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG4c,iBAAiB;MAC3C,CAAC,CAAA,EAAG5c,SAAS,CAAA,OAAA,CAAS,GAAG2c,MAAAA;KAC1B,EACDxc,SAAS,CACV,CAAC;AACF/I,IAAAA,KAAK,EAAE+lB,YAAY;AAAA,IAAA,GACf1c,KAAK;AAETP,IAAAA,QAAA,EAAAuB,GAAA,CAAA,MAAA,EAAA;AACEtB,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CAAC,CAAGS,EAAAA,SAAS,CAAWA,QAAAA,EAAAA,SAAS,CAAWid,QAAAA,EAAAA,KAAK,CAAE,CAAA,CAAC,CAAC;AACrE7lB,MAAAA,KAAK,EAAE;AACL,QAAA,IAAIiE,IAAI,GAAG;AAAE2I,UAAAA,KAAK,EAAE3I,IAAI;AAAE4I,UAAAA,MAAM,EAAE5I,IAAI;AAAE+hB,UAAAA,UAAU,EAAE/hB,IAAAA;SAAM,GAAG,EAAE,CAAC;QAChE,IAAIjE,KAAK,IAAI,EAAE,CAAA;;KAEjB,CAAA;AAAA,GAAA,CACE,CAAA;AAEV;;;;;ACrDA,MAAMimB,gBAAgB,GAAG,EAAE,CAAA;AAErBC,MAAAA,aAAa,GAA2BA,CAAC;AAC7Ctd,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7BoB,SAAS;AACT/I,EAAAA,KAAK,GAAG,EAAE;AAAA,CACX,KAAkB;EACjB,OACEqK,GAAK,CAAA,KAAA,EAAA;AAAAtB,IAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,UAAUG,SAAS,IAAI,EAAE,CAAE,CAAA;AAAE/I,IAAAA,KAAK,EAAEA,KAAK;AACnE8I,IAAAA,QAAA,EAAAuB,GAAA,CAAA,MAAA,EAAA;MACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAO,KAAA,CAAA;AAC9B5I,MAAAA,KAAK,EAAE;AACLmmB,QAAAA,QAAQ,EAAE,CAAGnmB,EAAAA,KAAK,EAAE4M,KAAK,IAAIqZ,gBAAgB,CAAI,EAAA,CAAA;AACjD5G,QAAAA,KAAK,EAAE,SAAS;AAChBvV,QAAAA,QAAQ,EAAE,UAAU;AACpB8C,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,MAAM,EAAE,MAAM;QACd,IAAI7M,KAAK,EAAEuf,eAAe,GACtB;UAAEA,eAAe,EAAEvf,KAAK,EAAEuf,eAAAA;SAAiB,GAC3C,EAAE,CAAA;OACP;AAAAzW,MAAAA,QAAA,EAEDuB;AACEyC,QAAAA,OAAO,EAAC,eAAe;AACvBE,QAAAA,KAAK,EAAC,4BAA4B;AAClCJ,QAAAA,KAAK,EAAC,KAAK;AACXC,QAAAA,MAAM,EAAC,KAAK;AACZE,QAAAA,IAAI,EAAC,cAAc;kBAEnB1C,GACE,CAAA,MAAA,EAAA;AAAA4C,UAAAA,CAAC,EAAC,i3BAAi3B;UACn3BlE,SAAS,EAAE,GAAGH,SAAS,CAAA,WAAA,CAAA;SACjB,CAAA;OAAA,CAAA;KAEL,CAAA;AAAA,GAAA,CACH,CAAA;AAEV;;;;;ACpCA,MAAMwd,mBAAmB,GAAG;EAC1BjB,KAAK,EAAE,CAAGxd,EAAAA,iBAAiB,CAAW,SAAA,CAAA;EACtCyd,KAAK,EAAE,CAAGzd,EAAAA,iBAAiB,CAAW,SAAA,CAAA;AACtC0d,EAAAA,OAAO,EAAE,EAAA;CACV,CAAA;AAEKgB,MAAAA,aAAa,GAA2BA,CAAC;AAC7Czd,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B3H,KAAK;EACLge,KAAK;EACLuH,MAAM;EACNxc,SAAS;AACT9E,EAAAA,IAAI,GAAG,SAAA;AACR,CAAA,KAAkB;EACjB,OACEoG,GAAA,CAAA,KAAA,EAAA;AACEtB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAGS,EAAAA,SAAS,UAAU,EACtB;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAG2c,MAAM;MAC/B,CAAC,CAAA,EAAG3c,SAAS,CAAA,MAAA,CAAQ,GAAGoV,KAAAA;KACzB,EACDjV,SAAS,CACV,CAAC;AAAAD,IAAAA,QAAA,EAEFuB;AACEtB,MAAAA,SAAS,EAAE,CAAA,EAAGH,SAAS,CAAA,OAAA,EAAUwd,mBAAmB,CAACniB,IAAI,CAAC,CACxD8E,CAAAA,EAAAA,SAAS,IAAI,EACf,CAAE,CAAA;AACF/I,MAAAA,KAAK,EAAEA,KAAAA;KAAK,CAAA;AAEV,GAAA,CAAA,CAAA;AAEV;;;;;AC5BA,MAAMsmB,qBAAqB,GAAG,CAAC,CAAA;AAC/B,MAAMC,sBAAsB,GAAG,CAAC,CAAA;AAE1BC,MAAAA,QAAQ,GAAGA,CAAC;AAChB5d,EAAAA,SAAS,GAAGjB,iBAAiB;EAC7B4d,MAAM;EACNxc,SAAS;EACT/I,KAAK;EACL4lB,MAAM;EACNa,SAAS;EACTC,KAAK;EACLlI,KAAK;AACLmI,EAAAA,QAAQ,GAAG,IAAA;AACG,CAAA,KAAkB;AAChC,EAAA,MAAMC,wBAAwB,GAC5B,OAAOpI,KAAK,KAAK,SAAS,GACtB;AACExe,IAAAA,KAAK,EAAE;MAAE4M,KAAK,EAAE4R,KAAK,EAAE5R,KAAK;AAAE,MAAA,GAAG4R,KAAK,EAAExe,KAAAA;KAAO;AAC/C+I,IAAAA,SAAS,EAAEyV,KAAK,EAAEzV,SAAS,IAAI,EAAA;GAChC,GACD,EAAE,CAAA;AAER,EAAA,MAAM8d,cAAc,GAAGjB,MAAM,GACzBU,qBAAqB,GACrBC,sBAAsB,CAAA;AAE1B,EAAA,MAAMO,cAAc,GAClB,OAAOL,SAAS,KAAK,SAAS,IAAI,CAACA,SAAS,GACxCI,cAAc,GACdJ,SAAS,EAAEM,IAAI,IAAIF,cAAc,CAAA;EAEvC,OACE3c,IAAA,CAAA,KAAA,EAAA;AACEnB,IAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdS,SAAS,EACT;AACE,MAAA,CAAC,CAAGA,EAAAA,SAAS,CAAc,YAAA,CAAA,GAAGgd,MAAM;AACpC,MAAA,CAAC,CAAGhd,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAG2c,MAAM;MAC/B,CAAC,CAAA,EAAG3c,SAAS,CAAA,MAAA,CAAQ,GAAG8d,KAAAA;KACzB,EACD3d,SAAS,CACV,CAAC;AACF/I,IAAAA,KAAK,EAAEA,KAAK;IAAA8I,QAAA,EAAA,CAEX8c,MAAM,IAAIe,QAAQ,IACjBtc;MAAKtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;gBACpCyB,GAAC,CAAAyb,cAAc,EAAK;QAAA,GAAAH,yBAAyB,CAACC,MAAM,CAAA;;AAChD,KAAA,CACP,EAED1b,IAAK,CAAA,KAAA,EAAA;MAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAAAE,MAAAA,QAAA,EAAA,CACpCuB;QACEtB,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAA,OAAA,EAAUge,wBAAwB,CAAC7d,SAAS,CAAA,CAAE,EAC1D;UAAE,CAAC,CAAA,EAAGH,SAAS,CAAA,aAAA,CAAe,GAAGgd,MAAAA;AAAQ,SAAA,CAC1C,CAAC;QACF5lB,KAAK,EAAE4mB,wBAAwB,CAAC5mB,KAAAA;OAAK,CACrC,EAEDymB,SAAS,KAAK,KAAK,IAClBpc;QACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAY,UAAA,CAAA;AACnC5I,QAAAA,KAAK,EAAE;AACL,UAAA,IAAI,OAAOymB,SAAS,KAAK,SAAS,IAAIA,SAAS,GAC3CA,SAAS,CAACzmB,KAAK,GACf,EAAE,CAAA;SACP;AAEA8I,QAAAA,QAAA,EAAAf,WAAW,CAAC+e,cAAc,CAAC,CAACrkB,GAAG,CAACN,GAAG,IAClCkI,GAAS,CAAA,IAAA,EAAA,EAAA,EAAAlI,GAAG,CACb,CAAA;QAEJ,CAAA;AAAA,KAAA,CACG,CAAA;AACF,GAAA,CAAA,CAAA;AAEV,EAAC;AAEDqkB,QAAQ,CAACQ,KAAK,GAAGd,aAAa,CAAA;AAC9BM,QAAQ,CAAChJ,KAAK,GAAG6I,aAAa,CAAA;AAC9BG,QAAQ,CAACS,MAAM,GAAGnB,cAAc,CAAA;AAChCU,QAAQ,CAAC3H,MAAM,GAAGyG,cAAc;;;;;ACjFhC,MAAM4B,UAAU,GAAGA,CAAC;AAClBhnB,EAAAA,IAAI,GAAG,SAAS;AAChB6b,EAAAA,OAAO,GAAG,OAAO;AACjBsD,EAAAA,KAAK,GAAG,SAAS;AACjBwG,EAAAA,KAAK,GAAG,SAAS;AACjB5hB,EAAAA,IAAI,GAAG,QAAQ;AACfkjB,EAAAA,QAAQ,GAAG,QAAQ;EACnBpe,SAAS;EACT+S,aAAa;AACbsL,EAAAA,UAAU,EAAEC,gBAAgB,GAAG,EAAE;EACjCzL,MAAM,GAAG,EAAE;AACXhT,EAAAA,SAAS,GAAGlB,eAAe;AAC3B4f,EAAAA,YAAY,GAAG,OAAO;AACtB/Y,EAAAA,QAAQ,GAAG,KAAK;AAChBgZ,EAAAA,KAAK,GAAG,KAAK;AACbC,EAAAA,MAAM,GAAG,KAAK;AACdxJ,EAAAA,KAAK,GAAG,KAAK;EACblV,QAAQ;EACR2e,IAAI;EACJC,QAAQ;AACRC,EAAAA,SAAS,GAAG,KAAK;EACjB,GAAGC,SAAAA;AAAS,CACI,KAAkB;AAClC,EAAA,MAAMC,OAAO,GAAG1f,IAAI,CAClBS,SAAS,EACTkT,aAAa,EACb,CAAGlT,EAAAA,SAAS,IAAI1I,IAAI,CAAA,CAAE,EACtB,CAAA,EAAG0I,SAAS,CAAImT,CAAAA,EAAAA,OAAO,CAAE,CAAA,EACzB,GAAGnT,SAAS,CAAA,CAAA,EAAIyW,KAAK,CAAA,CAAE,EACvB,CAAGzW,EAAAA,SAAS,CAAIid,CAAAA,EAAAA,KAAK,EAAE,EACvB,CAAA,EAAGjd,SAAS,CAAS3E,MAAAA,EAAAA,IAAI,EAAE,EAC3B;AACE,IAAA,CAAC,CAAG2E,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAGoV,KAAK;AAC7B,IAAA,CAAC,CAAGpV,EAAAA,SAAS,CAAQ,MAAA,CAAA,GAAG2e,KAAK;AAC7B,IAAA,CAAC,CAAG3e,EAAAA,SAAS,CAAS,OAAA,CAAA,GAAG4e,MAAM;AAC/B,IAAA,CAAC,CAAG5e,EAAAA,SAAS,CAAU,QAAA,CAAA,GAAG+e,SAAS;IACnC,CAAC,CAAA,EAAG/e,SAAS,CAAA,SAAA,CAAW,GAAG2F,QAAAA;GAC5B,EACDxF,SAAS,CACV,CAAA;AAED,EAAA,MAAM+e,cAAc,GAAGvZ,QAAQ,IAAIoZ,SAAS,CAAA;AAE5C,EAAA,MAAMI,OAAO,GACX7d,IACG,CAAAsV,UAAA,EAAA;IAAA1W,QAAA,EAAA,CAAA4e,QAAQ,IAAIJ,YAAY,KAAK,OAAO,IACnCjd,GACE,CAAA,MAAA,EAAA;MAAAtB,SAAS,EAAEZ,IAAI,CAAC,CAAGS,EAAAA,SAAS,OAAO,EAAEye,gBAAgB,CAAC9J,IAAI,CAAC;MAC3Dvd,KAAK,EAAE4b,MAAM,CAAC2B,IAAI;gBAEjBmK,QAAAA;AAAQ,KAAA,CAEZ,EACDrd;MAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAAGE,MAAAA,QAAA,EAAAA,QAAAA;KAAgB,CAAA,EACzD4e,QAAQ,IAAIJ,YAAY,KAAK,KAAK,IACjCjd,GAAA,CAAA,MAAA,EAAA;MACEtB,SAAS,EAAEZ,IAAI,CAAC,CAAGS,EAAAA,SAAS,OAAO,EAAEye,gBAAgB,CAAC9J,IAAI,CAAC;MAC3Dvd,KAAK,EAAE4b,MAAM,CAAC2B,IAAI;AAEjBzU,MAAAA,QAAA,EAAA4e,QAAAA;MAEJ,CAAA;AAAA,GAAA,CAEJ,CAAA;AAED,EAAA,IAAID,IAAI,EAAE;IACR,OACEpd;AACEtB,MAAAA,SAAS,EAAE8e,OAAO;AAClBJ,MAAAA,IAAI,EAAEK,cAAc,GAAGhlB,SAAS,GAAG2kB,IAAI;AAAA,MAAA,eAAA,EACxBK,cAAc;AAE5Bhf,MAAAA,QAAA,EAAAif,OAAAA;AACC,KAAA,CAAA,CAAA;AAER,GAAA;EAEA,OACE1d,GACE,CAAA,QAAA,EAAA;AAAAnK,IAAAA,IAAI,EAAEinB,QAAQ;AACdpe,IAAAA,SAAS,EAAE8e,OAAO;AAClBtZ,IAAAA,QAAQ,EAAEuZ,cAAc;AACpB,IAAA,GAAAF,SAAS;cAEZG,OAAAA;AAAO,GAAA,CACD,CAAA;AAEb,CAAC;;AC3FKC,MAAAA,QAAQ,GAAI3e,KAAkB,IAAI;EACtC,MAAM;AACJsX,IAAAA,OAAO,GAAG,KAAK;IACfpD,IAAI;AACJ3U,IAAAA,SAAS,GAAGlB,eAAAA;AACb,GAAA,GAAG2B,KAAK,CAAA;EAET,MAAM,CAAC4e,YAAY,EAAEC,eAAe,CAAC,GAAG5mB,QAAQ,CAAC,KAAK,CAAC,CAAA;AAEvDsI,EAAAA,SAAS,CAAC,MAAK;AACb,IAAA,IAAI,OAAO+W,OAAO,KAAK,SAAS,EAAE;MAChCuH,eAAe,CAACvH,OAAO,CAAC,CAAA;KACzB,MAAM,IAAI,OAAOA,OAAO,KAAK,QAAQ,IAAIA,OAAO,CAACwH,KAAK,EAAE;AACvD,MAAA,MAAM3c,OAAO,GAAGC,UAAU,CAAC,MAAMyc,eAAe,CAAC,IAAI,CAAC,EAAEvH,OAAO,CAACwH,KAAK,CAAC,CAAA;AACtE,MAAA,OAAO,MAAMvc,YAAY,CAACJ,OAAO,CAAC,CAAA;AACpC,KAAC,MAAM;AACL0c,MAAAA,eAAe,CAAC,CAAC,CAACvH,OAAO,CAAC,CAAA;AAC5B,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;AAEb,EAAA,MAAM+G,QAAQ,GAAG/d,OAAO,CAAC,MAAK;AAC5B,IAAA,OAAOse,YAAY,GACd,OAAOtH,OAAO,KAAK,QAAQ,IAAIA,OAAO,CAACpD,IAAI,IAC1ClT;MAAMtB,SAAS,EAAE,GAAGH,SAAS,CAAA,QAAA,CAAA;MAC9B,GACD2U,IAAI,CAAA;GACT,EAAE,CAACA,IAAI,EAAE0K,YAAY,EAAEtH,OAAO,EAAE/X,SAAS,CAAC,CAAC,CAAA;EAE5C,OAAOyB,GAAC,CAAA6c,UAAU,EAAK;AAAA,IAAA,GAAA7d,KAAK;AAAEse,IAAAA,SAAS,EAAEM,YAAY;AAAEP,IAAAA,QAAQ,EAAEA,QAAAA;IAAY,CAAA;AAC/E;;;;;ACrBA,MAAMU,UAAU,GAAG,EAAE,CAAA;AACrB,MAAMC,sBAAsB,GAAG,GAAG,CAAA;AAE5BC,MAAAA,MAAM,GAAGA,CAAC;AACd1f,EAAAA,SAAS,GAAGtB,eAAe;AAC3BihB,EAAAA,QAAQ,GAAG,KAAK;EAChBvoB,KAAK;EACL+I,SAAS;EACTgC,QAAQ;EACRyd,MAAM;AACN5mB,EAAAA,IAAI,GAAG,MAAM;AACb6mB,EAAAA,MAAM,GAAG,MAAM;EACfC,OAAO;EACPC,SAAS;EACTC,YAAY;EACZ9M,aAAa;EACb+M,QAAQ;EACRta,QAAQ;EACRua,eAAe;AACfC,EAAAA,qBAAqB,GAAG,IAAI;EAC5BrI,QAAQ;AACRsI,EAAAA,QAAQ,EAAEC,kBAAkB;EAC5BC,aAAa;EACbC,MAAM;AACNC,EAAAA,QAAQ,GAAG,MAAM;AACjBC,EAAAA,cAAc,GAAG,IAAI;EACrBvgB,QAAQ;EACRqB,OAAO;AACPmf,EAAAA,eAAAA;AAAe,CACH,KAAI;AAChB,EAAA,MAAMC,SAAS,GAAGzoB,MAAM,CAAmB,IAAI,CAAC,CAAA;EAChD,MAAM,CAACkoB,QAAQ,EAAEQ,WAAW,CAAC,GAAGloB,QAAQ,CAAyB,MAC/D,CAAC2nB,kBAAkB,IAAIK,eAAe,IAAI,EAAE,EAAE7mB,GAAG,CAAC,CAACgnB,IAAI,EAAEjT,GAAG,MAAM;AAChE,IAAA,GAAGiT,IAAI;AACPC,IAAAA,GAAG,EAAED,IAAI,CAACC,GAAG,IAAI,CAAA,EAAGha,IAAI,CAACuK,GAAG,EAAE,CAAA,CAAA,EAAIzD,GAAG,CAAE,CAAA;AACvCqF,IAAAA,MAAM,EAAE4N,IAAI,CAAC5N,MAAM,IAAI,MAAM;AAC7B8N,IAAAA,OAAO,EAAEF,IAAI,CAACE,OAAO,IAAItB,sBAAAA;GAC1B,CAAC,CAAC,CACJ,CAAA;EAED,MAAMuB,cAAc,GAAIC,OAA+B,IAAI;IACzDL,WAAW,CAACK,OAAO,CAAC,CAAA;AAEpB,IAAA,IAAI9e,QAAQ,EAAE;AACZA,MAAAA,QAAQ,CAAC;AACPie,QAAAA,QAAQ,EAAEa,OAAO;AACjBJ,QAAAA,IAAI,EAAEI,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE;AACF,OAAA,CAAC,CAAA;AACzB,KAAA;GACD,CAAA;AAED,EAAA,MAAMC,gBAAgB,GAAG,MACvBrZ,KAA0C,IACxC;AACF,IAAA,MAAMsZ,QAAQ,GAAWpmB,KAAK,CAACqE,IAAI,CAACyI,KAAK,CAACnF,MAAM,CAAC0e,KAAK,IAAI,EAAE,CAAC,CAAA;IAC7D,IAAIC,WAAW,GAA2BF,QAAQ,CAACtnB,GAAG,CAAC,CAACgnB,IAAI,EAAEtZ,CAAC,MAAM;MACnEuZ,GAAG,EAAE,GAAGha,IAAI,CAACuK,GAAG,EAAE,CAAI9J,CAAAA,EAAAA,CAAC,CAAE,CAAA;MACzBvO,IAAI,EAAE6nB,IAAI,CAAC7nB,IAAI;MACfqC,IAAI,EAAEwlB,IAAI,CAACxlB,IAAI;MACf/D,IAAI,EAAEupB,IAAI,CAACvpB,IAAI;AACf2b,MAAAA,MAAM,EAAE,WAAW;AACnB8N,MAAAA,OAAO,EAAE,CAAC;AACVO,MAAAA,aAAa,EAAET,IAAAA;AAChB,KAAA,CAAC,CAAC,CAAA;AAEH,IAAA,IAAIb,YAAY,EAAE;MAChB,MAAMuB,QAAQ,GAA2B,EAAE,CAAA;AAE3C,MAAA,KAAK,IAAIha,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG8Z,WAAW,CAAChnB,MAAM,EAAEkN,CAAC,EAAE,EAAE;AAC3C,QAAA,MAAMsZ,IAAI,GAAGQ,WAAW,CAAC9Z,CAAC,CAAC,CAAC+Z,aAAuB,CAAA;QACnD,MAAME,MAAM,GAAG,MAAMxB,YAAY,CAACa,IAAI,EAAEM,QAAQ,CAAC,CAAA;QAEjD,IAAIK,MAAM,KAAK,KAAK,EAAE;AACpB,UAAA,SAAA;AACF,SAAA;AAEAD,QAAAA,QAAQ,CAACplB,IAAI,CAACklB,WAAW,CAAC9Z,CAAC,CAAC,CAAC,CAAA;AAC/B,OAAA;AAEA8Z,MAAAA,WAAW,GAAGE,QAAQ,CAAA;AACxB,KAAA;IAEA,MAAMN,OAAO,GAAG,CACdtB,QAAQ,GAAG,CAAC,GAAGS,QAAQ,EAAE,GAAGiB,WAAW,CAAC,GAAGA,WAAW,EACtDI,KAAK,CAAC,CAAC,EAAE3J,QAAQ,CAAC,CAAA;IAEpBkJ,cAAc,CAACC,OAAO,CAAC,CAAA;AAEvBI,IAAAA,WAAW,CAAC5mB,OAAO,CAAComB,IAAI,IAAG;AACzB,MAAA,MAAMa,MAAM,GAAGb,IAAI,CAACS,aAAuB,CAAA;MAE3C,MAAMK,cAAc,GAAIZ,OAAe,IAAI;QACzCF,IAAI,CAACE,OAAO,GAAGA,OAAO,CAAA;AACtBC,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;MAED,MAAMW,WAAW,GAAGA,MAAK;QACvBf,IAAI,CAAC5N,MAAM,GAAG,MAAM,CAAA;QACpB4N,IAAI,CAACE,OAAO,GAAG,GAAG,CAAA;AAClBC,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;MAED,MAAMY,SAAS,GAAGA,MAAK;QACrBhB,IAAI,CAAC5N,MAAM,GAAG,OAAO,CAAA;AACrB+N,QAAAA,cAAc,CAAC,CAAC,GAAGC,OAAO,CAAC,CAAC,CAAA;OAC7B,CAAA;AAED,MAAA,IAAIX,aAAa,EAAE;AACjBA,QAAAA,aAAa,CAAC;AACZO,UAAAA,IAAI,EAAEa,MAAM;AACZI,UAAAA,SAAS,EAAEF,WAAW;AACtBG,UAAAA,OAAO,EAAEF,SAAS;UAClBG,UAAU,EAAEna,KAAK,IAAG;YAClB,MAAMkZ,OAAO,GAAGkB,IAAI,CAACnE,KAAK,CACvBjW,KAAK,CAACqa,MAAM,IAAIra,KAAK,CAACsa,KAAK,IAAIta,KAAK,CAACqa,MAAM,CAAC,GAC3CzC,sBAAsB,CACzB,CAAA;YAEDkC,cAAc,CAACZ,OAAO,CAAC,CAAA;AACzB,WAAA;AACD,SAAA,CAAC,CAAA;AACJ,OAAC,MAAM,IAAI,OAAOnB,MAAM,KAAK,QAAQ,EAAE;AACrC,QAAA,MAAMwC,QAAQ,GAAG,IAAIC,QAAQ,EAAE,CAAA;AAC/BD,QAAAA,QAAQ,CAACE,MAAM,CAACtpB,IAAI,EAAE0oB,MAAM,CAAC,CAAA;QAE7Ba,KAAK,CAAC3C,MAAM,EAAE;UACZC,MAAM;AACN2C,UAAAA,IAAI,EAAEJ,QAAQ;UACdtC,OAAO;AACP2C,UAAAA,WAAW,EAAEvC,eAAe,GAAG,SAAS,GAAG,aAAA;SAC5C,CAAC,CACC3lB,IAAI,CAACmoB,GAAG,IAAG;AACV,UAAA,IAAI,CAACA,GAAG,CAACC,EAAE,EAAE;AACX,YAAA,MAAM,IAAI7lB,KAAK,CAAC,eAAe,CAAC,CAAA;AAClC,WAAA;AAEA,UAAA,OAAO4lB,GAAG,CAACE,IAAI,EAAE,CAAA;SAClB,CAAC,CACDroB,IAAI,CAACqnB,WAAW,CAAC,CACjBiB,KAAK,CAAChB,SAAS,CAAC,CAAA;AACrB,OAAC,MAAM,IAAI,OAAOjC,MAAM,KAAK,UAAU,EAAE;QACvCA,MAAM,CAAC8B,MAAM,CAAC,CAAA;AACdE,QAAAA,WAAW,EAAE,CAAA;AACf,OAAC,MAAM;AACLA,QAAAA,WAAW,EAAE,CAAA;AACf,OAAA;AACF,KAAC,CAAC,CAAA;IAEF,IAAIjB,SAAS,CAAC1nB,OAAO,EAAE;AACrB0nB,MAAAA,SAAS,CAAC1nB,OAAO,CAACe,KAAK,GAAG,EAAE,CAAA;AAC9B,KAAA;GACD,CAAA;EAED,MAAM8oB,YAAY,GAAIhC,GAAW,IAAI;IACnC,MAAMS,QAAQ,GAA2B,EAAE,CAAA;IAE3C,IAAIwB,WAAW,GAAqC7oB,SAAS,CAAA;AAE7DkmB,IAAAA,QAAQ,CAAC3lB,OAAO,CAAComB,IAAI,IAAG;AACtB,MAAA,IAAIA,IAAI,CAACC,GAAG,KAAKA,GAAG,EAAE;AACpBS,QAAAA,QAAQ,CAACplB,IAAI,CAAC0kB,IAAI,CAAC,CAAA;AACrB,OAAC,MAAM;AACLkC,QAAAA,WAAW,GAAGlC,IAAI,CAAA;AACpB,OAAA;AACF,KAAC,CAAC,CAAA;IAEFG,cAAc,CAACO,QAAQ,CAAC,CAAA;AAExB,IAAA,IAAIwB,WAAW,EAAE;MACf9C,QAAQ,GAAG8C,WAAW,CAAC,CAAA;AACzB,KAAA;GACD,CAAA;EAED,MAAM1M,WAAW,GAAGA,MAAK;IACvB,IAAI,CAAC1Q,QAAQ,IAAIwa,qBAAqB,IAAIQ,SAAS,CAAC1nB,OAAO,EAAE;AAC3D0nB,MAAAA,SAAS,CAAC1nB,OAAO,CAAC+pB,KAAK,EAAE,CAAA;AAC3B,KAAA;GACD,CAAA;EAED,OACE1hB,IAAA,CAAA,KAAA,EAAA;IACEnB,SAAS,EAAEZ,IAAI,CAAC,CACd,CAAA,EAAGS,SAAS,CAAA,QAAA,CAAU,EACtBG,SAAS,EACT+S,aAAa,EACb;AACE3R,MAAAA,OAAO,EAAEA,OAAO;MAChB,CAAC,CAAA,EAAGvB,SAAS,CAAA,SAAA,CAAW,GAAG2F,QAAAA;AAC5B,KAAA,CACF,CAAC;AACFvO,IAAAA,KAAK,EAAEA,KAAK;AAEZ8I,IAAAA,QAAA,EAAA,CAAAoB,IAAA,CAAA,MAAA,EAAA;AACEnB,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CAAC,GAAGS,SAAS,CAAA,CAAE,EAAE,CAAA,EAAGA,SAAS,CAAA,CAAA,EAAIwgB,QAAQ,CAAA,CAAE,CAAC,CAAC;AAC7DnX,MAAAA,OAAO,EAAEgN,WAAW;AAEnBnW,MAAAA,QAAA,EAAA,CAAAA,QAAQ,EACTuB,GAAA,CAAA,OAAA,EAAA;AACEnK,QAAAA,IAAI,EAAC,MAAM;AACXP,QAAAA,GAAG,EAAE4pB,SAAS;AACdJ,QAAAA,MAAM,EAAEA,MAAM;AACdZ,QAAAA,QAAQ,EAAEA,QAAQ;AAClBxd,QAAAA,QAAQ,EAAE+e,gBAAgB;QAC1B/gB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAC/B2F,QAAAA,QAAQ,EAAEA,QAAQ;AAAA,QAAA,IACboa,SAAS,GACV;AACEA,UAAAA,SAAS,EAAE,IAAI;AACfkD,UAAAA,eAAe,EAAE,IAAA;SAClB,GACD,EAAE,CAAA;AACN,OAAA,CAAA,CAAA;AAAA,KAAA,CACG,EAENxC,cAAc,IAAIL,QAAQ,CAAC/lB,MAAM,GAAG,CAAC,IACpCoH,GAAA,CAAA,IAAA,EAAA;AAAItB,MAAAA,SAAS,EAAE,CAAGH,EAAAA,SAAS,SAASA,SAAS,CAAA,MAAA,EAASwgB,QAAQ,CAAE,CAAA;MAC7DtgB,QAAA,EAAAkgB,QAAQ,CAACvmB,GAAG,CAACgnB,IAAI,IAChBvf;QAEEnB,SAAS,EAAE,GAAGH,SAAS,CAAA,MAAA,EAASA,SAAS,CAAS6gB,MAAAA,EAAAA,IAAI,CAAC5N,MAAM,CAAE,CAAA;AAAA/S,QAAAA,QAAA,EAAA,CAE/DuB;UACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAS,OAAA,CAAA;UAChCqJ,OAAO,EAAEA,MAAMyZ,YAAY,CAACjC,IAAI,CAACC,GAAG,CAAC;AAAA5gB,UAAAA,QAAA,EAEpCsgB,QAAQ,KAAK,SAAS,KAAKK,IAAI,CAACS,aAAa,IAAIT,IAAI,CAACqC,GAAG,CAAC;AACzD;UACAzhB,GAAA,CAAA,KAAA,EAAA;AACEuC,YAAAA,KAAK,EAAEwb,UAAU;AACjBvb,YAAAA,MAAM,EAAEub,UAAU;YAClB2D,GAAG,EAAEtC,IAAI,CAAC7nB,IAAI;AACdoqB,YAAAA,GAAG,EAAEvC,IAAI,CAACqC,GAAG,IAAIG,GAAG,CAACC,eAAe,CAACzC,IAAI,CAACS,aAAa,CAAC;YACxDnhB,SAAS,EAAE,GAAGH,SAAS,CAAA,eAAA,CAAA;AAAiB,WAAA,CACxC,GAEFyB,GAAA,CAAC6D,WAAW,EAAA,EAAA,CAAA;AACb,SAAA,CACI,EACPhE,IAAK,CAAA,KAAA,EAAA;AAAAlK,UAAAA,KAAK,EAAE;AAAE4M,YAAAA,KAAK,EAAE,MAAA;WAAQ;AAC3B9D,UAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,KAAA,EAAA;YACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAa,WAAA,CAAA;AACpC5I,YAAAA,KAAK,EAAE;AACL,cAAA,IAAIypB,IAAI,CAAC5N,MAAM,KAAK,WAAW,GAAG;AAAEsQ,gBAAAA,YAAY,EAAE,EAAA;eAAI,GAAG,EAAE,CAAA;aAC5D;AAEDrjB,YAAAA,QAAA,EAAAuB,GAAA,CAAA,MAAA,EAAA;cACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAmB,iBAAA,CAAA;cAC1CqJ,OAAO,EAAEA,MAAMyZ,YAAY,CAACjC,IAAI,CAACC,GAAG,CAAC;AACrC1pB,cAAAA,KAAK,EAAE;AAAEqb,gBAAAA,MAAM,EAAE,SAAS;AAAE+Q,gBAAAA,UAAU,EAAE,MAAA;eAAQ;AAChDC,cAAAA,IAAI,EAAC,QAAQ;4BACF,aAAa;AAAAvjB,cAAAA,QAAA,EAExBuB,IAAC8D,SAAS,EAAA,EAAA,CAAA;;WAER,CAAA,EACLsb,IAAI,CAAC5N,MAAM,KAAK,WAAW,IAC1B3R,IACE,CAAAsV,UAAA,EAAA;AAAA1W,YAAAA,QAAA,EAAA,CAAAuB,GAAA,CAAA,KAAA,EAAA;cAAKtB,SAAS,EAAE,GAAGH,SAAS,CAAA,mBAAA,CAAA;AAAqB,aAAA,CAAI,EACrDyB,GACE,CAAA,KAAA,EAAA;cAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAA6B,2BAAA,CAAA;AACpD5I,cAAAA,KAAK,EAAE;AAAE4M,gBAAAA,KAAK,EAAE,CAAA,EAAG6c,IAAI,CAACE,OAAO,CAAA,CAAA,CAAA;;AAC/B,aAAA,CAAA,CAAA;AAAA,WAAA,CAEL,CAAA;AACG,SAAA,CAAA,CAAA;AAAA,OAAA,EA9CDF,IAAI,CAACC,GAAG,CAgDhB,CAAA;MAEJ,CAAA;AAAA,GAAA,CACG,CAAA;AAEV;;;;;AC9QA,MAAM4C,QAAQ,gBAAG9Q,UAAU,CACzB,CACE;AACE5S,EAAAA,SAAS,GAAGzB,iBAAiB;AAC7B4B,EAAAA,SAAS,GAAG,EAAE;AACd0V,EAAAA,cAAc,GAAG,KAAK;EACtBd,OAAO;EACP3d,KAAK;AACLuO,EAAAA,QAAQ,GAAG,KAAK;EAChBxD,QAAQ;EACRkH,OAAO;EACPuB,YAAY;EACZmL,YAAY;EACZ4N,UAAU;EACVhQ,SAAS;EACTiQ,QAAQ;EACR5qB,IAAI;EACJkH,QAAQ;EACRgV,EAAE;EACF2O,SAAS;AACTvsB,EAAAA,IAAI,GAAG,UAAU;AACjB0C,EAAAA,KAAK,GAAG,KAAK;AACbkC,EAAAA,QAAQ,GAAG,KAAK;AAChBqF,EAAAA,OAAAA;AAAO,CACR,EACDxK,GAAiC,KACjB;EAChB,MAAM+sB,SAAS,GAAG/O,OAAO,KAAK7a,SAAS,GAAG6a,OAAO,GAAGc,cAAc,IAAI7b,KAAK,CAAA;EAC3E,MAAM,CAAC+pB,eAAe,EAAEC,kBAAkB,CAAC,GAAGtrB,QAAQ,CAACorB,SAAS,CAAC,CAAA;EAEjE,MAAMzN,WAAW,GACf9T,CAAoD,IAClD;IACFA,CAAC,CAAC4O,eAAe,EAAE,CAAA;AAEnB,IAAA,IAAIxL,QAAQ,EAAE;AACZ,MAAA,OAAA;AACF,KAAA;IAEAqe,kBAAkB,CAAC,CAACD,eAAe,CAAC,CAAA;AACpCxhB,IAAAA,CAAC,CAACG,MAAM,CAAC1I,KAAK,GAAG,CAAC+pB,eAAe,CAAA;IAEjC1a,OAAO,GAAG9G,CAAC,CAAC,CAAA;IACZJ,QAAQ,GAAGI,CAAC,CAAC,CAAA;GACd,CAAA;AAEDvB,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI+T,OAAO,KAAK7a,SAAS,EAAE;MACzB8pB,kBAAkB,CAACjP,OAAO,CAAC,CAAA;AAC7B,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;EAEb,OACEzT,IAAK,CAAA,KAAA,EAAA;IAAAnB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAU,QAAA,CAAA;AAAAE,IAAAA,QAAA,EAAA,CACpCoB,IACE,CAAA,KAAA,EAAA;AAAAvK,MAAAA,GAAG,EAAEA,GAAG;AACRK,MAAAA,KAAK,EAAEA,KAAK;AACZiS,MAAAA,OAAO,EAAEgN,WAAW;AACpBlW,MAAAA,SAAS,EAAEZ,IAAI,CAAC,CACdS,SAAS,EACTG,SAAS,EACT;AACEoB,QAAAA,OAAO,EAAEA,OAAO;AAChB,QAAA,CAAC,CAAGvB,EAAAA,SAAS,CAAW,SAAA,CAAA,GAAG2F,QAAQ;QACnC,CAAC,CAAA,EAAG3F,SAAS,CAAA,QAAA,CAAU,GAAG+jB,eAAAA;AAC3B,OAAA,CACF,CAAC;iBAEFtiB,GACE,CAAA,OAAA,EAAA;AAAAyT,QAAAA,EAAE,EAAEA,EAAE;AACN5d,QAAAA,IAAI,EAAEA,IAAI;AACV0B,QAAAA,IAAI,EAAEA,IAAI;AACV2M,QAAAA,QAAQ,EAAEA,QAAQ;AAClBie,QAAAA,QAAQ,EAAEA,QAAQ;AAClB1nB,QAAAA,QAAQ,EAAEA,QAAQ;AAClB2nB,QAAAA,SAAS,EAAEA,SAAS;AACpBlQ,QAAAA,SAAS,EAAEA,SAAS;AACpBgQ,QAAAA,UAAU,EAAEA,UAAU;AACtB/Y,QAAAA,YAAY,EAAEA,YAAY;AAC1BmL,QAAAA,YAAY,EAAEA,YAAAA;AAAY,OAAA,CAC1B,EAEFtU,GAAM,CAAA,MAAA,EAAA;QAAAtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAM,IAAA,CAAA;AACjCE,QAAAA,QAAA,EAAAuB,GAAA,CAAA,MAAA,EAAA;UACEtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAC/B5I,UAAAA,KAAK,EAAE;YAAEqW,OAAO,EAAEvO,MAAM,CAAC6kB,eAAe,CAAA;AAAG,WAAA;SAAA,CAAA;QAExC,CAAA;AACH,KAAA,CAAA,EAEL7jB,QAAQ,IAAIuB,GAAA,CAAA,MAAA,EAAA;MAAMtB,SAAS,EAAE,CAAGH,EAAAA,SAAS,CAAQ,MAAA,CAAA;AAAAE,MAAAA,QAAA,EAAGA,QAAAA;AAAgB,KAAA,CAAA,CAAA;AAAA,GAAA,CACjE,CAAA;AAEV,CAAC,EACF;AAEDwjB,QAAQ,CAACzgB,WAAW,GAAG,UAAU;;ACrG1B,MAAMghB,QAAQ,GAAGA,CAAC;EAAEjrB,IAAI;EAAEoN,YAAY;AAAEhD,EAAAA,IAAAA;AAAI,CAAiB,KAAI;AACtE,EAAA,MAAM1C,WAAW,GAAGC,UAAU,CAACC,WAAW,CAAC,CAAA;AAC3C,EAAA,MAAM3E,YAAY,GAAGmH,IAAI,IAAI1C,WAAW,CAAA;EAExC,IAAI,CAACzE,YAAY,EAAE;AACjB,IAAA,MAAM,IAAIa,KAAK,CACb,8DAA8D,CAC/D,CAAA;AACH,GAAA;EAEA,MAAM,CAAC9C,KAAK,EAAEkqB,QAAQ,CAAC,GAAGxrB,QAAQ,CAAC,MAAK;AACtC,IAAA,OAAOM,IAAI,GACPiD,YAAY,CAAC/C,aAAa,CAACF,IAAI,CAAC,IAAIoN,YAAY,GAChDnK,YAAY,CAAC9C,cAAc,EAAE,IAAIiN,YAAY,CAAA;AACnD,GAAC,CAAC,CAAA;AAEFpF,EAAAA,SAAS,CAAC,MAAK;IACb,IAAI,CAAChI,IAAI,EAAE;AACT,MAAA,MAAMiF,WAAW,GAAGhC,YAAY,CAAC2B,eAAe,CAACsmB,QAAQ,CAAC,CAAA;MAE1D,OAAO,MAAMjmB,WAAW,EAAE,CAAA;AAC5B,KAAA;IAEA,MAAMA,WAAW,GAAGhC,YAAY,CAACwB,gBAAgB,CAACzE,IAAI,EAAEkrB,QAAQ,CAAC,CAAA;IAEjE,OAAO,MAAMjmB,WAAW,EAAE,CAAA;AAC5B,GAAC,EAAE,CAACjF,IAAI,EAAEiD,YAAY,CAAC,CAAC,CAAA;AAExB,EAAA,OAAOjC,KAAK,CAAA;AACd;;;;","x_google_ignoreList":[0]}
|