@pie-element/categorize 11.0.5-esm.1 → 11.1.0

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"configure.js","sources":["../configure/src/design/utils.js","../../../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../../node_modules/@babel/runtime/helpers/inheritsLoose.js","../../../node_modules/recompose/setStatic.js","../../../node_modules/recompose/setDisplayName.js","../../../node_modules/recompose/getDisplayName.js","../../../node_modules/recompose/wrapDisplayName.js","../../../node_modules/recompose/shouldUpdate.js","../../../node_modules/fbjs/lib/shallowEqual.js","../../../node_modules/recompose/shallowEqual.js","../../../node_modules/recompose/pure.js","../../../node_modules/@material-ui/icons/utils/createSvgIcon.js","../../../node_modules/@material-ui/icons/Info.js","../configure/src/design/input-header.jsx","../configure/src/design/buttons.jsx","../../../node_modules/@material-ui/icons/RemoveCircleOutline.js","../configure/src/design/categories/choice-preview.jsx","../../../node_modules/react-dnd/dist/esm/core/DndContext.js","../../../node_modules/@react-dnd/invariant/dist/invariant.esm.js","../../../node_modules/react-dnd/dist/esm/internals/DragSourceMonitorImpl.js","../../../node_modules/react-dnd/dist/esm/internals/DropTargetMonitorImpl.js","../../../node_modules/react-dnd/dist/esm/internals/wrapConnectorHooks.js","../../../node_modules/react-dnd/dist/esm/internals/isRef.js","../../../node_modules/@react-dnd/shallowequal/dist/shallowequal.esm.js","../../../node_modules/react-dnd/dist/esm/internals/SourceConnector.js","../../../node_modules/react-dnd/dist/esm/internals/TargetConnector.js","../../../node_modules/react-dnd/dist/esm/internals/registration.js","../../../node_modules/react-dnd/dist/esm/decorators/utils.js","../../../node_modules/react-dnd/dist/esm/decorators/disposables.js","../../../node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/react-is/cjs/react-is.development.js","../../../node_modules/react-is/index.js","../../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../node_modules/react-dnd/dist/esm/decorators/decorateHandler.js","../../../node_modules/react-dnd/dist/esm/decorators/createSourceFactory.js","../../../node_modules/react-dnd/dist/esm/decorators/DragSource.js","../../../node_modules/react-dnd/dist/esm/decorators/createTargetFactory.js","../../../node_modules/react-dnd/dist/esm/decorators/DropTarget.js","../configure/src/design/categories/droppable-placeholder.jsx","../configure/src/design/categories/category.jsx","../configure/src/design/header.jsx","../configure/src/utils.js","../configure/src/design/categories/RowLabel.jsx","../configure/src/design/categories/index.jsx","../configure/src/design/categories/alternateResponses.jsx","../../../node_modules/@material-ui/icons/DragHandle.js","../configure/src/design/choices/choice.jsx","../configure/src/design/choices/config.jsx","../configure/src/design/choices/index.jsx","../configure/src/design/builder.js","../configure/src/design/index.jsx","../configure/src/main.jsx","../configure/src/defaults.js","../configure/src/index.js"],"sourcesContent":["export const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\n});\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inheritsLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar setStatic = function setStatic(key, value) {\n return function (BaseComponent) {\n /* eslint-disable no-param-reassign */\n BaseComponent[key] = value;\n /* eslint-enable no-param-reassign */\n\n return BaseComponent;\n };\n};\n\nvar _default = setStatic;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _setStatic = _interopRequireDefault(require(\"./setStatic\"));\n\nvar setDisplayName = function setDisplayName(displayName) {\n return (0, _setStatic.default)('displayName', displayName);\n};\n\nvar _default = setDisplayName;\nexports.default = _default;","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar getDisplayName = function getDisplayName(Component) {\n if (typeof Component === 'string') {\n return Component;\n }\n\n if (!Component) {\n return undefined;\n }\n\n return Component.displayName || Component.name || 'Component';\n};\n\nvar _default = getDisplayName;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _getDisplayName = _interopRequireDefault(require(\"./getDisplayName\"));\n\nvar wrapDisplayName = function wrapDisplayName(BaseComponent, hocName) {\n return hocName + \"(\" + (0, _getDisplayName.default)(BaseComponent) + \")\";\n};\n\nvar _default = wrapDisplayName;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _react = require(\"react\");\n\nvar _setDisplayName = _interopRequireDefault(require(\"./setDisplayName\"));\n\nvar _wrapDisplayName = _interopRequireDefault(require(\"./wrapDisplayName\"));\n\nvar shouldUpdate = function shouldUpdate(test) {\n return function (BaseComponent) {\n var factory = (0, _react.createFactory)(BaseComponent);\n\n var ShouldUpdate =\n /*#__PURE__*/\n function (_Component) {\n (0, _inheritsLoose2.default)(ShouldUpdate, _Component);\n\n function ShouldUpdate() {\n return _Component.apply(this, arguments) || this;\n }\n\n var _proto = ShouldUpdate.prototype;\n\n _proto.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return test(this.props, nextProps);\n };\n\n _proto.render = function render() {\n return factory(this.props);\n };\n\n return ShouldUpdate;\n }(_react.Component);\n\n if (process.env.NODE_ENV !== 'production') {\n return (0, _setDisplayName.default)((0, _wrapDisplayName.default)(BaseComponent, 'shouldUpdate'))(ShouldUpdate);\n }\n\n return ShouldUpdate;\n };\n};\n\nvar _default = shouldUpdate;\nexports.default = _default;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * @typechecks\n * \n */\n\n/*eslint-disable no-self-compare */\n\n'use strict';\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\nfunction is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n // Added the nonzero y check to make Flow happy, but it is redundant\n return x !== 0 || y !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n}\n\n/**\n * Performs equality by iterating through keys on an object and returning false\n * when any key has values which are not strictly equal between the arguments.\n * Returns true when the values of all keys are strictly equal.\n */\nfunction shallowEqual(objA, objB) {\n if (is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (var i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n}\n\nmodule.exports = shallowEqual;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _shallowEqual = _interopRequireDefault(require(\"fbjs/lib/shallowEqual\"));\n\nvar _default = _shallowEqual.default;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _shouldUpdate = _interopRequireDefault(require(\"./shouldUpdate\"));\n\nvar _shallowEqual = _interopRequireDefault(require(\"./shallowEqual\"));\n\nvar _setDisplayName = _interopRequireDefault(require(\"./setDisplayName\"));\n\nvar _wrapDisplayName = _interopRequireDefault(require(\"./wrapDisplayName\"));\n\nvar pure = function pure(BaseComponent) {\n var hoc = (0, _shouldUpdate.default)(function (props, nextProps) {\n return !(0, _shallowEqual.default)(props, nextProps);\n });\n\n if (process.env.NODE_ENV !== 'production') {\n return (0, _setDisplayName.default)((0, _wrapDisplayName.default)(BaseComponent, 'pure'))(hoc(BaseComponent));\n }\n\n return hoc(BaseComponent);\n};\n\nvar _default = pure;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _pure = _interopRequireDefault(require(\"recompose/pure\"));\n\nvar _SvgIcon = _interopRequireDefault(require(\"@material-ui/core/SvgIcon\"));\n\nfunction createSvgIcon(path, displayName) {\n var Icon = function Icon(props) {\n return _react.default.createElement(_SvgIcon.default, props, path);\n };\n\n Icon.displayName = \"\".concat(displayName, \"Icon\");\n Icon = (0, _pure.default)(Icon);\n Icon.muiName = 'SvgIcon';\n return Icon;\n}\n\n;\nvar _default = createSvgIcon;\nexports.default = _default;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(_react.default.Fragment, null, _react.default.createElement(\"path\", {\n fill: \"none\",\n d: \"M0 0h24v24H0z\"\n}), _react.default.createElement(\"path\", {\n d: \"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z\"\n})), 'Info');\n\nexports.default = _default;","import { getPluginProps } from './utils';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport EditableHtml from '@pie-lib/editable-html';\n\nexport class InputHeader extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n configuration: PropTypes.object.isRequired,\n deleteFocusedEl: PropTypes.func,\n disabled: PropTypes.bool,\n focusedEl: PropTypes.number,\n index: PropTypes.number,\n label: PropTypes.string,\n maxImageWidth: PropTypes.object,\n maxImageHeight: PropTypes.object,\n onChange: PropTypes.func,\n onDelete: PropTypes.func,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n toolbarOpts: PropTypes.object,\n error: PropTypes.string,\n spellCheck: PropTypes.bool,\n };\n\n static defaultProps = {};\n\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n const { focusedEl, index } = this.props;\n if (focusedEl && index && focusedEl === index) {\n this.inputRef.focus('end', null, true);\n }\n }\n\n render() {\n const {\n onChange,\n configuration,\n label,\n classes,\n className,\n deleteFocusedEl,\n disabled,\n imageSupport,\n toolbarOpts,\n spellCheck,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n mathMlOptions = {},\n } = this.props;\n\n const { headers, baseInputConfiguration } = configuration;\n\n return (\n <div className={classNames(classes.inputHeader, className)}>\n <EditableHtml\n imageSupport={imageSupport}\n disabled={disabled}\n ref={(ref) => (this.inputRef = ref)}\n autoWidthToolbar\n label={'label'}\n markup={label}\n onChange={onChange}\n className={classes.editor}\n pluginProps={getPluginProps(headers?.inputConfiguration, baseInputConfiguration)}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n error={error}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n onDone={() => {\n deleteFocusedEl && deleteFocusedEl();\n }}\n mathMlOptions={mathMlOptions}\n />\n </div>\n );\n }\n}\nconst styles = (theme) => ({\n editor: {\n flex: '1',\n paddingBottom: theme.spacing.unit,\n maxWidth: '100%',\n },\n iconButtonRoot: {\n width: 'auto',\n height: 'auto',\n },\n inputHeader: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n});\nexport default withStyles(styles)(InputHeader);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport MuiDivider from '@material-ui/core/Divider';\n\nexport class RawAddButton extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n };\n\n static defaultProps = {\n label: 'Add',\n };\n\n render() {\n const { classes, className, label, onClick, disabled } = this.props;\n return (\n <Button\n onClick={onClick}\n disabled={disabled}\n className={classNames(classes.addButton, className)}\n size=\"small\"\n variant=\"contained\"\n color=\"primary\"\n >\n {label}\n </Button>\n );\n }\n}\nconst styles = (theme) => ({\n addButton: {\n height: theme.spacing.unit * 4,\n },\n});\n\nconst AddButton = withStyles(styles)(RawAddButton);\n\nconst DeleteButton = withStyles(() => ({\n deleteButton: {\n margin: 0,\n padding: 0,\n },\n}))(({ classes, label, onClick, disabled }) => (\n <Button className={classes.deleteButton} onClick={onClick} size=\"small\" color=\"primary\" disabled={disabled}>\n {label}\n </Button>\n));\n\nexport { AddButton, DeleteButton };\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(_react.default.Fragment, null, _react.default.createElement(\"path\", {\n fill: \"none\",\n d: \"M0 0h24v24H0z\"\n}), _react.default.createElement(\"path\", {\n d: \"M7 11v2h10v-2H7zm5-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z\"\n})), 'RemoveCircleOutline');\n\nexports.default = _default;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { Choice } from '@pie-lib/drag';\nimport IconButton from '@material-ui/core/IconButton';\nimport RemoveCircleOutlineIcon from '@material-ui/icons/RemoveCircleOutline';\nimport { HtmlAndMath } from '@pie-lib/render-ui';\nimport { color } from '@pie-lib/render-ui';\n\nexport class ChoicePreview extends React.Component {\n static propTypes = {\n alternateResponseIndex: PropTypes.number,\n category: PropTypes.object,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n choice: PropTypes.object.isRequired,\n choiceIndex: PropTypes.number,\n onDelete: PropTypes.func.isRequired,\n };\n static defaultProps = {};\n\n delete = () => {\n const { onDelete, choice } = this.props;\n onDelete(choice);\n };\n\n render() {\n const { alternateResponseIndex, category, classes, className, choice, choiceIndex } = this.props;\n return (\n <div className={classNames(classes.choicePreview, className)}>\n {choice ? (\n <Choice\n alternateResponseIndex={alternateResponseIndex}\n category={category}\n choice={choice}\n choiceIndex={choiceIndex}\n className={classes.overflowChoice}\n onRemoveChoice={() => this.delete()}\n >\n <HtmlAndMath html={choice?.content} className={`${classes.breakWord}`} />\n <IconButton\n aria-label=\"delete\"\n className={classNames(classes.delete, classes.customColor)}\n onClick={this.delete}\n >\n <RemoveCircleOutlineIcon />\n </IconButton>\n </Choice>\n ) : null}\n </div>\n );\n }\n}\nconst styles = () => ({\n choicePreview: {\n position: 'relative',\n overflow: 'auto',\n },\n delete: {\n position: 'absolute',\n right: 0,\n top: 0,\n },\n breakWord: {\n maxWidth: '90%',\n wordBreak: 'break-all',\n },\n customColor: {\n color: `${color.tertiary()} !important`,\n },\n overflowChoice: {\n overflow: 'auto',\n },\n});\nexport default withStyles(styles)(ChoicePreview);\n","import { createContext } from 'react';\n/**\n * Create the React Context\n */\n\nexport var DndContext = createContext({\n dragDropManager: undefined\n});","/**\r\n * Use invariant() to assert state which your program assumes to be true.\r\n *\r\n * Provide sprintf-style format (only %s is supported) and arguments\r\n * to provide information about what broke and what you were\r\n * expecting.\r\n *\r\n * The invariant message will be stripped in production, but the invariant\r\n * will remain to ensure logic does not differ in production.\r\n */\nfunction invariant(condition, format) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n var argIndex = 0;\n error = new Error(format.replace(/%s/g, function () {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n\n throw error;\n }\n}\n\nexport { invariant };\n//# sourceMappingURL=invariant.esm.js.map\n","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { invariant } from '@react-dnd/invariant';\nvar isCallingCanDrag = false;\nvar isCallingIsDragging = false;\nexport var DragSourceMonitorImpl = /*#__PURE__*/function () {\n function DragSourceMonitorImpl(manager) {\n _classCallCheck(this, DragSourceMonitorImpl);\n\n _defineProperty(this, \"internalMonitor\", void 0);\n\n _defineProperty(this, \"sourceId\", null);\n\n this.internalMonitor = manager.getMonitor();\n }\n\n _createClass(DragSourceMonitorImpl, [{\n key: \"receiveHandlerId\",\n value: function receiveHandlerId(sourceId) {\n this.sourceId = sourceId;\n }\n }, {\n key: \"getHandlerId\",\n value: function getHandlerId() {\n return this.sourceId;\n }\n }, {\n key: \"canDrag\",\n value: function canDrag() {\n invariant(!isCallingCanDrag, 'You may not call monitor.canDrag() inside your canDrag() implementation. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor');\n\n try {\n isCallingCanDrag = true;\n return this.internalMonitor.canDragSource(this.sourceId);\n } finally {\n isCallingCanDrag = false;\n }\n }\n }, {\n key: \"isDragging\",\n value: function isDragging() {\n if (!this.sourceId) {\n return false;\n }\n\n invariant(!isCallingIsDragging, 'You may not call monitor.isDragging() inside your isDragging() implementation. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source-monitor');\n\n try {\n isCallingIsDragging = true;\n return this.internalMonitor.isDraggingSource(this.sourceId);\n } finally {\n isCallingIsDragging = false;\n }\n }\n }, {\n key: \"subscribeToStateChange\",\n value: function subscribeToStateChange(listener, options) {\n return this.internalMonitor.subscribeToStateChange(listener, options);\n }\n }, {\n key: \"isDraggingSource\",\n value: function isDraggingSource(sourceId) {\n return this.internalMonitor.isDraggingSource(sourceId);\n }\n }, {\n key: \"isOverTarget\",\n value: function isOverTarget(targetId, options) {\n return this.internalMonitor.isOverTarget(targetId, options);\n }\n }, {\n key: \"getTargetIds\",\n value: function getTargetIds() {\n return this.internalMonitor.getTargetIds();\n }\n }, {\n key: \"isSourcePublic\",\n value: function isSourcePublic() {\n return this.internalMonitor.isSourcePublic();\n }\n }, {\n key: \"getSourceId\",\n value: function getSourceId() {\n return this.internalMonitor.getSourceId();\n }\n }, {\n key: \"subscribeToOffsetChange\",\n value: function subscribeToOffsetChange(listener) {\n return this.internalMonitor.subscribeToOffsetChange(listener);\n }\n }, {\n key: \"canDragSource\",\n value: function canDragSource(sourceId) {\n return this.internalMonitor.canDragSource(sourceId);\n }\n }, {\n key: \"canDropOnTarget\",\n value: function canDropOnTarget(targetId) {\n return this.internalMonitor.canDropOnTarget(targetId);\n }\n }, {\n key: \"getItemType\",\n value: function getItemType() {\n return this.internalMonitor.getItemType();\n }\n }, {\n key: \"getItem\",\n value: function getItem() {\n return this.internalMonitor.getItem();\n }\n }, {\n key: \"getDropResult\",\n value: function getDropResult() {\n return this.internalMonitor.getDropResult();\n }\n }, {\n key: \"didDrop\",\n value: function didDrop() {\n return this.internalMonitor.didDrop();\n }\n }, {\n key: \"getInitialClientOffset\",\n value: function getInitialClientOffset() {\n return this.internalMonitor.getInitialClientOffset();\n }\n }, {\n key: \"getInitialSourceClientOffset\",\n value: function getInitialSourceClientOffset() {\n return this.internalMonitor.getInitialSourceClientOffset();\n }\n }, {\n key: \"getSourceClientOffset\",\n value: function getSourceClientOffset() {\n return this.internalMonitor.getSourceClientOffset();\n }\n }, {\n key: \"getClientOffset\",\n value: function getClientOffset() {\n return this.internalMonitor.getClientOffset();\n }\n }, {\n key: \"getDifferenceFromInitialOffset\",\n value: function getDifferenceFromInitialOffset() {\n return this.internalMonitor.getDifferenceFromInitialOffset();\n }\n }]);\n\n return DragSourceMonitorImpl;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { invariant } from '@react-dnd/invariant';\nvar isCallingCanDrop = false;\nexport var DropTargetMonitorImpl = /*#__PURE__*/function () {\n function DropTargetMonitorImpl(manager) {\n _classCallCheck(this, DropTargetMonitorImpl);\n\n _defineProperty(this, \"internalMonitor\", void 0);\n\n _defineProperty(this, \"targetId\", null);\n\n this.internalMonitor = manager.getMonitor();\n }\n\n _createClass(DropTargetMonitorImpl, [{\n key: \"receiveHandlerId\",\n value: function receiveHandlerId(targetId) {\n this.targetId = targetId;\n }\n }, {\n key: \"getHandlerId\",\n value: function getHandlerId() {\n return this.targetId;\n }\n }, {\n key: \"subscribeToStateChange\",\n value: function subscribeToStateChange(listener, options) {\n return this.internalMonitor.subscribeToStateChange(listener, options);\n }\n }, {\n key: \"canDrop\",\n value: function canDrop() {\n // Cut out early if the target id has not been set. This should prevent errors\n // where the user has an older version of dnd-core like in\n // https://github.com/react-dnd/react-dnd/issues/1310\n if (!this.targetId) {\n return false;\n }\n\n invariant(!isCallingCanDrop, 'You may not call monitor.canDrop() inside your canDrop() implementation. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target-monitor');\n\n try {\n isCallingCanDrop = true;\n return this.internalMonitor.canDropOnTarget(this.targetId);\n } finally {\n isCallingCanDrop = false;\n }\n }\n }, {\n key: \"isOver\",\n value: function isOver(options) {\n if (!this.targetId) {\n return false;\n }\n\n return this.internalMonitor.isOverTarget(this.targetId, options);\n }\n }, {\n key: \"getItemType\",\n value: function getItemType() {\n return this.internalMonitor.getItemType();\n }\n }, {\n key: \"getItem\",\n value: function getItem() {\n return this.internalMonitor.getItem();\n }\n }, {\n key: \"getDropResult\",\n value: function getDropResult() {\n return this.internalMonitor.getDropResult();\n }\n }, {\n key: \"didDrop\",\n value: function didDrop() {\n return this.internalMonitor.didDrop();\n }\n }, {\n key: \"getInitialClientOffset\",\n value: function getInitialClientOffset() {\n return this.internalMonitor.getInitialClientOffset();\n }\n }, {\n key: \"getInitialSourceClientOffset\",\n value: function getInitialSourceClientOffset() {\n return this.internalMonitor.getInitialSourceClientOffset();\n }\n }, {\n key: \"getSourceClientOffset\",\n value: function getSourceClientOffset() {\n return this.internalMonitor.getSourceClientOffset();\n }\n }, {\n key: \"getClientOffset\",\n value: function getClientOffset() {\n return this.internalMonitor.getClientOffset();\n }\n }, {\n key: \"getDifferenceFromInitialOffset\",\n value: function getDifferenceFromInitialOffset() {\n return this.internalMonitor.getDifferenceFromInitialOffset();\n }\n }]);\n\n return DropTargetMonitorImpl;\n}();","import { invariant } from '@react-dnd/invariant';\nimport { cloneElement, isValidElement } from 'react';\n\nfunction throwIfCompositeComponentElement(element) {\n // Custom components can no longer be wrapped directly in React DnD 2.0\n // so that we don't need to depend on findDOMNode() from react-dom.\n if (typeof element.type === 'string') {\n return;\n }\n\n var displayName = element.type.displayName || element.type.name || 'the component';\n throw new Error('Only native element nodes can now be passed to React DnD connectors.' + \"You can either wrap \".concat(displayName, \" into a <div>, or turn it into a \") + 'drag source or a drop target itself.');\n}\n\nfunction wrapHookToRecognizeElement(hook) {\n return function () {\n var elementOrNode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n // When passed a node, call the hook straight away.\n if (!isValidElement(elementOrNode)) {\n var node = elementOrNode;\n hook(node, options); // return the node so it can be chained (e.g. when within callback refs\n // <div ref={node => connectDragSource(connectDropTarget(node))}/>\n\n return node;\n } // If passed a ReactElement, clone it and attach this function as a ref.\n // This helps us achieve a neat API where user doesn't even know that refs\n // are being used under the hood.\n\n\n var element = elementOrNode;\n throwIfCompositeComponentElement(element); // When no options are passed, use the hook directly\n\n var ref = options ? function (node) {\n return hook(node, options);\n } : hook;\n return cloneWithRef(element, ref);\n };\n}\n\nexport function wrapConnectorHooks(hooks) {\n var wrappedHooks = {};\n Object.keys(hooks).forEach(function (key) {\n var hook = hooks[key]; // ref objects should be passed straight through without wrapping\n\n if (key.endsWith('Ref')) {\n wrappedHooks[key] = hooks[key];\n } else {\n var wrappedHook = wrapHookToRecognizeElement(hook);\n\n wrappedHooks[key] = function () {\n return wrappedHook;\n };\n }\n });\n return wrappedHooks;\n}\n\nfunction setRef(ref, node) {\n if (typeof ref === 'function') {\n ref(node);\n } else {\n ref.current = node;\n }\n}\n\nfunction cloneWithRef(element, newRef) {\n var previousRef = element.ref;\n invariant(typeof previousRef !== 'string', 'Cannot connect React DnD to an element with an existing string ref. ' + 'Please convert it to use a callback ref instead, or wrap it into a <span> or <div>. ' + 'Read more: https://reactjs.org/docs/refs-and-the-dom.html#callback-refs');\n\n if (!previousRef) {\n // When there is no ref on the element, use the new ref directly\n return cloneElement(element, {\n ref: newRef\n });\n } else {\n return cloneElement(element, {\n ref: function ref(node) {\n setRef(previousRef, node);\n setRef(newRef, node);\n }\n });\n }\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nexport function isRef(obj) {\n return (// eslint-disable-next-line no-prototype-builtins\n obj !== null && _typeof(obj) === 'object' && Object.prototype.hasOwnProperty.call(obj, 'current')\n );\n}","function shallowEqual(objA, objB, compare, compareContext) {\n var compareResult = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (compareResult !== void 0) {\n return !!compareResult;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== 'object' || !objA || typeof objB !== 'object' || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); // Test for A's keys different from B.\n\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n compareResult = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (compareResult === false || compareResult === void 0 && valueA !== valueB) {\n return false;\n }\n }\n\n return true;\n}\n\nexport { shallowEqual };\n//# sourceMappingURL=shallowequal.esm.js.map\n","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { wrapConnectorHooks } from './wrapConnectorHooks';\nimport { isRef } from './isRef';\nimport { shallowEqual } from '@react-dnd/shallowequal';\nexport var SourceConnector = /*#__PURE__*/function () {\n // The drop target may either be attached via ref or connect function\n // The drag preview may either be attached via ref or connect function\n function SourceConnector(backend) {\n var _this = this;\n\n _classCallCheck(this, SourceConnector);\n\n _defineProperty(this, \"hooks\", wrapConnectorHooks({\n dragSource: function dragSource(node, options) {\n _this.clearDragSource();\n\n _this.dragSourceOptions = options || null;\n\n if (isRef(node)) {\n _this.dragSourceRef = node;\n } else {\n _this.dragSourceNode = node;\n }\n\n _this.reconnectDragSource();\n },\n dragPreview: function dragPreview(node, options) {\n _this.clearDragPreview();\n\n _this.dragPreviewOptions = options || null;\n\n if (isRef(node)) {\n _this.dragPreviewRef = node;\n } else {\n _this.dragPreviewNode = node;\n }\n\n _this.reconnectDragPreview();\n }\n }));\n\n _defineProperty(this, \"handlerId\", null);\n\n _defineProperty(this, \"dragSourceRef\", null);\n\n _defineProperty(this, \"dragSourceNode\", void 0);\n\n _defineProperty(this, \"dragSourceOptionsInternal\", null);\n\n _defineProperty(this, \"dragSourceUnsubscribe\", void 0);\n\n _defineProperty(this, \"dragPreviewRef\", null);\n\n _defineProperty(this, \"dragPreviewNode\", void 0);\n\n _defineProperty(this, \"dragPreviewOptionsInternal\", null);\n\n _defineProperty(this, \"dragPreviewUnsubscribe\", void 0);\n\n _defineProperty(this, \"lastConnectedHandlerId\", null);\n\n _defineProperty(this, \"lastConnectedDragSource\", null);\n\n _defineProperty(this, \"lastConnectedDragSourceOptions\", null);\n\n _defineProperty(this, \"lastConnectedDragPreview\", null);\n\n _defineProperty(this, \"lastConnectedDragPreviewOptions\", null);\n\n _defineProperty(this, \"backend\", void 0);\n\n this.backend = backend;\n }\n\n _createClass(SourceConnector, [{\n key: \"receiveHandlerId\",\n value: function receiveHandlerId(newHandlerId) {\n if (this.handlerId === newHandlerId) {\n return;\n }\n\n this.handlerId = newHandlerId;\n this.reconnect();\n }\n }, {\n key: \"connectTarget\",\n get: function get() {\n return this.dragSource;\n }\n }, {\n key: \"dragSourceOptions\",\n get: function get() {\n return this.dragSourceOptionsInternal;\n },\n set: function set(options) {\n this.dragSourceOptionsInternal = options;\n }\n }, {\n key: \"dragPreviewOptions\",\n get: function get() {\n return this.dragPreviewOptionsInternal;\n },\n set: function set(options) {\n this.dragPreviewOptionsInternal = options;\n }\n }, {\n key: \"reconnect\",\n value: function reconnect() {\n this.reconnectDragSource();\n this.reconnectDragPreview();\n }\n }, {\n key: \"reconnectDragSource\",\n value: function reconnectDragSource() {\n var dragSource = this.dragSource; // if nothing has changed then don't resubscribe\n\n var didChange = this.didHandlerIdChange() || this.didConnectedDragSourceChange() || this.didDragSourceOptionsChange();\n\n if (didChange) {\n this.disconnectDragSource();\n }\n\n if (!this.handlerId) {\n return;\n }\n\n if (!dragSource) {\n this.lastConnectedDragSource = dragSource;\n return;\n }\n\n if (didChange) {\n this.lastConnectedHandlerId = this.handlerId;\n this.lastConnectedDragSource = dragSource;\n this.lastConnectedDragSourceOptions = this.dragSourceOptions;\n this.dragSourceUnsubscribe = this.backend.connectDragSource(this.handlerId, dragSource, this.dragSourceOptions);\n }\n }\n }, {\n key: \"reconnectDragPreview\",\n value: function reconnectDragPreview() {\n var dragPreview = this.dragPreview; // if nothing has changed then don't resubscribe\n\n var didChange = this.didHandlerIdChange() || this.didConnectedDragPreviewChange() || this.didDragPreviewOptionsChange();\n\n if (didChange) {\n this.disconnectDragPreview();\n }\n\n if (!this.handlerId) {\n return;\n }\n\n if (!dragPreview) {\n this.lastConnectedDragPreview = dragPreview;\n return;\n }\n\n if (didChange) {\n this.lastConnectedHandlerId = this.handlerId;\n this.lastConnectedDragPreview = dragPreview;\n this.lastConnectedDragPreviewOptions = this.dragPreviewOptions;\n this.dragPreviewUnsubscribe = this.backend.connectDragPreview(this.handlerId, dragPreview, this.dragPreviewOptions);\n }\n }\n }, {\n key: \"didHandlerIdChange\",\n value: function didHandlerIdChange() {\n return this.lastConnectedHandlerId !== this.handlerId;\n }\n }, {\n key: \"didConnectedDragSourceChange\",\n value: function didConnectedDragSourceChange() {\n return this.lastConnectedDragSource !== this.dragSource;\n }\n }, {\n key: \"didConnectedDragPreviewChange\",\n value: function didConnectedDragPreviewChange() {\n return this.lastConnectedDragPreview !== this.dragPreview;\n }\n }, {\n key: \"didDragSourceOptionsChange\",\n value: function didDragSourceOptionsChange() {\n return !shallowEqual(this.lastConnectedDragSourceOptions, this.dragSourceOptions);\n }\n }, {\n key: \"didDragPreviewOptionsChange\",\n value: function didDragPreviewOptionsChange() {\n return !shallowEqual(this.lastConnectedDragPreviewOptions, this.dragPreviewOptions);\n }\n }, {\n key: \"disconnectDragSource\",\n value: function disconnectDragSource() {\n if (this.dragSourceUnsubscribe) {\n this.dragSourceUnsubscribe();\n this.dragSourceUnsubscribe = undefined;\n }\n }\n }, {\n key: \"disconnectDragPreview\",\n value: function disconnectDragPreview() {\n if (this.dragPreviewUnsubscribe) {\n this.dragPreviewUnsubscribe();\n this.dragPreviewUnsubscribe = undefined;\n this.dragPreviewNode = null;\n this.dragPreviewRef = null;\n }\n }\n }, {\n key: \"dragSource\",\n get: function get() {\n return this.dragSourceNode || this.dragSourceRef && this.dragSourceRef.current;\n }\n }, {\n key: \"dragPreview\",\n get: function get() {\n return this.dragPreviewNode || this.dragPreviewRef && this.dragPreviewRef.current;\n }\n }, {\n key: \"clearDragSource\",\n value: function clearDragSource() {\n this.dragSourceNode = null;\n this.dragSourceRef = null;\n }\n }, {\n key: \"clearDragPreview\",\n value: function clearDragPreview() {\n this.dragPreviewNode = null;\n this.dragPreviewRef = null;\n }\n }]);\n\n return SourceConnector;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { shallowEqual } from '@react-dnd/shallowequal';\nimport { wrapConnectorHooks } from './wrapConnectorHooks';\nimport { isRef } from './isRef';\nexport var TargetConnector = /*#__PURE__*/function () {\n // The drop target may either be attached via ref or connect function\n function TargetConnector(backend) {\n var _this = this;\n\n _classCallCheck(this, TargetConnector);\n\n _defineProperty(this, \"hooks\", wrapConnectorHooks({\n dropTarget: function dropTarget(node, options) {\n _this.clearDropTarget();\n\n _this.dropTargetOptions = options;\n\n if (isRef(node)) {\n _this.dropTargetRef = node;\n } else {\n _this.dropTargetNode = node;\n }\n\n _this.reconnect();\n }\n }));\n\n _defineProperty(this, \"handlerId\", null);\n\n _defineProperty(this, \"dropTargetRef\", null);\n\n _defineProperty(this, \"dropTargetNode\", void 0);\n\n _defineProperty(this, \"dropTargetOptionsInternal\", null);\n\n _defineProperty(this, \"unsubscribeDropTarget\", void 0);\n\n _defineProperty(this, \"lastConnectedHandlerId\", null);\n\n _defineProperty(this, \"lastConnectedDropTarget\", null);\n\n _defineProperty(this, \"lastConnectedDropTargetOptions\", null);\n\n _defineProperty(this, \"backend\", void 0);\n\n this.backend = backend;\n }\n\n _createClass(TargetConnector, [{\n key: \"connectTarget\",\n get: function get() {\n return this.dropTarget;\n }\n }, {\n key: \"reconnect\",\n value: function reconnect() {\n // if nothing has changed then don't resubscribe\n var didChange = this.didHandlerIdChange() || this.didDropTargetChange() || this.didOptionsChange();\n\n if (didChange) {\n this.disconnectDropTarget();\n }\n\n var dropTarget = this.dropTarget;\n\n if (!this.handlerId) {\n return;\n }\n\n if (!dropTarget) {\n this.lastConnectedDropTarget = dropTarget;\n return;\n }\n\n if (didChange) {\n this.lastConnectedHandlerId = this.handlerId;\n this.lastConnectedDropTarget = dropTarget;\n this.lastConnectedDropTargetOptions = this.dropTargetOptions;\n this.unsubscribeDropTarget = this.backend.connectDropTarget(this.handlerId, dropTarget, this.dropTargetOptions);\n }\n }\n }, {\n key: \"receiveHandlerId\",\n value: function receiveHandlerId(newHandlerId) {\n if (newHandlerId === this.handlerId) {\n return;\n }\n\n this.handlerId = newHandlerId;\n this.reconnect();\n }\n }, {\n key: \"dropTargetOptions\",\n get: function get() {\n return this.dropTargetOptionsInternal;\n },\n set: function set(options) {\n this.dropTargetOptionsInternal = options;\n }\n }, {\n key: \"didHandlerIdChange\",\n value: function didHandlerIdChange() {\n return this.lastConnectedHandlerId !== this.handlerId;\n }\n }, {\n key: \"didDropTargetChange\",\n value: function didDropTargetChange() {\n return this.lastConnectedDropTarget !== this.dropTarget;\n }\n }, {\n key: \"didOptionsChange\",\n value: function didOptionsChange() {\n return !shallowEqual(this.lastConnectedDropTargetOptions, this.dropTargetOptions);\n }\n }, {\n key: \"disconnectDropTarget\",\n value: function disconnectDropTarget() {\n if (this.unsubscribeDropTarget) {\n this.unsubscribeDropTarget();\n this.unsubscribeDropTarget = undefined;\n }\n }\n }, {\n key: \"dropTarget\",\n get: function get() {\n return this.dropTargetNode || this.dropTargetRef && this.dropTargetRef.current;\n }\n }, {\n key: \"clearDropTarget\",\n value: function clearDropTarget() {\n this.dropTargetRef = null;\n this.dropTargetNode = null;\n }\n }]);\n\n return TargetConnector;\n}();","export function registerTarget(type, target, manager) {\n var registry = manager.getRegistry();\n var targetId = registry.addTarget(type, target);\n return [targetId, function () {\n return registry.removeTarget(targetId);\n }];\n}\nexport function registerSource(type, source, manager) {\n var registry = manager.getRegistry();\n var sourceId = registry.addSource(type, source);\n return [sourceId, function () {\n return registry.removeSource(sourceId);\n }];\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nexport function getDecoratedComponent(instanceRef) {\n var currentRef = instanceRef.current;\n\n if (currentRef == null) {\n return null;\n } else if (currentRef.decoratedRef) {\n // go through the private field in decorateHandler to avoid the invariant hit\n return currentRef.decoratedRef.current;\n } else {\n return currentRef;\n }\n}\nexport function isClassComponent(Component) {\n return Component && Component.prototype && typeof Component.prototype.render === 'function';\n}\nexport function isRefForwardingComponent(C) {\n var _item$$$typeof;\n\n var item = C;\n return (item === null || item === void 0 ? void 0 : (_item$$$typeof = item.$$typeof) === null || _item$$$typeof === void 0 ? void 0 : _item$$$typeof.toString()) === 'Symbol(react.forward_ref)';\n}\nexport function isRefable(C) {\n return isClassComponent(C) || isRefForwardingComponent(C);\n}\nexport function checkDecoratorArguments(functionName, signature) {\n if (process.env.NODE_ENV !== 'production') {\n for (var i = 0; i < (arguments.length <= 2 ? 0 : arguments.length - 2); i++) {\n var arg = i + 2 < 2 || arguments.length <= i + 2 ? undefined : arguments[i + 2];\n\n if (arg && arg.prototype && arg.prototype.render) {\n // eslint-disable-next-line no-console\n console.error('You seem to be applying the arguments in the wrong order. ' + \"It should be \".concat(functionName, \"(\").concat(signature, \")(Component), not the other way around. \") + 'Read more: http://react-dnd.github.io/react-dnd/docs/troubleshooting#you-seem-to-be-applying-the-arguments-in-the-wrong-order');\n return;\n }\n }\n }\n}\nexport function isFunction(input) {\n return typeof input === 'function';\n}\nexport function noop() {// noop\n}\n\nfunction isObjectLike(input) {\n return _typeof(input) === 'object' && input !== null;\n}\n\nexport function isPlainObject(input) {\n if (!isObjectLike(input)) {\n return false;\n }\n\n if (Object.getPrototypeOf(input) === null) {\n return true;\n }\n\n var proto = input;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(input) === proto;\n}\nexport function isValidType(type, allowArray) {\n return typeof type === 'string' || _typeof(type) === 'symbol' || !!allowArray && Array.isArray(type) && type.every(function (t) {\n return isValidType(t, false);\n });\n}","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { isFunction, noop } from './utils';\n/**\n * Provides a set of static methods for creating Disposables.\n * @param {Function} action Action to run during the first call to dispose.\n * The action is guaranteed to be run at most once.\n */\n\nexport var Disposable = /*#__PURE__*/function () {\n function Disposable(action) {\n _classCallCheck(this, Disposable);\n\n _defineProperty(this, \"isDisposed\", false);\n\n _defineProperty(this, \"action\", void 0);\n\n this.action = isFunction(action) ? action : noop;\n }\n /** Performs the task of cleaning up resources. */\n\n\n _createClass(Disposable, [{\n key: \"dispose\",\n value: function dispose() {\n if (!this.isDisposed) {\n this.action();\n this.isDisposed = true;\n }\n }\n }], [{\n key: \"isDisposable\",\n value:\n /**\n * Gets the disposable that does nothing when disposed.\n */\n\n /**\n * Validates whether the given object is a disposable\n * @param {Object} Object to test whether it has a dispose method\n * @returns {Boolean} true if a disposable object, else false.\n */\n function isDisposable(d) {\n return Boolean(d && isFunction(d.dispose));\n }\n }, {\n key: \"_fixup\",\n value: function _fixup(result) {\n return Disposable.isDisposable(result) ? result : Disposable.empty;\n }\n /**\n * Creates a disposable object that invokes the specified action when disposed.\n * @param {Function} dispose Action to run during the first call to dispose.\n * The action is guaranteed to be run at most once.\n * @return {Disposable} The disposable object that runs the given action upon disposal.\n */\n\n }, {\n key: \"create\",\n value: function create(action) {\n return new Disposable(action);\n }\n }]);\n\n return Disposable;\n}();\n/**\n * Represents a group of disposable resources that are disposed together.\n * @constructor\n */\n\n_defineProperty(Disposable, \"empty\", {\n dispose: noop\n});\n\nexport var CompositeDisposable = /*#__PURE__*/function () {\n function CompositeDisposable() {\n _classCallCheck(this, CompositeDisposable);\n\n _defineProperty(this, \"isDisposed\", false);\n\n _defineProperty(this, \"disposables\", void 0);\n\n for (var _len = arguments.length, disposables = new Array(_len), _key = 0; _key < _len; _key++) {\n disposables[_key] = arguments[_key];\n }\n\n this.disposables = disposables;\n }\n /**\n * Adds a disposable to the CompositeDisposable or disposes the disposable if the CompositeDisposable is disposed.\n * @param {Any} item Disposable to add.\n */\n\n\n _createClass(CompositeDisposable, [{\n key: \"add\",\n value: function add(item) {\n if (this.isDisposed) {\n item.dispose();\n } else {\n this.disposables.push(item);\n }\n }\n /**\n * Removes and disposes the first occurrence of a disposable from the CompositeDisposable.\n * @param {Any} item Disposable to remove.\n * @returns {Boolean} true if found; false otherwise.\n */\n\n }, {\n key: \"remove\",\n value: function remove(item) {\n var shouldDispose = false;\n\n if (!this.isDisposed) {\n var idx = this.disposables.indexOf(item);\n\n if (idx !== -1) {\n shouldDispose = true;\n this.disposables.splice(idx, 1);\n item.dispose();\n }\n }\n\n return shouldDispose;\n }\n /**\n * Disposes all disposables in the group and removes them from the group but\n * does not dispose the CompositeDisposable.\n */\n\n }, {\n key: \"clear\",\n value: function clear() {\n if (!this.isDisposed) {\n var len = this.disposables.length;\n var currentDisposables = new Array(len);\n\n for (var i = 0; i < len; i++) {\n currentDisposables[i] = this.disposables[i];\n }\n\n this.disposables = [];\n\n for (var _i = 0; _i < len; _i++) {\n currentDisposables[_i].dispose();\n }\n }\n }\n /**\n * Disposes all disposables in the group and removes them from the group.\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n if (!this.isDisposed) {\n this.isDisposed = true;\n var len = this.disposables.length;\n var currentDisposables = new Array(len);\n\n for (var i = 0; i < len; i++) {\n currentDisposables[i] = this.disposables[i];\n }\n\n this.disposables = [];\n\n for (var _i2 = 0; _i2 < len; _i2++) {\n currentDisposables[_i2].dispose();\n }\n }\n }\n }]);\n\n return CompositeDisposable;\n}();\n/**\n * Represents a disposable resource whose underlying disposable resource can\n * be replaced by another disposable resource, causing automatic disposal of\n * the previous underlying disposable resource.\n */\n\nexport var SerialDisposable = /*#__PURE__*/function () {\n function SerialDisposable() {\n _classCallCheck(this, SerialDisposable);\n\n _defineProperty(this, \"isDisposed\", false);\n\n _defineProperty(this, \"current\", void 0);\n }\n\n _createClass(SerialDisposable, [{\n key: \"getDisposable\",\n value:\n /**\n * Gets the underlying disposable.\n * @returns {Any} the underlying disposable.\n */\n function getDisposable() {\n return this.current;\n }\n }, {\n key: \"setDisposable\",\n value: function setDisposable(value) {\n var shouldDispose = this.isDisposed;\n\n if (!shouldDispose) {\n var old = this.current;\n this.current = value;\n\n if (old) {\n old.dispose();\n }\n }\n\n if (shouldDispose && value) {\n value.dispose();\n }\n }\n /** Performs the task of cleaning up resources. */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n if (!this.isDisposed) {\n this.isDisposed = true;\n var old = this.current;\n this.current = undefined;\n\n if (old) {\n old.dispose();\n }\n }\n }\n }]);\n\n return SerialDisposable;\n}();","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { createRef, Component } from 'react';\nimport { shallowEqual } from '@react-dnd/shallowequal';\nimport { invariant } from '@react-dnd/invariant';\nimport { DndContext } from '../core';\nimport { isPlainObject } from './utils';\nimport { Disposable, CompositeDisposable, SerialDisposable } from './disposables';\nimport { isRefable } from './utils';\nimport hoistStatics from 'hoist-non-react-statics';\nexport function decorateHandler(_ref) {\n var DecoratedComponent = _ref.DecoratedComponent,\n createHandler = _ref.createHandler,\n createMonitor = _ref.createMonitor,\n createConnector = _ref.createConnector,\n registerHandler = _ref.registerHandler,\n containerDisplayName = _ref.containerDisplayName,\n getType = _ref.getType,\n collect = _ref.collect,\n options = _ref.options;\n var _options$arePropsEqua = options.arePropsEqual,\n arePropsEqual = _options$arePropsEqua === void 0 ? shallowEqual : _options$arePropsEqua;\n var Decorated = DecoratedComponent;\n var displayName = DecoratedComponent.displayName || DecoratedComponent.name || 'Component';\n\n var DragDropContainer = /*#__PURE__*/function (_Component) {\n _inherits(DragDropContainer, _Component);\n\n var _super = _createSuper(DragDropContainer);\n\n function DragDropContainer(props) {\n var _this;\n\n _classCallCheck(this, DragDropContainer);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"decoratedRef\", createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"handlerId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"manager\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handlerMonitor\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handlerConnector\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"disposable\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"currentType\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handleChange\", function () {\n var nextState = _this.getCurrentState();\n\n if (!shallowEqual(nextState, _this.state)) {\n _this.setState(nextState);\n }\n });\n\n _this.disposable = new SerialDisposable();\n\n _this.receiveProps(props);\n\n _this.dispose();\n\n return _this;\n }\n\n _createClass(DragDropContainer, [{\n key: \"getHandlerId\",\n value: function getHandlerId() {\n return this.handlerId;\n }\n }, {\n key: \"getDecoratedComponentInstance\",\n value: function getDecoratedComponentInstance() {\n invariant(this.decoratedRef.current, 'In order to access an instance of the decorated component, it must either be a class component or use React.forwardRef()');\n return this.decoratedRef.current;\n }\n }, {\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps, nextState) {\n return !arePropsEqual(nextProps, this.props) || !shallowEqual(nextState, this.state);\n }\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.disposable = new SerialDisposable();\n this.currentType = undefined;\n this.receiveProps(this.props);\n this.handleChange();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (!arePropsEqual(this.props, prevProps)) {\n this.receiveProps(this.props);\n this.handleChange();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.dispose();\n }\n }, {\n key: \"receiveProps\",\n value: function receiveProps(props) {\n if (!this.handler) {\n return;\n }\n\n this.handler.receiveProps(props);\n this.receiveType(getType(props));\n }\n }, {\n key: \"receiveType\",\n value: function receiveType(type) {\n if (!this.handlerMonitor || !this.manager || !this.handlerConnector) {\n return;\n }\n\n if (type === this.currentType) {\n return;\n }\n\n this.currentType = type;\n\n var _registerHandler = registerHandler(type, this.handler, this.manager),\n _registerHandler2 = _slicedToArray(_registerHandler, 2),\n handlerId = _registerHandler2[0],\n unregister = _registerHandler2[1];\n\n this.handlerId = handlerId;\n this.handlerMonitor.receiveHandlerId(handlerId);\n this.handlerConnector.receiveHandlerId(handlerId);\n var globalMonitor = this.manager.getMonitor();\n var unsubscribe = globalMonitor.subscribeToStateChange(this.handleChange, {\n handlerIds: [handlerId]\n });\n this.disposable.setDisposable(new CompositeDisposable(new Disposable(unsubscribe), new Disposable(unregister)));\n }\n }, {\n key: \"dispose\",\n value: function dispose() {\n this.disposable.dispose();\n\n if (this.handlerConnector) {\n this.handlerConnector.receiveHandlerId(null);\n }\n }\n }, {\n key: \"getCurrentState\",\n value: function getCurrentState() {\n if (!this.handlerConnector) {\n return {};\n }\n\n var nextState = collect(this.handlerConnector.hooks, this.handlerMonitor, this.props);\n\n if (process.env.NODE_ENV !== 'production') {\n invariant(isPlainObject(nextState), 'Expected `collect` specified as the second argument to ' + '%s for %s to return a plain object of props to inject. ' + 'Instead, received %s.', containerDisplayName, displayName, nextState);\n }\n\n return nextState;\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n return _jsx(DndContext.Consumer, {\n children: function children(_ref2) {\n var dragDropManager = _ref2.dragDropManager;\n\n _this2.receiveDragDropManager(dragDropManager);\n\n if (typeof requestAnimationFrame !== 'undefined') {\n requestAnimationFrame(function () {\n var _this2$handlerConnect;\n\n return (_this2$handlerConnect = _this2.handlerConnector) === null || _this2$handlerConnect === void 0 ? void 0 : _this2$handlerConnect.reconnect();\n });\n }\n\n return _jsx(Decorated, Object.assign({}, _this2.props, _this2.getCurrentState(), {\n // NOTE: if Decorated is a Function Component, decoratedRef will not be populated unless it's a refforwarding component.\n ref: isRefable(Decorated) ? _this2.decoratedRef : null\n }), void 0);\n }\n }, void 0);\n }\n }, {\n key: \"receiveDragDropManager\",\n value: function receiveDragDropManager(dragDropManager) {\n if (this.manager !== undefined) {\n return;\n }\n\n invariant(dragDropManager !== undefined, 'Could not find the drag and drop manager in the context of %s. ' + 'Make sure to render a DndProvider component in your top-level component. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/troubleshooting#could-not-find-the-drag-and-drop-manager-in-the-context', displayName, displayName);\n\n if (dragDropManager === undefined) {\n return;\n }\n\n this.manager = dragDropManager;\n this.handlerMonitor = createMonitor(dragDropManager);\n this.handlerConnector = createConnector(dragDropManager.getBackend());\n this.handler = createHandler(this.handlerMonitor, this.decoratedRef);\n }\n }]);\n\n return DragDropContainer;\n }(Component);\n\n _defineProperty(DragDropContainer, \"DecoratedComponent\", DecoratedComponent);\n\n _defineProperty(DragDropContainer, \"displayName\", \"\".concat(containerDisplayName, \"(\").concat(displayName, \")\"));\n\n return hoistStatics(DragDropContainer, DecoratedComponent);\n}","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { invariant } from '@react-dnd/invariant';\nimport { isPlainObject, getDecoratedComponent } from './utils';\nvar ALLOWED_SPEC_METHODS = ['canDrag', 'beginDrag', 'isDragging', 'endDrag'];\nvar REQUIRED_SPEC_METHODS = ['beginDrag'];\n\nvar SourceImpl = /*#__PURE__*/function () {\n function SourceImpl(spec, monitor, ref) {\n var _this = this;\n\n _classCallCheck(this, SourceImpl);\n\n _defineProperty(this, \"props\", null);\n\n _defineProperty(this, \"spec\", void 0);\n\n _defineProperty(this, \"monitor\", void 0);\n\n _defineProperty(this, \"ref\", void 0);\n\n _defineProperty(this, \"beginDrag\", function () {\n if (!_this.props) {\n return;\n }\n\n var item = _this.spec.beginDrag(_this.props, _this.monitor, _this.ref.current);\n\n if (process.env.NODE_ENV !== 'production') {\n invariant(isPlainObject(item), 'beginDrag() must return a plain object that represents the dragged item. ' + 'Instead received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', item);\n }\n\n return item;\n });\n\n this.spec = spec;\n this.monitor = monitor;\n this.ref = ref;\n }\n\n _createClass(SourceImpl, [{\n key: \"receiveProps\",\n value: function receiveProps(props) {\n this.props = props;\n }\n }, {\n key: \"canDrag\",\n value: function canDrag() {\n if (!this.props) {\n return false;\n }\n\n if (!this.spec.canDrag) {\n return true;\n }\n\n return this.spec.canDrag(this.props, this.monitor);\n }\n }, {\n key: \"isDragging\",\n value: function isDragging(globalMonitor, sourceId) {\n if (!this.props) {\n return false;\n }\n\n if (!this.spec.isDragging) {\n return sourceId === globalMonitor.getSourceId();\n }\n\n return this.spec.isDragging(this.props, this.monitor);\n }\n }, {\n key: \"endDrag\",\n value: function endDrag() {\n if (!this.props) {\n return;\n }\n\n if (!this.spec.endDrag) {\n return;\n }\n\n this.spec.endDrag(this.props, this.monitor, getDecoratedComponent(this.ref));\n }\n }]);\n\n return SourceImpl;\n}();\n\nexport function createSourceFactory(spec) {\n Object.keys(spec).forEach(function (key) {\n invariant(ALLOWED_SPEC_METHODS.indexOf(key) > -1, 'Expected the drag source specification to only have ' + 'some of the following keys: %s. ' + 'Instead received a specification with an unexpected \"%s\" key. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', ALLOWED_SPEC_METHODS.join(', '), key);\n invariant(typeof spec[key] === 'function', 'Expected %s in the drag source specification to be a function. ' + 'Instead received a specification with %s: %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', key, key, spec[key]);\n });\n REQUIRED_SPEC_METHODS.forEach(function (key) {\n invariant(typeof spec[key] === 'function', 'Expected %s in the drag source specification to be a function. ' + 'Instead received a specification with %s: %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', key, key, spec[key]);\n });\n return function createSource(monitor, ref) {\n return new SourceImpl(spec, monitor, ref);\n };\n}","import { invariant } from '@react-dnd/invariant';\nimport { registerSource, DragSourceMonitorImpl, SourceConnector } from '../internals';\nimport { checkDecoratorArguments, isPlainObject, isValidType } from './utils';\nimport { decorateHandler } from './decorateHandler';\nimport { createSourceFactory } from './createSourceFactory';\n/**\n * Decorates a component as a dragsource\n * @param type The dragsource type\n * @param spec The drag source specification\n * @param collect The props collector function\n * @param options DnD options\n */\n\nexport function DragSource(type, spec, collect) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n checkDecoratorArguments('DragSource', 'type, spec, collect[, options]', type, spec, collect, options);\n var getType = type;\n\n if (typeof type !== 'function') {\n invariant(isValidType(type), 'Expected \"type\" provided as the first argument to DragSource to be ' + 'a string, or a function that returns a string given the current props. ' + 'Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', type);\n\n getType = function getType() {\n return type;\n };\n }\n\n invariant(isPlainObject(spec), 'Expected \"spec\" provided as the second argument to DragSource to be ' + 'a plain object. Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', spec);\n var createSource = createSourceFactory(spec);\n invariant(typeof collect === 'function', 'Expected \"collect\" provided as the third argument to DragSource to be ' + 'a function that returns a plain object of props to inject. ' + 'Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', collect);\n invariant(isPlainObject(options), 'Expected \"options\" provided as the fourth argument to DragSource to be ' + 'a plain object when specified. ' + 'Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drag-source', collect);\n return function decorateSource(DecoratedComponent) {\n return decorateHandler({\n containerDisplayName: 'DragSource',\n createHandler: createSource,\n registerHandler: registerSource,\n createConnector: function createConnector(backend) {\n return new SourceConnector(backend);\n },\n createMonitor: function createMonitor(manager) {\n return new DragSourceMonitorImpl(manager);\n },\n DecoratedComponent: DecoratedComponent,\n getType: getType,\n collect: collect,\n options: options\n });\n };\n}","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { invariant } from '@react-dnd/invariant';\nimport { isPlainObject, getDecoratedComponent } from './utils';\nvar ALLOWED_SPEC_METHODS = ['canDrop', 'hover', 'drop'];\n\nvar TargetImpl = /*#__PURE__*/function () {\n function TargetImpl(spec, monitor, ref) {\n _classCallCheck(this, TargetImpl);\n\n _defineProperty(this, \"props\", null);\n\n _defineProperty(this, \"spec\", void 0);\n\n _defineProperty(this, \"monitor\", void 0);\n\n _defineProperty(this, \"ref\", void 0);\n\n this.spec = spec;\n this.monitor = monitor;\n this.ref = ref;\n }\n\n _createClass(TargetImpl, [{\n key: \"receiveProps\",\n value: function receiveProps(props) {\n this.props = props;\n }\n }, {\n key: \"receiveMonitor\",\n value: function receiveMonitor(monitor) {\n this.monitor = monitor;\n }\n }, {\n key: \"canDrop\",\n value: function canDrop() {\n if (!this.spec.canDrop) {\n return true;\n }\n\n return this.spec.canDrop(this.props, this.monitor);\n }\n }, {\n key: \"hover\",\n value: function hover() {\n if (!this.spec.hover || !this.props) {\n return;\n }\n\n this.spec.hover(this.props, this.monitor, getDecoratedComponent(this.ref));\n }\n }, {\n key: \"drop\",\n value: function drop() {\n if (!this.spec.drop) {\n return undefined;\n }\n\n var dropResult = this.spec.drop(this.props, this.monitor, this.ref.current);\n\n if (process.env.NODE_ENV !== 'production') {\n invariant(typeof dropResult === 'undefined' || isPlainObject(dropResult), 'drop() must either return undefined, or an object that represents the drop result. ' + 'Instead received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', dropResult);\n }\n\n return dropResult;\n }\n }]);\n\n return TargetImpl;\n}();\n\nexport function createTargetFactory(spec) {\n Object.keys(spec).forEach(function (key) {\n invariant(ALLOWED_SPEC_METHODS.indexOf(key) > -1, 'Expected the drop target specification to only have ' + 'some of the following keys: %s. ' + 'Instead received a specification with an unexpected \"%s\" key. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', ALLOWED_SPEC_METHODS.join(', '), key);\n invariant(typeof spec[key] === 'function', 'Expected %s in the drop target specification to be a function. ' + 'Instead received a specification with %s: %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', key, key, spec[key]);\n });\n return function createTarget(monitor, ref) {\n return new TargetImpl(spec, monitor, ref);\n };\n}","import { invariant } from '@react-dnd/invariant';\nimport { TargetConnector, DropTargetMonitorImpl, registerTarget } from '../internals';\nimport { isPlainObject, isValidType } from './utils';\nimport { checkDecoratorArguments } from './utils';\nimport { decorateHandler } from './decorateHandler';\nimport { createTargetFactory } from './createTargetFactory';\n/**\n * @param type The accepted target type\n * @param spec The DropTarget specification\n * @param collect The props collector function\n * @param options Options\n */\n\nexport function DropTarget(type, spec, collect) {\n var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n checkDecoratorArguments('DropTarget', 'type, spec, collect[, options]', type, spec, collect, options);\n var getType = type;\n\n if (typeof type !== 'function') {\n invariant(isValidType(type, true), 'Expected \"type\" provided as the first argument to DropTarget to be ' + 'a string, an array of strings, or a function that returns either given ' + 'the current props. Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', type);\n\n getType = function getType() {\n return type;\n };\n }\n\n invariant(isPlainObject(spec), 'Expected \"spec\" provided as the second argument to DropTarget to be ' + 'a plain object. Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', spec);\n var createTarget = createTargetFactory(spec);\n invariant(typeof collect === 'function', 'Expected \"collect\" provided as the third argument to DropTarget to be ' + 'a function that returns a plain object of props to inject. ' + 'Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', collect);\n invariant(isPlainObject(options), 'Expected \"options\" provided as the fourth argument to DropTarget to be ' + 'a plain object when specified. ' + 'Instead, received %s. ' + 'Read more: http://react-dnd.github.io/react-dnd/docs/api/drop-target', collect);\n return function decorateTarget(DecoratedComponent) {\n return decorateHandler({\n containerDisplayName: 'DropTarget',\n createHandler: createTarget,\n registerHandler: registerTarget,\n createMonitor: function createMonitor(manager) {\n return new DropTargetMonitorImpl(manager);\n },\n createConnector: function createConnector(backend) {\n return new TargetConnector(backend);\n },\n DecoratedComponent: DecoratedComponent,\n getType: getType,\n collect: collect,\n options: options\n });\n };\n}","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport ChoicePreview from './choice-preview';\nimport { DropTarget } from 'react-dnd';\nimport { uid, PlaceHolder } from '@pie-lib/drag';\nimport debug from 'debug';\n\nconst log = debug('@pie-element:categorize:configure');\n\nconst Helper = withStyles((theme) => ({\n helper: {\n display: 'flex',\n alignItems: 'center',\n fontSize: theme.typography.fontSize - 2,\n color: `rgba(${theme.palette.common.black}, 0.4)`,\n width: '100%',\n height: '100%',\n },\n}))(({ classes }) => <div className={classes.helper}>Drag your correct answers here</div>);\n\nconst Previews = ({ alternateResponseIndex, category, choices, onDeleteChoice }) => (\n <React.Fragment>\n {choices.map(\n (c, index) =>\n c && (\n <ChoicePreview\n alternateResponseIndex={alternateResponseIndex}\n category={category}\n choice={c}\n key={index}\n choiceIndex={index}\n onDelete={(choice) => onDeleteChoice(choice, index)}\n />\n ),\n )}\n </React.Fragment>\n);\n\nPreviews.propTypes = {\n alternateResponseIndex: PropTypes.number,\n category: PropTypes.object,\n choices: PropTypes.array,\n onDeleteChoice: PropTypes.func,\n};\n\nexport class DroppablePlaceHolder extends React.Component {\n static propTypes = {\n alternateResponseIndex: PropTypes.number,\n category: PropTypes.object,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n connectDropTarget: PropTypes.func.isRequired,\n choices: PropTypes.array,\n onDropChoice: PropTypes.func.isRequired,\n onMoveChoice: PropTypes.func,\n isOver: PropTypes.bool,\n onDeleteChoice: PropTypes.func,\n categoryId: PropTypes.string.isRequired,\n };\n\n static defaultProps = {};\n render() {\n const { alternateResponseIndex, isOver, category, choices, classes, className, connectDropTarget, onDeleteChoice } =\n this.props;\n\n return connectDropTarget(\n <div className={classNames(classes.droppablePlaceholder, className)}>\n <PlaceHolder isOver={isOver} className={classes.placeHolder}>\n {(choices || []).length === 0 ? (\n <Helper />\n ) : (\n <Previews\n alternateResponseIndex={alternateResponseIndex}\n category={category}\n choices={choices}\n onDeleteChoice={onDeleteChoice}\n />\n )}\n </PlaceHolder>\n </div>,\n );\n }\n}\nconst styles = () => ({\n droppablePlaceholder: {\n minHeight: '100px',\n },\n placeHolder: {\n width: '100%',\n minHeight: '100px',\n height: 'auto',\n },\n});\n\nconst Styled = withStyles(styles)(DroppablePlaceHolder);\n\nexport const spec = {\n drop: (props, monitor) => {\n log('[drop] props: ', props);\n const item = monitor.getItem();\n\n if (item.from && item.alternateResponseIndex === props.alternateResponseIndex) {\n props.onMoveChoice(item.choiceId, item.from, props.categoryId, item.choiceIndex, item.alternateResponseIndex);\n } else if (!item.from) {\n // avoid dropping choice when user tries to move it to an alternate with other index\n props.onDropChoice(item, props.categoryId);\n }\n },\n canDrop: (props /*, monitor*/) => {\n return !props.disabled;\n },\n};\n\nconst WithTarget = DropTarget(\n ({ uid }) => uid,\n spec,\n (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver(),\n }),\n)(Styled);\n\nexport default uid.withUid(WithTarget);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Card from '@material-ui/core/Card';\nimport InputHeader from '../input-header';\nimport CardActions from '@material-ui/core/CardActions';\nimport { DeleteButton } from '../buttons';\n\nimport PlaceHolder from './droppable-placeholder';\n\nexport class Category extends React.Component {\n static propTypes = {\n alternateResponseIndex: PropTypes.number,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n category: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n defaultImageMaxHeight: PropTypes.number,\n defaultImageMaxWidth: PropTypes.number,\n deleteFocusedEl: PropTypes.func,\n focusedEl: PropTypes.number,\n index: PropTypes.number,\n error: PropTypes.string,\n isDuplicated: PropTypes.bool,\n maxImageWidth: PropTypes.object,\n maxImageHeight: PropTypes.object,\n onChange: PropTypes.func,\n onDelete: PropTypes.func,\n onDeleteChoice: PropTypes.func,\n onAddChoice: PropTypes.func,\n onMoveChoice: PropTypes.func,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n toolbarOpts: PropTypes.object,\n spellCheck: PropTypes.bool,\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n };\n\n static defaultProps = {};\n\n changeLabel = (l) => {\n const { category, onChange } = this.props;\n category.label = l;\n onChange(category);\n };\n\n render() {\n const {\n alternateResponseIndex,\n category,\n classes,\n className,\n configuration,\n deleteFocusedEl,\n focusedEl,\n index,\n error,\n isDuplicated,\n onDelete,\n onDeleteChoice,\n onAddChoice,\n onMoveChoice,\n imageSupport,\n spellCheck,\n toolbarOpts,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n mathMlOptions = {},\n } = this.props;\n\n const isCategoryHeaderDisabled = !!alternateResponseIndex || alternateResponseIndex === 0;\n return (\n <Card\n className={classNames(classes.category, className, {\n [classes.duplicateError]: isDuplicated,\n })}\n >\n <span>\n {!isCategoryHeaderDisabled ? (\n <InputHeader\n label={category.label}\n focusedEl={focusedEl}\n deleteFocusedEl={deleteFocusedEl}\n index={index}\n disabled={!!alternateResponseIndex || alternateResponseIndex === 0}\n error={error}\n onChange={this.changeLabel}\n onDelete={onDelete}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n configuration={configuration}\n />\n ) : (\n <div\n className={classes.categoryHeader}\n dangerouslySetInnerHTML={{\n __html: category.label,\n }}\n ></div>\n )}\n {error && <div className={classes.errorText}>{error}</div>}\n </span>\n <PlaceHolder\n className={classes.placeHolder}\n alternateResponseIndex={alternateResponseIndex}\n category={category}\n choices={category.choices}\n onDeleteChoice={onDeleteChoice}\n onDropChoice={onAddChoice}\n onMoveChoice={onMoveChoice}\n categoryId={category.id}\n />\n {onDelete && (\n <CardActions className={classes.actions}>\n <DeleteButton label={'delete'} onClick={onDelete} />\n </CardActions>\n )}\n </Card>\n );\n }\n}\nconst styles = (theme) => ({\n placeHolder: {\n minHeight: '100px',\n },\n deleteButton: {\n margin: 0,\n },\n actions: {\n padding: 0,\n paddingBottom: 0,\n paddingTop: theme.spacing.unit,\n },\n iconButtonRoot: {\n width: 'auto',\n height: 'auto',\n },\n header: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n category: {\n minWidth: '196px',\n padding: theme.spacing.unit,\n overflow: 'visible',\n },\n categoryHeader: {\n padding: theme.spacing.unit * 2,\n '& p': {\n margin: 0\n }\n },\n duplicateError: {\n border: '1px solid red',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n editor: {\n flex: '1',\n paddingBottom: theme.spacing.unit * 2,\n },\n});\nexport default withStyles(styles)(Category);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { AddButton } from './buttons';\n\nexport class Header extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n buttonLabel: PropTypes.string,\n onAdd: PropTypes.func.isRequired,\n label: PropTypes.string.isRequired,\n info: PropTypes.any,\n buttonDisabled: PropTypes.bool,\n variant: PropTypes.string,\n tooltip: PropTypes.string,\n };\n\n static defaultProps = {};\n\n render() {\n const { classes, className, onAdd, label, buttonLabel, info, buttonDisabled, variant, tooltip } = this.props;\n return (\n <div className={classNames(classes.header, className)}>\n <div className={classes.titleContainer}>\n <Typography variant={variant || 'title'} className={classes.title}>\n {label}\n </Typography>\n {info}\n </div>\n <Tooltip\n title={tooltip || ''}\n classes={{ tooltip: classes.tooltip }}\n enterTouchDelay={50} // Appear quickly after a touch\n leaveTouchDelay={3000} // Stay visible for 3 seconds\n >\n <span>\n <AddButton onClick={onAdd} label={buttonLabel} disabled={buttonDisabled} />\n </span>\n </Tooltip>\n </div>\n );\n }\n}\nconst styles = (theme) => ({\n header: {\n display: 'flex',\n justifyContent: 'space-between',\n marginBottom: theme.spacing.unit,\n },\n titleContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n});\nexport default withStyles(styles)(Header);\n","export const generateValidationMessage = (config) => {\n let { minChoices, maxChoices, maxCategories } = config || {};\n minChoices = minChoices || 1;\n\n const validationMessage =\n '\\nThe choices content should ' +\n 'not be empty and should be unique.\\nThere should be at least 1 ' +\n (maxCategories ? `and at most ${maxCategories} ` : '') +\n 'category' +\n (maxCategories ? 's' : '') +\n ' defined.' +\n (minChoices ? `\\nThere should be at least ${minChoices} choices defined.` : '') +\n (maxChoices ? `\\nNo more than ${maxChoices} choices should be defined.` : '') +\n '\\nAt least one token should be assigned to at least one category.';\n\n return 'Validation requirements:' + validationMessage;\n};\n\n// used in controller too, for consistency modify it there too\nexport const multiplePlacements = { enabled: 'Yes', disabled: 'No', perChoice: 'Set Per Choice' };\n\n// Find the length of the largest array from an array\nexport const maxLength = (array) =>\n (array || []).reduce((max, arr) => {\n return Math.max(max, arr.length);\n }, 0);\n\nexport const getMaxCategoryChoices = (model) => {\n const { correctResponse = [] } = model || {};\n return correctResponse.reduce((max, correctRes) => {\n const correctRespLength = correctRes?.choices?.length || 0;\n const alternates = correctRes?.alternateResponses || [];\n const maxChoices = Math.max(correctRespLength, maxLength(alternates));\n return maxChoices > max ? maxChoices : max;\n }, 0);\n};\n","import { getPluginProps } from '../utils';\nimport React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputContainer } from '@pie-lib/render-ui';\n\nconst styles = (theme) => ({\n rowLabel: {\n gridColumn: '1/3',\n },\n rowLabelHolder: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%',\n },\n});\n\nexport const RowLabel = withStyles(styles)(\n ({\n categoriesPerRow,\n classes,\n configuration,\n disabled,\n markup,\n imageSupport,\n onChange,\n toolbarOpts,\n spellCheck,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n mathMlOptions = {},\n }) => {\n const { rowLabels, baseInputConfiguration } = configuration;\n\n return (\n <div\n style={{\n gridColumn: `1/${categoriesPerRow + 1}`,\n width: '100%',\n }}\n >\n <InputContainer label=\"Row Label\" className={classes.rowLabelHolder}>\n <EditableHtml\n disabled={disabled}\n markup={markup}\n onChange={onChange}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rowLabels?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheck}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n </InputContainer>\n </div>\n );\n },\n);\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { choiceUtils as utils } from '@pie-lib/config-ui';\nimport classNames from 'classnames';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport {\n moveChoiceToCategory,\n removeCategory,\n removeChoiceFromCategory,\n verifyAllowMultiplePlacements,\n} from '@pie-lib/categorize';\n\nimport Category from './category';\nimport Header from '../header';\nimport { generateValidationMessage, getMaxCategoryChoices } from '../../utils';\nimport { RowLabel } from './RowLabel';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nconst styles = (theme) => ({\n categories: {\n marginBottom: theme.spacing.unit * 3,\n },\n categoriesHolder: {\n display: 'grid',\n gridRowGap: `${theme.spacing.unit}px`,\n gridColumnGap: `${theme.spacing.unit}px`,\n },\n row: {\n display: 'grid',\n gridTemplateColumns: 'repeat(2, 1fr)',\n gridColumnGap: `${theme.spacing.unit}px`,\n alignItems: 'baseline',\n width: '100%',\n marginTop: theme.spacing.unit,\n marginBottom: 2 * theme.spacing.unit,\n },\n rowLabel: {\n gridColumn: '1/3',\n },\n rowLabelHolder: {\n width: '100%',\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit / 2,\n },\n});\n\nexport class Categories extends React.Component {\n static propTypes = {\n defaultImageMaxHeight: PropTypes.number,\n defaultImageMaxWidth: PropTypes.number,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n categories: PropTypes.array,\n onModelChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n toolbarOpts: PropTypes.object,\n spellCheck: PropTypes.bool,\n };\n\n state = {\n focusedEl: null,\n };\n\n componentDidMount() {\n try {\n // eslint-disable-next-line react/no-find-dom-node\n const domNode = ReactDOM.findDOMNode(this);\n\n renderMath(domNode);\n } catch (e) {\n // Added try-catch block to handle \"Unable to find node on an unmounted component\" error from tests, thrown because of the usage of shallow\n console.error('DOM not mounted');\n }\n }\n\n componentDidUpdate() {\n try {\n // eslint-disable-next-line react/no-find-dom-node\n const domNode = ReactDOM.findDOMNode(this);\n\n renderMath(domNode);\n } catch (e) {\n // Added try-catch block to handle \"Unable to find node on an unmounted component\" error from tests, thrown because of the usage of shallow\n console.error('DOM not mounted');\n }\n }\n\n add = () => {\n const { model, categories: oldCategories } = this.props;\n const { categoriesPerRow, correctResponse, allowAlternateEnabled } = model;\n\n const id = utils.firstAvailableIndex(\n model.categories.map((a) => a.id),\n 1,\n );\n const data = { id, label: 'Category ' + id };\n const addRowLabel = model.categories.length % categoriesPerRow === 0;\n const rowLabels = [...model.rowLabels];\n\n if (addRowLabel) {\n rowLabels.push('');\n }\n\n this.setState(\n {\n focusedEl: oldCategories.length,\n },\n () => {\n this.props.onModelChanged({\n rowLabels,\n categories: model.categories.concat([data]),\n correctResponse: allowAlternateEnabled\n ? [...correctResponse, { category: id, choices: [], alternateResponses: [] }]\n : correctResponse,\n });\n },\n );\n };\n\n deleteFocusedEl = () => {\n this.setState({\n focusedEl: null,\n });\n };\n\n delete = (category) => {\n const { model, onModelChanged } = this.props;\n const index = model.categories.findIndex((a) => a.id === category.id);\n\n if (index !== -1) {\n model.categories.splice(index, 1);\n model.correctResponse = removeCategory(category.id, model.correctResponse);\n onModelChanged(model);\n }\n };\n\n change = (c) => {\n const { categories } = this.props;\n const index = categories.findIndex((a) => a.id === c.id);\n\n if (index !== -1) {\n categories.splice(index, 1, c);\n this.props.onModelChanged({ categories });\n }\n };\n\n addChoiceToCategory = (addedChoice, categoryId) => {\n const { model, onModelChanged } = this.props;\n let { choices = [], correctResponse = [], maxChoicesPerCategory = 0 } = model || {};\n const choice = (choices || []).find((choice) => choice.id === addedChoice.id);\n correctResponse = moveChoiceToCategory(addedChoice.id, undefined, categoryId, 0, model.correctResponse);\n // if multiplePlacements not allowed, ensure the consistency in the other categories\n if (choice.categoryCount !== 0) {\n correctResponse = verifyAllowMultiplePlacements(addedChoice, categoryId, correctResponse);\n }\n const maxCategoryChoices = getMaxCategoryChoices(model);\n // when maxChoicesPerCategory is set to 0, there is no limit so it should not be updated\n onModelChanged({\n correctResponse,\n maxChoicesPerCategory:\n maxChoicesPerCategory !== 0 && maxChoicesPerCategory < maxCategoryChoices\n ? maxChoicesPerCategory + 1\n : maxChoicesPerCategory,\n });\n };\n\n deleteChoiceFromCategory = (category, choice, choiceIndex) => {\n const { model, onModelChanged } = this.props;\n const correctResponse = removeChoiceFromCategory(choice.id, category.id, choiceIndex, model.correctResponse);\n\n onModelChanged({ correctResponse });\n };\n\n moveChoice = (choiceId, from, to, choiceIndex) => {\n const { model, onModelChanged } = this.props;\n let { choices, correctResponse = [], maxChoicesPerCategory = 0 } = model || {};\n const choice = (choices || []).find((choice) => choice.id === choiceId);\n if (to === from || !choice) {\n return;\n }\n if (choice.categoryCount !== 0) {\n correctResponse = moveChoiceToCategory(choice.id, from, to, choiceIndex, correctResponse);\n correctResponse = verifyAllowMultiplePlacements(choice, to, correctResponse);\n } else if (choice.categoryCount === 0) {\n correctResponse = moveChoiceToCategory(choice.id, undefined, to, 0, correctResponse);\n }\n const maxCategoryChoices = getMaxCategoryChoices(model);\n // when maxChoicesPerCategory is set to 0, there is no limit so it should not be updated\n onModelChanged({\n correctResponse,\n maxChoicesPerCategory:\n maxChoicesPerCategory !== 0 && maxChoicesPerCategory < maxCategoryChoices\n ? maxChoicesPerCategory + 1\n : maxChoicesPerCategory,\n });\n };\n\n changeRowLabel = (val, index) => {\n const { model } = this.props;\n const { rowLabels } = model;\n const newRowLabels = [...rowLabels];\n\n if (newRowLabels.length < index) {\n newRowLabels.push(val);\n } else {\n newRowLabels[index] = val;\n }\n\n this.props.onModelChanged({\n rowLabels: newRowLabels,\n });\n };\n\n render() {\n const {\n model,\n classes,\n className,\n categories,\n imageSupport,\n uploadSoundSupport,\n toolbarOpts,\n spellCheck,\n configuration,\n defaultImageMaxHeight,\n defaultImageMaxWidth,\n mathMlOptions = {},\n } = this.props;\n\n const { categoriesPerRow, rowLabels, errors } = model;\n const { associationError, categoriesError, categoriesErrors } = errors || {};\n const { maxCategories, maxImageWidth = {}, maxImageHeight = {} } = configuration || {};\n const holderStyle = {\n gridTemplateColumns: `repeat(${categoriesPerRow}, 1fr)`,\n };\n\n const validationMessage = generateValidationMessage(configuration);\n\n return (\n <div className={classNames(classes.categories, className)}>\n <Header\n label=\"Categories\"\n buttonLabel=\"ADD A CATEGORY\"\n onAdd={this.add}\n info={\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ marginLeft: '5px' }} />\n </Tooltip>\n }\n buttonDisabled={maxCategories && categories && maxCategories === categories.length}\n />\n\n <div className={classes.categoriesHolder} style={holderStyle}>\n {categories.map((category, index) => {\n const hasRowLabel = index % categoriesPerRow === 0;\n const rowIndex = index / categoriesPerRow;\n\n return (\n <React.Fragment key={index}>\n {hasRowLabel && (\n <RowLabel\n categoriesPerRow={categoriesPerRow}\n disabled={false}\n rowIndex={rowIndex}\n markup={rowLabels[rowIndex] || ''}\n onChange={(val) => this.changeRowLabel(val, rowIndex)}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n maxImageWidth={(maxImageWidth && maxImageWidth.rowLabel) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rowLabel) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n configuration={configuration}\n />\n )}\n\n <Category\n imageSupport={imageSupport}\n focusedEl={this.state.focusedEl}\n deleteFocusedEl={this.deleteFocusedEl}\n index={index}\n category={category}\n error={categoriesErrors && categoriesErrors[category.id]}\n onChange={this.change}\n onDelete={() => this.delete(category)}\n onAddChoice={this.addChoiceToCategory}\n onMoveChoice={(choiceId, from, to, choiceIndex) => this.moveChoice(choiceId, from, to, choiceIndex)}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n onDeleteChoice={(choice, choiceIndex) => this.deleteChoiceFromCategory(category, choice, choiceIndex)}\n maxImageWidth={(maxImageWidth && maxImageWidth.categoryLabel) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.categoryLabel) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n configuration={configuration}\n />\n </React.Fragment>\n );\n })}\n </div>\n\n {associationError && <div className={classes.errorText}>{associationError}</div>}\n {categoriesError && <div className={classes.errorText}>{categoriesError}</div>}\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(Categories);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { moveChoiceToAlternate, removeChoiceFromAlternate } from '@pie-lib/categorize';\n\nimport Category from './category';\nimport { getMaxCategoryChoices } from '../../utils';\n\nconst styles = (theme) => ({\n categories: {\n marginBottom: theme.spacing.unit * 2.5,\n },\n categoriesHolder: {\n display: 'grid',\n gridRowGap: `${theme.spacing.unit}px`,\n gridColumnGap: `${theme.spacing.unit}px`,\n },\n row: {\n display: 'grid',\n gridTemplateColumns: 'repeat(2, 1fr)',\n gridColumnGap: `${theme.spacing.unit}px`,\n alignItems: 'baseline',\n width: '100%',\n marginTop: theme.spacing.unit,\n marginBottom: 2 * theme.spacing.unit,\n },\n rowLabel: {\n gridColumn: '1/3',\n },\n});\n\nexport class AlternateResponses extends React.Component {\n static propTypes = {\n altIndex: PropTypes.number.isRequired,\n configuration: PropTypes.object,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n categories: PropTypes.array,\n onModelChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n spellCheck: PropTypes.bool,\n };\n\n addChoiceToCategory = (addedChoice, categoryId) => {\n const {\n altIndex,\n model: { correctResponse, choices, maxChoicesPerCategory = 0 },\n onModelChanged,\n } = this.props;\n\n const choice = choices.find((c) => c.id === addedChoice.id);\n\n correctResponse.forEach((a) => {\n if (a.category === categoryId) {\n a.alternateResponses = a.alternateResponses || [];\n\n if (!a.alternateResponses[altIndex]) {\n a.alternateResponses[altIndex] = [];\n }\n\n a.alternateResponses[altIndex].push(addedChoice.id);\n if (choice.categoryCount && choice.categoryCount !== 0) {\n a.alternateResponses[altIndex] = a.alternateResponses[altIndex].reduce((acc, currentValue) => {\n if (currentValue === choice.id) {\n const foundIndex = acc.findIndex((c) => c === choice.id);\n if (foundIndex === -1) {\n acc.push(currentValue);\n }\n } else {\n acc.push(currentValue);\n }\n\n return acc;\n }, []);\n }\n\n return a;\n } else {\n if (a.alternateResponses[altIndex] && choice.categoryCount !== 0) {\n a.alternateResponses[altIndex] = a.alternateResponses[altIndex].filter((c) => c !== addedChoice.id);\n return a;\n }\n }\n\n return a;\n });\n\n const maxCategoryChoices = getMaxCategoryChoices(this.props.model);\n // when maxChoicesPerCategory is set to 0, there is no limit so it should not be updated\n onModelChanged({\n correctResponse,\n maxChoicesPerCategory:\n maxChoicesPerCategory !== 0 && maxChoicesPerCategory < maxCategoryChoices\n ? maxChoicesPerCategory + 1\n : maxChoicesPerCategory,\n });\n };\n\n moveChoice = (choiceId, from, to, choiceIndex, alternateIndex) => {\n const { model, onModelChanged } = this.props;\n let { choices, correctResponse = [], maxChoicesPerCategory = 0 } = model || {};\n const choice = (choices || []).find((choice) => choice.id === choiceId);\n correctResponse = moveChoiceToAlternate(\n choiceId,\n from,\n to,\n choiceIndex,\n correctResponse,\n alternateIndex,\n choice?.categoryCount,\n );\n\n const maxCategoryChoices = getMaxCategoryChoices(this.props.model);\n // when maxChoicesPerCategory is set to 0, there is no limit so it should not be updated\n onModelChanged({\n correctResponse,\n maxChoicesPerCategory:\n maxChoicesPerCategory !== 0 && maxChoicesPerCategory < maxCategoryChoices\n ? maxChoicesPerCategory + 1\n : maxChoicesPerCategory,\n });\n };\n\n deleteChoiceFromCategory = (category, choice, choiceIndex) => {\n const { model, altIndex, onModelChanged } = this.props;\n\n const correctResponse = removeChoiceFromAlternate(\n choice.id,\n category.id,\n choiceIndex,\n altIndex,\n model.correctResponse,\n );\n\n onModelChanged({ correctResponse });\n };\n\n render() {\n const {\n altIndex,\n model,\n configuration,\n classes,\n className,\n categories,\n imageSupport,\n spellCheck,\n uploadSoundSupport,\n mathMlOptions = {},\n } = this.props;\n const { categoriesPerRow, errors, rowLabels } = model;\n const { duplicateAlternate } = errors || {};\n\n const holderStyle = {\n gridTemplateColumns: `repeat(${categoriesPerRow}, 1fr)`,\n };\n const isDuplicated = duplicateAlternate ? duplicateAlternate.index === altIndex : false;\n\n return (\n <div className={classNames(classes.categories, className)}>\n <div className={classes.categoriesHolder} style={holderStyle}>\n {categories.map((category, index) => {\n const hasRowLabel = index % categoriesPerRow === 0;\n const rowIndex = index / categoriesPerRow;\n\n return (\n <React.Fragment key={index}>\n {hasRowLabel && (\n <div\n style={{\n gridColumn: `1/${categoriesPerRow + 1}`,\n width: '100%',\n }}\n className={classes.rowLabel}\n dangerouslySetInnerHTML={{\n __html: rowLabels[rowIndex] || '',\n }}\n ></div>\n )}\n\n <Category\n key={index}\n alternateResponseIndex={altIndex}\n imageSupport={imageSupport}\n isDuplicated={isDuplicated && duplicateAlternate.category === category.id}\n category={category}\n spellCheck={spellCheck}\n onAddChoice={this.addChoiceToCategory}\n onDeleteChoice={(choice, choiceIndex) => this.deleteChoiceFromCategory(category, choice, choiceIndex)}\n onMoveChoice={(choiceId, from, to, choiceIndex, alternateIndex) =>\n this.moveChoice(choiceId, from, to, choiceIndex, alternateIndex)\n }\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n configuration={configuration}\n />\n </React.Fragment>\n );\n })}\n </div>\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(AlternateResponses);\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\n\nvar _default = (0, _createSvgIcon.default)(_react.default.createElement(_react.default.Fragment, null, _react.default.createElement(\"defs\", null, _react.default.createElement(\"path\", {\n id: \"a\",\n d: \"M0 0h24v24H0V0z\"\n})), _react.default.createElement(\"path\", {\n d: \"M20 9H4v2h16V9zM4 15h16v-2H4v2z\"\n})), 'DragHandle');\n\nexports.default = _default;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Card from '@material-ui/core/Card';\nimport CardActions from '@material-ui/core/CardActions';\nimport InputHeader from '../input-header';\nimport { Checkbox } from '@pie-lib/config-ui';\nimport { DeleteButton } from '../buttons';\nimport DragHandle from '@material-ui/icons/DragHandle';\nimport { DragSource, DropTarget } from 'react-dnd';\nimport debug from 'debug';\nimport { uid } from '@pie-lib/drag';\nimport { multiplePlacements } from '../../utils';\nimport flow from 'lodash/flow';\n\nconst log = debug('@pie-element:categorize:configure:choice');\n\nconst canDrag = (props) => {\n if (props.lockChoiceOrder) {\n return true;\n }\n const count = props.choice.categoryCount || 0;\n if (count === 0) {\n return true;\n } else {\n return props.correctResponseCount < count;\n }\n};\n\nexport class Choice extends React.Component {\n static propTypes = {\n allowMultiplePlacements: PropTypes.string,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n configuration: PropTypes.object.isRequired,\n choice: PropTypes.object.isRequired,\n connectDropTarget: PropTypes.func,\n deleteFocusedEl: PropTypes.func,\n focusedEl: PropTypes.number,\n index: PropTypes.number,\n lockChoiceOrder: PropTypes.bool,\n maxImageHeight: PropTypes.object,\n maxImageWidth: PropTypes.object,\n onChange: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n connectDragSource: PropTypes.func.isRequired,\n connectDragPreview: PropTypes.func.isRequired,\n correctResponseCount: PropTypes.number.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n toolbarOpts: PropTypes.object,\n error: PropTypes.string,\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n spellCheck: PropTypes.bool,\n };\n\n static defaultProps = {};\n\n changeContent = (content) => {\n const { onChange, choice } = this.props;\n choice.content = content;\n onChange(choice);\n };\n\n changeCategoryCount = () => {\n const { onChange, choice } = this.props;\n if (choice.categoryCount === 1) {\n choice.categoryCount = 0;\n } else {\n choice.categoryCount = 1;\n }\n onChange(choice);\n };\n\n isCheckboxShown = (allowMultiplePlacements) => allowMultiplePlacements === multiplePlacements.perChoice;\n\n render() {\n const {\n allowMultiplePlacements,\n classes,\n className,\n configuration,\n choice,\n deleteFocusedEl,\n focusedEl,\n index,\n onDelete,\n connectDropTarget,\n connectDragSource,\n connectDragPreview,\n imageSupport,\n spellCheck,\n toolbarOpts,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n } = this.props;\n\n const showRemoveAfterPlacing = this.isCheckboxShown(allowMultiplePlacements);\n const draggable = canDrag(this.props);\n\n return (\n <Card className={classNames(classes.choice, className)}>\n <CardActions className={classes.actions}>\n {connectDragSource(\n connectDropTarget(\n <span className={classNames(classes.dragHandle, draggable === false && classes.dragDisabled)}>\n <DragHandle color={draggable ? 'primary' : 'disabled'} />\n </span>,\n ),\n )}\n </CardActions>\n {connectDragPreview(\n <span>\n <InputHeader\n imageSupport={imageSupport}\n focusedEl={focusedEl}\n deleteFocusedEl={deleteFocusedEl}\n index={index}\n label={choice.content}\n onChange={this.changeContent}\n onDelete={onDelete}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n error={error}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n configuration={configuration}\n />\n {error && <div className={classes.errorText}>{error}</div>}\n </span>,\n )}\n\n <CardActions className={classes.actions}>\n <DeleteButton label={'delete'} onClick={onDelete} />\n {showRemoveAfterPlacing && (\n <Checkbox\n mini\n label={'Remove after placing'}\n checked={choice.categoryCount === 1}\n onChange={this.changeCategoryCount}\n />\n )}\n </CardActions>\n </Card>\n );\n }\n}\nconst styles = (theme) => ({\n actions: {\n padding: 0,\n justifyContent: 'space-between',\n },\n choice: {\n minWidth: '196px',\n padding: theme.spacing.unit,\n overflow: 'visible',\n },\n dragHandle: {\n cursor: 'move',\n },\n dragDisabled: {\n cursor: 'inherit',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n});\n\nconst StyledChoice = withStyles(styles)(Choice);\n\nexport const spec = {\n canDrag,\n beginDrag: (props) => {\n const out = {\n id: props.choice.id,\n index: props.index,\n };\n log('[beginDrag] out:', out);\n return out;\n },\n endDrag: (props, monitor) => {\n if (!monitor.didDrop()) {\n const item = monitor.getItem();\n if (item.categoryId) {\n log('wasnt droppped - what to do?');\n props.onRemoveChoice(item);\n }\n }\n },\n};\n\nexport const specTarget = {\n drop: (props, monitor) => {\n log('[drop] props: ', props);\n const item = monitor.getItem();\n props.rearrangeChoices(item.index, props.index);\n },\n canDrop: (props, monitor) => {\n const item = monitor.getItem();\n return props.choice.id !== item.id;\n },\n};\n\nexport default uid.withUid(\n flow(\n DragSource(\n ({ uid }) => uid,\n spec,\n (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n connectDragPreview: connect.dragPreview(),\n isDragging: monitor.isDragging(),\n }),\n ),\n DropTarget(\n ({ uid }) => uid,\n specTarget,\n (connect, monitor) => ({\n connectDropTarget: connect.dropTarget(),\n isOver: monitor.isOver(),\n }),\n ),\n )(StyledChoice),\n);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport TextField from '@material-ui/core/TextField';\n\nexport class Config extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n config: PropTypes.object,\n onModelChanged: PropTypes.func,\n spellCheck: PropTypes.bool,\n };\n\n static defaultProps = {};\n\n changeLabel = ({ target }) => {\n this.props.onModelChanged({ choicesLabel: target.value });\n };\n\n render() {\n const { classes, className, config, spellCheck } = this.props;\n\n return (\n <div className={classNames(classes.config, className)}>\n <TextField\n className={classes.label}\n InputLabelProps={{\n shrink: true,\n }}\n variant=\"outlined\"\n label=\"Label\"\n value={config.choicesLabel}\n onChange={this.changeLabel}\n spellCheck={spellCheck}\n />\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n config: {\n paddingTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit,\n },\n label: {\n width: '100%',\n },\n});\n\nexport default withStyles(styles)(Config);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Choice from './choice';\nimport Header from '../header';\nimport Config from './config';\nimport { choiceUtils as utils } from '@pie-lib/config-ui';\nimport { removeAllChoices } from '@pie-lib/categorize';\nimport { rearrangeChoices } from '@pie-lib/categorize';\n\nexport class Choices extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n choices: PropTypes.array.isRequired,\n defaultImageMaxWidth: PropTypes.number,\n defaultImageMaxHeight: PropTypes.number,\n onModelChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n toolbarOpts: PropTypes.object,\n spellCheck: PropTypes.bool,\n };\n\n static defaultProps = {};\n\n state = {\n focusedEl: null,\n };\n\n changeChoice = (choice) => {\n const { choices, onModelChanged } = this.props;\n const index = choices.findIndex((h) => h.id === choice.id);\n if (index !== -1) {\n choices.splice(index, 1, choice);\n onModelChanged({ choices });\n }\n };\n\n allChoicesHaveCount = (count) => {\n const { choices } = this.props;\n return Array.isArray(choices) && choices.every((c) => c.categoryCount === count);\n };\n\n addChoice = () => {\n const { onModelChanged, model, choices: oldChoices } = this.props;\n let { maxAnswerChoices } = model || {};\n\n if (maxAnswerChoices && model.choices?.length >= maxAnswerChoices) {\n return;\n }\n\n const id = utils.firstAvailableIndex(\n model.choices.map((a) => a.id),\n 1,\n );\n const data = { id, content: 'Choice ' + id };\n\n this.setState(\n {\n focusedEl: oldChoices.length,\n },\n () => {\n onModelChanged({ choices: model.choices.concat([data]) });\n },\n );\n };\n\n deleteFocusedEl = () => {\n this.setState({\n focusedEl: null,\n });\n };\n\n deleteChoice = (choice) => {\n const { model, onModelChanged } = this.props;\n const index = model.choices.findIndex((a) => a.id === choice.id);\n if (index !== -1) {\n model.choices.splice(index, 1);\n model.correctResponse = removeAllChoices(choice.id, model.correctResponse);\n onModelChanged(model);\n }\n };\n\n rearrangeChoices = (indexFrom, indexTo) => {\n const { model, onModelChanged } = this.props || {};\n let { choices } = model || [];\n choices = rearrangeChoices(choices, indexFrom, indexTo);\n onModelChanged({ choices });\n };\n\n render() {\n const { focusedEl } = this.state;\n const {\n classes,\n className,\n choices,\n model,\n imageSupport,\n uploadSoundSupport,\n onModelChanged,\n spellCheck,\n toolbarOpts,\n configuration,\n defaultImageMaxWidth,\n defaultImageMaxHeight,\n } = this.props;\n const { errors, allowMultiplePlacementsEnabled, lockChoiceOrder, maxAnswerChoices } = model;\n const { choicesError, choicesErrors } = errors || {};\n const { maxImageWidth = {}, maxImageHeight = {} } = configuration || {};\n const choiceHolderStyle = {\n gridTemplateColumns: `repeat(${model.categoriesPerRow}, 1fr)`,\n };\n const addChoiceButtonTooltip =\n maxAnswerChoices && choices?.length >= maxAnswerChoices ? `Only ${maxAnswerChoices} allowed maximum` : '';\n\n return (\n <div className={classNames(classes.choices, className)}>\n <Header\n label=\"Choices\"\n buttonLabel=\"ADD A CHOICE\"\n onAdd={this.addChoice}\n buttonDisabled={maxAnswerChoices && choices && choices?.length >= maxAnswerChoices}\n tooltip={addChoiceButtonTooltip}\n />\n\n <Config config={model} onModelChanged={onModelChanged} spellCheck={spellCheck} />\n\n <div className={classes.choiceHolder} style={choiceHolderStyle}>\n {choices.map((h, index) => {\n return (\n <Choice\n choice={h}\n focusedEl={focusedEl}\n deleteFocusedEl={this.deleteFocusedEl}\n correctResponseCount={h.correctResponseCount}\n allowMultiplePlacements={allowMultiplePlacementsEnabled}\n lockChoiceOrder={lockChoiceOrder}\n index={index}\n key={index}\n imageSupport={imageSupport}\n onChange={this.changeChoice}\n onDelete={() => this.deleteChoice(h)}\n rearrangeChoices={(indexFrom, indexTo) => this.rearrangeChoices(indexFrom, indexTo)}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n error={choicesErrors && choicesErrors[h.id]}\n maxImageWidth={(maxImageWidth && maxImageWidth.choice) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.choice) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n configuration={configuration}\n />\n );\n })}\n </div>\n {choicesError && <div className={classes.errorText}>{choicesError}</div>}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n choiceHolder: {\n paddingTop: theme.spacing.unit,\n paddingBottom: theme.spacing.unit,\n display: 'grid',\n gridRowGap: `${theme.spacing.unit}px`,\n gridColumnGap: `${theme.spacing.unit}px`,\n },\n choices: {\n marginBottom: theme.spacing.unit * 2.5,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit / 2,\n },\n});\n\nexport default withStyles(styles)(Choices);\n","import cloneDeep from 'lodash/cloneDeep';\n\nexport const buildCategories = (categories, choices, correctResponse) => {\n const clonedCategories = cloneDeep(categories);\n\n return clonedCategories.map((category) => {\n const cr = correctResponse.find((cr) => cr.category === category.id);\n\n if (cr) {\n category.choices = (cr.choices || []).map((choiceId) => {\n const choice = choices.find((h) => h.id === choiceId);\n if (choice) {\n return Object.assign({}, { id: choice.id, content: choice.content });\n }\n });\n }\n\n return category;\n });\n};\n\nconst getChoices = (cat, choices, index) => {\n if (!cat.alternateResponses || cat.alternateResponses.length === 0) {\n return [];\n }\n\n return (cat.alternateResponses[index] || []).map((alt) => {\n return choices.find((ch) => ch.id === alt);\n });\n};\n\nexport const buildAlternateResponses = (categories, choices, correctResponse) => {\n const mostAlternates = correctResponse.reduce((mostAlt, cat) => {\n if (cat.alternateResponses && cat.alternateResponses.length >= mostAlt) {\n return cat.alternateResponses.length;\n }\n\n return mostAlt;\n }, 0);\n const alternatesArray = new Array(mostAlternates).fill(0);\n\n return alternatesArray.map((val, index) => {\n return correctResponse.map((cat, catIndex) => {\n const currentCategory = categories[catIndex];\n\n return {\n id: currentCategory.id,\n label: currentCategory.label,\n choices: getChoices(cat, choices, index),\n };\n });\n });\n};\n","import { getPluginProps } from './utils';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { FeedbackConfig, InputContainer, layout, settings } from '@pie-lib/config-ui';\nimport { countInAnswer, ensureNoExtraChoicesInAnswer, ensureNoExtraChoicesInAlternate } from '@pie-lib/categorize';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { uid, withDragContext } from '@pie-lib/drag';\n\nimport Categories from './categories';\nimport AlternateResponses from './categories/alternateResponses';\nimport Choices from './choices';\nimport { buildAlternateResponses, buildCategories } from './builder';\nimport Header from './header';\nimport { getMaxCategoryChoices, multiplePlacements } from '../utils';\nimport { AlertDialog } from '@pie-lib/config-ui';\nimport Translator from '@pie-lib/translator';\n\nconst { translator } = Translator;\nconst { dropdown, Panel, toggle, radio, numberField } = settings;\nconst { Provider: IdProvider } = uid;\n\nexport class Design extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n configuration: PropTypes.object,\n className: PropTypes.string,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n uid: PropTypes.string,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n };\n\n constructor(props) {\n super(props);\n this.uid = props.uid || uid.generateId();\n }\n\n updateModel = (props) => {\n const { model, onChange } = this.props;\n\n const updatedModel = {\n ...model,\n ...props,\n };\n\n updatedModel.choices = updatedModel.choices.map((c) => ({\n ...c,\n categoryCount: this.checkAllowMultiplePlacements(updatedModel.allowMultiplePlacementsEnabled, c),\n }));\n\n //Ensure that there are no extra choices in correctResponse, if the user has decided that only one choice may be used.\n updatedModel.correctResponse = ensureNoExtraChoicesInAnswer(\n updatedModel.correctResponse || [],\n updatedModel.choices,\n );\n\n //Ensure that there are no extra choices in alternate responses, if the user has decided that only one choice may be used.\n updatedModel.correctResponse = ensureNoExtraChoicesInAlternate(\n updatedModel.correctResponse || [],\n updatedModel.choices,\n );\n\n //clean categories\n updatedModel.categories = updatedModel.categories.map((c) => ({\n id: c.id,\n label: c.label,\n }));\n\n updatedModel.choices = updatedModel.choices.map((h) => ({\n id: h.id,\n content: h.content,\n categoryCount: h.categoryCount,\n }));\n\n // ensure that maxChoicesPerCategory is reset if author switch back the corresponding switch (allowMaxChoicesPerCategory)\n updatedModel.maxChoicesPerCategory = updatedModel.allowMaxChoicesPerCategory\n ? updatedModel.maxChoicesPerCategory\n : 0;\n\n onChange(updatedModel);\n };\n\n changeRationale = (rationale) => {\n const { model, onChange } = this.props;\n\n onChange({\n ...model,\n rationale,\n });\n };\n\n changeTeacherInstructions = (teacherInstructions) => {\n const { model, onChange } = this.props;\n\n onChange({\n ...model,\n teacherInstructions,\n });\n };\n\n changeFeedback = (feedback) => {\n this.updateModel({ feedback });\n };\n\n onAddAlternateResponse = () => {\n const {\n model: { correctResponse },\n } = this.props;\n\n this.updateModel({\n correctResponse: (correctResponse || []).map((cr) => ({\n ...cr,\n alternateResponses: [...(cr.alternateResponses || []), []],\n })),\n });\n };\n\n onPromptChanged = (prompt) => this.updateModel({ prompt });\n\n onRemoveAlternateResponse = (index) => {\n const {\n model: { correctResponse },\n } = this.props;\n\n this.updateModel({\n correctResponse: (correctResponse || []).map((cr) => ({\n ...cr,\n alternateResponses: (cr.alternateResponses || []).filter((alt, altIndex) => altIndex !== index),\n })),\n });\n };\n\n countChoiceInCorrectResponse = (choice) => {\n const { model } = this.props;\n\n return countInAnswer(choice.id, model.correctResponse);\n };\n\n checkAllowMultiplePlacements = (allowMultiplePlacements, c) => {\n if (allowMultiplePlacements === multiplePlacements.enabled) {\n return 0;\n }\n\n if (allowMultiplePlacements === multiplePlacements.disabled) {\n return 1;\n }\n\n return c.categoryCount || 0;\n };\n\n isAlertModalOpened = () => {\n const { model } = this.props;\n const { maxChoicesPerCategory = 0 } = model || {};\n const maxChoices = getMaxCategoryChoices(model);\n // when maxChoicesPerCategory is set to 0, there is no limit so modal should not be opened\n return maxChoicesPerCategory !== 0 ? maxChoices > maxChoicesPerCategory : false;\n };\n\n onAlertModalCancel = () => {\n const { model } = this.props;\n const maxChoices = getMaxCategoryChoices(model);\n this.updateModel({ maxChoicesPerCategory: maxChoices });\n };\n\n render() {\n const { classes, configuration, imageSupport, model, uploadSoundSupport, onConfigurationChanged } = this.props;\n const {\n allowAlternate = {},\n allowMultiplePlacements = {},\n baseInputConfiguration = {},\n categoriesPerRow = {},\n choicesPosition = {},\n contentDimensions = {},\n feedback = {},\n lockChoiceOrder = {},\n maxImageHeight = {},\n maxImageWidth = {},\n maxPlacements = {},\n minCategoriesPerRow = 1,\n partialScoring = {},\n prompt = {},\n rationale = {},\n scoringType = {},\n settingsPanelDisabled,\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n withRubric = {},\n mathMlOptions = {},\n language = {},\n languageChoices = {},\n allowMaxAnswerChoices = {},\n } = configuration || {};\n const {\n allowAlternateEnabled,\n allowMaxChoicesPerCategory,\n errors,\n feedbackEnabled,\n maxChoicesPerCategory,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n extraCSSRules,\n } = model || {};\n const {\n prompt: promptError,\n rationale: rationaleError,\n teacherInstructions: teacherInstructionsError,\n } = errors || {};\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const config = model.config || {};\n config.choices = config.choices || { label: '', columns: 2 };\n\n const categories = buildCategories(model.categories || [], model.choices || [], model.correctResponse || []);\n\n const alternateResponses = buildAlternateResponses(\n model.categories || [],\n model.choices || [],\n model.correctResponse || [],\n );\n\n const choices = model.choices.map((c) => {\n c.correctResponseCount = this.countChoiceInCorrectResponse(c);\n // ensure categoryCount is set even though updatedModel hasn't been called\n c.categoryCount = this.checkAllowMultiplePlacements(model.allowMultiplePlacementsEnabled, c);\n return c;\n });\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const panelSettings = {\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n lockChoiceOrder: lockChoiceOrder.settings && toggle(lockChoiceOrder.label),\n categoriesPerRow:\n categoriesPerRow.settings &&\n numberField(categoriesPerRow.label, {\n label: categoriesPerRow.label,\n min: minCategoriesPerRow,\n max: 6,\n }),\n choicesPosition: choicesPosition.settings && radio(choicesPosition.label, ['below', 'above', 'left', 'right']),\n allowMultiplePlacementsEnabled:\n allowMultiplePlacements.settings &&\n dropdown(allowMultiplePlacements.label, [\n multiplePlacements.enabled,\n multiplePlacements.disabled,\n multiplePlacements.perChoice,\n ]),\n maxAnswerChoices:\n allowMaxAnswerChoices.settings &&\n numberField(allowMaxAnswerChoices.label, {\n label: '',\n min: choices?.length || 0,\n max: 30,\n }),\n allowMaxChoicesPerCategory: maxPlacements.settings && toggle(maxPlacements.label),\n maxChoicesPerCategory:\n allowMaxChoicesPerCategory === true &&\n numberField(maxPlacements.label, {\n label: '',\n min: 0,\n max: 30,\n }),\n promptEnabled: prompt.settings && toggle(prompt.label),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n allowAlternateEnabled: allowAlternate.settings && toggle(allowAlternate.label),\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n const isOpened = this.isAlertModalOpened();\n const alertMaxChoicesMsg = translator.t('translation:categorize:maxChoicesPerCategoryRestriction', {\n lng: model.language,\n maxChoicesPerCategory,\n });\n\n return (\n <IdProvider value={this.uid}>\n <layout.ConfigLayout\n extraCSSRules={extraCSSRules}\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n onChangeModel={this.updateModel}\n configuration={configuration}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n modal={\n <AlertDialog\n title={'Warning'}\n text={alertMaxChoicesMsg}\n open={isOpened}\n onClose={this.onAlertModalCancel}\n />\n }\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.inputContainer}>\n <EditableHtml\n className={classes.input}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n error={teacherInstructionsError}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(teacherInstructions?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {teacherInstructionsError && <div className={classes.errorText}>{teacherInstructionsError}</div>}\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.inputContainer}>\n <EditableHtml\n className={classes.input}\n markup={model.prompt || ''}\n onChange={this.onPromptChanged}\n imageSupport={imageSupport}\n error={promptError}\n nonEmpty={false}\n disableUnderline\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(prompt?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={maxImageWidth && maxImageWidth.prompt}\n maxImageHeight={maxImageHeight && maxImageHeight.prompt}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {promptError && <div className={classes.errorText}>{promptError}</div>}\n </InputContainer>\n )}\n\n <Categories\n imageSupport={imageSupport}\n uploadSoundSupport={uploadSoundSupport}\n model={model}\n categories={categories || []}\n onModelChanged={this.updateModel}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n configuration={configuration}\n defaultImageMaxWidth={defaultImageMaxWidth}\n defaultImageMaxHeight={defaultImageMaxHeight}\n mathMlOptions={mathMlOptions}\n />\n\n <Choices\n imageSupport={imageSupport}\n uploadSoundSupport={uploadSoundSupport}\n choices={choices}\n model={model}\n onModelChanged={this.updateModel}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n configuration={configuration}\n defaultImageMaxWidth={defaultImageMaxWidth}\n defaultImageMaxHeight={defaultImageMaxHeight}\n />\n\n {allowAlternateEnabled && (\n <Header\n className={classes.alternatesHeader}\n label=\"Alternate Responses\"\n buttonLabel=\"ADD AN ALTERNATE RESPONSE\"\n onAdd={this.onAddAlternateResponse}\n />\n )}\n {allowAlternateEnabled &&\n alternateResponses.map((categoriesList, index) => {\n return (\n <React.Fragment key={index}>\n <Header\n className={classes.alternatesHeader}\n variant={'subtitle1'}\n label=\"Alternate Response\"\n buttonLabel=\"REMOVE ALTERNATE RESPONSE\"\n onAdd={() => this.onRemoveAlternateResponse(index)}\n />\n <AlternateResponses\n altIndex={index}\n imageSupport={imageSupport}\n model={model}\n configuration={configuration}\n categories={categoriesList}\n onModelChanged={this.updateModel}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n />\n </React.Fragment>\n );\n })}\n\n {rationaleEnabled && (\n <InputContainer label={rationale.label} className={classes.inputContainer}>\n <EditableHtml\n className={classes.input}\n markup={model.rationale || ''}\n onChange={this.changeRationale}\n imageSupport={imageSupport}\n error={rationaleError}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(prompt?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.rationale) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rationale) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {rationaleError && <div className={classes.errorText}>{rationaleError}</div>}\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig feedback={model.feedback} onChange={this.changeFeedback} toolbarOpts={toolbarOpts} />\n )}\n </layout.ConfigLayout>\n </IdProvider>\n );\n }\n}\n\nconst styles = (theme) => ({\n alternatesHeader: {\n marginBottom: theme.spacing.unit * 2,\n },\n text: {\n paddingTop: theme.spacing.unit * 2,\n paddingBottom: theme.spacing.unit * 2,\n },\n inputContainer: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n title: {\n marginBottom: theme.spacing.unit * 4,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n});\n\nexport default withDragContext(withStyles(styles)(Design));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport Design from './design';\n\nexport class Main extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n configuration: PropTypes.object,\n className: PropTypes.string,\n onConfigurationChanged: PropTypes.func,\n model: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.object,\n uploadSoundSupport: PropTypes.object,\n };\n\n static defaultProps = {};\n\n render() {\n const { model, onModelChanged, configuration, onConfigurationChanged, imageSupport, uploadSoundSupport } =\n this.props;\n\n return (\n <Design\n imageSupport={imageSupport}\n uploadSoundSupport={uploadSoundSupport}\n title=\"Design\"\n model={model}\n configuration={configuration}\n onChange={onModelChanged}\n onConfigurationChanged={onConfigurationChanged}\n />\n );\n }\n}\nconst styles = () => ({});\n\nexport default withStyles(styles)(Main);\n","import { multiplePlacements } from './utils';\n\nexport default {\n model: {\n allowAlternateEnabled: true,\n allowMaxChoicesPerCategory: false,\n allowMultiplePlacementsEnabled: multiplePlacements.enabled,\n alternates: [],\n categories: [],\n categoriesPerRow: 2,\n choices: [],\n choicesLabel: '',\n choicesPosition: 'below',\n correctResponse: [],\n feedbackEnabled: false,\n lockChoiceOrder: true,\n maxAnswerChoices: 6,\n maxChoicesPerCategory: 0,\n partialScoring: true,\n promptEnabled: true,\n rationaleEnabled: true,\n rowLabels: [''],\n studentInstructionsEnabled: true,\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n minRowHeight: '80px',\n },\n configuration: {\n baseInputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n textAlign: { disabled: true },\n showParagraphs: { disabled: false },\n separateParagraphs: { disabled: true },\n },\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n enabled: true,\n },\n lockChoiceOrder: {\n settings: true,\n label: 'Lock Choice Order',\n },\n choicesPosition: {\n settings: true,\n label: 'Choices Position',\n },\n allowMultiplePlacements: {\n settings: true,\n label: 'Allow Multiple Placements',\n },\n maxPlacements: {\n settings: true,\n label: 'Max choices per category',\n },\n allowAlternate: {\n settings: true,\n label: 'Allow Alternate Correct Answers',\n },\n categoriesPerRow: {\n settings: true,\n label: 'Categories per row',\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\n },\n prompt: {\n settings: true,\n label: 'Prompt',\n required: false,\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n required: false,\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n settingsPanelDisabled: false,\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n required: false,\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n headers: {\n inputConfiguration: {\n audio: { disabled: true },\n video: { disabled: true },\n image: { disabled: false },\n },\n },\n rowLabels: {\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n },\n toolbarEditorPosition: {\n settings: false,\n label: 'Toolbar Editor Position',\n },\n maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n rowLabel: 200,\n categoryLabel: 260,\n choices: 240,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n rowLabel: 100,\n categoryLabel: 100,\n choices: 150,\n },\n withRubric: {\n settings: false,\n label: 'Add Rubric',\n },\n minCategoriesPerRow: 1,\n allowMaxAnswerChoices: {\n settings: true,\n label: 'Max answer choices',\n },\n mathMlOptions: {\n mmlOutput: false,\n mmlEditing: false,\n },\n language: {\n settings: false,\n label: 'Specify Language',\n enabled: false,\n },\n languageChoices: {\n label: 'Language Choices',\n options: [],\n },\n },\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport Main from './main';\n\nimport defaults from './defaults';\n\nexport default class CategorizeConfigure extends HTMLElement {\n static createDefaultModel = (model = {}) => ({\n ...defaults.model,\n ...model,\n });\n\n // PD-2960: make sure we don't have alternates in model or possibility to add them (temporary solution)\n // this function is used in controller, too\n static disableAlternateResponses = (m) => {\n let { correctResponse } = m || {};\n correctResponse = correctResponse || [];\n const mappedCorrectResponse = correctResponse.map((cr) => {\n const { alternateResponses, ...response } = cr;\n return response;\n });\n return {\n ...m,\n correctResponse: mappedCorrectResponse,\n allowAlternateEnabled: false,\n };\n };\n\n constructor() {\n super();\n this._model = CategorizeConfigure.createDefaultModel();\n this._configuration = defaults.configuration;\n }\n\n set model(m) {\n this._model = CategorizeConfigure.createDefaultModel(m);\n\n if (m.choices && m.choices.length >= m.maxAnswerChoices) {\n this._model.maxAnswerChoices = m.choices.length;\n console.warn(\"Max Answer Choices can't be less than choices length!\");\n }\n\n this.render();\n }\n\n set configuration(c) {\n const newConfiguration = {\n ...defaults.configuration,\n ...c,\n };\n\n this._configuration = newConfiguration;\n\n // if language:enabled is true, then the corresponding default item model should include a language value;\n // if it is false, then the language field should be omitted from the item model.\n // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,\n // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).\n if (newConfiguration?.language?.enabled) {\n if (newConfiguration?.languageChoices?.options?.length) {\n this._model.language = newConfiguration?.languageChoices.options[0].value;\n }\n } else if (newConfiguration.language.settings && this._model.language) {\n this._configuration.language.enabled = true;\n\n if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {\n this._configuration.languageChoices.options = [];\n }\n\n // check if the language is already included in the languageChoices.options array\n // and if not, then add it.\n if (!this._configuration.languageChoices.options.find((option) => option.value === this._model.language)) {\n this._configuration.languageChoices.options.push({\n value: this._model.language,\n label: this._model.language,\n });\n }\n } else {\n delete this._model.language;\n }\n\n this.render();\n }\n\n onModelChanged(m) {\n this._model = m;\n\n this.render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model, false));\n }\n\n onConfigurationChanged(c) {\n this._configuration = c;\n this.render();\n }\n\n connectedCallback() {\n this.render();\n }\n\n /**\n *\n * @param {done, progress, file} handler\n */\n insertImage(handler) {\n this.dispatchEvent(new InsertImageEvent(handler));\n }\n\n onDeleteImage(src, done) {\n this.dispatchEvent(new DeleteImageEvent(src, done));\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n render() {\n const el = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n imageSupport: {\n add: this.insertImage.bind(this),\n delete: this.onDeleteImage.bind(this),\n },\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n\n ReactDOM.render(el, this, () => {\n renderMath(this);\n });\n }\n}\n"],"names":["getPluginProps","props","baseInputConfiguration","setPrototypeOf","require$$0","setStatic_1","_default","_interopRequireDefault","setDisplayName_1","require$$1","getDisplayName_1","wrapDisplayName_1","shouldUpdate_1","_react","require$$2","_setDisplayName","require$$3","_wrapDisplayName","require$$4","shallowEqual","_shallowEqual","pure_1","createSvgIcon_1","default_1","_createSvgIcon","InputHeader","React","Component","constructor","componentDidMount","focusedEl","index","inputRef","focus","render","onChange","configuration","label","classes","className","deleteFocusedEl","disabled","imageSupport","toolbarOpts","spellCheck","error","maxImageWidth","maxImageHeight","uploadSoundSupport","mathMlOptions","headers","classNames","inputHeader","ref","editor","inputConfiguration","language","propTypes","PropTypes","object","isRequired","string","func","bool","number","onDelete","shape","add","delete","defaultProps","styles","theme","flex","paddingBottom","spacing","unit","maxWidth","iconButtonRoot","width","height","display","justifyContent","withStyles","RawAddButton","onClick","addButton","AddButton","DeleteButton","deleteButton","margin","padding","ChoicePreview","choice","alternateResponseIndex","category","choiceIndex","choicePreview","Choice","overflowChoice","content","breakWord","customColor","RemoveCircleOutlineIcon","position","overflow","right","top","wordBreak","color","tertiary","_classCallCheck","_defineProperties","_createClass","_defineProperty","_typeof","reactIsModule","_jsx","ALLOWED_SPEC_METHODS","log","debug","Helper","helper","alignItems","fontSize","typography","palette","common","black","Previews","choices","onDeleteChoice","map","c","array","DroppablePlaceHolder","isOver","connectDropTarget","droppablePlaceholder","PlaceHolder","placeHolder","length","onDropChoice","onMoveChoice","categoryId","minHeight","Styled","spec","drop","monitor","item","getItem","from","choiceId","canDrop","WithTarget","DropTarget","uid","connect","dropTarget","withUid","Category","changeLabel","l","isDuplicated","onAddChoice","isCategoryHeaderDisabled","duplicateError","categoryHeader","__html","errorText","id","actions","defaultImageMaxHeight","defaultImageMaxWidth","paddingTop","header","minWidth","border","main","Header","onAdd","buttonLabel","info","buttonDisabled","variant","tooltip","titleContainer","title","any","marginBottom","whiteSpace","generateValidationMessage","config","minChoices","maxChoices","maxCategories","validationMessage","multiplePlacements","enabled","perChoice","maxLength","reduce","max","arr","Math","getMaxCategoryChoices","model","correctResponse","correctRes","correctRespLength","alternates","alternateResponses","rowLabel","gridColumn","rowLabelHolder","RowLabel","categoriesPerRow","markup","rowLabels","categories","categoriesHolder","gridRowGap","gridColumnGap","row","gridTemplateColumns","marginTop","Categories","state","oldCategories","allowAlternateEnabled","utils","firstAvailableIndex","a","data","addRowLabel","push","setState","onModelChanged","concat","findIndex","splice","removeCategory","change","addChoiceToCategory","addedChoice","maxChoicesPerCategory","find","moveChoiceToCategory","undefined","categoryCount","verifyAllowMultiplePlacements","maxCategoryChoices","deleteChoiceFromCategory","removeChoiceFromCategory","moveChoice","to","changeRowLabel","val","newRowLabels","domNode","ReactDOM","findDOMNode","renderMath","e","console","componentDidUpdate","errors","associationError","categoriesError","categoriesErrors","holderStyle","Info","marginLeft","hasRowLabel","rowIndex","categoryLabel","AlternateResponses","altIndex","forEach","acc","currentValue","foundIndex","filter","alternateIndex","moveChoiceToAlternate","removeChoiceFromAlternate","duplicateAlternate","canDrag","lockChoiceOrder","count","correctResponseCount","changeContent","changeCategoryCount","isCheckboxShown","allowMultiplePlacements","connectDragSource","connectDragPreview","showRemoveAfterPlacing","draggable","dragHandle","dragDisabled","DragHandle","cursor","StyledChoice","beginDrag","out","endDrag","didDrop","onRemoveChoice","specTarget","rearrangeChoices","flow","DragSource","dragSource","dragPreview","isDragging","Config","target","choicesLabel","value","shrink","Choices","changeChoice","h","allChoicesHaveCount","Array","isArray","every","addChoice","oldChoices","maxAnswerChoices","deleteChoice","removeAllChoices","indexFrom","indexTo","allowMultiplePlacementsEnabled","choicesError","choicesErrors","choiceHolderStyle","addChoiceButtonTooltip","choiceHolder","buildCategories","clonedCategories","cloneDeep","cr","Object","assign","getChoices","cat","alt","ch","buildAlternateResponses","mostAlternates","mostAlt","alternatesArray","fill","catIndex","currentCategory","translator","Translator","dropdown","Panel","toggle","radio","numberField","settings","Provider","IdProvider","Design","updateModel","updatedModel","checkAllowMultiplePlacements","ensureNoExtraChoicesInAnswer","ensureNoExtraChoicesInAlternate","allowMaxChoicesPerCategory","changeRationale","rationale","changeTeacherInstructions","teacherInstructions","changeFeedback","feedback","onAddAlternateResponse","onPromptChanged","prompt","onRemoveAlternateResponse","countChoiceInCorrectResponse","countInAnswer","isAlertModalOpened","onAlertModalCancel","generateId","onConfigurationChanged","allowAlternate","choicesPosition","contentDimensions","maxPlacements","minCategoriesPerRow","partialScoring","scoringType","settingsPanelDisabled","studentInstructions","withRubric","languageChoices","allowMaxAnswerChoices","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","extraCSSRules","promptError","rationaleError","teacherInstructionsError","columns","panelSettings","min","options","panelProperties","studentInstructionsEnabled","rubricEnabled","isOpened","alertMaxChoicesMsg","t","lng","Settings","Properties","InputContainer","inputContainer","input","alternatesHeader","categoriesList","text","withDragContext","Main","minRowHeight","audio","video","image","textAlign","showParagraphs","separateParagraphs","required","mmlOutput","mmlEditing","CategorizeConfigure","HTMLElement","_model","createDefaultModel","_configuration","defaults","m","warn","newConfiguration","option","dispatchEvent","ModelUpdatedEvent","connectedCallback","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","el","createElement","bind","disableAlternateResponses","mappedCorrectResponse","response"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,MAAMA,cAAc,GAAG,CAACC,KAAK,GAAG,EAAT,EAAaC,sBAAsB,GAAG,EAAtC,KAAA,QAAA,CAAA,EAAA,EACzBA,sBADyB,EAEzBD,KAFyB,CAAvB;;;;;;;ACAP,SAAS,sBAAsB,CAAC,GAAG,EAAE;AACrC,EAAE,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,GAAG;AACvC,IAAI,SAAS,EAAE,GAAG;AAClB,GAAG,CAAC;AACJ,CAAC;AACD;AACA,MAAA,CAAA,OAAA,GAAiB,sBAAsB,EAAE,MAA4B,CAAA,OAAA,CAAA,UAAA,GAAA,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAA;;;;;;;;;;;;;;ACNrH,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE;AAC/B,EAAE,MAAiB,CAAA,OAAA,GAAA,eAAe,GAAG,MAAM,CAAC,cAAc,IAAI,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE;AAC7F,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;AACpB,IAAI,OAAO,CAAC,CAAC;AACb,GAAG,EAAE,MAAA,CAAA,OAAA,CAAA,UAAA,GAA4B,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;AAClF,EAAE,OAAO,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/B,CAAC;AACD;AACA,MAAA,CAAA,OAAA,GAAiB,eAAe,EAAE,MAA4B,CAAA,OAAA,CAAA,UAAA,GAAA,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAA;;;;ACR9G,IAAIE,gBAAc,GAAGC,sBAA8B,CAAC;AACpD;AACA,SAAS,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE;AAC9C,EAAE,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC3D,EAAE,QAAQ,CAAC,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC;AAC5C,EAAED,gBAAc,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACvC,CAAC;AACD;AACA,MAAA,CAAA,OAAA,GAAiB,cAAc,EAAE,MAA4B,CAAA,OAAA,CAAA,UAAA,GAAA,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAA;;;;;;;ACN7GE,WAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,WAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,SAAS,GAAG,SAAS,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE;AAC/C,EAAE,OAAO,UAAU,aAAa,EAAE;AAClC;AACA,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC/B;AACA;AACA,IAAI,OAAO,aAAa,CAAC;AACzB,GAAG,CAAC;AACJ,CAAC,CAAC;AACF;AACA,IAAIC,UAAQ,GAAG,SAAS,CAAC;AACzBD,WAAA,CAAA,OAAe,GAAGC,UAAQ;;ACd1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACAI,gBAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,gBAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,UAAU,GAAGD,wBAAsB,CAACE,WAAsB,CAAC,CAAC;AAChE;AACA,IAAI,cAAc,GAAG,SAAS,cAAc,CAAC,WAAW,EAAE;AAC1D,EAAE,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;AAC7D,CAAC,CAAC;AACF;AACA,IAAIH,UAAQ,GAAG,cAAc,CAAC;AAC9BE,gBAAA,CAAA,OAAe,GAAGF,UAAQ;;;;;;ACZ1BI,gBAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,gBAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,cAAc,GAAG,SAAS,cAAc,CAAC,SAAS,EAAE;AACxD,EAAE,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACrC,IAAI,OAAO,SAAS,CAAC;AACrB,GAAG;AACH;AACA,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,IAAI,OAAO,SAAS,CAAC;AACrB,GAAG;AACH;AACA,EAAE,OAAO,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,IAAI,IAAI,WAAW,CAAC;AAChE,CAAC,CAAC;AACF;AACA,IAAIJ,UAAQ,GAAG,cAAc,CAAC;AAC9BI,gBAAA,CAAA,OAAe,GAAGJ,UAAQ;;AChB1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACAO,iBAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,iBAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,eAAe,GAAGJ,wBAAsB,CAACE,gBAA2B,CAAC,CAAC;AAC1E;AACA,IAAI,eAAe,GAAG,SAAS,eAAe,CAAC,aAAa,EAAE,OAAO,EAAE;AACvE,EAAE,OAAO,OAAO,GAAG,GAAG,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,GAAG,CAAC;AAC3E,CAAC,CAAC;AACF;AACA,IAAIH,UAAQ,GAAG,eAAe,CAAC;AAC/BK,iBAAA,CAAA,OAAe,GAAGL,UAAQ;;ACZ1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACAQ,cAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,cAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,eAAe,GAAGL,wBAAsB,CAACE,qBAA+C,CAAC,CAAC;AAC9F;AACA,IAAII,QAAM,GAAGC,KAAgB,CAAC;AAC9B;AACA,IAAIC,iBAAe,GAAGR,wBAAsB,CAACS,gBAA2B,CAAC,CAAC;AAC1E;AACA,IAAIC,kBAAgB,GAAGV,wBAAsB,CAACW,iBAA4B,CAAC,CAAC;AAC5E;AACA,IAAI,YAAY,GAAG,SAAS,YAAY,CAAC,IAAI,EAAE;AAC/C,EAAE,OAAO,UAAU,aAAa,EAAE;AAClC,IAAI,IAAI,OAAO,GAAG,IAAIL,QAAM,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;AAC3D;AACA,IAAI,IAAI,YAAY;AACpB;AACA,IAAI,UAAU,UAAU,EAAE;AAC1B,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;AAC7D;AACA,MAAM,SAAS,YAAY,GAAG;AAC9B,QAAQ,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC;AACzD,OAAO;AACP;AACA,MAAM,IAAI,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC;AAC1C;AACA,MAAM,MAAM,CAAC,qBAAqB,GAAG,SAAS,qBAAqB,CAAC,SAAS,EAAE;AAC/E,QAAQ,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAC3C,OAAO,CAAC;AACR;AACA,MAAM,MAAM,CAAC,MAAM,GAAG,SAAS,MAAM,GAAG;AACxC,QAAQ,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnC,OAAO,CAAC;AACR;AACA,MAAM,OAAO,YAAY,CAAC;AAC1B,KAAK,CAACA,QAAM,CAAC,SAAS,CAAC,CAAC;AACxB;AACA,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC/C,MAAM,OAAO,IAAIE,iBAAe,CAAC,OAAO,EAAE,IAAIE,kBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;AACtH,KAAK;AACL;AACA,IAAI,OAAO,YAAY,CAAC;AACxB,GAAG,CAAC;AACJ,CAAC,CAAC;AACF;AACA,IAAIX,UAAQ,GAAG,YAAY,CAAC;AAC5BM,cAAA,CAAA,OAAe,GAAGN,UAAQ;;;;;;;;;;;;;ACrC1B;AACA,IAAI,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACrD;AACA;AACA;AACA;AACA;AACA,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;AAClB;AACA,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;AACf;AACA;AACA;AACA,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACjD,GAAG,MAAM;AACT;AACA,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,SAASa,cAAY,CAAC,IAAI,EAAE,IAAI,EAAE;AAClC,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;AACtB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH;AACA,EAAE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE;AAC9F,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH;AACA,EAAE,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,EAAE,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC;AACA,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE;AACrC,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH;AACA;AACA,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACzC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;AACrF,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,IAAI,CAAC;AACd,CAAC;AACD;AACA,IAAA,cAAc,GAAGA,cAAY;;AC9D7B,IAAIZ,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACAe,cAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,cAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAIC,eAAa,GAAGb,wBAAsB,CAACE,cAAgC,CAAC,CAAC;AAC7E;AACA,IAAIH,UAAQ,GAAGc,eAAa,CAAC,OAAO,CAAC;AACrCD,cAAA,CAAA,OAAe,GAAGb,UAAQ;;ACR1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACAiB,MAAO,CAAA,UAAA,GAAc,IAAI,CAAC;AACXA,MAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAI,aAAa,GAAGd,wBAAsB,CAACE,cAAyB,CAAC,CAAC;AACtE;AACA,IAAI,aAAa,GAAGF,wBAAsB,CAACO,cAAyB,CAAC,CAAC;AACtE;AACA,IAAI,eAAe,GAAGP,wBAAsB,CAACS,gBAA2B,CAAC,CAAC;AAC1E;AACA,IAAI,gBAAgB,GAAGT,wBAAsB,CAACW,iBAA4B,CAAC,CAAC;AAC5E;AACA,IAAI,IAAI,GAAG,SAAS,IAAI,CAAC,aAAa,EAAE;AACxC,EAAE,IAAI,GAAG,GAAG,IAAI,aAAa,CAAC,OAAO,EAAE,UAAU,KAAK,EAAE,SAAS,EAAE;AACnE,IAAI,OAAO,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AACzD,GAAG,CAAC,CAAC;AACL;AACA,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC7C,IAAI,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;AAClH,GAAG;AACH;AACA,EAAE,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC;AAC5B,CAAC,CAAC;AACF;AACA,IAAIZ,UAAQ,GAAG,IAAI,CAAC;AACpBe,MAAA,CAAA,OAAe,GAAGf,UAAQ;;AC1B1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAACkB,eAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACYA,eAAA,CAAA,OAAA,GAAG,KAAK,EAAE;AACzB;AACA,IAAIT,QAAM,GAAGN,wBAAsB,CAACE,KAAgB,CAAC,CAAC;AACtD;AACA,IAAI,KAAK,GAAGF,wBAAsB,CAACO,MAAyB,CAAC,CAAC;AAC9D;AACA,IAAI,QAAQ,GAAGP,wBAAsB,CAAC,UAAoC,CAAC,CAAC;AAC5E;AACA,SAAS,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE;AAC1C,EAAE,IAAI,IAAI,GAAG,SAAS,IAAI,CAAC,KAAK,EAAE;AAClC,IAAI,OAAOM,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACvE,GAAG,CAAC;AACJ;AACA,EAAE,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AACpD,EAAE,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;AAC3B,EAAE,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,IAAIP,UAAQ,GAAG,aAAa,CAAC;AAC7BgB,eAAA,CAAA,OAAe,GAAGhB,UAAQ;;AC1B1B,IAAIC,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,IAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAemB,WAAA,GAAA,IAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAIV,QAAM,GAAGN,wBAAsB,CAACE,KAAgB,CAAC,CAAC;AACtD;AACA,IAAIe,gBAAc,GAAGjB,wBAAsB,CAACO,eAAgC,CAAC,CAAC;AAC9E;AACA,IAAIR,UAAQ,GAAG,IAAIkB,gBAAc,CAAC,OAAO,EAAEX,QAAM,CAAC,OAAO,CAAC,aAAa,CAACA,QAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AAC5I,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,CAAC,EAAE,eAAe;AACpB,CAAC,CAAC,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACzC,EAAE,CAAC,EAAE,kGAAkG;AACvG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACb;AACAU,WAAA,GAAA,IAAA,CAAA,OAAe,GAAGjB,UAAQ;;ACbnB,MAAMmB,WAAN,SAA0BC,KAAK,CAACC,SAAhC,CAA0C;AA6B/CC,EAAAA,WAAW,CAAC3B,KAAD,EAAQ;AACjB,IAAA,KAAA,CAAMA,KAAN,CAAA,CAAA;AACD,GAAA;;AAED4B,EAAAA,iBAAiB,GAAG;AAClB,IAAM,MAAA;AAAEC,MAAAA,SAAF;AAAaC,MAAAA,KAAAA;AAAb,KAAA,GAAuB,KAAK9B,KAAlC,CAAA;;AACA,IAAA,IAAI6B,SAAS,IAAIC,KAAb,IAAsBD,SAAS,KAAKC,KAAxC,EAA+C;AAC7C,MAAKC,IAAAA,CAAAA,QAAL,CAAcC,KAAd,CAAoB,KAApB,EAA2B,IAA3B,EAAiC,IAAjC,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AAEDC,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJC,MAAAA,QADI;AAEJC,MAAAA,aAFI;AAGJC,MAAAA,KAHI;AAIJC,MAAAA,OAJI;AAKJC,MAAAA,SALI;AAMJC,MAAAA,eANI;AAOJC,MAAAA,QAPI;AAQJC,MAAAA,YARI;AASJC,MAAAA,WATI;AAUJC,MAAAA,UAVI;AAWJC,MAAAA,KAXI;AAYJC,MAAAA,aAZI;AAaJC,MAAAA,cAbI;AAcJC,MAAAA,kBAdI;AAeJC,MAAAA,aAAa,GAAG,EAAA;AAfZ,KAAA,GAgBF,KAAKhD,KAhBT,CAAA;AAkBA,IAAM,MAAA;AAAEiD,MAAAA,OAAF;AAAWhD,MAAAA,sBAAAA;AAAX,KAAA,GAAsCkC,aAA5C,CAAA;AAEA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEe,UAAU,CAACb,OAAO,CAACc,WAAT,EAAsBb,SAAtB,CAAA;AAA1B,KAAA,eACE,oBAAC,YAAD,EAAA;AACE,MAAA,YAAY,EAAEG,YADhB;AAEE,MAAA,QAAQ,EAAED,QAFZ;AAGE,MAAA,GAAG,EAAGY,GAAD,IAAU,IAAKrB,CAAAA,QAAL,GAAgBqB,GAHjC;AAIE,MAAA,gBAAgB,EAJlB,IAAA;AAKE,MAAA,KAAK,EAAE,OALT;AAME,MAAA,MAAM,EAAEhB,KANV;AAOE,MAAA,QAAQ,EAAEF,QAPZ;AAQE,MAAA,SAAS,EAAEG,OAAO,CAACgB,MARrB;AASE,MAAA,WAAW,EAAEtD,cAAc,CAACkD,OAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEK,kBAAV,EAA8BrD,sBAA9B,CAT7B;AAUE,MAAA,WAAW,EAAEyC,WAVf;AAWE,MAAA,UAAU,EAAEC,UAXd;AAYE,MAAA,KAAK,EAAEC,KAZT;AAaE,MAAA,aAAa,EAAEC,aAbjB;AAcE,MAAA,cAAc,EAAEC,cAdlB;AAeE,MAAA,kBAAkB,EAAEC,kBAftB;AAgBE,MAAA,uBAAuB,EAAE,CAAC;AAAEQ,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAhB3B;AAiBE,MAAA,MAAM,EAAE,MAAM;AACZhB,QAAAA,eAAe,IAAIA,eAAe,EAAlC,CAAA;AACD,OAnBH;AAoBE,MAAA,aAAa,EAAES,aAAAA;AApBjB,KAAA,CADF,CADF,CAAA;AA0BD,GAAA;;AAvF8C,CAAA;AAApCxB,YACJgC,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAFJ;AAGjBzB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAAV,CAAiBC,UAHf;AAIjBpB,EAAAA,eAAe,EAAEkB,SAAS,CAACI,IAJV;AAKjBrB,EAAAA,QAAQ,EAAEiB,SAAS,CAACK,IALH;AAMjBjC,EAAAA,SAAS,EAAE4B,SAAS,CAACM,MANJ;AAOjBjC,EAAAA,KAAK,EAAE2B,SAAS,CAACM,MAPA;AAQjB3B,EAAAA,KAAK,EAAEqB,SAAS,CAACG,MARA;AASjBf,EAAAA,aAAa,EAAEY,SAAS,CAACC,MATR;AAUjBZ,EAAAA,cAAc,EAAEW,SAAS,CAACC,MAVT;AAWjBxB,EAAAA,QAAQ,EAAEuB,SAAS,CAACI,IAXH;AAYjBG,EAAAA,QAAQ,EAAEP,SAAS,CAACI,IAZH;AAajBpB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CAbG;AAiBjBZ,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAjBH;AAqBjBjB,EAAAA,WAAW,EAAEe,SAAS,CAACC,MArBN;AAsBjBd,EAAAA,KAAK,EAAEa,SAAS,CAACG,MAtBA;AAuBjBjB,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AAvBL;AADRtC,YA2BJ4C,eAAe;;AA8DxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzBjB,EAAAA,MAAM,EAAE;AACNkB,IAAAA,IAAI,EAAE,GADA;AAENC,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAFvB;AAGNC,IAAAA,QAAQ,EAAE,MAAA;AAHJ,GADiB;AAMzBC,EAAAA,cAAc,EAAE;AACdC,IAAAA,KAAK,EAAE,MADO;AAEdC,IAAAA,MAAM,EAAE,MAAA;AAFM,GANS;AAUzB3B,EAAAA,WAAW,EAAE;AACX4B,IAAAA,OAAO,EAAE,MADE;AAEXC,IAAAA,cAAc,EAAE,eAAA;AAFL,GAAA;AAVY,CAAZ,CAAf,CAAA;;AAeA,oBAAeC,UAAU,CAACZ,QAAD,CAAV,CAAmB7C,WAAnB,CAAf;;ACxGO,MAAM0D,YAAN,SAA2BzD,KAAK,CAACC,SAAjC,CAA2C;AAahDO,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEI,MAAAA,OAAF;AAAWC,MAAAA,SAAX;AAAsBF,MAAAA,KAAtB;AAA6B+C,MAAAA,OAA7B;AAAsC3C,MAAAA,QAAAA;AAAtC,KAAA,GAAmD,KAAKxC,KAA9D,CAAA;AACA,IAAA,oBACE,oBAAC,MAAD,EAAA;AACE,MAAA,OAAO,EAAEmF,OADX;AAEE,MAAA,QAAQ,EAAE3C,QAFZ;AAGE,MAAA,SAAS,EAAEU,UAAU,CAACb,OAAO,CAAC+C,SAAT,EAAoB9C,SAApB,CAHvB;AAIE,MAAA,IAAI,EAAC,OAJP;AAKE,MAAA,OAAO,EAAC,WALV;AAME,MAAA,KAAK,EAAC,SAAA;AANR,KAAA,EAQGF,KARH,CADF,CAAA;AAYD,GAAA;;AA3B+C,CAAA;AAArC8C,aACJ1B,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAFJ;AAGjBxB,EAAAA,KAAK,EAAEqB,SAAS,CAACG,MAHA;AAIjBuB,EAAAA,OAAO,EAAE1B,SAAS,CAACI,IAJF;AAKjBrB,EAAAA,QAAQ,EAAEiB,SAAS,CAACK,IAAAA;AALH;AADRoB,aASJd,eAAe;AACpBhC,EAAAA,KAAK,EAAE,KAAA;AADa;;AAoBxB,MAAMiC,QAAM,GAAIC,KAAD,KAAY;AACzBc,EAAAA,SAAS,EAAE;AACTN,IAAAA,MAAM,EAAER,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AADpB,GAAA;AADc,CAAZ,CAAf,CAAA;;AAMA,MAAMW,SAAS,GAAGJ,UAAU,CAACZ,QAAD,CAAV,CAAmBa,YAAnB,CAAlB,CAAA;AAEA,MAAMI,YAAY,GAAGL,UAAU,CAAC,OAAO;AACrCM,EAAAA,YAAY,EAAE;AACZC,IAAAA,MAAM,EAAE,CADI;AAEZC,IAAAA,OAAO,EAAE,CAAA;AAFG,GAAA;AADuB,CAAP,CAAD,CAAV,CAKjB,CAAC;AAAEpD,EAAAA,OAAF;AAAWD,EAAAA,KAAX;AAAkB+C,EAAAA,OAAlB;AAA2B3C,EAAAA,QAAAA;AAA3B,CAAD,kBACF,oBAAC,MAAD,EAAA;AAAQ,EAAA,SAAS,EAAEH,OAAO,CAACkD,YAA3B;AAAyC,EAAA,OAAO,EAAEJ,OAAlD;AAA2D,EAAA,IAAI,EAAC,OAAhE;AAAwE,EAAA,KAAK,EAAC,SAA9E;AAAwF,EAAA,QAAQ,EAAE3C,QAAAA;AAAlG,CACGJ,EAAAA,KADH,CANmB,CAArB;;;;AC1CA,IAAI9B,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,mBAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAemB,WAAA,GAAA,mBAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAIV,QAAM,GAAGN,wBAAsB,CAACE,KAAgB,CAAC,CAAC;AACtD;AACA,IAAIe,gBAAc,GAAGjB,wBAAsB,CAACO,eAAgC,CAAC,CAAC;AAC9E;AACA,IAAIR,UAAQ,GAAG,IAAIkB,gBAAc,CAAC,OAAO,EAAEX,QAAM,CAAC,OAAO,CAAC,aAAa,CAACA,QAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AAC5I,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,CAAC,EAAE,eAAe;AACpB,CAAC,CAAC,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACzC,EAAE,CAAC,EAAE,6IAA6I;AAClJ,CAAC,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;AAC5B;AACAU,WAAA,GAAA,mBAAA,CAAA,OAAe,GAAGjB,UAAQ;;ACVnB,MAAMqF,aAAN,SAA4BjE,KAAK,CAACC,SAAlC,CAA4C;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAYjDyC,IAAAA,CAAAA,MAZiD,GAYxC,MAAM;AACb,MAAM,MAAA;AAAEH,QAAAA,QAAF;AAAY2B,QAAAA,MAAAA;AAAZ,OAAA,GAAuB,KAAK3F,KAAlC,CAAA;AACAgE,MAAAA,QAAQ,CAAC2B,MAAD,CAAR,CAAA;AACD,KAfgD,CAAA;AAAA,GAAA;;AAiBjD1D,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAE2D,MAAAA,sBAAF;AAA0BC,MAAAA,QAA1B;AAAoCxD,MAAAA,OAApC;AAA6CC,MAAAA,SAA7C;AAAwDqD,MAAAA,MAAxD;AAAgEG,MAAAA,WAAAA;AAAhE,KAAA,GAAgF,KAAK9F,KAA3F,CAAA;AACA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEkD,UAAU,CAACb,OAAO,CAAC0D,aAAT,EAAwBzD,SAAxB,CAAA;AAA1B,KACGqD,EAAAA,MAAM,gBACL,KAAA,CAAA,aAAA,CAACK,QAAD,EAAA;AACE,MAAA,sBAAsB,EAAEJ,sBAD1B;AAEE,MAAA,QAAQ,EAAEC,QAFZ;AAGE,MAAA,MAAM,EAAEF,MAHV;AAIE,MAAA,WAAW,EAAEG,WAJf;AAKE,MAAA,SAAS,EAAEzD,OAAO,CAAC4D,cALrB;AAME,MAAA,cAAc,EAAE,MAAM,IAAA,CAAK9B,MAAL,EAAA;AANxB,KAAA,eAQE,oBAAC,WAAD,EAAA;AAAa,MAAA,IAAI,EAAEwB,MAAF,IAAEA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEO,OAA3B;AAAoC,MAAA,SAAS,EAAG,CAAE7D,EAAAA,OAAO,CAAC8D,SAAU,CAAA,CAAA;AAApE,KARF,CAAA,eASE,oBAAC,UAAD,EAAA;AACE,MAAA,YAAA,EAAW,QADb;AAEE,MAAA,SAAS,EAAEjD,UAAU,CAACb,OAAO,CAAC8B,MAAT,EAAiB9B,OAAO,CAAC+D,WAAzB,CAFvB;AAGE,MAAA,OAAO,EAAE,IAAKjC,CAAAA,MAAAA;AAHhB,KAAA,eAKE,oBAACkC,WAAD,EAAA,IAAA,CALF,CATF,CADK,GAkBH,IAnBN,CADF,CAAA;AAuBD,GAAA;;AA1CgD,CAAA;AAAtCX,cACJlC,YAAY;AACjBoC,EAAAA,sBAAsB,EAAEnC,SAAS,CAACM,MADjB;AAEjB8B,EAAAA,QAAQ,EAAEpC,SAAS,CAACC,MAFH;AAGjBrB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAHT;AAIjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAJJ;AAKjB+B,EAAAA,MAAM,EAAElC,SAAS,CAACC,MAAV,CAAiBC,UALR;AAMjBmC,EAAAA,WAAW,EAAErC,SAAS,CAACM,MANN;AAOjBC,EAAAA,QAAQ,EAAEP,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAPR;AADR+B,cAUJtB,eAAe;;AAkCxB,MAAMC,QAAM,GAAG,OAAO;AACpB0B,EAAAA,aAAa,EAAE;AACbO,IAAAA,QAAQ,EAAE,UADG;AAEbC,IAAAA,QAAQ,EAAE,MAAA;AAFG,GADK;AAKpBpC,EAAAA,MAAM,EAAE;AACNmC,IAAAA,QAAQ,EAAE,UADJ;AAENE,IAAAA,KAAK,EAAE,CAFD;AAGNC,IAAAA,GAAG,EAAE,CAAA;AAHC,GALY;AAUpBN,EAAAA,SAAS,EAAE;AACTxB,IAAAA,QAAQ,EAAE,KADD;AAET+B,IAAAA,SAAS,EAAE,WAAA;AAFF,GAVS;AAcpBN,EAAAA,WAAW,EAAE;AACXO,IAAAA,KAAK,EAAG,CAAA,EAAEA,KAAK,CAACC,QAAN,EAAiB,CAAA,WAAA,CAAA;AADhB,GAdO;AAiBpBX,EAAAA,cAAc,EAAE;AACdM,IAAAA,QAAQ,EAAE,MAAA;AADI,GAAA;AAjBI,CAAP,CAAf,CAAA;;AAqBA,sBAAetB,UAAU,CAACZ,QAAD,CAAV,CAAmBqB,aAAnB,CAAf;;AC1EA;AACA;AACA;AACA;AACO,IAAI,UAAU,GAAG,aAAa,CAAC;AACtC,EAAE,eAAe,EAAE,SAAS;AAC5B,CAAC,CAAC;;ACPF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE;AACtC,EAAE,KAAK,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE;AAC9G,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AACrC,GAAG;AACH;AACA,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC7C,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE;AAC9B,MAAM,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AACtE,KAAK;AACL,GAAG;AACH;AACA,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,IAAI,IAAI,KAAK,CAAC;AACd;AACA,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE;AAC9B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,oEAAoE,GAAG,6DAA6D,CAAC,CAAC;AAC9J,KAAK,MAAM;AACX,MAAM,IAAI,QAAQ,GAAG,CAAC,CAAC;AACvB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY;AAC1D,QAAQ,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAChC,OAAO,CAAC,CAAC,CAAC;AACV,MAAM,KAAK,CAAC,IAAI,GAAG,qBAAqB,CAAC;AACzC,KAAK;AACL;AACA,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;AAC1B;AACA,IAAI,MAAM,KAAK,CAAC;AAChB,GAAG;AACH;;ACtCA,SAASmB,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAGjN,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAC7B,IAAI,mBAAmB,GAAG,KAAK,CAAC;AACzB,IAAI,qBAAqB,gBAAgB,YAAY;AAC5D,EAAE,SAAS,qBAAqB,CAAC,OAAO,EAAE;AAC1C,IAAIH,iBAAe,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AACjD;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;AACrD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;AAC5C;AACA,IAAI,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;AAChD,GAAG;AACH;AACA,EAAED,cAAY,CAAC,qBAAqB,EAAE,CAAC;AACvC,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,CAAC,QAAQ,EAAE;AAC/C,MAAM,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC/B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,GAAG;AACnC,MAAM,OAAO,IAAI,CAAC,QAAQ,CAAC;AAC3B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,SAAS,CAAC,CAAC,gBAAgB,EAAE,2EAA2E,GAAG,8EAA8E,CAAC,CAAC;AACjM;AACA,MAAM,IAAI;AACV,QAAQ,gBAAgB,GAAG,IAAI,CAAC;AAChC,QAAQ,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACjE,OAAO,SAAS;AAChB,QAAQ,gBAAgB,GAAG,KAAK,CAAC;AACjC,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,KAAK,EAAE,SAAS,UAAU,GAAG;AACjC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC1B,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP;AACA,MAAM,SAAS,CAAC,CAAC,mBAAmB,EAAE,iFAAiF,GAAG,8EAA8E,CAAC,CAAC;AAC1M;AACA,MAAM,IAAI;AACV,QAAQ,mBAAmB,GAAG,IAAI,CAAC;AACnC,QAAQ,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpE,OAAO,SAAS;AAChB,QAAQ,mBAAmB,GAAG,KAAK,CAAC;AACpC,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,wBAAwB;AACjC,IAAI,KAAK,EAAE,SAAS,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE;AAC9D,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC5E,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,CAAC,QAAQ,EAAE;AAC/C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAC7D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE;AACpD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAClE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,GAAG;AACnC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;AACjD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,gBAAgB;AACzB,IAAI,KAAK,EAAE,SAAS,cAAc,GAAG;AACrC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC;AACnD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,aAAa;AACtB,IAAI,KAAK,EAAE,SAAS,WAAW,GAAG;AAClC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;AAChD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,yBAAyB;AAClC,IAAI,KAAK,EAAE,SAAS,uBAAuB,CAAC,QAAQ,EAAE;AACtD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;AACpE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,KAAK,EAAE,SAAS,aAAa,CAAC,QAAQ,EAAE;AAC5C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,KAAK,EAAE,SAAS,eAAe,CAAC,QAAQ,EAAE;AAC9C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC5D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,aAAa;AACtB,IAAI,KAAK,EAAE,SAAS,WAAW,GAAG;AAClC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;AAChD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;AAC5C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,KAAK,EAAE,SAAS,aAAa,GAAG;AACpC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;AAClD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;AAC5C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,wBAAwB;AACjC,IAAI,KAAK,EAAE,SAAS,sBAAsB,GAAG;AAC7C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;AAC3D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,8BAA8B;AACvC,IAAI,KAAK,EAAE,SAAS,4BAA4B,GAAG;AACnD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,4BAA4B,EAAE,CAAC;AACjE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,uBAAuB;AAChC,IAAI,KAAK,EAAE,SAAS,qBAAqB,GAAG;AAC5C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC;AAC1D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,KAAK,EAAE,SAAS,eAAe,GAAG;AACtC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;AACpD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,gCAAgC;AACzC,IAAI,KAAK,EAAE,SAAS,8BAA8B,GAAG;AACrD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,EAAE,CAAC;AACnE,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,qBAAqB,CAAC;AAC/B,CAAC,EAAE;;ACzJH,SAASF,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAGjN,IAAI,gBAAgB,GAAG,KAAK,CAAC;AACtB,IAAI,qBAAqB,gBAAgB,YAAY;AAC5D,EAAE,SAAS,qBAAqB,CAAC,OAAO,EAAE;AAC1C,IAAIH,iBAAe,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;AACjD;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;AACrD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;AAC5C;AACA,IAAI,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;AAChD,GAAG;AACH;AACA,EAAED,cAAY,CAAC,qBAAqB,EAAE,CAAC;AACvC,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,CAAC,QAAQ,EAAE;AAC/C,MAAM,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC/B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,GAAG;AACnC,MAAM,OAAO,IAAI,CAAC,QAAQ,CAAC;AAC3B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,wBAAwB;AACjC,IAAI,KAAK,EAAE,SAAS,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE;AAC9D,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC5E,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B;AACA;AACA;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC1B,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP;AACA,MAAM,SAAS,CAAC,CAAC,gBAAgB,EAAE,2EAA2E,GAAG,8EAA8E,CAAC,CAAC;AACjM;AACA,MAAM,IAAI;AACV,QAAQ,gBAAgB,GAAG,IAAI,CAAC;AAChC,QAAQ,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACnE,OAAO,SAAS;AAChB,QAAQ,gBAAgB,GAAG,KAAK,CAAC;AACjC,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,QAAQ;AACjB,IAAI,KAAK,EAAE,SAAS,MAAM,CAAC,OAAO,EAAE;AACpC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC1B,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP;AACA,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACvE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,aAAa;AACtB,IAAI,KAAK,EAAE,SAAS,WAAW,GAAG;AAClC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;AAChD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;AAC5C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,KAAK,EAAE,SAAS,aAAa,GAAG;AACpC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;AAClD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;AAC5C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,wBAAwB;AACjC,IAAI,KAAK,EAAE,SAAS,sBAAsB,GAAG;AAC7C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;AAC3D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,8BAA8B;AACvC,IAAI,KAAK,EAAE,SAAS,4BAA4B,GAAG;AACnD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,4BAA4B,EAAE,CAAC;AACjE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,uBAAuB;AAChC,IAAI,KAAK,EAAE,SAAS,qBAAqB,GAAG;AAC5C,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC;AAC1D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,KAAK,EAAE,SAAS,eAAe,GAAG;AACtC,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC;AACpD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,gCAAgC;AACzC,IAAI,KAAK,EAAE,SAAS,8BAA8B,GAAG;AACrD,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC,8BAA8B,EAAE,CAAC;AACnE,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,qBAAqB,CAAC;AAC/B,CAAC,EAAE;;AC7GH,SAAS,gCAAgC,CAAC,OAAO,EAAE;AACnD;AACA;AACA,EAAE,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;AACxC,IAAI,OAAO;AACX,GAAG;AACH;AACA,EAAE,IAAI,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,eAAe,CAAC;AACrF,EAAE,MAAM,IAAI,KAAK,CAAC,sEAAsE,GAAG,sBAAsB,CAAC,MAAM,CAAC,WAAW,EAAE,mCAAmC,CAAC,GAAG,sCAAsC,CAAC,CAAC;AACrN,CAAC;AACD;AACA,SAAS,0BAA0B,CAAC,IAAI,EAAE;AAC1C,EAAE,OAAO,YAAY;AACrB,IAAI,IAAI,aAAa,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AACjG,IAAI,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAC3F;AACA;AACA,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE;AACxC,MAAM,IAAI,IAAI,GAAG,aAAa,CAAC;AAC/B,MAAM,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1B;AACA;AACA,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI,IAAI,OAAO,GAAG,aAAa,CAAC;AAChC,IAAI,gCAAgC,CAAC,OAAO,CAAC,CAAC;AAC9C;AACA,IAAI,IAAI,GAAG,GAAG,OAAO,GAAG,UAAU,IAAI,EAAE;AACxC,MAAM,OAAO,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACjC,KAAK,GAAG,IAAI,CAAC;AACb,IAAI,OAAO,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACtC,GAAG,CAAC;AACJ,CAAC;AACD;AACO,SAAS,kBAAkB,CAAC,KAAK,EAAE;AAC1C,EAAE,IAAI,YAAY,GAAG,EAAE,CAAC;AACxB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE;AAC5C,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAC1B;AACA,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC7B,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AACrC,KAAK,MAAM;AACX,MAAM,IAAI,WAAW,GAAG,0BAA0B,CAAC,IAAI,CAAC,CAAC;AACzD;AACA,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,YAAY;AACtC,QAAQ,OAAO,WAAW,CAAC;AAC3B,OAAO,CAAC;AACR,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,OAAO,YAAY,CAAC;AACtB,CAAC;AACD;AACA,SAAS,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE;AAC3B,EAAE,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;AACjC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;AACd,GAAG,MAAM;AACT,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;AACvB,GAAG;AACH,CAAC;AACD;AACA,SAAS,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE;AACvC,EAAE,IAAI,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;AAChC,EAAE,SAAS,CAAC,OAAO,WAAW,KAAK,QAAQ,EAAE,sEAAsE,GAAG,sFAAsF,GAAG,yEAAyE,CAAC,CAAC;AAC1R;AACA,EAAE,IAAI,CAAC,WAAW,EAAE;AACpB;AACA,IAAI,OAAO,YAAY,CAAC,OAAO,EAAE;AACjC,MAAM,GAAG,EAAE,MAAM;AACjB,KAAK,CAAC,CAAC;AACP,GAAG,MAAM;AACT,IAAI,OAAO,YAAY,CAAC,OAAO,EAAE;AACjC,MAAM,GAAG,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE;AAC9B,QAAQ,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AAClC,QAAQ,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7B,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG;AACH;;ACpFA,SAASE,SAAO,CAAC,GAAG,EAAE,EAAE,yBAAyB,CAAC,CAAC,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,EAAEA,SAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAEA,SAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,CAAC,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAC,EAAE;AAC1X;AACO,SAAS,KAAK,CAAC,GAAG,EAAE;AAC3B,EAAE;AACF,IAAI,GAAG,KAAK,IAAI,IAAIA,SAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC;AACrG,IAAI;AACJ;;ACNA,SAAS,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE;AAC3D,EAAE,IAAI,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;AAClF;AACA,EAAE,IAAI,aAAa,KAAK,KAAK,CAAC,EAAE;AAChC,IAAI,OAAO,CAAC,CAAC,aAAa,CAAC;AAC3B,GAAG;AACH;AACA,EAAE,IAAI,IAAI,KAAK,IAAI,EAAE;AACrB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH;AACA,EAAE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,EAAE;AAC9E,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH;AACA,EAAE,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC,EAAE,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChC;AACA,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE;AACrC,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH;AACA,EAAE,IAAI,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE;AACA,EAAE,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;AAC/C,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AACzB;AACA,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;AAC/B,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL;AACA,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,IAAI,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,IAAI,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;AACzF;AACA,IAAI,IAAI,aAAa,KAAK,KAAK,IAAI,aAAa,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,MAAM,EAAE;AAClF,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,IAAI,CAAC;AACd;;ACzCA,SAASJ,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAK1M,IAAI,eAAe,gBAAgB,YAAY;AACtD;AACA;AACA,EAAE,SAAS,eAAe,CAAC,OAAO,EAAE;AACpC,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC;AACrB;AACA,IAAIH,iBAAe,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC3C;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC;AACtD,MAAM,UAAU,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE;AACrD,QAAQ,KAAK,CAAC,eAAe,EAAE,CAAC;AAChC;AACA,QAAQ,KAAK,CAAC,iBAAiB,GAAG,OAAO,IAAI,IAAI,CAAC;AAClD;AACA,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;AACzB,UAAU,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;AACrC,SAAS,MAAM;AACf,UAAU,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;AACtC,SAAS;AACT;AACA,QAAQ,KAAK,CAAC,mBAAmB,EAAE,CAAC;AACpC,OAAO;AACP,MAAM,WAAW,EAAE,SAAS,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE;AACvD,QAAQ,KAAK,CAAC,gBAAgB,EAAE,CAAC;AACjC;AACA,QAAQ,KAAK,CAAC,kBAAkB,GAAG,OAAO,IAAI,IAAI,CAAC;AACnD;AACA,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;AACzB,UAAU,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;AACtC,SAAS,MAAM;AACf,UAAU,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;AACvC,SAAS;AACT;AACA,QAAQ,KAAK,CAAC,oBAAoB,EAAE,CAAC;AACrC,OAAO;AACP,KAAK,CAAC,CAAC,CAAC;AACR;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AAC7C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;AACjD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;AACpD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;AAClD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;AACrD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,4BAA4B,EAAE,IAAI,CAAC,CAAC;AAC9D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,wBAAwB,EAAE,IAAI,CAAC,CAAC;AAC1D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAC3D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,gCAAgC,EAAE,IAAI,CAAC,CAAC;AAClE;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,0BAA0B,EAAE,IAAI,CAAC,CAAC;AAC5D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,iCAAiC,EAAE,IAAI,CAAC,CAAC;AACnE;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C;AACA,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC3B,GAAG;AACH;AACA,EAAED,cAAY,CAAC,eAAe,EAAE,CAAC;AACjC,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,CAAC,YAAY,EAAE;AACnD,MAAM,IAAI,IAAI,CAAC,SAAS,KAAK,YAAY,EAAE;AAC3C,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;AACpC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AACvB,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,UAAU,CAAC;AAC7B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,mBAAmB;AAC5B,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,yBAAyB,CAAC;AAC5C,KAAK;AACL,IAAI,GAAG,EAAE,SAAS,GAAG,CAAC,OAAO,EAAE;AAC/B,MAAM,IAAI,CAAC,yBAAyB,GAAG,OAAO,CAAC;AAC/C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,oBAAoB;AAC7B,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,0BAA0B,CAAC;AAC7C,KAAK;AACL,IAAI,GAAG,EAAE,SAAS,GAAG,CAAC,OAAO,EAAE;AAC/B,MAAM,IAAI,CAAC,0BAA0B,GAAG,OAAO,CAAC;AAChD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,WAAW;AACpB,IAAI,KAAK,EAAE,SAAS,SAAS,GAAG;AAChC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACjC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAClC,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,qBAAqB;AAC9B,IAAI,KAAK,EAAE,SAAS,mBAAmB,GAAG;AAC1C,MAAM,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AACvC;AACA,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,4BAA4B,EAAE,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;AAC5H;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,oBAAoB,EAAE,CAAC;AACpC,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,UAAU,EAAE;AACvB,QAAQ,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC;AAClD,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC;AACrD,QAAQ,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC;AAClD,QAAQ,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,iBAAiB,CAAC;AACrE,QAAQ,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACxH,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,sBAAsB;AAC/B,IAAI,KAAK,EAAE,SAAS,oBAAoB,GAAG;AAC3C,MAAM,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;AACzC;AACA,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,6BAA6B,EAAE,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;AAC9H;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACrC,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,WAAW,EAAE;AACxB,QAAQ,IAAI,CAAC,wBAAwB,GAAG,WAAW,CAAC;AACpD,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC;AACrD,QAAQ,IAAI,CAAC,wBAAwB,GAAG,WAAW,CAAC;AACpD,QAAQ,IAAI,CAAC,+BAA+B,GAAG,IAAI,CAAC,kBAAkB,CAAC;AACvE,QAAQ,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAC5H,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,oBAAoB;AAC7B,IAAI,KAAK,EAAE,SAAS,kBAAkB,GAAG;AACzC,MAAM,OAAO,IAAI,CAAC,sBAAsB,KAAK,IAAI,CAAC,SAAS,CAAC;AAC5D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,8BAA8B;AACvC,IAAI,KAAK,EAAE,SAAS,4BAA4B,GAAG;AACnD,MAAM,OAAO,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,UAAU,CAAC;AAC9D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,+BAA+B;AACxC,IAAI,KAAK,EAAE,SAAS,6BAA6B,GAAG;AACpD,MAAM,OAAO,IAAI,CAAC,wBAAwB,KAAK,IAAI,CAAC,WAAW,CAAC;AAChE,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,4BAA4B;AACrC,IAAI,KAAK,EAAE,SAAS,0BAA0B,GAAG;AACjD,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACxF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,6BAA6B;AACtC,IAAI,KAAK,EAAE,SAAS,2BAA2B,GAAG;AAClD,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,+BAA+B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAC1F,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,sBAAsB;AAC/B,IAAI,KAAK,EAAE,SAAS,oBAAoB,GAAG;AAC3C,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE;AACtC,QAAQ,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACrC,QAAQ,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;AAC/C,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,uBAAuB;AAChC,IAAI,KAAK,EAAE,SAAS,qBAAqB,GAAG;AAC5C,MAAM,IAAI,IAAI,CAAC,sBAAsB,EAAE;AACvC,QAAQ,IAAI,CAAC,sBAAsB,EAAE,CAAC;AACtC,QAAQ,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;AAChD,QAAQ,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;AACpC,QAAQ,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AACnC,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;AACrF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,aAAa;AACtB,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;AACxF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,KAAK,EAAE,SAAS,eAAe,GAAG;AACtC,MAAM,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AACjC,MAAM,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAChC,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,GAAG;AACvC,MAAM,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;AAClC,MAAM,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AACjC,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,eAAe,CAAC;AACzB,CAAC,EAAE;;AChPH,SAASF,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAK1M,IAAI,eAAe,gBAAgB,YAAY;AACtD;AACA,EAAE,SAAS,eAAe,CAAC,OAAO,EAAE;AACpC,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC;AACrB;AACA,IAAIH,iBAAe,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC3C;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC;AACtD,MAAM,UAAU,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE;AACrD,QAAQ,KAAK,CAAC,eAAe,EAAE,CAAC;AAChC;AACA,QAAQ,KAAK,CAAC,iBAAiB,GAAG,OAAO,CAAC;AAC1C;AACA,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;AACzB,UAAU,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;AACrC,SAAS,MAAM;AACf,UAAU,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;AACtC,SAAS;AACT;AACA,QAAQ,KAAK,CAAC,SAAS,EAAE,CAAC;AAC1B,OAAO;AACP,KAAK,CAAC,CAAC,CAAC;AACR;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;AAC7C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;AACjD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;AACpD;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAC;AAC7D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,wBAAwB,EAAE,IAAI,CAAC,CAAC;AAC1D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAC3D;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,gCAAgC,EAAE,IAAI,CAAC,CAAC;AAClE;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C;AACA,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC3B,GAAG;AACH;AACA,EAAED,cAAY,CAAC,eAAe,EAAE,CAAC;AACjC,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,UAAU,CAAC;AAC7B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,WAAW;AACpB,IAAI,KAAK,EAAE,SAAS,SAAS,GAAG;AAChC;AACA,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,mBAAmB,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACzG;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,oBAAoB,EAAE,CAAC;AACpC,OAAO;AACP;AACA,MAAM,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;AACvC;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC3B,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,UAAU,EAAE;AACvB,QAAQ,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC;AAClD,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,SAAS,EAAE;AACrB,QAAQ,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC;AACrD,QAAQ,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC;AAClD,QAAQ,IAAI,CAAC,8BAA8B,GAAG,IAAI,CAAC,iBAAiB,CAAC;AACrE,QAAQ,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACxH,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,CAAC,YAAY,EAAE;AACnD,MAAM,IAAI,YAAY,KAAK,IAAI,CAAC,SAAS,EAAE;AAC3C,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;AACpC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AACvB,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,mBAAmB;AAC5B,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,yBAAyB,CAAC;AAC5C,KAAK;AACL,IAAI,GAAG,EAAE,SAAS,GAAG,CAAC,OAAO,EAAE;AAC/B,MAAM,IAAI,CAAC,yBAAyB,GAAG,OAAO,CAAC;AAC/C,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,oBAAoB;AAC7B,IAAI,KAAK,EAAE,SAAS,kBAAkB,GAAG;AACzC,MAAM,OAAO,IAAI,CAAC,sBAAsB,KAAK,IAAI,CAAC,SAAS,CAAC;AAC5D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,qBAAqB;AAC9B,IAAI,KAAK,EAAE,SAAS,mBAAmB,GAAG;AAC1C,MAAM,OAAO,IAAI,CAAC,uBAAuB,KAAK,IAAI,CAAC,UAAU,CAAC;AAC9D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,kBAAkB;AAC3B,IAAI,KAAK,EAAE,SAAS,gBAAgB,GAAG;AACvC,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AACxF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,sBAAsB;AAC/B,IAAI,KAAK,EAAE,SAAS,oBAAoB,GAAG;AAC3C,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE;AACtC,QAAQ,IAAI,CAAC,qBAAqB,EAAE,CAAC;AACrC,QAAQ,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;AAC/C,OAAO;AACP,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,GAAG,EAAE,SAAS,GAAG,GAAG;AACxB,MAAM,OAAO,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;AACrF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,KAAK,EAAE,SAAS,eAAe,GAAG;AACtC,MAAM,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAChC,MAAM,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AACjC,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,eAAe,CAAC;AACzB,CAAC,EAAE;;AC/II,SAAS,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;AACtD,EAAE,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;AACvC,EAAE,IAAI,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAClD,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY;AAChC,IAAI,OAAO,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC3C,GAAG,CAAC,CAAC;AACL,CAAC;AACM,SAAS,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;AACtD,EAAE,IAAI,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;AACvC,EAAE,IAAI,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAClD,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY;AAChC,IAAI,OAAO,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC3C,GAAG,CAAC,CAAC;AACL;;ACbA,SAASE,SAAO,CAAC,GAAG,EAAE,EAAE,yBAAyB,CAAC,CAAC,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,EAAEA,SAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAEA,SAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,CAAC,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAOA,SAAO,CAAC,GAAG,CAAC,CAAC,EAAE;AAC1X;AACO,SAAS,qBAAqB,CAAC,WAAW,EAAE;AACnD,EAAE,IAAI,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC;AACvC;AACA,EAAE,IAAI,UAAU,IAAI,IAAI,EAAE;AAC1B,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG,MAAM,IAAI,UAAU,CAAC,YAAY,EAAE;AACtC;AACA,IAAI,OAAO,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC;AAC3C,GAAG,MAAM;AACT,IAAI,OAAO,UAAU,CAAC;AACtB,GAAG;AACH,CAAC;AACM,SAAS,gBAAgB,CAAC,SAAS,EAAE;AAC5C,EAAE,OAAO,SAAS,IAAI,SAAS,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,SAAS,CAAC,MAAM,KAAK,UAAU,CAAC;AAC9F,CAAC;AACM,SAAS,wBAAwB,CAAC,CAAC,EAAE;AAC5C,EAAE,IAAI,cAAc,CAAC;AACrB;AACA,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC;AACf,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,MAAM,IAAI,IAAI,cAAc,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,cAAc,CAAC,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACnM,CAAC;AACM,SAAS,SAAS,CAAC,CAAC,EAAE;AAC7B,EAAE,OAAO,gBAAgB,CAAC,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AACM,SAAS,uBAAuB,CAAC,YAAY,EAAE,SAAS,EAAE;AACjE,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC7C,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;AACjF,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACtF;AACA,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE;AACxD;AACA,QAAQ,OAAO,CAAC,KAAK,CAAC,4DAA4D,GAAG,eAAe,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,0CAA0C,CAAC,GAAG,+HAA+H,CAAC,CAAC;AAChU,QAAQ,OAAO;AACf,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAC;AACM,SAAS,UAAU,CAAC,KAAK,EAAE;AAClC,EAAE,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC;AACM,SAAS,IAAI,GAAG;AACvB,CAAC;AACD;AACA,SAAS,YAAY,CAAC,KAAK,EAAE;AAC7B,EAAE,OAAOA,SAAO,CAAC,KAAK,CAAC,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACvD,CAAC;AACD;AACO,SAAS,aAAa,CAAC,KAAK,EAAE;AACrC,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;AAC5B,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH;AACA,EAAE,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;AAC7C,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH;AACA,EAAE,IAAI,KAAK,GAAG,KAAK,CAAC;AACpB;AACA,EAAE,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;AAChD,IAAI,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AACzC,GAAG;AACH;AACA,EAAE,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;AAChD,CAAC;AACM,SAAS,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE;AAC9C,EAAE,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAIA,SAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;AAClI,IAAI,OAAO,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACjC,GAAG,CAAC,CAAC;AACL;;ACtEA,SAASJ,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAGjN;AACA;AACA;AACA;AACA;AACA;AACO,IAAI,UAAU,gBAAgB,YAAY;AACjD,EAAE,SAAS,UAAU,CAAC,MAAM,EAAE;AAC9B,IAAIH,iBAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACtC;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAC/C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5C;AACA,IAAI,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;AACrD,GAAG;AACH;AACA;AACA;AACA,EAAED,cAAY,CAAC,UAAU,EAAE,CAAC;AAC5B,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;AACtB,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC/B,OAAO;AACP,KAAK;AACL,GAAG,CAAC,EAAE,CAAC;AACP,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,SAAS,YAAY,CAAC,CAAC,EAAE;AAC7B,MAAM,OAAO,OAAO,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AACjD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,QAAQ;AACjB,IAAI,KAAK,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE;AACnC,MAAM,OAAO,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;AACzE,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,QAAQ;AACjB,IAAI,KAAK,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE;AACnC,MAAM,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AACpC,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC,EAAE,CAAC;AACJ;AACA;AACA;AACA;AACA;AACAC,iBAAe,CAAC,UAAU,EAAE,OAAO,EAAE;AACrC,EAAE,OAAO,EAAE,IAAI;AACf,CAAC,CAAC,CAAC;AACH;AACO,IAAI,mBAAmB,gBAAgB,YAAY;AAC1D,EAAE,SAAS,mBAAmB,GAAG;AACjC,IAAIH,iBAAe,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;AAC/C;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAC/C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;AACjD;AACA,IAAI,KAAK,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE;AACpG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAC1C,KAAK;AACL;AACA,IAAI,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AACnC,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAED,cAAY,CAAC,mBAAmB,EAAE,CAAC;AACrC,IAAI,GAAG,EAAE,KAAK;AACd,IAAI,KAAK,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE;AAC9B,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE;AAC3B,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;AACvB,OAAO,MAAM;AACb,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpC,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,QAAQ;AACjB,IAAI,KAAK,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE;AACjC,MAAM,IAAI,aAAa,GAAG,KAAK,CAAC;AAChC;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACjD;AACA,QAAQ,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE;AACxB,UAAU,aAAa,GAAG,IAAI,CAAC;AAC/B,UAAU,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AAC1C,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC;AACzB,SAAS;AACT,OAAO;AACP;AACA,MAAM,OAAO,aAAa,CAAC;AAC3B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,OAAO;AAChB,IAAI,KAAK,EAAE,SAAS,KAAK,GAAG;AAC5B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;AAC1C,QAAQ,IAAI,kBAAkB,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AAChD;AACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACtC,UAAU,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AACtD,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AAC9B;AACA,QAAQ,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE;AACzC,UAAU,kBAAkB,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;AAC3C,SAAS;AACT,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC/B,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;AAC1C,QAAQ,IAAI,kBAAkB,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AAChD;AACA,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;AACtC,UAAU,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AACtD,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;AAC9B;AACA,QAAQ,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE;AAC5C,UAAU,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC5C,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,mBAAmB,CAAC;AAC7B,CAAC,EAAE,CAAC;AACJ;AACA;AACA;AACA;AACA;AACA;AACO,IAAI,gBAAgB,gBAAgB,YAAY;AACvD,EAAE,SAAS,gBAAgB,GAAG;AAC9B,IAAIF,iBAAe,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;AAC5C;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AAC/C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C,GAAG;AACH;AACA,EAAED,cAAY,CAAC,gBAAgB,EAAE,CAAC;AAClC,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,KAAK;AACT;AACA;AACA;AACA;AACA,IAAI,SAAS,aAAa,GAAG;AAC7B,MAAM,OAAO,IAAI,CAAC,OAAO,CAAC;AAC1B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,eAAe;AACxB,IAAI,KAAK,EAAE,SAAS,aAAa,CAAC,KAAK,EAAE;AACzC,MAAM,IAAI,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC;AAC1C;AACA,MAAM,IAAI,CAAC,aAAa,EAAE;AAC1B,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;AAC/B,QAAQ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AAC7B;AACA,QAAQ,IAAI,GAAG,EAAE;AACjB,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC;AACxB,SAAS;AACT,OAAO;AACP;AACA,MAAM,IAAI,aAAa,IAAI,KAAK,EAAE;AAClC,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC;AACxB,OAAO;AACP,KAAK;AACL;AACA;AACA,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC5B,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC/B,QAAQ,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;AAC/B,QAAQ,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;AACjC;AACA,QAAQ,IAAI,GAAG,EAAE;AACjB,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC;AACxB,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,gBAAgB,CAAC;AAC1B,CAAC,EAAE;;;;;;;;;;;;;;AC3OU,IAAI,CAAC,CAAC,UAAU,GAAG,OAAO,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACrf,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;AACxQ,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,sBAAA,CAAA,SAAiB,CAAC,EAAwB,sBAAA,CAAA,cAAA,CAAC,wCAAyB,CAAC,EAAE,sBAAA,CAAA,eAAuB,CAAC,EAAiB,sBAAA,CAAA,OAAA,CAAC,EAAE,sBAAA,CAAA,UAAkB,CAAC,EAAkB,sBAAA,CAAA,QAAA,CAAC,6BAAc,CAAC,EAAE,sBAAA,CAAA,IAAY,CAAC,EAAgB,sBAAA,CAAA,MAAA,CAAC,EAAE;AAClf,sBAAA,CAAA,QAAgB,CAAC,EAAE,sBAAA,CAAA,UAAkB,CAAC,EAAE,sBAAA,CAAA,QAAgB,CAAC,EAAE,sBAAA,CAAA,WAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,gBAAwB,CAAC,EAAE,sBAAA,CAAA,iBAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,iBAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,SAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAM,QAAQ,GAAG,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,sBAAA,CAAA,YAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,UAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,MAAc,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;AAC5d,sBAAA,CAAA,MAAc,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iCAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAoB,sBAAA,CAAA,UAAA,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,YAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,sBAAA,CAAA,UAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;AAClN,sBAAA,CAAA,kBAAA,CAAC,SAAS,CAAC,CAAC,CAAC,OAAM,QAAQ,GAAG,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAgB,sBAAA,CAAA,MAAA,CAAC;;;;;;;;;;;;ACJnU;AACA;AACA;AACA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC3C,EAAE,CAAC,WAAW;AAEd;AACA;AACA;AACA,IAAI,SAAS,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC;AAC3D,IAAI,kBAAkB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC;AAC1E,IAAI,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;AACxE,IAAI,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;AAC5E,IAAI,sBAAsB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC;AAClF,IAAI,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;AAC5E,IAAI,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;AAC5E,IAAI,kBAAkB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC;AAC1E;AACA;AACA,IAAI,qBAAqB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC;AAChF,IAAI,0BAA0B,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,GAAG,MAAM,CAAC;AAC1F,IAAI,sBAAsB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC;AAClF,IAAI,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;AAC5E,IAAI,wBAAwB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC;AACtF,IAAI,eAAe,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;AACpE,IAAI,eAAe,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;AACpE,IAAI,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;AACtE,IAAI,sBAAsB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC;AAClF,IAAI,oBAAoB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;AAC9E,IAAI,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC;AACtE;AACA,SAAS,kBAAkB,CAAC,IAAI,EAAE;AAClC,EAAE,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,UAAU;AAC/D,EAAE,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,0BAA0B,IAAI,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,sBAAsB,IAAI,IAAI,KAAK,mBAAmB,IAAI,IAAI,KAAK,wBAAwB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,QAAQ,KAAK,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,mBAAmB,IAAI,IAAI,CAAC,QAAQ,KAAK,kBAAkB,IAAI,IAAI,CAAC,QAAQ,KAAK,sBAAsB,IAAI,IAAI,CAAC,QAAQ,KAAK,sBAAsB,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAoB,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,CAAC,CAAC;AACtmB,CAAC;AACD;AACA,SAAS,MAAM,CAAC,MAAM,EAAE;AACxB,EAAE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE;AACrD,IAAI,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACnC;AACA,IAAI,QAAQ,QAAQ;AACpB,MAAM,KAAK,kBAAkB;AAC7B,QAAQ,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;AAC/B;AACA,QAAQ,QAAQ,IAAI;AACpB,UAAU,KAAK,qBAAqB,CAAC;AACrC,UAAU,KAAK,0BAA0B,CAAC;AAC1C,UAAU,KAAK,mBAAmB,CAAC;AACnC,UAAU,KAAK,mBAAmB,CAAC;AACnC,UAAU,KAAK,sBAAsB,CAAC;AACtC,UAAU,KAAK,mBAAmB;AAClC,YAAY,OAAO,IAAI,CAAC;AACxB;AACA,UAAU;AACV,YAAY,IAAI,YAAY,GAAG,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC;AACrD;AACA,YAAY,QAAQ,YAAY;AAChC,cAAc,KAAK,kBAAkB,CAAC;AACtC,cAAc,KAAK,sBAAsB,CAAC;AAC1C,cAAc,KAAK,eAAe,CAAC;AACnC,cAAc,KAAK,eAAe,CAAC;AACnC,cAAc,KAAK,mBAAmB;AACtC,gBAAgB,OAAO,YAAY,CAAC;AACpC;AACA,cAAc;AACd,gBAAgB,OAAO,QAAQ,CAAC;AAChC,aAAa;AACb;AACA,SAAS;AACT;AACA,MAAM,KAAK,iBAAiB;AAC5B,QAAQ,OAAO,QAAQ,CAAC;AACxB,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACD;AACA,IAAI,SAAS,GAAG,qBAAqB,CAAC;AACtC,IAAI,cAAc,GAAG,0BAA0B,CAAC;AAChD,IAAI,eAAe,GAAG,kBAAkB,CAAC;AACzC,IAAI,eAAe,GAAG,mBAAmB,CAAC;AAC1C,IAAI,OAAO,GAAG,kBAAkB,CAAC;AACjC,IAAI,UAAU,GAAG,sBAAsB,CAAC;AACxC,IAAI,QAAQ,GAAG,mBAAmB,CAAC;AACnC,IAAI,IAAI,GAAG,eAAe,CAAC;AAC3B,IAAI,IAAI,GAAG,eAAe,CAAC;AAC3B,IAAI,MAAM,GAAG,iBAAiB,CAAC;AAC/B,IAAI,QAAQ,GAAG,mBAAmB,CAAC;AACnC,IAAI,UAAU,GAAG,sBAAsB,CAAC;AACxC,IAAI,QAAQ,GAAG,mBAAmB,CAAC;AACnC,IAAI,mCAAmC,GAAG,KAAK,CAAC;AAChD;AACA,SAAS,WAAW,CAAC,MAAM,EAAE;AAC7B,EAAE;AACF,IAAI,IAAI,CAAC,mCAAmC,EAAE;AAC9C,MAAM,mCAAmC,GAAG,IAAI,CAAC;AACjD;AACA,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,uDAAuD,GAAG,4DAA4D,GAAG,gEAAgE,CAAC,CAAC;AACjN,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,qBAAqB,CAAC;AAC9E,CAAC;AACD,SAAS,gBAAgB,CAAC,MAAM,EAAE;AAClC,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,0BAA0B,CAAC;AACvD,CAAC;AACD,SAAS,iBAAiB,CAAC,MAAM,EAAE;AACnC,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,kBAAkB,CAAC;AAC/C,CAAC;AACD,SAAS,iBAAiB,CAAC,MAAM,EAAE;AACnC,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,mBAAmB,CAAC;AAChD,CAAC;AACD,SAAS,SAAS,CAAC,MAAM,EAAE;AAC3B,EAAE,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,KAAK,kBAAkB,CAAC;AACjG,CAAC;AACD,SAAS,YAAY,CAAC,MAAM,EAAE;AAC9B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,sBAAsB,CAAC;AACnD,CAAC;AACD,SAAS,UAAU,CAAC,MAAM,EAAE;AAC5B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,mBAAmB,CAAC;AAChD,CAAC;AACD,SAAS,MAAM,CAAC,MAAM,EAAE;AACxB,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,eAAe,CAAC;AAC5C,CAAC;AACD,SAAS,MAAM,CAAC,MAAM,EAAE;AACxB,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,eAAe,CAAC;AAC5C,CAAC;AACD,SAAS,QAAQ,CAAC,MAAM,EAAE;AAC1B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,iBAAiB,CAAC;AAC9C,CAAC;AACD,SAAS,UAAU,CAAC,MAAM,EAAE;AAC5B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,mBAAmB,CAAC;AAChD,CAAC;AACD,SAAS,YAAY,CAAC,MAAM,EAAE;AAC9B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,sBAAsB,CAAC;AACnD,CAAC;AACD,SAAS,UAAU,CAAC,MAAM,EAAE;AAC5B,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,mBAAmB,CAAC;AAChD,CAAC;AACD;AACiB,mBAAA,CAAA,SAAA,GAAG,SAAS,CAAC;AACR,mBAAA,CAAA,cAAA,GAAG,cAAc,CAAC;AACjB,mBAAA,CAAA,eAAA,GAAG,eAAe,CAAC;AACnB,mBAAA,CAAA,eAAA,GAAG,eAAe,CAAC;AAC3B,mBAAA,CAAA,OAAA,GAAG,OAAO,CAAC;AACR,mBAAA,CAAA,UAAA,GAAG,UAAU,CAAC;AAChB,mBAAA,CAAA,QAAA,GAAG,QAAQ,CAAC;AAChB,mBAAA,CAAA,IAAA,GAAG,IAAI,CAAC;AACR,mBAAA,CAAA,IAAA,GAAG,IAAI,CAAC;AACN,mBAAA,CAAA,MAAA,GAAG,MAAM,CAAC;AACR,mBAAA,CAAA,QAAA,GAAG,QAAQ,CAAC;AACV,mBAAA,CAAA,UAAA,GAAG,UAAU,CAAC;AAChB,mBAAA,CAAA,QAAA,GAAG,QAAQ,CAAC;AACT,mBAAA,CAAA,WAAA,GAAG,WAAW,CAAC;AACV,mBAAA,CAAA,gBAAA,GAAG,gBAAgB,CAAC;AACnB,mBAAA,CAAA,iBAAA,GAAG,iBAAiB,CAAC;AACrB,mBAAA,CAAA,iBAAA,GAAG,iBAAiB,CAAC;AAC7B,mBAAA,CAAA,SAAA,GAAG,SAAS,CAAC;AACV,mBAAA,CAAA,YAAA,GAAG,YAAY,CAAC;AAClB,mBAAA,CAAA,UAAA,GAAG,UAAU,CAAC;AAClB,mBAAA,CAAA,MAAA,GAAG,MAAM,CAAC;AACV,mBAAA,CAAA,MAAA,GAAG,MAAM,CAAC;AACR,mBAAA,CAAA,QAAA,GAAG,QAAQ,CAAC;AACV,mBAAA,CAAA,UAAA,GAAG,UAAU,CAAC;AACZ,mBAAA,CAAA,YAAA,GAAG,YAAY,CAAC;AAClB,mBAAA,CAAA,UAAA,GAAG,UAAU,CAAC;AACN,mBAAA,CAAA,kBAAA,GAAG,kBAAkB,CAAC;AAClC,mBAAA,CAAA,MAAA,GAAG,MAAM,CAAC;AACxB,GAAG,GAAG,CAAC;AACP;;AClLA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC3C,EAAEG,SAAA,CAAA,OAAc,GAAG/G,sBAA2C,CAAC;AAC/D,CAAC,MAAM;AACP,EAAE+G,SAAA,CAAA,OAAc,GAAG1G,mBAAwC,CAAC;AAC5D;;ACJA,IAAI,OAAO,GAAGL,iBAAmB,CAAC;AAClC;AACA;AACA;AACA;AACA;AACA,IAAI,aAAa,GAAG;AACpB,EAAE,iBAAiB,EAAE,IAAI;AACzB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,eAAe,EAAE,IAAI;AACvB,EAAE,wBAAwB,EAAE,IAAI;AAChC,EAAE,wBAAwB,EAAE,IAAI;AAChC,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,SAAS,EAAE,IAAI;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,CAAC,CAAC;AACF,IAAI,aAAa,GAAG;AACpB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,SAAS,EAAE,IAAI;AACjB,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,SAAS,EAAE,IAAI;AACjB,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC;AACF,IAAI,mBAAmB,GAAG;AAC1B,EAAE,UAAU,EAAE,IAAI;AAClB,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,SAAS,EAAE,IAAI;AACjB,CAAC,CAAC;AACF,IAAI,YAAY,GAAG;AACnB,EAAE,UAAU,EAAE,IAAI;AAClB,EAAE,OAAO,EAAE,IAAI;AACf,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,SAAS,EAAE,IAAI;AACjB,EAAE,IAAI,EAAE,IAAI;AACZ,CAAC,CAAC;AACF,IAAI,YAAY,GAAG,EAAE,CAAC;AACtB,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,mBAAmB,CAAC;AACvD,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC;AAC1C;AACA,SAAS,UAAU,CAAC,SAAS,EAAE;AAC/B;AACA,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;AACjC,IAAI,OAAO,YAAY,CAAC;AACxB,GAAG;AACH;AACA;AACA,EAAE,OAAO,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,aAAa,CAAC;AAC9D,CAAC;AACD;AACA,IAAI,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAC3C,IAAI,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACrD,IAAI,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACzD,IAAI,wBAAwB,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAC/D,IAAI,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAC3C,IAAI,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC;AACvC,SAAS,oBAAoB,CAAC,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE;AAC3E,EAAE,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE;AAC3C;AACA,IAAI,IAAI,eAAe,EAAE;AACzB,MAAM,IAAI,kBAAkB,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;AAC/D;AACA,MAAM,IAAI,kBAAkB,IAAI,kBAAkB,KAAK,eAAe,EAAE;AACxE,QAAQ,oBAAoB,CAAC,eAAe,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;AAC7E,OAAO;AACP,KAAK;AACL;AACA,IAAI,IAAI,IAAI,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;AACpD;AACA,IAAI,IAAI,qBAAqB,EAAE;AAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC;AACjE,KAAK;AACL;AACA,IAAI,IAAI,aAAa,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;AACpD,IAAI,IAAI,aAAa,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC;AACpD;AACA,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;AAC1C,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AACxB;AACA,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,aAAa,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,aAAa,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE;AACrJ,QAAQ,IAAI,UAAU,GAAG,wBAAwB,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AACxE;AACA,QAAQ,IAAI;AACZ;AACA,UAAU,cAAc,CAAC,eAAe,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;AAC3D,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE;AACtB,OAAO;AACP,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,eAAe,CAAC;AACzB,CAAC;AACD;AACA,IAAA,wBAAc,GAAG,oBAAoB,CAAA;;;;ACtGrC,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,yBAAyB,CAAC,CAAC,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,EAAE,OAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,GAAG,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,GAAG,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,CAAC,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE;AAC1X;AACA,SAAS,cAAc,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,qBAAqB,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,2BAA2B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC,EAAE;AAC9J;AACA,SAAS,gBAAgB,GAAG,EAAE,MAAM,IAAI,SAAS,CAAC,2IAA2I,CAAC,CAAC,EAAE;AACjM;AACA,SAAS,2BAA2B,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,OAAO,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,WAAW,IAAI,0CAA0C,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE;AACha;AACA,SAAS,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,EAAE;AACvL;AACA,SAAS,qBAAqB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,IAAI,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC,EAAE;AACjgB;AACA,SAAS,eAAe,CAAC,GAAG,EAAE,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE;AACrE;AACA,SAAS0G,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAAS,SAAS,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,IAAI,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,IAAI,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,oDAAoD,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,eAAe,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,EAAE;AACjY;AACA,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,eAAe,GAAG,MAAM,CAAC,cAAc,IAAI,SAAS,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;AAC1K;AACA,SAAS,YAAY,CAAC,OAAO,EAAE,EAAE,IAAI,yBAAyB,GAAG,yBAAyB,EAAE,CAAC,CAAC,OAAO,SAAS,oBAAoB,GAAG,EAAE,IAAI,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,yBAAyB,EAAE,EAAE,IAAI,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,OAAO,0BAA0B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;AACza;AACA,SAAS,0BAA0B,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,MAAM,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC,EAAE,CAAC,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,EAAE;AAChS;AACA,SAAS,sBAAsB,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE,MAAM,IAAI,cAAc,CAAC,2DAA2D,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,EAAE;AACtK;AACA,SAAS,yBAAyB,GAAG,EAAE,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,KAAK,CAAC,EAAE,EAAE;AACzU;AACA,SAAS,eAAe,CAAC,CAAC,EAAE,EAAE,eAAe,GAAG,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,GAAG,SAAS,eAAe,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;AAC7M;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAW1M,SAAS,eAAe,CAAC,IAAI,EAAE;AACtC,EAAE,IAAI,kBAAkB,GAAG,IAAI,CAAC,kBAAkB;AAClD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AACxC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa;AACxC,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe;AAC5C,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe;AAC5C,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB;AACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;AAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;AAC7B,EAAE,IAAI,qBAAqB,GAAG,OAAO,CAAC,aAAa;AACnD,MAAM,aAAa,GAAG,qBAAqB,KAAK,KAAK,CAAC,GAAG,YAAY,GAAG,qBAAqB,CAAC;AAC9F,EAAE,IAAI,SAAS,GAAG,kBAAkB,CAAC;AACrC,EAAE,IAAI,WAAW,GAAG,kBAAkB,CAAC,WAAW,IAAI,kBAAkB,CAAC,IAAI,IAAI,WAAW,CAAC;AAC7F;AACA,EAAE,IAAI,iBAAiB,gBAAgB,UAAU,UAAU,EAAE;AAC7D,IAAI,SAAS,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AAC7C;AACA,IAAI,IAAI,MAAM,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC;AACjD;AACA,IAAI,SAAS,iBAAiB,CAAC,KAAK,EAAE;AACtC,MAAM,IAAI,KAAK,CAAC;AAChB;AACA,MAAMH,iBAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;AAC/C;AACA,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACvC;AACA,MAAMG,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;AAClF;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1E;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AACxE;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/E;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC;AACjF;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AACxE;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3E;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5E;AACA,MAAMA,iBAAe,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,YAAY;AACjF,QAAQ,IAAI,SAAS,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;AAChD;AACA,QAAQ,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;AACnD,UAAU,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACpC,SAAS;AACT,OAAO,CAAC,CAAC;AACT;AACA,MAAM,KAAK,CAAC,UAAU,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAChD;AACA,MAAM,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAChC;AACA,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;AACtB;AACA,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL;AACA,IAAID,cAAY,CAAC,iBAAiB,EAAE,CAAC;AACrC,MAAM,GAAG,EAAE,cAAc;AACzB,MAAM,KAAK,EAAE,SAAS,YAAY,GAAG;AACrC,QAAQ,OAAO,IAAI,CAAC,SAAS,CAAC;AAC9B,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,+BAA+B;AAC1C,MAAM,KAAK,EAAE,SAAS,6BAA6B,GAAG;AACtD,QAAQ,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,0HAA0H,CAAC,CAAC;AACzK,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;AACzC,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,uBAAuB;AAClC,MAAM,KAAK,EAAE,SAAS,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE;AAClE,QAAQ,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7F,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,mBAAmB;AAC9B,MAAM,KAAK,EAAE,SAAS,iBAAiB,GAAG;AAC1C,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,EAAE,CAAC;AACjD,QAAQ,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AACrC,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACtC,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;AAC5B,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,oBAAoB;AAC/B,MAAM,KAAK,EAAE,SAAS,kBAAkB,CAAC,SAAS,EAAE;AACpD,QAAQ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;AACnD,UAAU,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;AAC9B,SAAS;AACT,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,sBAAsB;AACjC,MAAM,KAAK,EAAE,SAAS,oBAAoB,GAAG;AAC7C,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;AACvB,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,cAAc;AACzB,MAAM,KAAK,EAAE,SAAS,YAAY,CAAC,KAAK,EAAE;AAC1C,QAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAC3B,UAAU,OAAO;AACjB,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACzC,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACzC,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,aAAa;AACxB,MAAM,KAAK,EAAE,SAAS,WAAW,CAAC,IAAI,EAAE;AACxC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAC7E,UAAU,OAAO;AACjB,SAAS;AACT;AACA,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE;AACvC,UAAU,OAAO;AACjB,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;AAChC;AACA,QAAQ,IAAI,gBAAgB,GAAG,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC;AAChF,YAAY,iBAAiB,GAAG,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC;AACnE,YAAY,SAAS,GAAG,iBAAiB,CAAC,CAAC,CAAC;AAC5C,YAAY,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAC9C;AACA,QAAQ,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;AACnC,QAAQ,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACxD,QAAQ,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAC1D,QAAQ,IAAI,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;AACtD,QAAQ,IAAI,WAAW,GAAG,aAAa,CAAC,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE;AAClF,UAAU,UAAU,EAAE,CAAC,SAAS,CAAC;AACjC,SAAS,CAAC,CAAC;AACX,QAAQ,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,mBAAmB,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACxH,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,SAAS;AACpB,MAAM,KAAK,EAAE,SAAS,OAAO,GAAG;AAChC,QAAQ,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;AAClC;AACA,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACnC,UAAU,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AACvD,SAAS;AACT,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,iBAAiB;AAC5B,MAAM,KAAK,EAAE,SAAS,eAAe,GAAG;AACxC,QAAQ,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AACpC,UAAU,OAAO,EAAE,CAAC;AACpB,SAAS;AACT;AACA,QAAQ,IAAI,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9F;AACA,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AACnD,UAAU,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,yDAAyD,GAAG,yDAAyD,GAAG,uBAAuB,EAAE,oBAAoB,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAC7O,SAAS;AACT;AACA,QAAQ,OAAO,SAAS,CAAC;AACzB,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,QAAQ;AACnB,MAAM,KAAK,EAAE,SAAS,MAAM,GAAG;AAC/B,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAC;AAC1B;AACA,QAAQ,OAAOI,GAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;AACzC,UAAU,QAAQ,EAAE,SAAS,QAAQ,CAAC,KAAK,EAAE;AAC7C,YAAY,IAAI,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;AACxD;AACA,YAAY,MAAM,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC;AAC3D;AACA,YAAY,IAAI,OAAO,qBAAqB,KAAK,WAAW,EAAE;AAC9D,cAAc,qBAAqB,CAAC,YAAY;AAChD,gBAAgB,IAAI,qBAAqB,CAAC;AAC1C;AACA,gBAAgB,OAAO,CAAC,qBAAqB,GAAG,MAAM,CAAC,gBAAgB,MAAM,IAAI,IAAI,qBAAqB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,qBAAqB,CAAC,SAAS,EAAE,CAAC;AACnK,eAAe,CAAC,CAAC;AACjB,aAAa;AACb;AACA,YAAY,OAAOA,GAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,EAAE;AAC7F;AACA,cAAc,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI;AACpE,aAAa,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACxB,WAAW;AACX,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AACnB,OAAO;AACP,KAAK,EAAE;AACP,MAAM,GAAG,EAAE,wBAAwB;AACnC,MAAM,KAAK,EAAE,SAAS,sBAAsB,CAAC,eAAe,EAAE;AAC9D,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;AACxC,UAAU,OAAO;AACjB,SAAS;AACT;AACA,QAAQ,SAAS,CAAC,eAAe,KAAK,SAAS,EAAE,iEAAiE,GAAG,2EAA2E,GAAG,8HAA8H,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AAC7V;AACA,QAAQ,IAAI,eAAe,KAAK,SAAS,EAAE;AAC3C,UAAU,OAAO;AACjB,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC;AACvC,QAAQ,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;AAC7D,QAAQ,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AAC9E,QAAQ,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;AAC7E,OAAO;AACP,KAAK,CAAC,CAAC,CAAC;AACR;AACA,IAAI,OAAO,iBAAiB,CAAC;AAC7B,GAAG,CAAC,SAAS,CAAC,CAAC;AACf;AACA,EAAEH,iBAAe,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;AAC/E;AACA,EAAEA,iBAAe,CAAC,iBAAiB,EAAE,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;AACnH;AACA,EAAE,OAAO,YAAY,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;AAC7D;;ACjQA,SAASH,iBAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAASC,mBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAASC,cAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAED,mBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAEA,mBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAASE,iBAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAIjN,IAAII,sBAAoB,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AAC7E,IAAI,qBAAqB,GAAG,CAAC,WAAW,CAAC,CAAC;AAC1C;AACA,IAAI,UAAU,gBAAgB,YAAY;AAC1C,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;AAC1C,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC;AACrB;AACA,IAAIP,iBAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACtC;AACA,IAAIG,iBAAe,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC;AACA,IAAIA,iBAAe,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY;AACnD,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;AACxB,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACrF;AACA,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AACjD,QAAQ,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,2EAA2E,GAAG,uBAAuB,GAAG,sEAAsE,EAAE,IAAI,CAAC,CAAC;AAC7N,OAAO;AACP;AACA,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK,CAAC,CAAC;AACP;AACA,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACrB,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC3B,IAAI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACnB,GAAG;AACH;AACA,EAAED,cAAY,CAAC,UAAU,EAAE,CAAC;AAC5B,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,CAAC,KAAK,EAAE;AACxC,MAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACzB,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACvB,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAQ,OAAO,IAAI,CAAC;AACpB,OAAO;AACP;AACA,MAAM,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACzD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,YAAY;AACrB,IAAI,KAAK,EAAE,SAAS,UAAU,CAAC,aAAa,EAAE,QAAQ,EAAE;AACxD,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACvB,QAAQ,OAAO,KAAK,CAAC;AACrB,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACjC,QAAQ,OAAO,QAAQ,KAAK,aAAa,CAAC,WAAW,EAAE,CAAC;AACxD,OAAO;AACP;AACA,MAAM,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5D,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACvB,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnF,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC,EAAE,CAAC;AACJ;AACO,SAAS,mBAAmB,CAAC,IAAI,EAAE;AAC1C,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE;AAC3C,IAAI,SAAS,CAACK,sBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,sDAAsD,GAAG,kCAAkC,GAAG,gEAAgE,GAAG,sEAAsE,EAAEA,sBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AACrU,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,iEAAiE,GAAG,gDAAgD,GAAG,sEAAsE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnQ,GAAG,CAAC,CAAC;AACL,EAAE,qBAAqB,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE;AAC/C,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,iEAAiE,GAAG,gDAAgD,GAAG,sEAAsE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnQ,GAAG,CAAC,CAAC;AACL,EAAE,OAAO,SAAS,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE;AAC7C,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;AAC9C,GAAG,CAAC;AACJ;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE;AAChD,EAAE,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AACvF,EAAE,uBAAuB,CAAC,YAAY,EAAE,gCAAgC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACxG,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC;AACrB;AACA,EAAE,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;AAClC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,qEAAqE,GAAG,yEAAyE,GAAG,wBAAwB,GAAG,sEAAsE,EAAE,IAAI,CAAC,CAAC;AAC9R;AACA,IAAI,OAAO,GAAG,SAAS,OAAO,GAAG;AACjC,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK,CAAC;AACN,GAAG;AACH;AACA,EAAE,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,sEAAsE,GAAG,wCAAwC,GAAG,sEAAsE,EAAE,IAAI,CAAC,CAAC;AACnO,EAAE,IAAI,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC/C,EAAE,SAAS,CAAC,OAAO,OAAO,KAAK,UAAU,EAAE,wEAAwE,GAAG,6DAA6D,GAAG,wBAAwB,GAAG,sEAAsE,EAAE,OAAO,CAAC,CAAC;AAClS,EAAE,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,yEAAyE,GAAG,iCAAiC,GAAG,wBAAwB,GAAG,sEAAsE,EAAE,OAAO,CAAC,CAAC;AAChQ,EAAE,OAAO,SAAS,cAAc,CAAC,kBAAkB,EAAE;AACrD,IAAI,OAAO,eAAe,CAAC;AAC3B,MAAM,oBAAoB,EAAE,YAAY;AACxC,MAAM,aAAa,EAAE,YAAY;AACjC,MAAM,eAAe,EAAE,cAAc;AACrC,MAAM,eAAe,EAAE,SAAS,eAAe,CAAC,OAAO,EAAE;AACzD,QAAQ,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AAC5C,OAAO;AACP,MAAM,aAAa,EAAE,SAAS,aAAa,CAAC,OAAO,EAAE;AACrD,QAAQ,OAAO,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAClD,OAAO;AACP,MAAM,kBAAkB,EAAE,kBAAkB;AAC5C,MAAM,OAAO,EAAE,OAAO;AACtB,MAAM,OAAO,EAAE,OAAO;AACtB,MAAM,OAAO,EAAE,OAAO;AACtB,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ;;AC/CA,SAAS,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,YAAY,WAAW,CAAC,EAAE,EAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC,EAAE,EAAE;AACzJ;AACA,SAAS,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,IAAI,OAAO,IAAI,UAAU,EAAE,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE;AAC7T;AACA,SAAS,YAAY,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,WAAW,CAAC,EAAE;AACvN;AACA,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,CAAC,EAAE;AAIjN,IAAI,oBAAoB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACxD;AACA,IAAI,UAAU,gBAAgB,YAAY;AAC1C,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE;AAC1C,IAAI,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACtC;AACA,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC;AACA,IAAI,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1C;AACA,IAAI,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7C;AACA,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC;AACA,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACrB,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC3B,IAAI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACnB,GAAG;AACH;AACA,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC;AAC5B,IAAI,GAAG,EAAE,cAAc;AACvB,IAAI,KAAK,EAAE,SAAS,YAAY,CAAC,KAAK,EAAE;AACxC,MAAM,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACzB,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,gBAAgB;AACzB,IAAI,KAAK,EAAE,SAAS,cAAc,CAAC,OAAO,EAAE;AAC5C,MAAM,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC7B,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,SAAS;AAClB,IAAI,KAAK,EAAE,SAAS,OAAO,GAAG;AAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAC9B,QAAQ,OAAO,IAAI,CAAC;AACpB,OAAO;AACP;AACA,MAAM,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACzD,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,OAAO;AAChB,IAAI,KAAK,EAAE,SAAS,KAAK,GAAG;AAC5B,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AAC3C,QAAQ,OAAO;AACf,OAAO;AACP;AACA,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACjF,KAAK;AACL,GAAG,EAAE;AACL,IAAI,GAAG,EAAE,MAAM;AACf,IAAI,KAAK,EAAE,SAAS,IAAI,GAAG;AAC3B,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;AAC3B,QAAQ,OAAO,SAAS,CAAC;AACzB,OAAO;AACP;AACA,MAAM,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAClF;AACA,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AACjD,QAAQ,SAAS,CAAC,OAAO,UAAU,KAAK,WAAW,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,qFAAqF,GAAG,uBAAuB,GAAG,sEAAsE,EAAE,UAAU,CAAC,CAAC;AACxR,OAAO;AACP;AACA,MAAM,OAAO,UAAU,CAAC;AACxB,KAAK;AACL,GAAG,CAAC,CAAC,CAAC;AACN;AACA,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC,EAAE,CAAC;AACJ;AACO,SAAS,mBAAmB,CAAC,IAAI,EAAE;AAC1C,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE;AAC3C,IAAI,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,sDAAsD,GAAG,kCAAkC,GAAG,gEAAgE,GAAG,sEAAsE,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AACrU,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU,EAAE,iEAAiE,GAAG,gDAAgD,GAAG,sEAAsE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACnQ,GAAG,CAAC,CAAC;AACL,EAAE,OAAO,SAAS,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE;AAC7C,IAAI,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;AAC9C,GAAG,CAAC;AACJ;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE;AAChD,EAAE,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AACvF,EAAE,uBAAuB,CAAC,YAAY,EAAE,gCAAgC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACxG,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC;AACrB;AACA,EAAE,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;AAClC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,qEAAqE,GAAG,yEAAyE,GAAG,2CAA2C,GAAG,sEAAsE,EAAE,IAAI,CAAC,CAAC;AACvT;AACA,IAAI,OAAO,GAAG,SAAS,OAAO,GAAG;AACjC,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK,CAAC;AACN,GAAG;AACH;AACA,EAAE,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,sEAAsE,GAAG,wCAAwC,GAAG,sEAAsE,EAAE,IAAI,CAAC,CAAC;AACnO,EAAE,IAAI,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC/C,EAAE,SAAS,CAAC,OAAO,OAAO,KAAK,UAAU,EAAE,wEAAwE,GAAG,6DAA6D,GAAG,wBAAwB,GAAG,sEAAsE,EAAE,OAAO,CAAC,CAAC;AAClS,EAAE,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,yEAAyE,GAAG,iCAAiC,GAAG,wBAAwB,GAAG,sEAAsE,EAAE,OAAO,CAAC,CAAC;AAChQ,EAAE,OAAO,SAAS,cAAc,CAAC,kBAAkB,EAAE;AACrD,IAAI,OAAO,eAAe,CAAC;AAC3B,MAAM,oBAAoB,EAAE,YAAY;AACxC,MAAM,aAAa,EAAE,YAAY;AACjC,MAAM,eAAe,EAAE,cAAc;AACrC,MAAM,aAAa,EAAE,SAAS,aAAa,CAAC,OAAO,EAAE;AACrD,QAAQ,OAAO,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAClD,OAAO;AACP,MAAM,eAAe,EAAE,SAAS,eAAe,CAAC,OAAO,EAAE;AACzD,QAAQ,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AAC5C,OAAO;AACP,MAAM,kBAAkB,EAAE,kBAAkB;AAC5C,MAAM,OAAO,EAAE,OAAO;AACtB,MAAM,OAAO,EAAE,OAAO;AACtB,MAAM,OAAO,EAAE,OAAO;AACtB,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ;;ACtCA,MAAMC,KAAG,GAAGC,KAAK,CAAC,mCAAD,CAAjB,CAAA;AAEA,MAAMC,MAAM,GAAGtC,UAAU,CAAEX,KAAD,KAAY;AACpCkD,EAAAA,MAAM,EAAE;AACNzC,IAAAA,OAAO,EAAE,MADH;AAEN0C,IAAAA,UAAU,EAAE,QAFN;AAGNC,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAHhC;AAINf,IAAAA,KAAK,EAAG,CAAA,KAAA,EAAOrC,KAAK,CAACsD,OAAN,CAAcC,MAAd,CAAqBC,KAAM,CAJpC,MAAA,CAAA;AAKNjD,IAAAA,KAAK,EAAE,MALD;AAMNC,IAAAA,MAAM,EAAE,MAAA;AANF,GAAA;AAD4B,CAAZ,CAAD,CAAV,CASX,CAAC;AAAEzC,EAAAA,OAAAA;AAAF,CAAD,kBAAiB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,EAAA,SAAS,EAAEA,OAAO,CAACmF,MAAAA;AAAxB,CAAA,EAAA,gCAAA,CATN,CAAf,CAAA;;AAWA,MAAMO,QAAQ,GAAG,CAAC;AAAEnC,EAAAA,sBAAF;AAA0BC,EAAAA,QAA1B;AAAoCmC,EAAAA,OAApC;AAA6CC,EAAAA,cAAAA;AAA7C,CAAD,kBACf,KAAC,CAAA,aAAA,CAAA,KAAD,CAAO,QAAP,EAAA,IAAA,EACGD,OAAO,CAACE,GAAR,CACC,CAACC,CAAD,EAAIrG,KAAJ,KACEqG,CAAC,iBACC,oBAACzC,eAAD,EAAA;AACE,EAAA,sBAAsB,EAAEE,sBAD1B;AAEE,EAAA,QAAQ,EAAEC,QAFZ;AAGE,EAAA,MAAM,EAAEsC,CAHV;AAIE,EAAA,GAAG,EAAErG,KAJP;AAKE,EAAA,WAAW,EAAEA,KALf;AAME,EAAA,QAAQ,EAAG6D,MAAD,IAAYsC,cAAc,CAACtC,MAAD,EAAS7D,KAAT,CAAA;AANtC,CAAA,CAHL,CADH,CADF,CAAA;;AAkBAiG,QAAQ,CAACvE,SAAT,GAAqB;AACnBoC,EAAAA,sBAAsB,EAAEnC,SAAS,CAACM,MADf;AAEnB8B,EAAAA,QAAQ,EAAEpC,SAAS,CAACC,MAFD;AAGnBsE,EAAAA,OAAO,EAAEvE,SAAS,CAAC2E,KAHA;AAInBH,EAAAA,cAAc,EAAExE,SAAS,CAACI,IAAAA;AAJP,CAArB,CAAA;AAOO,MAAMwE,oBAAN,SAAmC5G,KAAK,CAACC,SAAzC,CAAmD;AAgBxDO,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAE2D,MAAAA,sBAAF;AAA0B0C,MAAAA,MAA1B;AAAkCzC,MAAAA,QAAlC;AAA4CmC,MAAAA,OAA5C;AAAqD3F,MAAAA,OAArD;AAA8DC,MAAAA,SAA9D;AAAyEiG,MAAAA,iBAAzE;AAA4FN,MAAAA,cAAAA;AAA5F,KAAA,GACJ,KAAKjI,KADP,CAAA;AAGA,IAAA,OAAOuI,iBAAiB,eACtB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAErF,UAAU,CAACb,OAAO,CAACmG,oBAAT,EAA+BlG,SAA/B,CAAA;AAA1B,KAAA,eACE,oBAACmG,aAAD,EAAA;AAAa,MAAA,MAAM,EAAEH,MAArB;AAA6B,MAAA,SAAS,EAAEjG,OAAO,CAACqG,WAAAA;AAAhD,KAAA,EACG,CAACV,OAAO,IAAI,EAAZ,EAAgBW,MAAhB,KAA2B,CAA3B,gBACC,KAAC,CAAA,aAAA,CAAA,MAAD,EADD,IAAA,CAAA,gBAGC,oBAAC,QAAD,EAAA;AACE,MAAA,sBAAsB,EAAE/C,sBAD1B;AAEE,MAAA,QAAQ,EAAEC,QAFZ;AAGE,MAAA,OAAO,EAAEmC,OAHX;AAIE,MAAA,cAAc,EAAEC,cAAAA;AAJlB,KAJJ,CAAA,CADF,CADsB,CAAxB,CAAA;AAgBD,GAAA;;AApCuD,CAAA;AAA7CI,qBACJ7E,YAAY;AACjBoC,EAAAA,sBAAsB,EAAEnC,SAAS,CAACM,MADjB;AAEjB8B,EAAAA,QAAQ,EAAEpC,SAAS,CAACC,MAFH;AAGjBrB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAHT;AAIjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAJJ;AAKjB2E,EAAAA,iBAAiB,EAAE9E,SAAS,CAACI,IAAV,CAAeF,UALjB;AAMjBqE,EAAAA,OAAO,EAAEvE,SAAS,CAAC2E,KANF;AAOjBQ,EAAAA,YAAY,EAAEnF,SAAS,CAACI,IAAV,CAAeF,UAPZ;AAQjBkF,EAAAA,YAAY,EAAEpF,SAAS,CAACI,IARP;AASjByE,EAAAA,MAAM,EAAE7E,SAAS,CAACK,IATD;AAUjBmE,EAAAA,cAAc,EAAExE,SAAS,CAACI,IAVT;AAWjBiF,EAAAA,UAAU,EAAErF,SAAS,CAACG,MAAV,CAAiBD,UAAAA;AAXZ;AADR0E,qBAeJjE,eAAe;;AAuBxB,MAAMC,QAAM,GAAG,OAAO;AACpBmE,EAAAA,oBAAoB,EAAE;AACpBO,IAAAA,SAAS,EAAE,OAAA;AADS,GADF;AAIpBL,EAAAA,WAAW,EAAE;AACX7D,IAAAA,KAAK,EAAE,MADI;AAEXkE,IAAAA,SAAS,EAAE,OAFA;AAGXjE,IAAAA,MAAM,EAAE,MAAA;AAHG,GAAA;AAJO,CAAP,CAAf,CAAA;;AAWA,MAAMkE,MAAM,GAAG/D,UAAU,CAACZ,QAAD,CAAV,CAAmBgE,oBAAnB,CAAf,CAAA;AAEO,MAAMY,MAAI,GAAG;AAClBC,EAAAA,IAAI,EAAE,CAAClJ,KAAD,EAAQmJ,OAAR,KAAoB;AACxB9B,IAAAA,KAAG,CAAC,gBAAD,EAAmBrH,KAAnB,CAAH,CAAA;AACA,IAAA,MAAMoJ,IAAI,GAAGD,OAAO,CAACE,OAAR,EAAb,CAAA;;AAEA,IAAID,IAAAA,IAAI,CAACE,IAAL,IAAaF,IAAI,CAACxD,sBAAL,KAAgC5F,KAAK,CAAC4F,sBAAvD,EAA+E;AAC7E5F,MAAAA,KAAK,CAAC6I,YAAN,CAAmBO,IAAI,CAACG,QAAxB,EAAkCH,IAAI,CAACE,IAAvC,EAA6CtJ,KAAK,CAAC8I,UAAnD,EAA+DM,IAAI,CAACtD,WAApE,EAAiFsD,IAAI,CAACxD,sBAAtF,CAAA,CAAA;AACD,KAFD,MAEO,IAAI,CAACwD,IAAI,CAACE,IAAV,EAAgB;AACrB;AACAtJ,MAAAA,KAAK,CAAC4I,YAAN,CAAmBQ,IAAnB,EAAyBpJ,KAAK,CAAC8I,UAA/B,CAAA,CAAA;AACD,KAAA;AACF,GAXiB;AAYlBU,EAAAA,OAAO,EAAE,CAACxJ,KAAAA;AAAM;AAAP,OAAyB;AAChC,IAAO,OAAA,CAACA,KAAK,CAACwC,QAAd,CAAA;AACD,GAAA;AAdiB,CAAb,CAAA;AAiBP,MAAMiH,UAAU,GAAGC,UAAU,CAC3B,CAAC;AAAEC,EAAAA,GAAAA;AAAF,CAAD,KAAaA,GADc,EAE3BV,MAF2B,EAG3B,CAACW,OAAD,EAAUT,OAAV,MAAuB;AACrBZ,EAAAA,iBAAiB,EAAEqB,OAAO,CAACC,UAAR,EADE;AAErBvB,EAAAA,MAAM,EAAEa,OAAO,CAACb,MAAR,EAAA;AAFa,CAAvB,CAH2B,CAAV,CAOjBU,MAPiB,CAAnB,CAAA;AASA,kBAAeW,GAAG,CAACG,OAAJ,CAAYL,UAAZ,CAAf;;ACjHO,MAAMM,QAAN,SAAuBtI,KAAK,CAACC,SAA7B,CAAuC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAmC5CsI,IAAAA,CAAAA,WAnC4C,GAmC7BC,CAAD,IAAO;AACnB,MAAM,MAAA;AAAEpE,QAAAA,QAAF;AAAY3D,QAAAA,QAAAA;AAAZ,OAAA,GAAyB,KAAKlC,KAApC,CAAA;AACA6F,MAAAA,QAAQ,CAACzD,KAAT,GAAiB6H,CAAjB,CAAA;AACA/H,MAAAA,QAAQ,CAAC2D,QAAD,CAAR,CAAA;AACD,KAvC2C,CAAA;AAAA,GAAA;;AAyC5C5D,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJ2D,MAAAA,sBADI;AAEJC,MAAAA,QAFI;AAGJxD,MAAAA,OAHI;AAIJC,MAAAA,SAJI;AAKJH,MAAAA,aALI;AAMJI,MAAAA,eANI;AAOJV,MAAAA,SAPI;AAQJC,MAAAA,KARI;AASJc,MAAAA,KATI;AAUJsH,MAAAA,YAVI;AAWJlG,MAAAA,QAXI;AAYJiE,MAAAA,cAZI;AAaJkC,MAAAA,WAbI;AAcJtB,MAAAA,YAdI;AAeJpG,MAAAA,YAfI;AAgBJE,MAAAA,UAhBI;AAiBJD,MAAAA,WAjBI;AAkBJG,MAAAA,aAlBI;AAmBJC,MAAAA,cAnBI;AAoBJC,MAAAA,kBApBI;AAqBJC,MAAAA,aAAa,GAAG,EAAA;AArBZ,KAAA,GAsBF,KAAKhD,KAtBT,CAAA;AAwBA,IAAMoK,MAAAA,wBAAwB,GAAG,CAAC,CAACxE,sBAAF,IAA4BA,sBAAsB,KAAK,CAAxF,CAAA;AACA,IAAA,oBACE,oBAAC,IAAD,EAAA;AACE,MAAA,SAAS,EAAE1C,UAAU,CAACb,OAAO,CAACwD,QAAT,EAAmBvD,SAAnB,EAA8B;AACjD,QAACD,CAAAA,OAAO,CAACgI,cAAT,GAA0BH,YAAAA;AADuB,OAA9B,CAAA;AADvB,KAAA,eAKE,KACG,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAACE,wBAAD,gBACC,oBAAC5I,aAAD,EAAA;AACE,MAAA,KAAK,EAAEqE,QAAQ,CAACzD,KADlB;AAEE,MAAA,SAAS,EAAEP,SAFb;AAGE,MAAA,eAAe,EAAEU,eAHnB;AAIE,MAAA,KAAK,EAAET,KAJT;AAKE,MAAA,QAAQ,EAAE,CAAC,CAAC8D,sBAAF,IAA4BA,sBAAsB,KAAK,CALnE;AAME,MAAA,KAAK,EAAEhD,KANT;AAOE,MAAA,QAAQ,EAAE,IAAA,CAAKoH,WAPjB;AAQE,MAAA,QAAQ,EAAEhG,QARZ;AASE,MAAA,YAAY,EAAEvB,YAThB;AAUE,MAAA,WAAW,EAAEC,WAVf;AAWE,MAAA,UAAU,EAAEC,UAXd;AAYE,MAAA,aAAa,EAAEE,aAZjB;AAaE,MAAA,cAAc,EAAEC,cAblB;AAcE,MAAA,kBAAkB,EAAEC,kBAdtB;AAeE,MAAA,aAAa,EAAEC,aAfjB;AAgBE,MAAA,aAAa,EAAEb,aAAAA;AAhBjB,KAAA,CADD,gBAoBC,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,MAAA,SAAS,EAAEE,OAAO,CAACiI,cADrB;AAEE,MAAA,uBAAuB,EAAE;AACvBC,QAAAA,MAAM,EAAE1E,QAAQ,CAACzD,KAAAA;AADM,OAAA;AAF3B,KArBJ,CAAA,EA4BGQ,KAAK,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEP,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoC5H,KAApC,CA5BZ,CALF,eAmCE,oBAAC,WAAD,EAAA;AACE,MAAA,SAAS,EAAEP,OAAO,CAACqG,WADrB;AAEE,MAAA,sBAAsB,EAAE9C,sBAF1B;AAGE,MAAA,QAAQ,EAAEC,QAHZ;AAIE,MAAA,OAAO,EAAEA,QAAQ,CAACmC,OAJpB;AAKE,MAAA,cAAc,EAAEC,cALlB;AAME,MAAA,YAAY,EAAEkC,WANhB;AAOE,MAAA,YAAY,EAAEtB,YAPhB;AAQE,MAAA,UAAU,EAAEhD,QAAQ,CAAC4E,EAAAA;AARvB,KAAA,CAnCF,EA6CGzG,QAAQ,iBACP,KAAA,CAAA,aAAA,CAAC,WAAD,EAAA;AAAa,MAAA,SAAS,EAAE3B,OAAO,CAACqI,OAAAA;AAAhC,KAAA,eACE,oBAAC,YAAD,EAAA;AAAc,MAAA,KAAK,EAAE,QAArB;AAA+B,MAAA,OAAO,EAAE1G,QAAAA;AAAxC,KAAA,CADF,CA9CJ,CADF,CAAA;AAqDD,GAAA;;AAxH2C,CAAA;AAAjC+F,SACJvG,YAAY;AACjBoC,EAAAA,sBAAsB,EAAEnC,SAAS,CAACM,MADjB;AAEjB1B,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAFT;AAGjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAHJ;AAIjBiC,EAAAA,QAAQ,EAAEpC,SAAS,CAACC,MAAV,CAAiBC,UAJV;AAKjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAAV,CAAiBC,UALf;AAMjBgH,EAAAA,qBAAqB,EAAElH,SAAS,CAACM,MANhB;AAOjB6G,EAAAA,oBAAoB,EAAEnH,SAAS,CAACM,MAPf;AAQjBxB,EAAAA,eAAe,EAAEkB,SAAS,CAACI,IARV;AASjBhC,EAAAA,SAAS,EAAE4B,SAAS,CAACM,MATJ;AAUjBjC,EAAAA,KAAK,EAAE2B,SAAS,CAACM,MAVA;AAWjBnB,EAAAA,KAAK,EAAEa,SAAS,CAACG,MAXA;AAYjBsG,EAAAA,YAAY,EAAEzG,SAAS,CAACK,IAZP;AAajBjB,EAAAA,aAAa,EAAEY,SAAS,CAACC,MAbR;AAcjBZ,EAAAA,cAAc,EAAEW,SAAS,CAACC,MAdT;AAejBxB,EAAAA,QAAQ,EAAEuB,SAAS,CAACI,IAfH;AAgBjBG,EAAAA,QAAQ,EAAEP,SAAS,CAACI,IAhBH;AAiBjBoE,EAAAA,cAAc,EAAExE,SAAS,CAACI,IAjBT;AAkBjBsG,EAAAA,WAAW,EAAE1G,SAAS,CAACI,IAlBN;AAmBjBgF,EAAAA,YAAY,EAAEpF,SAAS,CAACI,IAnBP;AAoBjBpB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CApBG;AAwBjBjB,EAAAA,WAAW,EAAEe,SAAS,CAACC,MAxBN;AAyBjBf,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAzBL;AA0BjBf,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAAA;AA1BH;AADRoG,SAiCJ3F,eAAe;;AAyFxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzBoE,EAAAA,WAAW,EAAE;AACXK,IAAAA,SAAS,EAAE,OAAA;AADA,GADY;AAIzBxD,EAAAA,YAAY,EAAE;AACZC,IAAAA,MAAM,EAAE,CAAA;AADI,GAJW;AAOzBkF,EAAAA,OAAO,EAAE;AACPjF,IAAAA,OAAO,EAAE,CADF;AAEPjB,IAAAA,aAAa,EAAE,CAFR;AAGPqG,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHnB,GAPgB;AAYzBE,EAAAA,cAAc,EAAE;AACdC,IAAAA,KAAK,EAAE,MADO;AAEdC,IAAAA,MAAM,EAAE,MAAA;AAFM,GAZS;AAgBzBgG,EAAAA,MAAM,EAAE;AACN/F,IAAAA,OAAO,EAAE,MADH;AAENC,IAAAA,cAAc,EAAE,eAAA;AAFV,GAhBiB;AAoBzBa,EAAAA,QAAQ,EAAE;AACRkF,IAAAA,QAAQ,EAAE,OADF;AAERtF,IAAAA,OAAO,EAAEnB,KAAK,CAACG,OAAN,CAAcC,IAFf;AAGR6B,IAAAA,QAAQ,EAAE,SAAA;AAHF,GApBe;AAyBzB+D,EAAAA,cAAc,EAAE;AACd7E,IAAAA,OAAO,EAAEnB,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADhB;AAEd,IAAO,KAAA,EAAA;AACLc,MAAAA,MAAM,EAAE,CAAA;AADH,KAAA;AAFO,GAzBS;AA+BzB6E,EAAAA,cAAc,EAAE;AACdW,IAAAA,MAAM,EAAE,eAAA;AADM,GA/BS;AAkCzBR,EAAAA,SAAS,EAAE;AACT9C,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETf,IAAAA,KAAK,EAAErC,KAAK,CAACsD,OAAN,CAAchF,KAAd,CAAoBqI,IAFlB;AAGTzG,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHpB,GAlCc;AAuCzBrB,EAAAA,MAAM,EAAE;AACNkB,IAAAA,IAAI,EAAE,GADA;AAENC,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAF9B,GAAA;AAvCiB,CAAZ,CAAf,CAAA;;AA4CA,iBAAeO,UAAU,CAACZ,QAAD,CAAV,CAAmB0F,QAAnB,CAAf;;ACzKO,MAAMmB,MAAN,SAAqBzJ,KAAK,CAACC,SAA3B,CAAqC;AAe1CO,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEI,MAAAA,OAAF;AAAWC,MAAAA,SAAX;AAAsB6I,MAAAA,KAAtB;AAA6B/I,MAAAA,KAA7B;AAAoCgJ,MAAAA,WAApC;AAAiDC,MAAAA,IAAjD;AAAuDC,MAAAA,cAAvD;AAAuEC,MAAAA,OAAvE;AAAgFC,MAAAA,OAAAA;AAAhF,KAAA,GAA4F,KAAKxL,KAAvG,CAAA;AACA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEkD,UAAU,CAACb,OAAO,CAACyI,MAAT,EAAiBxI,SAAjB,CAAA;AAA1B,KACE,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAED,OAAO,CAACoJ,cAAAA;AAAxB,KAAA,eACE,oBAAC,UAAD,EAAA;AAAY,MAAA,OAAO,EAAEF,OAAO,IAAI,OAAhC;AAAyC,MAAA,SAAS,EAAElJ,OAAO,CAACqJ,KAAAA;AAA5D,KAAA,EACGtJ,KADH,CADF,EAIGiJ,IAJH,CADF,eAOE,oBAAC,OAAD,EAAA;AACI,MAAA,KAAK,EAAEG,OAAO,IAAI,EADtB;AAEI,MAAA,OAAO,EAAE;AAAEA,QAAAA,OAAO,EAAEnJ,OAAO,CAACmJ,OAAAA;AAAnB,OAFb;AAGI,MAAA,eAAe,EAAE,EAHrB;AAAA;AAII,MAAA,eAAe,EAAE,IAJrB;;AAAA,KAME,eAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,eACE,oBAAC,SAAD,EAAA;AAAW,MAAA,OAAO,EAAEL,KAApB;AAA2B,MAAA,KAAK,EAAEC,WAAlC;AAA+C,MAAA,QAAQ,EAAEE,cAAAA;AAAzD,KADF,CAAA,CANF,CAPF,CADF,CAAA;AAoBD,GAAA;;AArCyC,CAAA;AAA/BJ,OACJ1H,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAFJ;AAGjBwH,EAAAA,WAAW,EAAE3H,SAAS,CAACG,MAHN;AAIjBuH,EAAAA,KAAK,EAAE1H,SAAS,CAACI,IAAV,CAAeF,UAJL;AAKjBvB,EAAAA,KAAK,EAAEqB,SAAS,CAACG,MAAV,CAAiBD,UALP;AAMjB0H,EAAAA,IAAI,EAAE5H,SAAS,CAACkI,GANC;AAOjBL,EAAAA,cAAc,EAAE7H,SAAS,CAACK,IAPT;AAQjByH,EAAAA,OAAO,EAAE9H,SAAS,CAACG,MARF;AASjB4H,EAAAA,OAAO,EAAE/H,SAAS,CAACG,MAAAA;AATF;AADRsH,OAaJ9G,eAAe;;AA0BxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzBwG,EAAAA,MAAM,EAAE;AACN/F,IAAAA,OAAO,EAAE,MADH;AAENC,IAAAA,cAAc,EAAE,eAFV;AAGN4G,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHtB,GADiB;AAMzB+G,EAAAA,cAAc,EAAE;AACd1G,IAAAA,OAAO,EAAE,MADK;AAEd0C,IAAAA,UAAU,EAAE,QAAA;AAFE,GANS;AAUzB+D,EAAAA,OAAO,EAAE;AACP9D,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD/B;AAEPmE,IAAAA,UAAU,EAAE,KAFL;AAGPlH,IAAAA,QAAQ,EAAE,OAAA;AAHH,GAAA;AAVgB,CAAZ,CAAf,CAAA;;AAgBA,eAAeM,UAAU,CAACZ,QAAD,CAAV,CAAmB6G,MAAnB,CAAf;;AC/DO,MAAMY,yBAAyB,GAAIC,MAAD,IAAY;AACnD,EAAI,IAAA;AAAEC,IAAAA,UAAF;AAAcC,IAAAA,UAAd;AAA0BC,IAAAA,aAAAA;AAA1B,GAA4CH,GAAAA,MAAM,IAAI,EAA1D,CAAA;AACAC,EAAAA,UAAU,GAAGA,UAAU,IAAI,CAA3B,CAAA;AAEA,EAAA,MAAMG,iBAAiB,GACrB,+BAAA,GACA,iEADA,IAECD,aAAa,GAAI,CAAA,YAAA,EAAcA,aAAc,CAAA,CAAA,CAAhC,GAAqC,EAFnD,CAAA,GAGA,UAHA,IAICA,aAAa,GAAG,GAAH,GAAS,EAJvB,CAAA,GAKA,WALA,IAMCF,UAAU,GAAI,CAA6BA,2BAAAA,EAAAA,UAAW,mBAA5C,GAAiE,EAN5E,CAOCC,IAAAA,UAAU,GAAI,CAAiBA,eAAAA,EAAAA,UAAW,6BAAhC,GAA+D,EAP1E,IAQA,mEATF,CAAA;AAWA,EAAA,OAAO,6BAA6BE,iBAApC,CAAA;AACD,CAhBM;;AAmBA,MAAMC,kBAAkB,GAAG;AAAEC,EAAAA,OAAO,EAAE,KAAX;AAAkB7J,EAAAA,QAAQ,EAAE,IAA5B;AAAkC8J,EAAAA,SAAS,EAAE,gBAAA;AAA7C,CAA3B;;AAGA,MAAMC,SAAS,GAAInE,KAAD,IACvB,CAACA,KAAK,IAAI,EAAV,EAAcoE,MAAd,CAAqB,CAACC,GAAD,EAAMC,GAAN,KAAc;AACjC,EAAOC,OAAAA,IAAI,CAACF,GAAL,CAASA,GAAT,EAAcC,GAAG,CAAC/D,MAAlB,CAAP,CAAA;AACD,CAFD,EAEG,CAFH,CADK,CAAA;AAKA,MAAMiE,qBAAqB,GAAIC,KAAD,IAAW;AAC9C,EAAM,MAAA;AAAEC,IAAAA,eAAe,GAAG,EAAA;AAApB,GAA2BD,GAAAA,KAAK,IAAI,EAA1C,CAAA;AACA,EAAOC,OAAAA,eAAe,CAACN,MAAhB,CAAuB,CAACC,GAAD,EAAMM,UAAN,KAAqB;AAAA,IAAA,IAAA,mBAAA,CAAA;;AACjD,IAAA,MAAMC,iBAAiB,GAAG,CAAAD,UAAU,IAAV,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,mBAAA,GAAAA,UAAU,CAAE/E,OAAZ,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,mBAAA,CAAqBW,MAArB,KAA+B,CAAzD,CAAA;AACA,IAAMsE,MAAAA,UAAU,GAAG,CAAAF,UAAU,IAAA,IAAV,YAAAA,UAAU,CAAEG,kBAAZ,KAAkC,EAArD,CAAA;AACA,IAAA,MAAMjB,UAAU,GAAGU,IAAI,CAACF,GAAL,CAASO,iBAAT,EAA4BT,SAAS,CAACU,UAAD,CAArC,CAAnB,CAAA;AACA,IAAA,OAAOhB,UAAU,GAAGQ,GAAb,GAAmBR,UAAnB,GAAgCQ,GAAvC,CAAA;AACD,GALM,EAKJ,CALI,CAAP,CAAA;AAMD,CARM;;ACrBP,MAAMpI,QAAM,GAAIC,KAAD,KAAY;AACzB6I,EAAAA,QAAQ,EAAE;AACRC,IAAAA,UAAU,EAAE,KAAA;AADJ,GADe;AAIzBC,EAAAA,cAAc,EAAE;AACdxC,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADnB;AAEdG,IAAAA,KAAK,EAAE,MAAA;AAFO,GAAA;AAJS,CAAZ,CAAf,CAAA;;AAUO,MAAMyI,QAAQ,GAAGrI,UAAU,CAACZ,QAAD,CAAV,CACtB,CAAC;AACCkJ,EAAAA,gBADD;AAEClL,EAAAA,OAFD;AAGCF,EAAAA,aAHD;AAICK,EAAAA,QAJD;AAKCgL,EAAAA,MALD;AAMC/K,EAAAA,YAND;AAOCP,EAAAA,QAPD;AAQCQ,EAAAA,WARD;AASCC,EAAAA,UATD;AAUCE,EAAAA,aAVD;AAWCC,EAAAA,cAXD;AAYCC,EAAAA,kBAZD;AAaCC,EAAAA,aAAa,EAAbA,cAAa,GAAG,EAAA;AAbjB,CAAD,KAcM;AACJ,EAAM,MAAA;AAAEyK,IAAAA,SAAF;AAAaxN,IAAAA,sBAAAA;AAAb,GAAA,GAAwCkC,aAA9C,CAAA;AAEA,EACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,KAAK,EAAE;AACLiL,MAAAA,UAAU,EAAG,CAAA,EAAA,EAAIG,gBAAgB,GAAG,CAAE,CADjC,CAAA;AAEL1I,MAAAA,KAAK,EAAE,MAAA;AAFF,KAAA;AADT,GAAA,eAME,oBAAC,cAAD,EAAA;AAAgB,IAAA,KAAK,EAAC,WAAtB;AAAkC,IAAA,SAAS,EAAExC,OAAO,CAACgL,cAAAA;AAArD,GAAA,eACE,oBAAC,YAAD,EAAA;AACE,IAAA,QAAQ,EAAE7K,QADZ;AAEE,IAAA,MAAM,EAAEgL,MAFV;AAGE,IAAA,QAAQ,EAAEtL,QAHZ;AAIE,IAAA,YAAY,EAAEO,YAJhB;AAKE,IAAA,QAAQ,EAAE,KALZ;AAME,IAAA,WAAW,EAAEC,WANf;AAOE,IAAA,WAAW,EAAE3C,cAAc,CAAC0N,SAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEnK,kBAAZ,EAAgCrD,sBAAhC,CAP7B;AAQE,IAAA,UAAU,EAAE0C,UARd;AASE,IAAA,aAAa,EAAEE,aATjB;AAUE,IAAA,cAAc,EAAEC,cAVlB;AAWE,IAAA,kBAAkB,EAAEC,kBAXtB;AAYE,IAAA,uBAAuB,EAAE,CAAC;AAAEQ,MAAAA,QAAQ,EAAE,SAAA;AAAZ,KAAD,EAA0B;AAAEA,MAAAA,QAAQ,EAAE,SAAA;AAAZ,KAA1B,CAZ3B;AAaE,IAAA,aAAa,EAAEP,cAAAA;AAbjB,GAAA,CADF,CANF,CADF,CAAA;AA0BD,CA5CqB,CAAjB;;ACKP,MAAMqB,QAAM,GAAIC,KAAD,KAAY;AACzBoJ,EAAAA,UAAU,EAAE;AACV9B,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AADzB,GADa;AAIzBiJ,EAAAA,gBAAgB,EAAE;AAChB5I,IAAAA,OAAO,EAAE,MADO;AAEhB6I,IAAAA,UAAU,EAAG,CAAEtJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAFlB,EAAA,CAAA;AAGhBmJ,IAAAA,aAAa,EAAG,CAAA,EAAEvJ,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AAHrB,GAJO;AASzBoJ,EAAAA,GAAG,EAAE;AACH/I,IAAAA,OAAO,EAAE,MADN;AAEHgJ,IAAAA,mBAAmB,EAAE,gBAFlB;AAGHF,IAAAA,aAAa,EAAG,CAAEvJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAHlC,EAAA,CAAA;AAIH+C,IAAAA,UAAU,EAAE,UAJT;AAKH5C,IAAAA,KAAK,EAAE,MALJ;AAMHmJ,IAAAA,SAAS,EAAE1J,KAAK,CAACG,OAAN,CAAcC,IANtB;AAOHkH,IAAAA,YAAY,EAAE,CAAA,GAAItH,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAP7B,GAToB;AAkBzByI,EAAAA,QAAQ,EAAE;AACRC,IAAAA,UAAU,EAAE,KAAA;AADJ,GAlBe;AAqBzBC,EAAAA,cAAc,EAAE;AACdxI,IAAAA,KAAK,EAAE,MAAA;AADO,GArBS;AAwBzB2G,EAAAA,OAAO,EAAE;AACP9D,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD/B;AAEPmE,IAAAA,UAAU,EAAE,KAFL;AAGPlH,IAAAA,QAAQ,EAAE,OAAA;AAHH,GAxBgB;AA6BzB6F,EAAAA,SAAS,EAAE;AACT9C,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETf,IAAAA,KAAK,EAAErC,KAAK,CAACsD,OAAN,CAAchF,KAAd,CAAoBqI,IAFlB;AAGTJ,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAHxB,GAAA;AA7Bc,CAAZ,CAAf,CAAA;;AAoCO,MAAMuJ,UAAN,SAAyBxM,KAAK,CAACC,SAA/B,CAAyC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,IAAA,IAAA,CAsB9CwM,KAtB8C,GAsBtC;AACNrM,MAAAA,SAAS,EAAE,IAAA;AADL,KAtBsC,CAAA;;AAAA,IAkD9CqC,IAAAA,CAAAA,GAlD8C,GAkDxC,MAAM;AACV,MAAM,MAAA;AAAE2I,QAAAA,KAAF;AAASa,QAAAA,UAAU,EAAES,aAAAA;AAArB,OAAA,GAAuC,KAAKnO,KAAlD,CAAA;AACA,MAAM,MAAA;AAAEuN,QAAAA,gBAAF;AAAoBT,QAAAA,eAApB;AAAqCsB,QAAAA,qBAAAA;AAArC,OAAA,GAA+DvB,KAArE,CAAA;AAEA,MAAMpC,MAAAA,EAAE,GAAG4D,WAAK,CAACC,mBAAN,CACTzB,KAAK,CAACa,UAAN,CAAiBxF,GAAjB,CAAsBqG,CAAD,IAAOA,CAAC,CAAC9D,EAA9B,CADS,EAET,CAFS,CAAX,CAAA;AAIA,MAAA,MAAM+D,IAAI,GAAG;AAAE/D,QAAAA,EAAF;AAAMrI,QAAAA,KAAK,EAAE,WAAcqI,GAAAA,EAAAA;AAA3B,OAAb,CAAA;AACA,MAAMgE,MAAAA,WAAW,GAAG5B,KAAK,CAACa,UAAN,CAAiB/E,MAAjB,GAA0B4E,gBAA1B,KAA+C,CAAnE,CAAA;AACA,MAAA,MAAME,SAAS,GAAG,CAAC,GAAGZ,KAAK,CAACY,SAAV,CAAlB,CAAA;;AAEA,MAAA,IAAIgB,WAAJ,EAAiB;AACfhB,QAAAA,SAAS,CAACiB,IAAV,CAAe,EAAf,CAAA,CAAA;AACD,OAAA;;AAED,MAAA,IAAA,CAAKC,QAAL,CACE;AACE9M,QAAAA,SAAS,EAAEsM,aAAa,CAACxF,MAAAA;AAD3B,OADF,EAIE,MAAM;AACJ,QAAK3I,IAAAA,CAAAA,KAAL,CAAW4O,cAAX,CAA0B;AACxBnB,UAAAA,SADwB;AAExBC,UAAAA,UAAU,EAAEb,KAAK,CAACa,UAAN,CAAiBmB,MAAjB,CAAwB,CAACL,IAAD,CAAxB,CAFY;AAGxB1B,UAAAA,eAAe,EAAEsB,qBAAqB,GAClC,CAAC,GAAGtB,eAAJ,EAAqB;AAAEjH,YAAAA,QAAQ,EAAE4E,EAAZ;AAAgBzC,YAAAA,OAAO,EAAE,EAAzB;AAA6BkF,YAAAA,kBAAkB,EAAE,EAAA;AAAjD,WAArB,CADkC,GAElCJ,eAAAA;AALoB,SAA1B,CAAA,CAAA;AAOD,OAZH,CAAA,CAAA;AAcD,KAhF6C,CAAA;;AAAA,IAkF9CvK,IAAAA,CAAAA,eAlF8C,GAkF5B,MAAM;AACtB,MAAA,IAAA,CAAKoM,QAAL,CAAc;AACZ9M,QAAAA,SAAS,EAAE,IAAA;AADC,OAAd,CAAA,CAAA;AAGD,KAtF6C,CAAA;;AAAA,IAwF9CsC,IAAAA,CAAAA,MAxF8C,GAwFpC0B,QAAD,IAAc;AACrB,MAAM,MAAA;AAAEgH,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAA,MAAM8B,KAAK,GAAG+K,KAAK,CAACa,UAAN,CAAiBoB,SAAjB,CAA4BP,CAAD,IAAOA,CAAC,CAAC9D,EAAF,KAAS5E,QAAQ,CAAC4E,EAApD,CAAd,CAAA;;AAEA,MAAA,IAAI3I,KAAK,KAAK,CAAC,CAAf,EAAkB;AAChB+K,QAAAA,KAAK,CAACa,UAAN,CAAiBqB,MAAjB,CAAwBjN,KAAxB,EAA+B,CAA/B,CAAA,CAAA;AACA+K,QAAAA,KAAK,CAACC,eAAN,GAAwBkC,cAAc,CAACnJ,QAAQ,CAAC4E,EAAV,EAAcoC,KAAK,CAACC,eAApB,CAAtC,CAAA;AACA8B,QAAAA,cAAc,CAAC/B,KAAD,CAAd,CAAA;AACD,OAAA;AACF,KAjG6C,CAAA;;AAAA,IAmG9CoC,IAAAA,CAAAA,MAnG8C,GAmGpC9G,CAAD,IAAO;AACd,MAAM,MAAA;AAAEuF,QAAAA,UAAAA;AAAF,OAAA,GAAiB,KAAK1N,KAA5B,CAAA;AACA,MAAA,MAAM8B,KAAK,GAAG4L,UAAU,CAACoB,SAAX,CAAsBP,CAAD,IAAOA,CAAC,CAAC9D,EAAF,KAAStC,CAAC,CAACsC,EAAvC,CAAd,CAAA;;AAEA,MAAA,IAAI3I,KAAK,KAAK,CAAC,CAAf,EAAkB;AAChB4L,QAAAA,UAAU,CAACqB,MAAX,CAAkBjN,KAAlB,EAAyB,CAAzB,EAA4BqG,CAA5B,CAAA,CAAA;AACA,QAAKnI,IAAAA,CAAAA,KAAL,CAAW4O,cAAX,CAA0B;AAAElB,UAAAA,UAAAA;AAAF,SAA1B,CAAA,CAAA;AACD,OAAA;AACF,KA3G6C,CAAA;;AAAA,IAAA,IAAA,CA6G9CwB,mBA7G8C,GA6GxB,CAACC,WAAD,EAAcrG,UAAd,KAA6B;AACjD,MAAM,MAAA;AAAE+D,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAI,IAAA;AAAEgI,QAAAA,OAAO,GAAG,EAAZ;AAAgB8E,QAAAA,eAAe,GAAG,EAAlC;AAAsCsC,QAAAA,qBAAqB,GAAG,CAAA;AAA9D,OAAoEvC,GAAAA,KAAK,IAAI,EAAjF,CAAA;AACA,MAAA,MAAMlH,MAAM,GAAG,CAACqC,OAAO,IAAI,EAAZ,EAAgBqH,IAAhB,CAAsB1J,MAAD,IAAYA,MAAM,CAAC8E,EAAP,KAAc0E,WAAW,CAAC1E,EAA3D,CAAf,CAAA;AACAqC,MAAAA,eAAe,GAAGwC,oBAAoB,CAACH,WAAW,CAAC1E,EAAb,EAAiB8E,SAAjB,EAA4BzG,UAA5B,EAAwC,CAAxC,EAA2C+D,KAAK,CAACC,eAAjD,CAAtC,CAJiD;;AAMjD,MAAA,IAAInH,MAAM,CAAC6J,aAAP,KAAyB,CAA7B,EAAgC;AAC9B1C,QAAAA,eAAe,GAAG2C,6BAA6B,CAACN,WAAD,EAAcrG,UAAd,EAA0BgE,eAA1B,CAA/C,CAAA;AACD,OAAA;;AACD,MAAA,MAAM4C,kBAAkB,GAAG9C,qBAAqB,CAACC,KAAD,CAAhD,CATiD;;AAWjD+B,MAAAA,cAAc,CAAC;AACb9B,QAAAA,eADa;AAEbsC,QAAAA,qBAAqB,EACnBA,qBAAqB,KAAK,CAA1B,IAA+BA,qBAAqB,GAAGM,kBAAvD,GACIN,qBAAqB,GAAG,CAD5B,GAEIA,qBAAAA;AALO,OAAD,CAAd,CAAA;AAOD,KA/H6C,CAAA;;AAAA,IAiI9CO,IAAAA,CAAAA,wBAjI8C,GAiInB,CAAC9J,QAAD,EAAWF,MAAX,EAAmBG,WAAnB,KAAmC;AAC5D,MAAM,MAAA;AAAE+G,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAA,MAAM8M,eAAe,GAAG8C,wBAAwB,CAACjK,MAAM,CAAC8E,EAAR,EAAY5E,QAAQ,CAAC4E,EAArB,EAAyB3E,WAAzB,EAAsC+G,KAAK,CAACC,eAA5C,CAAhD,CAAA;AAEA8B,MAAAA,cAAc,CAAC;AAAE9B,QAAAA,eAAAA;AAAF,OAAD,CAAd,CAAA;AACD,KAtI6C,CAAA;;AAAA,IAwI9C+C,IAAAA,CAAAA,UAxI8C,GAwIjC,CAACtG,QAAD,EAAWD,IAAX,EAAiBwG,EAAjB,EAAqBhK,WAArB,KAAqC;AAChD,MAAM,MAAA;AAAE+G,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAI,IAAA;AAAEgI,QAAAA,OAAF;AAAW8E,QAAAA,eAAe,GAAG,EAA7B;AAAiCsC,QAAAA,qBAAqB,GAAG,CAAA;AAAzD,OAA+DvC,GAAAA,KAAK,IAAI,EAA5E,CAAA;AACA,MAAA,MAAMlH,MAAM,GAAG,CAACqC,OAAO,IAAI,EAAZ,EAAgBqH,IAAhB,CAAsB1J,MAAD,IAAYA,MAAM,CAAC8E,EAAP,KAAclB,QAA/C,CAAf,CAAA;;AACA,MAAA,IAAIuG,EAAE,KAAKxG,IAAP,IAAe,CAAC3D,MAApB,EAA4B;AAC1B,QAAA,OAAA;AACD,OAAA;;AACD,MAAA,IAAIA,MAAM,CAAC6J,aAAP,KAAyB,CAA7B,EAAgC;AAC9B1C,QAAAA,eAAe,GAAGwC,oBAAoB,CAAC3J,MAAM,CAAC8E,EAAR,EAAYnB,IAAZ,EAAkBwG,EAAlB,EAAsBhK,WAAtB,EAAmCgH,eAAnC,CAAtC,CAAA;AACAA,QAAAA,eAAe,GAAG2C,6BAA6B,CAAC9J,MAAD,EAASmK,EAAT,EAAahD,eAAb,CAA/C,CAAA;AACD,OAHD,MAGO,IAAInH,MAAM,CAAC6J,aAAP,KAAyB,CAA7B,EAAgC;AACrC1C,QAAAA,eAAe,GAAGwC,oBAAoB,CAAC3J,MAAM,CAAC8E,EAAR,EAAY8E,SAAZ,EAAuBO,EAAvB,EAA2B,CAA3B,EAA8BhD,eAA9B,CAAtC,CAAA;AACD,OAAA;;AACD,MAAA,MAAM4C,kBAAkB,GAAG9C,qBAAqB,CAACC,KAAD,CAAhD,CAbgD;;AAehD+B,MAAAA,cAAc,CAAC;AACb9B,QAAAA,eADa;AAEbsC,QAAAA,qBAAqB,EACnBA,qBAAqB,KAAK,CAA1B,IAA+BA,qBAAqB,GAAGM,kBAAvD,GACIN,qBAAqB,GAAG,CAD5B,GAEIA,qBAAAA;AALO,OAAD,CAAd,CAAA;AAOD,KA9J6C,CAAA;;AAAA,IAAA,IAAA,CAgK9CW,cAhK8C,GAgK7B,CAACC,GAAD,EAAMlO,KAAN,KAAgB;AAC/B,MAAM,MAAA;AAAE+K,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAK7M,KAAvB,CAAA;AACA,MAAM,MAAA;AAAEyN,QAAAA,SAAAA;AAAF,OAAA,GAAgBZ,KAAtB,CAAA;AACA,MAAA,MAAMoD,YAAY,GAAG,CAAC,GAAGxC,SAAJ,CAArB,CAAA;;AAEA,MAAA,IAAIwC,YAAY,CAACtH,MAAb,GAAsB7G,KAA1B,EAAiC;AAC/BmO,QAAAA,YAAY,CAACvB,IAAb,CAAkBsB,GAAlB,CAAA,CAAA;AACD,OAFD,MAEO;AACLC,QAAAA,YAAY,CAACnO,KAAD,CAAZ,GAAsBkO,GAAtB,CAAA;AACD,OAAA;;AAED,MAAKhQ,IAAAA,CAAAA,KAAL,CAAW4O,cAAX,CAA0B;AACxBnB,QAAAA,SAAS,EAAEwC,YAAAA;AADa,OAA1B,CAAA,CAAA;AAGD,KA9K6C,CAAA;AAAA,GAAA;;AA0B9CrO,EAAAA,iBAAiB,GAAG;AAClB,IAAI,IAAA;AACF;AACA,MAAA,MAAMsO,OAAO,GAAGC,QAAQ,CAACC,WAAT,CAAqB,IAArB,CAAhB,CAAA;AAEAC,MAAAA,UAAU,CAACH,OAAD,CAAV,CAAA;AACD,KALD,CAKE,OAAOI,CAAP,EAAU;AACV;AACAC,MAAAA,OAAO,CAAC3N,KAAR,CAAc,iBAAd,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AAED4N,EAAAA,kBAAkB,GAAG;AACnB,IAAI,IAAA;AACF;AACA,MAAA,MAAMN,OAAO,GAAGC,QAAQ,CAACC,WAAT,CAAqB,IAArB,CAAhB,CAAA;AAEAC,MAAAA,UAAU,CAACH,OAAD,CAAV,CAAA;AACD,KALD,CAKE,OAAOI,CAAP,EAAU;AACV;AACAC,MAAAA,OAAO,CAAC3N,KAAR,CAAc,iBAAd,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AAgIDX,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJ4K,MAAAA,KADI;AAEJxK,MAAAA,OAFI;AAGJC,MAAAA,SAHI;AAIJoL,MAAAA,UAJI;AAKJjL,MAAAA,YALI;AAMJM,MAAAA,kBANI;AAOJL,MAAAA,WAPI;AAQJC,MAAAA,UARI;AASJR,MAAAA,aATI;AAUJwI,MAAAA,qBAVI;AAWJC,MAAAA,oBAXI;AAYJ5H,MAAAA,aAAa,GAAG,EAAA;AAZZ,KAAA,GAaF,KAAKhD,KAbT,CAAA;AAeA,IAAM,MAAA;AAAEuN,MAAAA,gBAAF;AAAoBE,MAAAA,SAApB;AAA+BgD,MAAAA,MAAAA;AAA/B,KAAA,GAA0C5D,KAAhD,CAAA;AACA,IAAM,MAAA;AAAE6D,MAAAA,gBAAF;AAAoBC,MAAAA,eAApB;AAAqCC,MAAAA,gBAAAA;AAArC,KAA0DH,GAAAA,MAAM,IAAI,EAA1E,CAAA;AACA,IAAM,MAAA;AAAEvE,MAAAA,aAAF;AAAiBrJ,MAAAA,aAAa,GAAG,EAAjC;AAAqCC,MAAAA,cAAc,GAAG,EAAA;AAAtD,KAA6DX,GAAAA,aAAa,IAAI,EAApF,CAAA;AACA,IAAA,MAAM0O,WAAW,GAAG;AAClB9C,MAAAA,mBAAmB,EAAG,CAAA,OAAA,EAASR,gBAAiB,CAAA,MAAA,CAAA;AAD9B,KAApB,CAAA;AAIA,IAAA,MAAMpB,iBAAiB,GAAGL,yBAAyB,CAAC3J,aAAD,CAAnD,CAAA;AAEA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEe,UAAU,CAACb,OAAO,CAACqL,UAAT,EAAqBpL,SAArB,CAAA;AAA1B,KAAA,eACE,oBAAC4I,QAAD,EAAA;AACE,MAAA,KAAK,EAAC,YADR;AAEE,MAAA,WAAW,EAAC,gBAFd;AAGE,MAAA,KAAK,EAAE,IAAA,CAAKhH,GAHd;AAIE,MAAA,IAAI,eACF,KAAA,CAAA,aAAA,CAAC,OAAD,EAAA;AACE,QAAA,OAAO,EAAE;AAAEsH,UAAAA,OAAO,EAAEnJ,OAAO,CAACmJ,OAAAA;AAAnB,SADX;AAEE,QAAA,oBAAoB,EAFtB,IAAA;AAGE,QAAA,oBAAoB,EAHtB,IAAA;AAIE,QAAA,SAAS,EAAE,OAJb;AAKE,QAAA,KAAK,EAAEW,iBAAAA;AALT,OAAA,eAOE,oBAAC2E,WAAD,EAAA;AAAM,QAAA,QAAQ,EAAE,OAAhB;AAAyB,QAAA,KAAK,EAAE,SAAhC;AAA2C,QAAA,KAAK,EAAE;AAAEC,UAAAA,UAAU,EAAE,KAAA;AAAd,SAAA;AAAlD,OAAA,CAPF,CALJ;AAeE,MAAA,cAAc,EAAE7E,aAAa,IAAIwB,UAAjB,IAA+BxB,aAAa,KAAKwB,UAAU,CAAC/E,MAAAA;AAf9E,KAAA,CADF,eAmBE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEtG,OAAO,CAACsL,gBAAxB;AAA0C,MAAA,KAAK,EAAEkD,WAAAA;AAAjD,KACGnD,EAAAA,UAAU,CAACxF,GAAX,CAAe,CAACrC,QAAD,EAAW/D,KAAX,KAAqB;AACnC,MAAA,MAAMkP,WAAW,GAAGlP,KAAK,GAAGyL,gBAAR,KAA6B,CAAjD,CAAA;AACA,MAAA,MAAM0D,QAAQ,GAAGnP,KAAK,GAAGyL,gBAAzB,CAAA;AAEA,MACE,oBAAA,KAAA,CAAA,aAAA,CAAC,KAAD,CAAO,QAAP,EAAA;AAAgB,QAAA,GAAG,EAAEzL,KAAAA;AAArB,OACGkP,EAAAA,WAAW,iBACV,KAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,QAAA,gBAAgB,EAAEzD,gBADpB;AAEE,QAAA,QAAQ,EAAE,KAFZ;AAGE,QAAA,QAAQ,EAAE0D,QAHZ;AAIE,QAAA,MAAM,EAAExD,SAAS,CAACwD,QAAD,CAAT,IAAuB,EAJjC;AAKE,QAAA,QAAQ,EAAGjB,GAAD,IAAS,IAAA,CAAKD,cAAL,CAAoBC,GAApB,EAAyBiB,QAAzB,CALrB;AAME,QAAA,YAAY,EAAExO,YANhB;AAOE,QAAA,WAAW,EAAEC,WAPf;AAQE,QAAA,UAAU,EAAEC,UARd;AASE,QAAA,aAAa,EAAGE,aAAa,IAAIA,aAAa,CAACsK,QAAhC,IAA6CvC,oBAT9D;AAUE,QAAA,cAAc,EAAG9H,cAAc,IAAIA,cAAc,CAACqK,QAAlC,IAA+CxC,qBAVjE;AAWE,QAAA,kBAAkB,EAAE5H,kBAXtB;AAYE,QAAA,aAAa,EAAEC,aAZjB;AAaE,QAAA,aAAa,EAAEb,aAAAA;AAbjB,OAFJ,CAAA,eAmBE,oBAAC4H,UAAD,EAAA;AACE,QAAA,YAAY,EAAEtH,YADhB;AAEE,QAAA,SAAS,EAAE,IAAKyL,CAAAA,KAAL,CAAWrM,SAFxB;AAGE,QAAA,eAAe,EAAE,IAAA,CAAKU,eAHxB;AAIE,QAAA,KAAK,EAAET,KAJT;AAKE,QAAA,QAAQ,EAAE+D,QALZ;AAME,QAAA,KAAK,EAAE+K,gBAAgB,IAAIA,gBAAgB,CAAC/K,QAAQ,CAAC4E,EAAV,CAN7C;AAOE,QAAA,QAAQ,EAAE,IAAA,CAAKwE,MAPjB;AAQE,QAAA,QAAQ,EAAE,MAAM,KAAK9K,MAAL,CAAY0B,QAAZ,CARlB;AASE,QAAA,WAAW,EAAE,IAAA,CAAKqJ,mBATpB;AAUE,QAAA,YAAY,EAAE,CAAC3F,QAAD,EAAWD,IAAX,EAAiBwG,EAAjB,EAAqBhK,WAArB,KAAqC,IAAK+J,CAAAA,UAAL,CAAgBtG,QAAhB,EAA0BD,IAA1B,EAAgCwG,EAAhC,EAAoChK,WAApC,CAVrD;AAWE,QAAA,WAAW,EAAEpD,WAXf;AAYE,QAAA,UAAU,EAAEC,UAZd;AAaE,QAAA,cAAc,EAAE,CAACgD,MAAD,EAASG,WAAT,KAAyB,IAAK6J,CAAAA,wBAAL,CAA8B9J,QAA9B,EAAwCF,MAAxC,EAAgDG,WAAhD,CAb3C;AAcE,QAAA,aAAa,EAAGjD,aAAa,IAAIA,aAAa,CAACqO,aAAhC,IAAkDtG,oBAdnE;AAeE,QAAA,cAAc,EAAG9H,cAAc,IAAIA,cAAc,CAACoO,aAAlC,IAAoDvG,qBAftE;AAgBE,QAAA,kBAAkB,EAAE5H,kBAhBtB;AAiBE,QAAA,aAAa,EAAEZ,aAAAA;AAjBjB,OAAA,CAnBF,CADF,CAAA;AAyCD,KA7CA,CADH,CAnBF,EAoEGuO,gBAAgB,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAErO,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoCkG,gBAApC,CApEvB,EAqEGC,eAAe,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEtO,OAAO,CAACmI,SAAAA;AAAxB,KAAoCmG,EAAAA,eAApC,CArEtB,CADF,CAAA;AAyED,GAAA;;AAlR6C,CAAA;AAAnC1C,WACJzK,YAAY;AACjBmH,EAAAA,qBAAqB,EAAElH,SAAS,CAACM,MADhB;AAEjB6G,EAAAA,oBAAoB,EAAEnH,SAAS,CAACM,MAFf;AAGjBtB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CAHG;AAOjBZ,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAPH;AAWjBtB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAXT;AAYjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAZJ;AAajB8J,EAAAA,UAAU,EAAEjK,SAAS,CAAC2E,KAbL;AAcjBwG,EAAAA,cAAc,EAAEnL,SAAS,CAACI,IAdT;AAejBgJ,EAAAA,KAAK,EAAEpJ,SAAS,CAACC,MAAV,CAAiBC,UAfP;AAgBjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAAV,CAAiBC,UAhBf;AAiBjBjB,EAAAA,WAAW,EAAEe,SAAS,CAACC,MAjBN;AAkBjBf,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AAlBL;AAoRrB,mBAAemB,UAAU,CAACZ,QAAD,CAAV,CAAmB4J,UAAnB,CAAf;;ACrUA,MAAM5J,QAAM,GAAIC,KAAD,KAAY;AACzBoJ,EAAAA,UAAU,EAAE;AACV9B,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,GAAA;AADzB,GADa;AAIzBiJ,EAAAA,gBAAgB,EAAE;AAChB5I,IAAAA,OAAO,EAAE,MADO;AAEhB6I,IAAAA,UAAU,EAAG,CAAEtJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAFlB,EAAA,CAAA;AAGhBmJ,IAAAA,aAAa,EAAG,CAAA,EAAEvJ,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AAHrB,GAJO;AASzBoJ,EAAAA,GAAG,EAAE;AACH/I,IAAAA,OAAO,EAAE,MADN;AAEHgJ,IAAAA,mBAAmB,EAAE,gBAFlB;AAGHF,IAAAA,aAAa,EAAG,CAAEvJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAHlC,EAAA,CAAA;AAIH+C,IAAAA,UAAU,EAAE,UAJT;AAKH5C,IAAAA,KAAK,EAAE,MALJ;AAMHmJ,IAAAA,SAAS,EAAE1J,KAAK,CAACG,OAAN,CAAcC,IANtB;AAOHkH,IAAAA,YAAY,EAAE,CAAA,GAAItH,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAP7B,GAToB;AAkBzByI,EAAAA,QAAQ,EAAE;AACRC,IAAAA,UAAU,EAAE,KAAA;AADJ,GAAA;AAlBe,CAAZ,CAAf,CAAA;;AAuBO,MAAM+D,kBAAN,SAAiC1P,KAAK,CAACC,SAAvC,CAAiD;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAAA,IAAA,CAoBtDwN,mBApBsD,GAoBhC,CAACC,WAAD,EAAcrG,UAAd,KAA6B;AACjD,MAAM,MAAA;AACJsI,QAAAA,QADI;AAEJvE,QAAAA,KAAK,EAAE;AAAEC,UAAAA,eAAF;AAAmB9E,UAAAA,OAAnB;AAA4BoH,UAAAA,qBAAqB,GAAG,CAAA;AAApD,SAFH;AAGJR,QAAAA,cAAAA;AAHI,OAAA,GAIF,KAAK5O,KAJT,CAAA;AAMA,MAAA,MAAM2F,MAAM,GAAGqC,OAAO,CAACqH,IAAR,CAAclH,CAAD,IAAOA,CAAC,CAACsC,EAAF,KAAS0E,WAAW,CAAC1E,EAAzC,CAAf,CAAA;AAEAqC,MAAAA,eAAe,CAACuE,OAAhB,CAAyB9C,CAAD,IAAO;AAC7B,QAAA,IAAIA,CAAC,CAAC1I,QAAF,KAAeiD,UAAnB,EAA+B;AAC7ByF,UAAAA,CAAC,CAACrB,kBAAF,GAAuBqB,CAAC,CAACrB,kBAAF,IAAwB,EAA/C,CAAA;;AAEA,UAAA,IAAI,CAACqB,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,CAAL,EAAqC;AACnC7C,YAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,IAAiC,EAAjC,CAAA;AACD,WAAA;;AAED7C,UAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,EAA+B1C,IAA/B,CAAoCS,WAAW,CAAC1E,EAAhD,CAAA,CAAA;;AACA,UAAI9E,IAAAA,MAAM,CAAC6J,aAAP,IAAwB7J,MAAM,CAAC6J,aAAP,KAAyB,CAArD,EAAwD;AACtDjB,YAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,CAAA,GAAiC7C,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,EAA+B5E,MAA/B,CAAsC,CAAC8E,GAAD,EAAMC,YAAN,KAAuB;AAC5F,cAAA,IAAIA,YAAY,KAAK5L,MAAM,CAAC8E,EAA5B,EAAgC;AAC9B,gBAAA,MAAM+G,UAAU,GAAGF,GAAG,CAACxC,SAAJ,CAAe3G,CAAD,IAAOA,CAAC,KAAKxC,MAAM,CAAC8E,EAAlC,CAAnB,CAAA;;AACA,gBAAA,IAAI+G,UAAU,KAAK,CAAC,CAApB,EAAuB;AACrBF,kBAAAA,GAAG,CAAC5C,IAAJ,CAAS6C,YAAT,CAAA,CAAA;AACD,iBAAA;AACF,eALD,MAKO;AACLD,gBAAAA,GAAG,CAAC5C,IAAJ,CAAS6C,YAAT,CAAA,CAAA;AACD,eAAA;;AAED,cAAA,OAAOD,GAAP,CAAA;AACD,aAXgC,EAW9B,EAX8B,CAAjC,CAAA;AAYD,WAAA;;AAED,UAAA,OAAO/C,CAAP,CAAA;AACD,SAxBD,MAwBO;AACL,UAAIA,IAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,CAAkCzL,IAAAA,MAAM,CAAC6J,aAAP,KAAyB,CAA/D,EAAkE;AAChEjB,YAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,CAAiC7C,GAAAA,CAAC,CAACrB,kBAAF,CAAqBkE,QAArB,CAA+BK,CAAAA,MAA/B,CAAuCtJ,CAAD,IAAOA,CAAC,KAAKgH,WAAW,CAAC1E,EAA/D,CAAjC,CAAA;AACA,YAAA,OAAO8D,CAAP,CAAA;AACD,WAAA;AACF,SAAA;;AAED,QAAA,OAAOA,CAAP,CAAA;AACD,OAjCD,CAAA,CAAA;AAmCA,MAAMmB,MAAAA,kBAAkB,GAAG9C,qBAAqB,CAAC,IAAA,CAAK5M,KAAL,CAAW6M,KAAZ,CAAhD,CA5CiD;;AA8CjD+B,MAAAA,cAAc,CAAC;AACb9B,QAAAA,eADa;AAEbsC,QAAAA,qBAAqB,EACnBA,qBAAqB,KAAK,CAA1B,IAA+BA,qBAAqB,GAAGM,kBAAvD,GACIN,qBAAqB,GAAG,CAD5B,GAEIA,qBAAAA;AALO,OAAD,CAAd,CAAA;AAOD,KAzEqD,CAAA;;AAAA,IAAA,IAAA,CA2EtDS,UA3EsD,GA2EzC,CAACtG,QAAD,EAAWD,IAAX,EAAiBwG,EAAjB,EAAqBhK,WAArB,EAAkC4L,cAAlC,KAAqD;AAChE,MAAM,MAAA;AAAE7E,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAI,IAAA;AAAEgI,QAAAA,OAAF;AAAW8E,QAAAA,eAAe,GAAG,EAA7B;AAAiCsC,QAAAA,qBAAqB,GAAG,CAAA;AAAzD,OAA+DvC,GAAAA,KAAK,IAAI,EAA5E,CAAA;AACA,MAAA,MAAMlH,MAAM,GAAG,CAACqC,OAAO,IAAI,EAAZ,EAAgBqH,IAAhB,CAAsB1J,MAAD,IAAYA,MAAM,CAAC8E,EAAP,KAAclB,QAA/C,CAAf,CAAA;AACAuD,MAAAA,eAAe,GAAG6E,qBAAqB,CACrCpI,QADqC,EAErCD,IAFqC,EAGrCwG,EAHqC,EAIrChK,WAJqC,EAKrCgH,eALqC,EAMrC4E,cANqC,EAOrC/L,MAPqC,IAOrCA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAE6J,aAP6B,CAAvC,CAAA;AAUA,MAAME,MAAAA,kBAAkB,GAAG9C,qBAAqB,CAAC,IAAA,CAAK5M,KAAL,CAAW6M,KAAZ,CAAhD,CAdgE;;AAgBhE+B,MAAAA,cAAc,CAAC;AACb9B,QAAAA,eADa;AAEbsC,QAAAA,qBAAqB,EACnBA,qBAAqB,KAAK,CAA1B,IAA+BA,qBAAqB,GAAGM,kBAAvD,GACIN,qBAAqB,GAAG,CAD5B,GAEIA,qBAAAA;AALO,OAAD,CAAd,CAAA;AAOD,KAlGqD,CAAA;;AAAA,IAoGtDO,IAAAA,CAAAA,wBApGsD,GAoG3B,CAAC9J,QAAD,EAAWF,MAAX,EAAmBG,WAAnB,KAAmC;AAC5D,MAAM,MAAA;AAAE+G,QAAAA,KAAF;AAASuE,QAAAA,QAAT;AAAmBxC,QAAAA,cAAAA;AAAnB,OAAA,GAAsC,KAAK5O,KAAjD,CAAA;AAEA,MAAA,MAAM8M,eAAe,GAAG8E,yBAAyB,CAC/CjM,MAAM,CAAC8E,EADwC,EAE/C5E,QAAQ,CAAC4E,EAFsC,EAG/C3E,WAH+C,EAI/CsL,QAJ+C,EAK/CvE,KAAK,CAACC,eALyC,CAAjD,CAAA;AAQA8B,MAAAA,cAAc,CAAC;AAAE9B,QAAAA,eAAAA;AAAF,OAAD,CAAd,CAAA;AACD,KAhHqD,CAAA;AAAA,GAAA;;AAkHtD7K,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJmP,MAAAA,QADI;AAEJvE,MAAAA,KAFI;AAGJ1K,MAAAA,aAHI;AAIJE,MAAAA,OAJI;AAKJC,MAAAA,SALI;AAMJoL,MAAAA,UANI;AAOJjL,MAAAA,YAPI;AAQJE,MAAAA,UARI;AASJI,MAAAA,kBATI;AAUJC,MAAAA,aAAa,GAAG,EAAA;AAVZ,KAAA,GAWF,KAAKhD,KAXT,CAAA;AAYA,IAAM,MAAA;AAAEuN,MAAAA,gBAAF;AAAoBkD,MAAAA,MAApB;AAA4BhD,MAAAA,SAAAA;AAA5B,KAAA,GAA0CZ,KAAhD,CAAA;AACA,IAAM,MAAA;AAAEgF,MAAAA,kBAAAA;AAAF,KAAyBpB,GAAAA,MAAM,IAAI,EAAzC,CAAA;AAEA,IAAA,MAAMI,WAAW,GAAG;AAClB9C,MAAAA,mBAAmB,EAAG,CAAA,OAAA,EAASR,gBAAiB,CAAA,MAAA,CAAA;AAD9B,KAApB,CAAA;AAGA,IAAMrD,MAAAA,YAAY,GAAG2H,kBAAkB,GAAGA,kBAAkB,CAAC/P,KAAnB,KAA6BsP,QAAhC,GAA2C,KAAlF,CAAA;AAEA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAElO,UAAU,CAACb,OAAO,CAACqL,UAAT,EAAqBpL,SAArB,CAAA;AAA1B,KACE,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAED,OAAO,CAACsL,gBAAxB;AAA0C,MAAA,KAAK,EAAEkD,WAAAA;AAAjD,KACGnD,EAAAA,UAAU,CAACxF,GAAX,CAAe,CAACrC,QAAD,EAAW/D,KAAX,KAAqB;AACnC,MAAA,MAAMkP,WAAW,GAAGlP,KAAK,GAAGyL,gBAAR,KAA6B,CAAjD,CAAA;AACA,MAAA,MAAM0D,QAAQ,GAAGnP,KAAK,GAAGyL,gBAAzB,CAAA;AAEA,MACE,oBAAA,KAAA,CAAA,aAAA,CAAC,KAAD,CAAO,QAAP,EAAA;AAAgB,QAAA,GAAG,EAAEzL,KAAAA;AAArB,OAAA,EACGkP,WAAW,iBACV,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,QAAA,KAAK,EAAE;AACL5D,UAAAA,UAAU,EAAG,CAAA,EAAA,EAAIG,gBAAgB,GAAG,CAAE,CADjC,CAAA;AAEL1I,UAAAA,KAAK,EAAE,MAAA;AAFF,SADT;AAKE,QAAA,SAAS,EAAExC,OAAO,CAAC8K,QALrB;AAME,QAAA,uBAAuB,EAAE;AACvB5C,UAAAA,MAAM,EAAEkD,SAAS,CAACwD,QAAD,CAAT,IAAuB,EAAA;AADR,SAAA;AAN3B,OAFJ,CAAA,eAcE,oBAAClH,UAAD,EAAA;AACE,QAAA,GAAG,EAAEjI,KADP;AAEE,QAAA,sBAAsB,EAAEsP,QAF1B;AAGE,QAAA,YAAY,EAAE3O,YAHhB;AAIE,QAAA,YAAY,EAAEyH,YAAY,IAAI2H,kBAAkB,CAAChM,QAAnB,KAAgCA,QAAQ,CAAC4E,EAJzE;AAKE,QAAA,QAAQ,EAAE5E,QALZ;AAME,QAAA,UAAU,EAAElD,UANd;AAOE,QAAA,WAAW,EAAE,IAAA,CAAKuM,mBAPpB;AAQE,QAAA,cAAc,EAAE,CAACvJ,MAAD,EAASG,WAAT,KAAyB,IAAK6J,CAAAA,wBAAL,CAA8B9J,QAA9B,EAAwCF,MAAxC,EAAgDG,WAAhD,CAR3C;AASE,QAAA,YAAY,EAAE,CAACyD,QAAD,EAAWD,IAAX,EAAiBwG,EAAjB,EAAqBhK,WAArB,EAAkC4L,cAAlC,KACZ,IAAK7B,CAAAA,UAAL,CAAgBtG,QAAhB,EAA0BD,IAA1B,EAAgCwG,EAAhC,EAAoChK,WAApC,EAAiD4L,cAAjD,CAVJ;AAYE,QAAA,kBAAkB,EAAE3O,kBAZtB;AAaE,QAAA,aAAa,EAAEC,aAbjB;AAcE,QAAA,aAAa,EAAEb,aAAAA;AAdjB,OAAA,CAdF,CADF,CAAA;AAiCD,KArCA,CADH,CADF,CADF,CAAA;AA4CD,GAAA;;AAnLqD,CAAA;AAA3CgP,mBACJ3N,YAAY;AACjB4N,EAAAA,QAAQ,EAAE3N,SAAS,CAACM,MAAV,CAAiBJ,UADV;AAEjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAFR;AAGjBjB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CAHG;AAOjBtB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAPT;AAQjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MARJ;AASjB8J,EAAAA,UAAU,EAAEjK,SAAS,CAAC2E,KATL;AAUjBwG,EAAAA,cAAc,EAAEnL,SAAS,CAACI,IAVT;AAWjBgJ,EAAAA,KAAK,EAAEpJ,SAAS,CAACC,MAAV,CAAiBC,UAXP;AAYjBZ,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAZH;AAgBjBhB,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AAhBL;AAqLrB,2BAAemB,UAAU,CAACZ,QAAD,CAAV,CAAmB8M,kBAAnB,CAAf;;;;ACpNA,IAAI,sBAAsB,GAAGhR,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,UAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAe,SAAA,GAAA,UAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAI,MAAM,GAAG,sBAAsB,CAACK,KAAgB,CAAC,CAAC;AACtD;AACA,IAAI,cAAc,GAAG,sBAAsB,CAACK,eAAgC,CAAC,CAAC;AAC9E;AACA,IAAI,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACvL,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,CAAC,EAAE,iBAAiB;AACtB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1C,EAAE,CAAC,EAAE,iCAAiC;AACtC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACnB;AACA,SAAA,GAAA,UAAA,CAAA,OAAe,GAAG,QAAQ;;ACJ1B,MAAMwG,GAAG,GAAGC,KAAK,CAAC,0CAAD,CAAjB,CAAA;;AAEA,MAAMwK,OAAO,GAAI9R,KAAD,IAAW;AACzB,EAAIA,IAAAA,KAAK,CAAC+R,eAAV,EAA2B;AACzB,IAAA,OAAO,IAAP,CAAA;AACD,GAAA;;AACD,EAAMC,MAAAA,KAAK,GAAGhS,KAAK,CAAC2F,MAAN,CAAa6J,aAAb,IAA8B,CAA5C,CAAA;;AACA,EAAIwC,IAAAA,KAAK,KAAK,CAAd,EAAiB;AACf,IAAA,OAAO,IAAP,CAAA;AACD,GAFD,MAEO;AACL,IAAA,OAAOhS,KAAK,CAACiS,oBAAN,GAA6BD,KAApC,CAAA;AACD,GAAA;AACF,CAVD,CAAA;;AAYO,MAAMhM,MAAN,SAAqBvE,KAAK,CAACC,SAA3B,CAAqC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAkC1CwQ,IAAAA,CAAAA,aAlC0C,GAkCzBhM,OAAD,IAAa;AAC3B,MAAM,MAAA;AAAEhE,QAAAA,QAAF;AAAYyD,QAAAA,MAAAA;AAAZ,OAAA,GAAuB,KAAK3F,KAAlC,CAAA;AACA2F,MAAAA,MAAM,CAACO,OAAP,GAAiBA,OAAjB,CAAA;AACAhE,MAAAA,QAAQ,CAACyD,MAAD,CAAR,CAAA;AACD,KAtCyC,CAAA;;AAAA,IAwC1CwM,IAAAA,CAAAA,mBAxC0C,GAwCpB,MAAM;AAC1B,MAAM,MAAA;AAAEjQ,QAAAA,QAAF;AAAYyD,QAAAA,MAAAA;AAAZ,OAAA,GAAuB,KAAK3F,KAAlC,CAAA;;AACA,MAAA,IAAI2F,MAAM,CAAC6J,aAAP,KAAyB,CAA7B,EAAgC;AAC9B7J,QAAAA,MAAM,CAAC6J,aAAP,GAAuB,CAAvB,CAAA;AACD,OAFD,MAEO;AACL7J,QAAAA,MAAM,CAAC6J,aAAP,GAAuB,CAAvB,CAAA;AACD,OAAA;;AACDtN,MAAAA,QAAQ,CAACyD,MAAD,CAAR,CAAA;AACD,KAhDyC,CAAA;;AAAA,IAkD1CyM,IAAAA,CAAAA,eAlD0C,GAkDvBC,uBAAD,IAA6BA,uBAAuB,KAAKjG,kBAAkB,CAACE,SAlDpD,CAAA;AAAA,GAAA;;AAoD1CrK,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJoQ,MAAAA,uBADI;AAEJhQ,MAAAA,OAFI;AAGJC,MAAAA,SAHI;AAIJH,MAAAA,aAJI;AAKJwD,MAAAA,MALI;AAMJpD,MAAAA,eANI;AAOJV,MAAAA,SAPI;AAQJC,MAAAA,KARI;AASJkC,MAAAA,QATI;AAUJuE,MAAAA,iBAVI;AAWJ+J,MAAAA,iBAXI;AAYJC,MAAAA,kBAZI;AAaJ9P,MAAAA,YAbI;AAcJE,MAAAA,UAdI;AAeJD,MAAAA,WAfI;AAgBJE,MAAAA,KAhBI;AAiBJC,MAAAA,aAjBI;AAkBJC,MAAAA,cAlBI;AAmBJC,MAAAA,kBAAAA;AAnBI,KAAA,GAoBF,KAAK/C,KApBT,CAAA;AAsBA,IAAA,MAAMwS,sBAAsB,GAAG,IAAA,CAAKJ,eAAL,CAAqBC,uBAArB,CAA/B,CAAA;AACA,IAAA,MAAMI,SAAS,GAAGX,OAAO,CAAC,IAAA,CAAK9R,KAAN,CAAzB,CAAA;AAEA,IAAA,oBACE,oBAAC,IAAD,EAAA;AAAM,MAAA,SAAS,EAAEkD,UAAU,CAACb,OAAO,CAACsD,MAAT,EAAiBrD,SAAjB,CAAA;AAA3B,KAAA,eACE,oBAAC,WAAD,EAAA;AAAa,MAAA,SAAS,EAAED,OAAO,CAACqI,OAAAA;AAAhC,KACG4H,EAAAA,iBAAiB,CAChB/J,iBAAiB,eACf,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,MAAA,SAAS,EAAErF,UAAU,CAACb,OAAO,CAACqQ,UAAT,EAAqBD,SAAS,KAAK,KAAd,IAAuBpQ,OAAO,CAACsQ,YAApD,CAAA;AAA3B,KAAA,eACE,oBAACC,SAAD,EAAA;AAAY,MAAA,KAAK,EAAEH,SAAS,GAAG,SAAH,GAAe,UAAA;AAA3C,KADF,CAAA,CADe,CADD,CADpB,CADF,EAUGF,kBAAkB,eACjB,KACE,CAAA,aAAA,CAAA,MAAA,EAAA,IAAA,eAAA,KAAA,CAAA,aAAA,CAAC/Q,aAAD,EAAA;AACE,MAAA,YAAY,EAAEiB,YADhB;AAEE,MAAA,SAAS,EAAEZ,SAFb;AAGE,MAAA,eAAe,EAAEU,eAHnB;AAIE,MAAA,KAAK,EAAET,KAJT;AAKE,MAAA,KAAK,EAAE6D,MAAM,CAACO,OALhB;AAME,MAAA,QAAQ,EAAE,IAAA,CAAKgM,aANjB;AAOE,MAAA,QAAQ,EAAElO,QAPZ;AAQE,MAAA,WAAW,EAAEtB,WARf;AASE,MAAA,UAAU,EAAEC,UATd;AAUE,MAAA,KAAK,EAAEC,KAVT;AAWE,MAAA,aAAa,EAAEC,aAXjB;AAYE,MAAA,cAAc,EAAEC,cAZlB;AAaE,MAAA,kBAAkB,EAAEC,kBAbtB;AAcE,MAAA,aAAa,EAAEZ,aAAAA;AAdjB,KADF,CAAA,EAiBGS,KAAK,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEP,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoC5H,KAApC,CAjBZ,CADiB,CAVrB,eAgCE,oBAAC,WAAD,EAAA;AAAa,MAAA,SAAS,EAAEP,OAAO,CAACqI,OAAAA;AAAhC,KAAA,eACE,oBAAC,YAAD,EAAA;AAAc,MAAA,KAAK,EAAE,QAArB;AAA+B,MAAA,OAAO,EAAE1G,QAAAA;AAAxC,KAAA,CADF,EAEGwO,sBAAsB,iBACrB,KAAA,CAAA,aAAA,CAAC,QAAD,EAAA;AACE,MAAA,IAAI,EADN,IAAA;AAEE,MAAA,KAAK,EAAE,sBAFT;AAGE,MAAA,OAAO,EAAE7M,MAAM,CAAC6J,aAAP,KAAyB,CAHpC;AAIE,MAAA,QAAQ,EAAE,IAAK2C,CAAAA,mBAAAA;AAJjB,KAAA,CAHJ,CAhCF,CADF,CAAA;AA8CD,GAAA;;AA5HyC,CAAA;AAA/BnM,OACJxC,YAAY;AACjB6O,EAAAA,uBAAuB,EAAE5O,SAAS,CAACG,MADlB;AAEjBvB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAFT;AAGjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAHJ;AAIjBzB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAAV,CAAiBC,UAJf;AAKjBgC,EAAAA,MAAM,EAAElC,SAAS,CAACC,MAAV,CAAiBC,UALR;AAMjB4E,EAAAA,iBAAiB,EAAE9E,SAAS,CAACI,IANZ;AAOjBtB,EAAAA,eAAe,EAAEkB,SAAS,CAACI,IAPV;AAQjBhC,EAAAA,SAAS,EAAE4B,SAAS,CAACM,MARJ;AASjBjC,EAAAA,KAAK,EAAE2B,SAAS,CAACM,MATA;AAUjBgO,EAAAA,eAAe,EAAEtO,SAAS,CAACK,IAVV;AAWjBhB,EAAAA,cAAc,EAAEW,SAAS,CAACC,MAXT;AAYjBb,EAAAA,aAAa,EAAEY,SAAS,CAACC,MAZR;AAajBxB,EAAAA,QAAQ,EAAEuB,SAAS,CAACI,IAAV,CAAeF,UAbR;AAcjBK,EAAAA,QAAQ,EAAEP,SAAS,CAACI,IAAV,CAAeF,UAdR;AAejB2O,EAAAA,iBAAiB,EAAE7O,SAAS,CAACI,IAAV,CAAeF,UAfjB;AAgBjB4O,EAAAA,kBAAkB,EAAE9O,SAAS,CAACI,IAAV,CAAeF,UAhBlB;AAiBjBsO,EAAAA,oBAAoB,EAAExO,SAAS,CAACM,MAAV,CAAiBJ,UAjBtB;AAkBjBlB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CAlBG;AAsBjBjB,EAAAA,WAAW,EAAEe,SAAS,CAACC,MAtBN;AAuBjBd,EAAAA,KAAK,EAAEa,SAAS,CAACG,MAvBA;AAwBjBb,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAxBH;AA4BjBhB,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AA5BL;AADRkC,OAgCJ5B,eAAe;;AA8FxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzBoG,EAAAA,OAAO,EAAE;AACPjF,IAAAA,OAAO,EAAE,CADF;AAEPT,IAAAA,cAAc,EAAE,eAAA;AAFT,GADgB;AAKzBW,EAAAA,MAAM,EAAE;AACNoF,IAAAA,QAAQ,EAAE,OADJ;AAENtF,IAAAA,OAAO,EAAEnB,KAAK,CAACG,OAAN,CAAcC,IAFjB;AAGN6B,IAAAA,QAAQ,EAAE,SAAA;AAHJ,GALiB;AAUzBmM,EAAAA,UAAU,EAAE;AACVG,IAAAA,MAAM,EAAE,MAAA;AADE,GAVa;AAazBF,EAAAA,YAAY,EAAE;AACZE,IAAAA,MAAM,EAAE,SAAA;AADI,GAbW;AAgBzBrI,EAAAA,SAAS,EAAE;AACT9C,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETf,IAAAA,KAAK,EAAErC,KAAK,CAACsD,OAAN,CAAchF,KAAd,CAAoBqI,IAFlB;AAGTzG,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHpB,GAAA;AAhBc,CAAZ,CAAf,CAAA;;AAuBA,MAAMoO,YAAY,GAAG7N,UAAU,CAACZ,QAAD,CAAV,CAAmB2B,MAAnB,CAArB,CAAA;AAEO,MAAMiD,IAAI,GAAG;AAClB6I,EAAAA,OADkB;AAElBiB,EAAAA,SAAS,EAAG/S,KAAD,IAAW;AACpB,IAAA,MAAMgT,GAAG,GAAG;AACVvI,MAAAA,EAAE,EAAEzK,KAAK,CAAC2F,MAAN,CAAa8E,EADP;AAEV3I,MAAAA,KAAK,EAAE9B,KAAK,CAAC8B,KAAAA;AAFH,KAAZ,CAAA;AAIAuF,IAAAA,GAAG,CAAC,kBAAD,EAAqB2L,GAArB,CAAH,CAAA;AACA,IAAA,OAAOA,GAAP,CAAA;AACD,GATiB;AAUlBC,EAAAA,OAAO,EAAE,CAACjT,KAAD,EAAQmJ,OAAR,KAAoB;AAC3B,IAAA,IAAI,CAACA,OAAO,CAAC+J,OAAR,EAAL,EAAwB;AACtB,MAAA,MAAM9J,IAAI,GAAGD,OAAO,CAACE,OAAR,EAAb,CAAA;;AACA,MAAID,IAAAA,IAAI,CAACN,UAAT,EAAqB;AACnBzB,QAAAA,GAAG,CAAC,8BAAD,CAAH,CAAA;AACArH,QAAAA,KAAK,CAACmT,cAAN,CAAqB/J,IAArB,CAAA,CAAA;AACD,OAAA;AACF,KAAA;AACF,GAAA;AAlBiB,CAAb,CAAA;AAqBA,MAAMgK,UAAU,GAAG;AACxBlK,EAAAA,IAAI,EAAE,CAAClJ,KAAD,EAAQmJ,OAAR,KAAoB;AACxB9B,IAAAA,GAAG,CAAC,gBAAD,EAAmBrH,KAAnB,CAAH,CAAA;AACA,IAAA,MAAMoJ,IAAI,GAAGD,OAAO,CAACE,OAAR,EAAb,CAAA;AACArJ,IAAAA,KAAK,CAACqT,gBAAN,CAAuBjK,IAAI,CAACtH,KAA5B,EAAmC9B,KAAK,CAAC8B,KAAzC,CAAA,CAAA;AACD,GALuB;AAMxB0H,EAAAA,OAAO,EAAE,CAACxJ,KAAD,EAAQmJ,OAAR,KAAoB;AAC3B,IAAA,MAAMC,IAAI,GAAGD,OAAO,CAACE,OAAR,EAAb,CAAA;AACA,IAAOrJ,OAAAA,KAAK,CAAC2F,MAAN,CAAa8E,EAAb,KAAoBrB,IAAI,CAACqB,EAAhC,CAAA;AACD,GAAA;AATuB,CAAnB,CAAA;AAYP,eAAed,GAAG,CAACG,OAAJ,CACbwJ,IAAI,CACFC,UAAU,CACR,CAAC;AAAE5J,EAAAA,GAAAA;AAAF,CAAD,KAAaA,GADL,EAERV,IAFQ,EAGR,CAACW,OAAD,EAAUT,OAAV,MAAuB;AACrBmJ,EAAAA,iBAAiB,EAAE1I,OAAO,CAAC4J,UAAR,EADE;AAErBjB,EAAAA,kBAAkB,EAAE3I,OAAO,CAAC6J,WAAR,EAFC;AAGrBC,EAAAA,UAAU,EAAEvK,OAAO,CAACuK,UAAR,EAAA;AAHS,CAAvB,CAHQ,CADR,EAUFhK,UAAU,CACR,CAAC;AAAEC,EAAAA,GAAAA;AAAF,CAAD,KAAaA,GADL,EAERyJ,UAFQ,EAGR,CAACxJ,OAAD,EAAUT,OAAV,MAAuB;AACrBZ,EAAAA,iBAAiB,EAAEqB,OAAO,CAACC,UAAR,EADE;AAErBvB,EAAAA,MAAM,EAAEa,OAAO,CAACb,MAAR,EAAA;AAFa,CAAvB,CAHQ,CAVR,CAAJ,CAkBEwK,YAlBF,CADa,CAAf;;AChNO,MAAMa,MAAN,SAAqBlS,KAAK,CAACC,SAA3B,CAAqC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAW1CsI,IAAAA,CAAAA,WAX0C,GAW5B,CAAC;AAAE4J,MAAAA,MAAAA;AAAF,KAAD,KAAgB;AAC5B,MAAK5T,IAAAA,CAAAA,KAAL,CAAW4O,cAAX,CAA0B;AAAEiF,QAAAA,YAAY,EAAED,MAAM,CAACE,KAAAA;AAAvB,OAA1B,CAAA,CAAA;AACD,KAbyC,CAAA;AAAA,GAAA;;AAe1C7R,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEI,MAAAA,OAAF;AAAWC,MAAAA,SAAX;AAAsByJ,MAAAA,MAAtB;AAA8BpJ,MAAAA,UAAAA;AAA9B,KAAA,GAA6C,KAAK3C,KAAxD,CAAA;AAEA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEkD,UAAU,CAACb,OAAO,CAAC0J,MAAT,EAAiBzJ,SAAjB,CAAA;AAA1B,KAAA,eACE,oBAAC,SAAD,EAAA;AACE,MAAA,SAAS,EAAED,OAAO,CAACD,KADrB;AAEE,MAAA,eAAe,EAAE;AACf2R,QAAAA,MAAM,EAAE,IAAA;AADO,OAFnB;AAKE,MAAA,OAAO,EAAC,UALV;AAME,MAAA,KAAK,EAAC,OANR;AAOE,MAAA,KAAK,EAAEhI,MAAM,CAAC8H,YAPhB;AAQE,MAAA,QAAQ,EAAE,IAAA,CAAK7J,WARjB;AASE,MAAA,UAAU,EAAErH,UAAAA;AATd,KAAA,CADF,CADF,CAAA;AAeD,GAAA;;AAjCyC,CAAA;AAA/BgR,OACJnQ,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAFJ;AAGjBmI,EAAAA,MAAM,EAAEtI,SAAS,CAACC,MAHD;AAIjBkL,EAAAA,cAAc,EAAEnL,SAAS,CAACI,IAJT;AAKjBlB,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AALL;AADR6P,OASJvP,eAAe;;AA2BxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzByH,EAAAA,MAAM,EAAE;AACNlB,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IADpB;AAENkH,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAFtB,GADiB;AAKzBtC,EAAAA,KAAK,EAAE;AACLyC,IAAAA,KAAK,EAAE,MAAA;AADF,GAAA;AALkB,CAAZ,CAAf,CAAA;;AAUA,eAAeI,UAAU,CAACZ,QAAD,CAAV,CAAmBsP,MAAnB,CAAf;;ACzCO,MAAMK,OAAN,SAAsBvS,KAAK,CAACC,SAA5B,CAAsC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,IAAA,IAAA,CAwB3CwM,KAxB2C,GAwBnC;AACNrM,MAAAA,SAAS,EAAE,IAAA;AADL,KAxBmC,CAAA;;AAAA,IA4B3CoS,IAAAA,CAAAA,YA5B2C,GA4B3BtO,MAAD,IAAY;AACzB,MAAM,MAAA;AAAEqC,QAAAA,OAAF;AAAW4G,QAAAA,cAAAA;AAAX,OAAA,GAA8B,KAAK5O,KAAzC,CAAA;AACA,MAAA,MAAM8B,KAAK,GAAGkG,OAAO,CAAC8G,SAAR,CAAmBoF,CAAD,IAAOA,CAAC,CAACzJ,EAAF,KAAS9E,MAAM,CAAC8E,EAAzC,CAAd,CAAA;;AACA,MAAA,IAAI3I,KAAK,KAAK,CAAC,CAAf,EAAkB;AAChBkG,QAAAA,OAAO,CAAC+G,MAAR,CAAejN,KAAf,EAAsB,CAAtB,EAAyB6D,MAAzB,CAAA,CAAA;AACAiJ,QAAAA,cAAc,CAAC;AAAE5G,UAAAA,OAAAA;AAAF,SAAD,CAAd,CAAA;AACD,OAAA;AACF,KAnC0C,CAAA;;AAAA,IAqC3CmM,IAAAA,CAAAA,mBArC2C,GAqCpBnC,KAAD,IAAW;AAC/B,MAAM,MAAA;AAAEhK,QAAAA,OAAAA;AAAF,OAAA,GAAc,KAAKhI,KAAzB,CAAA;AACA,MAAA,OAAOoU,KAAK,CAACC,OAAN,CAAcrM,OAAd,KAA0BA,OAAO,CAACsM,KAAR,CAAenM,CAAD,IAAOA,CAAC,CAACqH,aAAF,KAAoBwC,KAAzC,CAAjC,CAAA;AACD,KAxC0C,CAAA;;AAAA,IA0C3CuC,IAAAA,CAAAA,SA1C2C,GA0C/B,MAAM;AAAA,MAAA,IAAA,cAAA,CAAA;;AAChB,MAAM,MAAA;AAAE3F,QAAAA,cAAF;AAAkB/B,QAAAA,KAAlB;AAAyB7E,QAAAA,OAAO,EAAEwM,UAAAA;AAAlC,OAAA,GAAiD,KAAKxU,KAA5D,CAAA;AACA,MAAI,IAAA;AAAEyU,QAAAA,gBAAAA;AAAF,OAAuB5H,GAAAA,KAAK,IAAI,EAApC,CAAA;;AAEA,MAAI4H,IAAAA,gBAAgB,IAAI,CAAA,CAAA,cAAA,GAAA5H,KAAK,CAAC7E,OAAN,KAAeW,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,cAAAA,CAAAA,MAAf,KAAyB8L,gBAAjD,EAAmE;AACjE,QAAA,OAAA;AACD,OAAA;;AAED,MAAMhK,MAAAA,EAAE,GAAG4D,WAAK,CAACC,mBAAN,CACTzB,KAAK,CAAC7E,OAAN,CAAcE,GAAd,CAAmBqG,CAAD,IAAOA,CAAC,CAAC9D,EAA3B,CADS,EAET,CAFS,CAAX,CAAA;AAIA,MAAA,MAAM+D,IAAI,GAAG;AAAE/D,QAAAA,EAAF;AAAMvE,QAAAA,OAAO,EAAE,SAAYuE,GAAAA,EAAAA;AAA3B,OAAb,CAAA;AAEA,MAAA,IAAA,CAAKkE,QAAL,CACE;AACE9M,QAAAA,SAAS,EAAE2S,UAAU,CAAC7L,MAAAA;AADxB,OADF,EAIE,MAAM;AACJiG,QAAAA,cAAc,CAAC;AAAE5G,UAAAA,OAAO,EAAE6E,KAAK,CAAC7E,OAAN,CAAc6G,MAAd,CAAqB,CAACL,IAAD,CAArB,CAAA;AAAX,SAAD,CAAd,CAAA;AACD,OANH,CAAA,CAAA;AAQD,KAhE0C,CAAA;;AAAA,IAkE3CjM,IAAAA,CAAAA,eAlE2C,GAkEzB,MAAM;AACtB,MAAA,IAAA,CAAKoM,QAAL,CAAc;AACZ9M,QAAAA,SAAS,EAAE,IAAA;AADC,OAAd,CAAA,CAAA;AAGD,KAtE0C,CAAA;;AAAA,IAwE3C6S,IAAAA,CAAAA,YAxE2C,GAwE3B/O,MAAD,IAAY;AACzB,MAAM,MAAA;AAAEkH,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK5O,KAAvC,CAAA;AACA,MAAA,MAAM8B,KAAK,GAAG+K,KAAK,CAAC7E,OAAN,CAAc8G,SAAd,CAAyBP,CAAD,IAAOA,CAAC,CAAC9D,EAAF,KAAS9E,MAAM,CAAC8E,EAA/C,CAAd,CAAA;;AACA,MAAA,IAAI3I,KAAK,KAAK,CAAC,CAAf,EAAkB;AAChB+K,QAAAA,KAAK,CAAC7E,OAAN,CAAc+G,MAAd,CAAqBjN,KAArB,EAA4B,CAA5B,CAAA,CAAA;AACA+K,QAAAA,KAAK,CAACC,eAAN,GAAwB6H,gBAAgB,CAAChP,MAAM,CAAC8E,EAAR,EAAYoC,KAAK,CAACC,eAAlB,CAAxC,CAAA;AACA8B,QAAAA,cAAc,CAAC/B,KAAD,CAAd,CAAA;AACD,OAAA;AACF,KAhF0C,CAAA;;AAAA,IAAA,IAAA,CAkF3CwG,gBAlF2C,GAkFxB,CAACuB,SAAD,EAAYC,OAAZ,KAAwB;AACzC,MAAM,MAAA;AAAEhI,QAAAA,KAAF;AAAS+B,QAAAA,cAAAA;AAAT,OAA4B,GAAA,IAAA,CAAK5O,KAAL,IAAc,EAAhD,CAAA;AACA,MAAI,IAAA;AAAEgI,QAAAA,OAAAA;AAAF,OAAc6E,GAAAA,KAAK,IAAI,EAA3B,CAAA;AACA7E,MAAAA,OAAO,GAAGqL,gBAAgB,CAACrL,OAAD,EAAU4M,SAAV,EAAqBC,OAArB,CAA1B,CAAA;AACAjG,MAAAA,cAAc,CAAC;AAAE5G,QAAAA,OAAAA;AAAF,OAAD,CAAd,CAAA;AACD,KAvF0C,CAAA;AAAA,GAAA;;AAyF3C/F,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEJ,MAAAA,SAAAA;AAAF,KAAA,GAAgB,KAAKqM,KAA3B,CAAA;AACA,IAAM,MAAA;AACJ7L,MAAAA,OADI;AAEJC,MAAAA,SAFI;AAGJ0F,MAAAA,OAHI;AAIJ6E,MAAAA,KAJI;AAKJpK,MAAAA,YALI;AAMJM,MAAAA,kBANI;AAOJ6L,MAAAA,cAPI;AAQJjM,MAAAA,UARI;AASJD,MAAAA,WATI;AAUJP,MAAAA,aAVI;AAWJyI,MAAAA,oBAXI;AAYJD,MAAAA,qBAAAA;AAZI,KAAA,GAaF,KAAK3K,KAbT,CAAA;AAcA,IAAM,MAAA;AAAEyQ,MAAAA,MAAF;AAAUqE,MAAAA,8BAAV;AAA0C/C,MAAAA,eAA1C;AAA2D0C,MAAAA,gBAAAA;AAA3D,KAAA,GAAgF5H,KAAtF,CAAA;AACA,IAAM,MAAA;AAAEkI,MAAAA,YAAF;AAAgBC,MAAAA,aAAAA;AAAhB,KAAkCvE,GAAAA,MAAM,IAAI,EAAlD,CAAA;AACA,IAAM,MAAA;AAAE5N,MAAAA,aAAa,GAAG,EAAlB;AAAsBC,MAAAA,cAAc,GAAG,EAAA;AAAvC,KAA8CX,GAAAA,aAAa,IAAI,EAArE,CAAA;AACA,IAAA,MAAM8S,iBAAiB,GAAG;AACxBlH,MAAAA,mBAAmB,EAAG,CAASlB,OAAAA,EAAAA,KAAK,CAACU,gBAAiB,CAAA,MAAA,CAAA;AAD9B,KAA1B,CAAA;AAGA,IAAA,MAAM2H,sBAAsB,GAC1BT,gBAAgB,IAAI,CAAAzM,OAAO,QAAP,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEW,MAAT,KAAmB8L,gBAAvC,GAA2D,QAAOA,gBAAiB,CAAA,gBAAA,CAAnF,GAAuG,EADzG,CAAA;AAGA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEvR,UAAU,CAACb,OAAO,CAAC2F,OAAT,EAAkB1F,SAAlB,CAAA;AAA1B,KAAA,eACE,oBAAC4I,QAAD,EAAA;AACE,MAAA,KAAK,EAAC,SADR;AAEE,MAAA,WAAW,EAAC,cAFd;AAGE,MAAA,KAAK,EAAE,IAAA,CAAKqJ,SAHd;AAIE,MAAA,cAAc,EAAEE,gBAAgB,IAAIzM,OAApB,IAA+B,CAAAA,OAAO,IAAA,IAAP,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEW,MAAT,KAAmB8L,gBAJpE;AAKE,MAAA,OAAO,EAAES,sBAAAA;AALX,KADF,CAAA,eASE,oBAACvB,QAAD,EAAA;AAAQ,MAAA,MAAM,EAAE9G,KAAhB;AAAuB,MAAA,cAAc,EAAE+B,cAAvC;AAAuD,MAAA,UAAU,EAAEjM,UAAAA;AAAnE,KAAA,CATF,eAWE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEN,OAAO,CAAC8S,YAAxB;AAAsC,MAAA,KAAK,EAAEF,iBAAAA;AAA7C,KACGjN,EAAAA,OAAO,CAACE,GAAR,CAAY,CAACgM,CAAD,EAAIpS,KAAJ,KAAc;AACzB,MAAA,oBACE,oBAACkE,QAAD,EAAA;AACE,QAAA,MAAM,EAAEkO,CADV;AAEE,QAAA,SAAS,EAAErS,SAFb;AAGE,QAAA,eAAe,EAAE,IAAA,CAAKU,eAHxB;AAIE,QAAA,oBAAoB,EAAE2R,CAAC,CAACjC,oBAJ1B;AAKE,QAAA,uBAAuB,EAAE6C,8BAL3B;AAME,QAAA,eAAe,EAAE/C,eANnB;AAOE,QAAA,KAAK,EAAEjQ,KAPT;AAQE,QAAA,GAAG,EAAEA,KARP;AASE,QAAA,YAAY,EAAEW,YAThB;AAUE,QAAA,QAAQ,EAAE,IAAA,CAAKwR,YAVjB;AAWE,QAAA,QAAQ,EAAE,MAAM,KAAKS,YAAL,CAAkBR,CAAlB,CAXlB;AAYE,QAAA,gBAAgB,EAAE,CAACU,SAAD,EAAYC,OAAZ,KAAwB,IAAA,CAAKxB,gBAAL,CAAsBuB,SAAtB,EAAiCC,OAAjC,CAZ5C;AAaE,QAAA,WAAW,EAAEnS,WAbf;AAcE,QAAA,UAAU,EAAEC,UAdd;AAeE,QAAA,KAAK,EAAEqS,aAAa,IAAIA,aAAa,CAACd,CAAC,CAACzJ,EAAH,CAfvC;AAgBE,QAAA,aAAa,EAAG5H,aAAa,IAAIA,aAAa,CAAC8C,MAAhC,IAA2CiF,oBAhB5D;AAiBE,QAAA,cAAc,EAAG9H,cAAc,IAAIA,cAAc,CAAC6C,MAAlC,IAA6CgF,qBAjB/D;AAkBE,QAAA,kBAAkB,EAAE5H,kBAlBtB;AAmBE,QAAA,aAAa,EAAEZ,aAAAA;AAnBjB,OADF,CAAA,CAAA;AAuBD,KAxBA,CADH,CAXF,EAsCG4S,YAAY,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE1S,OAAO,CAACmI,SAAAA;AAAxB,KAAoCuK,EAAAA,YAApC,CAtCnB,CADF,CAAA;AA0CD,GAAA;;AA5J0C,CAAA;AAAhCf,QACJxQ,YAAY;AACjBqJ,EAAAA,KAAK,EAAEpJ,SAAS,CAACC,MAAV,CAAiBC,UADP;AAEjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAAV,CAAiBC,UAFf;AAGjBtB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UAHT;AAIjBrB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAJJ;AAKjBoE,EAAAA,OAAO,EAAEvE,SAAS,CAAC2E,KAAV,CAAgBzE,UALR;AAMjBiH,EAAAA,oBAAoB,EAAEnH,SAAS,CAACM,MANf;AAOjB4G,EAAAA,qBAAqB,EAAElH,SAAS,CAACM,MAPhB;AAQjB6K,EAAAA,cAAc,EAAEnL,SAAS,CAACI,IAAV,CAAeF,UARd;AASjBlB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CATG;AAajBZ,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAbH;AAiBjBjB,EAAAA,WAAW,EAAEe,SAAS,CAACC,MAjBN;AAkBjBf,EAAAA,UAAU,EAAEc,SAAS,CAACK,IAAAA;AAlBL;AADRkQ,QAsBJ5P,eAAe;;AAyIxB,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzB6Q,EAAAA,YAAY,EAAE;AACZtK,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IADd;AAEZF,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAFjB;AAGZK,IAAAA,OAAO,EAAE,MAHG;AAIZ6I,IAAAA,UAAU,EAAG,CAAEtJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAJtB,EAAA,CAAA;AAKZmJ,IAAAA,aAAa,EAAG,CAAA,EAAEvJ,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AALzB,GADW;AAQzBsD,EAAAA,OAAO,EAAE;AACP4D,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,GAAA;AAD5B,GARgB;AAWzB8F,EAAAA,SAAS,EAAE;AACT9C,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETf,IAAAA,KAAK,EAAErC,KAAK,CAACsD,OAAN,CAAchF,KAAd,CAAoBqI,IAFlB;AAGTJ,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAHxB,GAAA;AAXc,CAAZ,CAAf,CAAA;;AAkBA,gBAAeO,UAAU,CAACZ,QAAD,CAAV,CAAmB2P,OAAnB,CAAf;;AC1LO,MAAMoB,eAAe,GAAG,CAAC1H,UAAD,EAAa1F,OAAb,EAAsB8E,eAAtB,KAA0C;AACvE,EAAA,MAAMuI,gBAAgB,GAAGC,SAAS,CAAC5H,UAAD,CAAlC,CAAA;AAEA,EAAA,OAAO2H,gBAAgB,CAACnN,GAAjB,CAAsBrC,QAAD,IAAc;AACxC,IAAA,MAAM0P,EAAE,GAAGzI,eAAe,CAACuC,IAAhB,CAAsBkG,EAAD,IAAQA,EAAE,CAAC1P,QAAH,KAAgBA,QAAQ,CAAC4E,EAAtD,CAAX,CAAA;;AAEA,IAAA,IAAI8K,EAAJ,EAAQ;AACN1P,MAAAA,QAAQ,CAACmC,OAAT,GAAmB,CAACuN,EAAE,CAACvN,OAAH,IAAc,EAAf,EAAmBE,GAAnB,CAAwBqB,QAAD,IAAc;AACtD,QAAA,MAAM5D,MAAM,GAAGqC,OAAO,CAACqH,IAAR,CAAc6E,CAAD,IAAOA,CAAC,CAACzJ,EAAF,KAASlB,QAA7B,CAAf,CAAA;;AACA,QAAA,IAAI5D,MAAJ,EAAY;AACV,UAAA,OAAO6P,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB;AAAEhL,YAAAA,EAAE,EAAE9E,MAAM,CAAC8E,EAAb;AAAiBvE,YAAAA,OAAO,EAAEP,MAAM,CAACO,OAAAA;AAAjC,WAAlB,CAAP,CAAA;AACD,SAAA;AACF,OALkB,CAAnB,CAAA;AAMD,KAAA;;AAED,IAAA,OAAOL,QAAP,CAAA;AACD,GAbM,CAAP,CAAA;AAcD,CAjBM,CAAA;;AAmBP,MAAM6P,UAAU,GAAG,CAACC,GAAD,EAAM3N,OAAN,EAAelG,KAAf,KAAyB;AAC1C,EAAA,IAAI,CAAC6T,GAAG,CAACzI,kBAAL,IAA2ByI,GAAG,CAACzI,kBAAJ,CAAuBvE,MAAvB,KAAkC,CAAjE,EAAoE;AAClE,IAAA,OAAO,EAAP,CAAA;AACD,GAAA;;AAED,EAAA,OAAO,CAACgN,GAAG,CAACzI,kBAAJ,CAAuBpL,KAAvB,CAAiC,IAAA,EAAlC,EAAsCoG,GAAtC,CAA2C0N,GAAD,IAAS;AACxD,IAAO5N,OAAAA,OAAO,CAACqH,IAAR,CAAcwG,EAAD,IAAQA,EAAE,CAACpL,EAAH,KAAUmL,GAA/B,CAAP,CAAA;AACD,GAFM,CAAP,CAAA;AAGD,CARD,CAAA;;AAUO,MAAME,uBAAuB,GAAG,CAACpI,UAAD,EAAa1F,OAAb,EAAsB8E,eAAtB,KAA0C;AAC/E,EAAMiJ,MAAAA,cAAc,GAAGjJ,eAAe,CAACN,MAAhB,CAAuB,CAACwJ,OAAD,EAAUL,GAAV,KAAkB;AAC9D,IAAIA,IAAAA,GAAG,CAACzI,kBAAJ,IAA0ByI,GAAG,CAACzI,kBAAJ,CAAuBvE,MAAvB,IAAiCqN,OAA/D,EAAwE;AACtE,MAAA,OAAOL,GAAG,CAACzI,kBAAJ,CAAuBvE,MAA9B,CAAA;AACD,KAAA;;AAED,IAAA,OAAOqN,OAAP,CAAA;AACD,GANsB,EAMpB,CANoB,CAAvB,CAAA;AAOA,EAAMC,MAAAA,eAAe,GAAG,IAAI7B,KAAJ,CAAU2B,cAAV,CAA0BG,CAAAA,IAA1B,CAA+B,CAA/B,CAAxB,CAAA;AAEA,EAAOD,OAAAA,eAAe,CAAC/N,GAAhB,CAAoB,CAAC8H,GAAD,EAAMlO,KAAN,KAAgB;AACzC,IAAOgL,OAAAA,eAAe,CAAC5E,GAAhB,CAAoB,CAACyN,GAAD,EAAMQ,QAAN,KAAmB;AAC5C,MAAA,MAAMC,eAAe,GAAG1I,UAAU,CAACyI,QAAD,CAAlC,CAAA;AAEA,MAAO,OAAA;AACL1L,QAAAA,EAAE,EAAE2L,eAAe,CAAC3L,EADf;AAELrI,QAAAA,KAAK,EAAEgU,eAAe,CAAChU,KAFlB;AAGL4F,QAAAA,OAAO,EAAE0N,UAAU,CAACC,GAAD,EAAM3N,OAAN,EAAelG,KAAf,CAAA;AAHd,OAAP,CAAA;AAKD,KARM,CAAP,CAAA;AASD,GAVM,CAAP,CAAA;AAWD,CArBM;;ACbP,MAAM;AAAEuU,EAAAA,UAAAA;AAAF,CAAA,GAAiBC,UAAvB,CAAA;AACA,MAAM;AAAEC,EAAAA,QAAF;AAAYC,EAAAA,KAAZ;AAAmBC,EAAAA,MAAnB;AAA2BC,EAAAA,KAA3B;AAAkCC,EAAAA,WAAAA;AAAlC,CAAA,GAAkDC,QAAxD,CAAA;AACA,MAAM;AAAEC,EAAAA,QAAQ,EAAEC,UAAAA;AAAZ,CAAA,GAA2BnN,GAAjC,CAAA;AAEO,MAAMoN,MAAN,SAAqBtV,KAAK,CAACC,SAA3B,CAAqC;AAmB1CC,EAAAA,WAAW,CAAC3B,MAAD,EAAQ;AACjB,IAAA,KAAA,CAAMA,MAAN,CAAA,CAAA;;AADiB,IAKnBgX,IAAAA,CAAAA,WALmB,GAKJhX,KAAD,IAAW;AACvB,MAAM,MAAA;AAAE6M,QAAAA,KAAF;AAAS3K,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAKlC,KAAjC,CAAA;;AAEA,MAAA,MAAMiX,YAAY,GAAA,QAAA,CAAA,EAAA,EACbpK,KADa,EAEb7M,KAFa,CAAlB,CAAA;;AAKAiX,MAAAA,YAAY,CAACjP,OAAb,GAAuBiP,YAAY,CAACjP,OAAb,CAAqBE,GAArB,CAA0BC,CAAD,IAAA,QAAA,CAAA,EAAA,EAC3CA,CAD2C,EAAA;AAE9CqH,QAAAA,aAAa,EAAE,IAAK0H,CAAAA,4BAAL,CAAkCD,YAAY,CAACnC,8BAA/C,EAA+E3M,CAA/E,CAAA;AAF+B,OAAzB,CAAA,CAAvB,CARuB;;AAcvB8O,MAAAA,YAAY,CAACnK,eAAb,GAA+BqK,4BAA4B,CACzDF,YAAY,CAACnK,eAAb,IAAgC,EADyB,EAEzDmK,YAAY,CAACjP,OAF4C,CAA3D,CAduB;;AAoBvBiP,MAAAA,YAAY,CAACnK,eAAb,GAA+BsK,+BAA+B,CAC5DH,YAAY,CAACnK,eAAb,IAAgC,EAD4B,EAE5DmK,YAAY,CAACjP,OAF+C,CAA9D,CApBuB;;AA0BvBiP,MAAAA,YAAY,CAACvJ,UAAb,GAA0BuJ,YAAY,CAACvJ,UAAb,CAAwBxF,GAAxB,CAA6BC,CAAD,KAAQ;AAC5DsC,QAAAA,EAAE,EAAEtC,CAAC,CAACsC,EADsD;AAE5DrI,QAAAA,KAAK,EAAE+F,CAAC,CAAC/F,KAAAA;AAFmD,OAAR,CAA5B,CAA1B,CAAA;AAKA6U,MAAAA,YAAY,CAACjP,OAAb,GAAuBiP,YAAY,CAACjP,OAAb,CAAqBE,GAArB,CAA0BgM,CAAD,KAAQ;AACtDzJ,QAAAA,EAAE,EAAEyJ,CAAC,CAACzJ,EADgD;AAEtDvE,QAAAA,OAAO,EAAEgO,CAAC,CAAChO,OAF2C;AAGtDsJ,QAAAA,aAAa,EAAE0E,CAAC,CAAC1E,aAAAA;AAHqC,OAAR,CAAzB,CAAvB,CA/BuB;;AAsCvByH,MAAAA,YAAY,CAAC7H,qBAAb,GAAqC6H,YAAY,CAACI,0BAAb,GACjCJ,YAAY,CAAC7H,qBADoB,GAEjC,CAFJ,CAAA;AAIAlN,MAAAA,QAAQ,CAAC+U,YAAD,CAAR,CAAA;AACD,KAhDkB,CAAA;;AAAA,IAkDnBK,IAAAA,CAAAA,eAlDmB,GAkDAC,SAAD,IAAe;AAC/B,MAAM,MAAA;AAAE1K,QAAAA,KAAF;AAAS3K,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAKlC,KAAjC,CAAA;AAEAkC,MAAAA,QAAQ,cACH2K,KADG,EAAA;AAEN0K,QAAAA,SAAAA;AAFM,OAAR,CAAA,CAAA,CAAA;AAID,KAzDkB,CAAA;;AAAA,IA2DnBC,IAAAA,CAAAA,yBA3DmB,GA2DUC,mBAAD,IAAyB;AACnD,MAAM,MAAA;AAAE5K,QAAAA,KAAF;AAAS3K,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAKlC,KAAjC,CAAA;AAEAkC,MAAAA,QAAQ,cACH2K,KADG,EAAA;AAEN4K,QAAAA,mBAAAA;AAFM,OAAR,CAAA,CAAA,CAAA;AAID,KAlEkB,CAAA;;AAAA,IAoEnBC,IAAAA,CAAAA,cApEmB,GAoEDC,QAAD,IAAc;AAC7B,MAAA,IAAA,CAAKX,WAAL,CAAiB;AAAEW,QAAAA,QAAAA;AAAF,OAAjB,CAAA,CAAA;AACD,KAtEkB,CAAA;;AAAA,IAwEnBC,IAAAA,CAAAA,sBAxEmB,GAwEM,MAAM;AAC7B,MAAM,MAAA;AACJ/K,QAAAA,KAAK,EAAE;AAAEC,UAAAA,eAAAA;AAAF,SAAA;AADH,OAAA,GAEF,KAAK9M,KAFT,CAAA;AAIA,MAAA,IAAA,CAAKgX,WAAL,CAAiB;AACflK,QAAAA,eAAe,EAAE,CAACA,eAAe,IAAI,EAApB,EAAwB5E,GAAxB,CAA6BqN,EAAD,IAAA,QAAA,CAAA,EAAA,EACxCA,EADwC,EAAA;AAE3CrI,UAAAA,kBAAkB,EAAE,CAAC,IAAIqI,EAAE,CAACrI,kBAAH,IAAyB,EAA7B,CAAD,EAAmC,EAAnC,CAAA;AAFuB,SAA5B,CAAA,CAAA;AADF,OAAjB,CAAA,CAAA;AAMD,KAnFkB,CAAA;;AAAA,IAAA,IAAA,CAqFnB2K,eArFmB,GAqFAC,MAAD,IAAY,IAAA,CAAKd,WAAL,CAAiB;AAAEc,MAAAA,MAAAA;AAAF,KAAjB,CArFX,CAAA;;AAAA,IAuFnBC,IAAAA,CAAAA,yBAvFmB,GAuFUjW,KAAD,IAAW;AACrC,MAAM,MAAA;AACJ+K,QAAAA,KAAK,EAAE;AAAEC,UAAAA,eAAAA;AAAF,SAAA;AADH,OAAA,GAEF,KAAK9M,KAFT,CAAA;AAIA,MAAA,IAAA,CAAKgX,WAAL,CAAiB;AACflK,QAAAA,eAAe,EAAE,CAACA,eAAe,IAAI,EAApB,EAAwB5E,GAAxB,CAA6BqN,EAAD,IAAA,QAAA,CAAA,EAAA,EACxCA,EADwC,EAAA;AAE3CrI,UAAAA,kBAAkB,EAAE,CAACqI,EAAE,CAACrI,kBAAH,IAAyB,EAA1B,EAA8BuE,MAA9B,CAAqC,CAACmE,GAAD,EAAMxE,QAAN,KAAmBA,QAAQ,KAAKtP,KAArE,CAAA;AAFuB,SAA5B,CAAA,CAAA;AADF,OAAjB,CAAA,CAAA;AAMD,KAlGkB,CAAA;;AAAA,IAoGnBkW,IAAAA,CAAAA,4BApGmB,GAoGarS,MAAD,IAAY;AACzC,MAAM,MAAA;AAAEkH,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAK7M,KAAvB,CAAA;AAEA,MAAOiY,OAAAA,aAAa,CAACtS,MAAM,CAAC8E,EAAR,EAAYoC,KAAK,CAACC,eAAlB,CAApB,CAAA;AACD,KAxGkB,CAAA;;AAAA,IAAA,IAAA,CA0GnBoK,4BA1GmB,GA0GY,CAAC7E,uBAAD,EAA0BlK,CAA1B,KAAgC;AAC7D,MAAA,IAAIkK,uBAAuB,KAAKjG,kBAAkB,CAACC,OAAnD,EAA4D;AAC1D,QAAA,OAAO,CAAP,CAAA;AACD,OAAA;;AAED,MAAA,IAAIgG,uBAAuB,KAAKjG,kBAAkB,CAAC5J,QAAnD,EAA6D;AAC3D,QAAA,OAAO,CAAP,CAAA;AACD,OAAA;;AAED,MAAA,OAAO2F,CAAC,CAACqH,aAAF,IAAmB,CAA1B,CAAA;AACD,KApHkB,CAAA;;AAAA,IAsHnB0I,IAAAA,CAAAA,kBAtHmB,GAsHE,MAAM;AACzB,MAAM,MAAA;AAAErL,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAK7M,KAAvB,CAAA;AACA,MAAM,MAAA;AAAEoP,QAAAA,qBAAqB,GAAG,CAAA;AAA1B,OAAgCvC,GAAAA,KAAK,IAAI,EAA/C,CAAA;AACA,MAAA,MAAMZ,UAAU,GAAGW,qBAAqB,CAACC,KAAD,CAAxC,CAHyB;;AAKzB,MAAOuC,OAAAA,qBAAqB,KAAK,CAA1B,GAA8BnD,UAAU,GAAGmD,qBAA3C,GAAmE,KAA1E,CAAA;AACD,KA5HkB,CAAA;;AAAA,IA8HnB+I,IAAAA,CAAAA,kBA9HmB,GA8HE,MAAM;AACzB,MAAM,MAAA;AAAEtL,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAK7M,KAAvB,CAAA;AACA,MAAA,MAAMiM,UAAU,GAAGW,qBAAqB,CAACC,KAAD,CAAxC,CAAA;AACA,MAAA,IAAA,CAAKmK,WAAL,CAAiB;AAAE5H,QAAAA,qBAAqB,EAAEnD,UAAAA;AAAzB,OAAjB,CAAA,CAAA;AACD,KAlIkB,CAAA;;AAEjB,IAAKtC,IAAAA,CAAAA,GAAL,GAAW3J,MAAK,CAAC2J,GAAN,IAAaA,GAAG,CAACyO,UAAJ,EAAxB,CAAA;AACD,GAAA;;AAiIDnW,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEI,MAAAA,OAAF;AAAWF,MAAAA,aAAX;AAA0BM,MAAAA,YAA1B;AAAwCoK,MAAAA,KAAxC;AAA+C9J,MAAAA,kBAA/C;AAAmEsV,MAAAA,sBAAAA;AAAnE,KAAA,GAA8F,KAAKrY,KAAzG,CAAA;AACA,IAAM,MAAA;AACJsY,MAAAA,cAAc,GAAG,EADb;AAEJjG,MAAAA,uBAAuB,GAAG,EAFtB;AAGJpS,MAAAA,sBAAsB,GAAG,EAHrB;AAIJsN,MAAAA,gBAAgB,GAAG,EAJf;AAKJgL,MAAAA,eAAe,GAAG,EALd;AAMJC,MAAAA,iBAAiB,GAAG,EANhB;AAOJb,MAAAA,QAAQ,GAAG,EAPP;AAQJ5F,MAAAA,eAAe,GAAG,EARd;AASJjP,MAAAA,cAAc,GAAG,EATb;AAUJD,MAAAA,aAAa,GAAG,EAVZ;AAWJ4V,MAAAA,aAAa,GAAG,EAXZ;AAYJC,MAAAA,mBAAmB,GAAG,CAZlB;AAaJC,MAAAA,cAAc,GAAG,EAbb;AAcJb,MAAAA,MAAM,GAAG,EAdL;AAeJP,MAAAA,SAAS,GAAG,EAfR;AAgBJqB,MAAAA,WAAW,GAAG,EAhBV;AAiBJC,MAAAA,qBAjBI;AAkBJlW,MAAAA,UAAU,GAAG,EAlBT;AAmBJmW,MAAAA,mBAAmB,GAAG,EAnBlB;AAoBJrB,MAAAA,mBAAmB,GAAG,EApBlB;AAqBJsB,MAAAA,UAAU,GAAG,EArBT;AAsBJ/V,MAAAA,aAAa,GAAG,EAtBZ;AAuBJO,MAAAA,QAAQ,GAAG,EAvBP;AAwBJyV,MAAAA,eAAe,GAAG,EAxBd;AAyBJC,MAAAA,qBAAqB,GAAG,EAAA;AAzBpB,KA0BF9W,GAAAA,aAAa,IAAI,EA1BrB,CAAA;AA2BA,IAAM,MAAA;AACJiM,MAAAA,qBADI;AAEJiJ,MAAAA,0BAFI;AAGJ5G,MAAAA,MAHI;AAIJyI,MAAAA,eAJI;AAKJ9J,MAAAA,qBALI;AAMJ+J,MAAAA,aANI;AAOJC,MAAAA,gBAPI;AAQJC,MAAAA,iBARI;AASJC,MAAAA,0BATI;AAUJC,MAAAA,qBAVI;AAWJC,MAAAA,aAAAA;AAXI,KAYF3M,GAAAA,KAAK,IAAI,EAZb,CAAA;AAaA,IAAM,MAAA;AACJiL,MAAAA,MAAM,EAAE2B,WADJ;AAEJlC,MAAAA,SAAS,EAAEmC,cAFP;AAGJjC,MAAAA,mBAAmB,EAAEkC,wBAAAA;AAHjB,KAIFlJ,GAAAA,MAAM,IAAI,EAJd,CAAA;AAMA,IAAA,MAAM/N,WAAW,GAAG;AAClB4D,MAAAA,QAAQ,EAAEiT,qBAAqB,KAAK,KAA1B,GAAkC,KAAlC,GAA0C,QAAA;AADlC,KAApB,CAAA;AAIA,IAAA,MAAMxN,MAAM,GAAGc,KAAK,CAACd,MAAN,IAAgB,EAA/B,CAAA;AACAA,IAAAA,MAAM,CAAC/D,OAAP,GAAiB+D,MAAM,CAAC/D,OAAP,IAAkB;AAAE5F,MAAAA,KAAK,EAAE,EAAT;AAAawX,MAAAA,OAAO,EAAE,CAAA;AAAtB,KAAnC,CAAA;AAEA,IAAMlM,MAAAA,UAAU,GAAG0H,eAAe,CAACvI,KAAK,CAACa,UAAN,IAAoB,EAArB,EAAyBb,KAAK,CAAC7E,OAAN,IAAiB,EAA1C,EAA8C6E,KAAK,CAACC,eAAN,IAAyB,EAAvE,CAAlC,CAAA;AAEA,IAAMI,MAAAA,kBAAkB,GAAG4I,uBAAuB,CAChDjJ,KAAK,CAACa,UAAN,IAAoB,EAD4B,EAEhDb,KAAK,CAAC7E,OAAN,IAAiB,EAF+B,EAGhD6E,KAAK,CAACC,eAAN,IAAyB,EAHuB,CAAlD,CAAA;AAMA,IAAM9E,MAAAA,OAAO,GAAG6E,KAAK,CAAC7E,OAAN,CAAcE,GAAd,CAAmBC,CAAD,IAAO;AACvCA,MAAAA,CAAC,CAAC8J,oBAAF,GAAyB,IAAA,CAAK+F,4BAAL,CAAkC7P,CAAlC,CAAzB,CADuC;;AAGvCA,MAAAA,CAAC,CAACqH,aAAF,GAAkB,IAAK0H,CAAAA,4BAAL,CAAkCrK,KAAK,CAACiI,8BAAxC,EAAwE3M,CAAxE,CAAlB,CAAA;AACA,MAAA,OAAOA,CAAP,CAAA;AACD,KALe,CAAhB,CAAA;AAOA,IAAA,MAAMyC,oBAAoB,GAAG/H,aAAa,IAAIA,aAAa,CAACiV,MAA5D,CAAA;AACA,IAAA,MAAMnN,qBAAqB,GAAG7H,cAAc,IAAIA,cAAc,CAACgV,MAA/D,CAAA;AAEA,IAAA,MAAM+B,aAAa,GAAG;AACpBlB,MAAAA,cAAc,EAAEA,cAAc,CAAC/B,QAAf,IAA2BH,MAAM,CAACkC,cAAc,CAACvW,KAAhB,CAD7B;AAEpB2P,MAAAA,eAAe,EAAEA,eAAe,CAAC6E,QAAhB,IAA4BH,MAAM,CAAC1E,eAAe,CAAC3P,KAAjB,CAF/B;AAGpBmL,MAAAA,gBAAgB,EACdA,gBAAgB,CAACqJ,QAAjB,IACAD,WAAW,CAACpJ,gBAAgB,CAACnL,KAAlB,EAAyB;AAClCA,QAAAA,KAAK,EAAEmL,gBAAgB,CAACnL,KADU;AAElC0X,QAAAA,GAAG,EAAEpB,mBAF6B;AAGlCjM,QAAAA,GAAG,EAAE,CAAA;AAH6B,OAAzB,CALO;AAUpB8L,MAAAA,eAAe,EAAEA,eAAe,CAAC3B,QAAhB,IAA4BF,KAAK,CAAC6B,eAAe,CAACnW,KAAjB,EAAwB,CAAC,OAAD,EAAU,OAAV,EAAmB,MAAnB,EAA2B,OAA3B,CAAxB,CAV9B;AAWpB0S,MAAAA,8BAA8B,EAC5BzC,uBAAuB,CAACuE,QAAxB,IACAL,QAAQ,CAAClE,uBAAuB,CAACjQ,KAAzB,EAAgC,CACtCgK,kBAAkB,CAACC,OADmB,EAEtCD,kBAAkB,CAAC5J,QAFmB,EAGtC4J,kBAAkB,CAACE,SAHmB,CAAhC,CAbU;AAkBpBmI,MAAAA,gBAAgB,EACdwE,qBAAqB,CAACrC,QAAtB,IACAD,WAAW,CAACsC,qBAAqB,CAAC7W,KAAvB,EAA8B;AACvCA,QAAAA,KAAK,EAAE,EADgC;AAEvC0X,QAAAA,GAAG,EAAE,CAAA9R,OAAO,IAAA,IAAP,YAAAA,OAAO,CAAEW,MAAT,KAAmB,CAFe;AAGvC8D,QAAAA,GAAG,EAAE,EAAA;AAHkC,OAA9B,CApBO;AAyBpB4K,MAAAA,0BAA0B,EAAEoB,aAAa,CAAC7B,QAAd,IAA0BH,MAAM,CAACgC,aAAa,CAACrW,KAAf,CAzBxC;AA0BpBgN,MAAAA,qBAAqB,EACnBiI,0BAA0B,KAAK,IAA/B,IACAV,WAAW,CAAC8B,aAAa,CAACrW,KAAf,EAAsB;AAC/BA,QAAAA,KAAK,EAAE,EADwB;AAE/B0X,QAAAA,GAAG,EAAE,CAF0B;AAG/BrN,QAAAA,GAAG,EAAE,EAAA;AAH0B,OAAtB,CA5BO;AAiCpB0M,MAAAA,aAAa,EAAErB,MAAM,CAAClB,QAAP,IAAmBH,MAAM,CAACqB,MAAM,CAAC1V,KAAR,CAjCpB;AAkCpB8W,MAAAA,eAAe,EAAEvB,QAAQ,CAACf,QAAT,IAAqBH,MAAM,CAACkB,QAAQ,CAACvV,KAAV,CAlCxB;AAmCpBgM,MAAAA,qBAAqB,EAAEkK,cAAc,CAAC1B,QAAf,IAA2BH,MAAM,CAAC6B,cAAc,CAAClW,KAAhB,CAnCpC;AAoCpB,MAAoBmB,kBAAAA,EAAAA,QAAQ,CAACqT,QAAT,IAAqBH,MAAM,CAAClT,QAAQ,CAACnB,KAAV,EAAiB,IAAjB,CApC3B;AAqCpBmB,MAAAA,QAAQ,EAAEA,QAAQ,CAACqT,QAAT,IAAqBrT,QAAQ,CAAC8I,OAA9B,IAAyCkK,QAAQ,CAACyC,eAAe,CAAC5W,KAAjB,EAAwB4W,eAAe,CAACe,OAAxC,CAAA;AArCvC,KAAtB,CAAA;AAwCA,IAAA,MAAMC,eAAe,GAAG;AACtBV,MAAAA,0BAA0B,EAAE7B,mBAAmB,CAACb,QAApB,IAAgCH,MAAM,CAACgB,mBAAmB,CAACrV,KAArB,CAD5C;AAEtB6X,MAAAA,0BAA0B,EAAEnB,mBAAmB,CAAClC,QAApB,IAAgCH,MAAM,CAACqC,mBAAmB,CAAC1W,KAArB,CAF5C;AAGtBgX,MAAAA,gBAAgB,EAAE7B,SAAS,CAACX,QAAV,IAAsBH,MAAM,CAACc,SAAS,CAACnV,KAAX,CAHxB;AAItBiX,MAAAA,iBAAiB,EAAE1W,UAAU,CAACiU,QAAX,IAAuBH,MAAM,CAAC9T,UAAU,CAACP,KAAZ,CAJ1B;AAKtBwW,MAAAA,WAAW,EAAEA,WAAW,CAAChC,QAAZ,IAAwBF,KAAK,CAACkC,WAAW,CAACxW,KAAb,EAAoB,CAAC,MAAD,EAAS,QAAT,CAApB,CALpB;AAMtB8X,MAAAA,aAAa,EAAE,CAAAnB,UAAU,IAAA,IAAV,YAAAA,UAAU,CAAEnC,QAAZ,KAAwBH,MAAM,CAACsC,UAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAE3W,KAAb,CAAA;AANvB,KAAxB,CAAA;AASA,IAAA,MAAM+X,QAAQ,GAAG,IAAKjC,CAAAA,kBAAL,EAAjB,CAAA;AACA,IAAA,MAAMkC,kBAAkB,GAAG/D,UAAU,CAACgE,CAAX,CAAa,yDAAb,EAAwE;AACjGC,MAAAA,GAAG,EAAEzN,KAAK,CAACtJ,QADsF;AAEjG6L,MAAAA,qBAAAA;AAFiG,KAAxE,CAA3B,CAAA;AAKA,IAAA,oBACE,oBAAC,UAAD,EAAA;AAAY,MAAA,KAAK,EAAE,IAAKzF,CAAAA,GAAAA;AAAxB,KACE,eAAA,KAAA,CAAA,aAAA,CAAC,MAAD,CAAQ,YAAR,EAAA;AACE,MAAA,aAAa,EAAE6P,aADjB;AAEE,MAAA,UAAU,EAAEhB,iBAFd;AAGE,MAAA,YAAY,EAAEK,qBAHhB;AAIE,MAAA,QAAQ,eACN,KAAA,CAAA,aAAA,CAAC,KAAD,EAAA;AACE,QAAA,KAAK,EAAEhM,KADT;AAEE,QAAA,aAAa,EAAE,IAAA,CAAKmK,WAFtB;AAGE,QAAA,aAAa,EAAE7U,aAHjB;AAIE,QAAA,qBAAqB,EAAEkW,sBAJzB;AAKE,QAAA,MAAM,EAAE;AACNkC,UAAAA,QAAQ,EAAEV,aADJ;AAENW,UAAAA,UAAU,EAAER,eAAAA;AAFN,SALV;AASE,QAAA,KAAK,eACH,KAAA,CAAA,aAAA,CAAC,WAAD,EAAA;AACE,UAAA,KAAK,EAAE,SADT;AAEE,UAAA,IAAI,EAAEI,kBAFR;AAGE,UAAA,IAAI,EAAED,QAHR;AAIE,UAAA,OAAO,EAAE,IAAKhC,CAAAA,kBAAAA;AAJhB,SAAA,CAAA;AAVJ,OAAA,CAAA;AALJ,KAyBGmB,EAAAA,0BAA0B,iBACzB,KAAA,CAAA,aAAA,CAACmB,gBAAD,EAAA;AAAgB,MAAA,KAAK,EAAEhD,mBAAmB,CAACrV,KAA3C;AAAkD,MAAA,SAAS,EAAEC,OAAO,CAACqY,cAAAA;AAArE,KAAA,eACE,oBAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAErY,OAAO,CAACsY,KADrB;AAEE,MAAA,MAAM,EAAE9N,KAAK,CAAC4K,mBAAN,IAA6B,EAFvC;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKD,yBAHjB;AAIE,MAAA,YAAY,EAAE/U,YAJhB;AAKE,MAAA,KAAK,EAAEkX,wBALT;AAME,MAAA,QAAQ,EAAE,KANZ;AAOE,MAAA,WAAW,EAAEjX,WAPf;AAQE,MAAA,WAAW,EAAE3C,cAAc,CAAC0X,mBAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAmB,CAAEnU,kBAAtB,EAA0CrD,sBAA1C,CAR7B;AASE,MAAA,UAAU,EAAEoZ,iBATd;AAUE,MAAA,aAAa,EAAGxW,aAAa,IAAIA,aAAa,CAAC4U,mBAAhC,IAAwD7M,oBAVzE;AAWE,MAAA,cAAc,EAAG9H,cAAc,IAAIA,cAAc,CAAC2U,mBAAlC,IAA0D9M,qBAX5E;AAYE,MAAA,kBAAkB,EAAE5H,kBAZtB;AAaE,MAAA,uBAAuB,EAAE,CAAC;AAAEQ,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAb3B;AAcE,MAAA,aAAa,EAAEP,aAAAA;AAdjB,KADF,CAAA,EAiBG2W,wBAAwB,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEtX,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoCmP,wBAApC,CAjB/B,CA1BJ,EA+CGR,aAAa,iBACZ,oBAACsB,gBAAD,EAAA;AAAgB,MAAA,KAAK,EAAE3C,MAAM,CAAC1V,KAA9B;AAAqC,MAAA,SAAS,EAAEC,OAAO,CAACqY,cAAAA;AAAxD,KAAA,eACE,oBAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAErY,OAAO,CAACsY,KADrB;AAEE,MAAA,MAAM,EAAE9N,KAAK,CAACiL,MAAN,IAAgB,EAF1B;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKD,eAHjB;AAIE,MAAA,YAAY,EAAEpV,YAJhB;AAKE,MAAA,KAAK,EAAEgX,WALT;AAME,MAAA,QAAQ,EAAE,KANZ;AAOE,MAAA,gBAAgB,EAPlB,IAAA;AAQE,MAAA,WAAW,EAAE/W,WARf;AASE,MAAA,WAAW,EAAE3C,cAAc,CAAC+X,MAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAExU,kBAAT,EAA6BrD,sBAA7B,CAT7B;AAUE,MAAA,UAAU,EAAEoZ,iBAVd;AAWE,MAAA,aAAa,EAAExW,aAAa,IAAIA,aAAa,CAACiV,MAXhD;AAYE,MAAA,cAAc,EAAEhV,cAAc,IAAIA,cAAc,CAACgV,MAZnD;AAaE,MAAA,kBAAkB,EAAE/U,kBAbtB;AAcE,MAAA,uBAAuB,EAAE,CAAC;AAAEQ,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAd3B;AAeE,MAAA,aAAa,EAAEP,aAAAA;AAfjB,KADF,CAAA,EAkBGyW,WAAW,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEpX,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoCiP,WAApC,CAlBlB,CAhDJ,eAsEE,oBAACxL,YAAD,EAAA;AACE,MAAA,YAAY,EAAExL,YADhB;AAEE,MAAA,kBAAkB,EAAEM,kBAFtB;AAGE,MAAA,KAAK,EAAE8J,KAHT;AAIE,MAAA,UAAU,EAAEa,UAAU,IAAI,EAJ5B;AAKE,MAAA,cAAc,EAAE,IAAA,CAAKsJ,WALvB;AAME,MAAA,WAAW,EAAEtU,WANf;AAOE,MAAA,UAAU,EAAE2W,iBAPd;AAQE,MAAA,aAAa,EAAElX,aARjB;AASE,MAAA,oBAAoB,EAAEyI,oBATxB;AAUE,MAAA,qBAAqB,EAAED,qBAVzB;AAWE,MAAA,aAAa,EAAE3H,aAAAA;AAXjB,KAtEF,CAAA,eAoFE,oBAACgR,SAAD,EAAA;AACE,MAAA,YAAY,EAAEvR,YADhB;AAEE,MAAA,kBAAkB,EAAEM,kBAFtB;AAGE,MAAA,OAAO,EAAEiF,OAHX;AAIE,MAAA,KAAK,EAAE6E,KAJT;AAKE,MAAA,cAAc,EAAE,IAAA,CAAKmK,WALvB;AAME,MAAA,WAAW,EAAEtU,WANf;AAOE,MAAA,UAAU,EAAE2W,iBAPd;AAQE,MAAA,aAAa,EAAElX,aARjB;AASE,MAAA,oBAAoB,EAAEyI,oBATxB;AAUE,MAAA,qBAAqB,EAAED,qBAAAA;AAVzB,KAAA,CApFF,EAiGGyD,qBAAqB,iBACpB,KAAA,CAAA,aAAA,CAAClD,QAAD,EAAA;AACE,MAAA,SAAS,EAAE7I,OAAO,CAACuY,gBADrB;AAEE,MAAA,KAAK,EAAC,qBAFR;AAGE,MAAA,WAAW,EAAC,2BAHd;AAIE,MAAA,KAAK,EAAE,IAAKhD,CAAAA,sBAAAA;AAJd,KAlGJ,CAAA,EAyGGxJ,qBAAqB,IACpBlB,kBAAkB,CAAChF,GAAnB,CAAuB,CAAC2S,cAAD,EAAiB/Y,KAAjB,KAA2B;AAChD,MACE,oBAAA,KAAA,CAAA,aAAA,CAAC,KAAD,CAAO,QAAP,EAAA;AAAgB,QAAA,GAAG,EAAEA,KAAAA;AAArB,OAAA,eACE,oBAACoJ,QAAD,EAAA;AACE,QAAA,SAAS,EAAE7I,OAAO,CAACuY,gBADrB;AAEE,QAAA,OAAO,EAAE,WAFX;AAGE,QAAA,KAAK,EAAC,oBAHR;AAIE,QAAA,WAAW,EAAC,2BAJd;AAKE,QAAA,KAAK,EAAE,MAAM,IAAK7C,CAAAA,yBAAL,CAA+BjW,KAA/B,CAAA;AALf,OADF,CAAA,eAQE,oBAACqP,oBAAD,EAAA;AACE,QAAA,QAAQ,EAAErP,KADZ;AAEE,QAAA,YAAY,EAAEW,YAFhB;AAGE,QAAA,KAAK,EAAEoK,KAHT;AAIE,QAAA,aAAa,EAAE1K,aAJjB;AAKE,QAAA,UAAU,EAAE0Y,cALd;AAME,QAAA,cAAc,EAAE,IAAA,CAAK7D,WANvB;AAOE,QAAA,kBAAkB,EAAEjU,kBAPtB;AAQE,QAAA,aAAa,EAAEC,aAAAA;AARjB,OAAA,CARF,CADF,CAAA;AAqBD,KAtBD,CA1GJ,EAkIGoW,gBAAgB,iBACf,oBAACqB,gBAAD,EAAA;AAAgB,MAAA,KAAK,EAAElD,SAAS,CAACnV,KAAjC;AAAwC,MAAA,SAAS,EAAEC,OAAO,CAACqY,cAAAA;AAA3D,KAAA,eACE,oBAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAErY,OAAO,CAACsY,KADrB;AAEE,MAAA,MAAM,EAAE9N,KAAK,CAAC0K,SAAN,IAAmB,EAF7B;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKD,eAHjB;AAIE,MAAA,YAAY,EAAE7U,YAJhB;AAKE,MAAA,KAAK,EAAEiX,cALT;AAME,MAAA,QAAQ,EAAE,KANZ;AAOE,MAAA,WAAW,EAAEhX,WAPf;AAQE,MAAA,WAAW,EAAE3C,cAAc,CAAC+X,MAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAExU,kBAAT,EAA6BrD,sBAA7B,CAR7B;AASE,MAAA,UAAU,EAAEoZ,iBATd;AAUE,MAAA,aAAa,EAAGxW,aAAa,IAAIA,aAAa,CAAC0U,SAAhC,IAA8C3M,oBAV/D;AAWE,MAAA,cAAc,EAAG9H,cAAc,IAAIA,cAAc,CAACyU,SAAlC,IAAgD5M,qBAXlE;AAYE,MAAA,kBAAkB,EAAE5H,kBAZtB;AAaE,MAAA,uBAAuB,EAAE,CAAC;AAAEQ,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAb3B;AAcE,MAAA,aAAa,EAAEP,aAAAA;AAdjB,KADF,CAAA,EAiBG0W,cAAc,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAErX,OAAO,CAACmI,SAAAA;AAAxB,KAAA,EAAoCkP,cAApC,CAjBrB,CAnIJ,EAwJGR,eAAe,iBACd,oBAAC,cAAD,EAAA;AAAgB,MAAA,QAAQ,EAAErM,KAAK,CAAC8K,QAAhC;AAA0C,MAAA,QAAQ,EAAE,IAAA,CAAKD,cAAzD;AAAyE,MAAA,WAAW,EAAEhV,WAAAA;AAAtF,KAAA,CAzJJ,CADF,CADF,CAAA;AAgKD,GAAA;;AAvbyC,CAAA;AAA/BqU,OACJvT,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAFR;AAGjBpB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAHJ;AAIjByU,EAAAA,sBAAsB,EAAE5U,SAAS,CAACI,IAJjB;AAKjBgJ,EAAAA,KAAK,EAAEpJ,SAAS,CAACC,MAAV,CAAiBC,UALP;AAMjBzB,EAAAA,QAAQ,EAAEuB,SAAS,CAACI,IAAV,CAAeF,UANR;AAOjBgG,EAAAA,GAAG,EAAElG,SAAS,CAACG,MAPE;AAQjBnB,EAAAA,YAAY,EAAEgB,SAAS,CAACQ,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADQ;AAE5BQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFK,GAAhB,CARG;AAYjBZ,EAAAA,kBAAkB,EAAEU,SAAS,CAACQ,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAET,SAAS,CAACI,IAAV,CAAeF,UADc;AAElCQ,IAAAA,MAAM,EAAEV,SAAS,CAACI,IAAV,CAAeF,UAAAA;AAFW,GAAhB,CAAA;AAZH;;AAybrB,MAAMU,QAAM,GAAIC,KAAD,KAAY;AACzBsW,EAAAA,gBAAgB,EAAE;AAChBhP,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AADnB,GADO;AAIzBoW,EAAAA,IAAI,EAAE;AACJjQ,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAD7B;AAEJF,IAAAA,aAAa,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAFhC,GAJmB;AAQzBgW,EAAAA,cAAc,EAAE;AACd7V,IAAAA,KAAK,EAAE,MADO;AAEdgG,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAFnB;AAGdkH,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAHrB,GARS;AAazBgH,EAAAA,KAAK,EAAE;AACLE,IAAAA,YAAY,EAAEtH,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAD9B,GAbkB;AAgBzB8F,EAAAA,SAAS,EAAE;AACT9C,IAAAA,QAAQ,EAAEpD,KAAK,CAACqD,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETf,IAAAA,KAAK,EAAErC,KAAK,CAACsD,OAAN,CAAchF,KAAd,CAAoBqI,IAFlB;AAGTJ,IAAAA,UAAU,EAAEvG,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHjB,GAAA;AAhBc,CAAZ,CAAf,CAAA;;AAuBA,eAAeqW,eAAe,CAAC9V,UAAU,CAACZ,QAAD,CAAV,CAAmB0S,MAAnB,CAAD,CAA9B;;ACleO,MAAMiE,IAAN,SAAmBvZ,KAAK,CAACC,SAAzB,CAAmC;AAcxCO,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAE4K,MAAAA,KAAF;AAAS+B,MAAAA,cAAT;AAAyBzM,MAAAA,aAAzB;AAAwCkW,MAAAA,sBAAxC;AAAgE5V,MAAAA,YAAhE;AAA8EM,MAAAA,kBAAAA;AAA9E,KAAA,GACJ,KAAK/C,KADP,CAAA;AAGA,IAAA,oBACE,oBAAC+W,QAAD,EAAA;AACE,MAAA,YAAY,EAAEtU,YADhB;AAEE,MAAA,kBAAkB,EAAEM,kBAFtB;AAGE,MAAA,KAAK,EAAC,QAHR;AAIE,MAAA,KAAK,EAAE8J,KAJT;AAKE,MAAA,aAAa,EAAE1K,aALjB;AAME,MAAA,QAAQ,EAAEyM,cANZ;AAOE,MAAA,sBAAsB,EAAEyJ,sBAAAA;AAP1B,KADF,CAAA,CAAA;AAWD,GAAA;;AA7BuC,CAAA;AAA7B2C,KACJxX,YAAY;AACjBnB,EAAAA,OAAO,EAAEoB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBxB,EAAAA,aAAa,EAAEsB,SAAS,CAACC,MAFR;AAGjBpB,EAAAA,SAAS,EAAEmB,SAAS,CAACG,MAHJ;AAIjByU,EAAAA,sBAAsB,EAAE5U,SAAS,CAACI,IAJjB;AAKjBgJ,EAAAA,KAAK,EAAEpJ,SAAS,CAACC,MAAV,CAAiBC,UALP;AAMjBiL,EAAAA,cAAc,EAAEnL,SAAS,CAACI,IAAV,CAAeF,UANd;AAOjBlB,EAAAA,YAAY,EAAEgB,SAAS,CAACC,MAPP;AAQjBX,EAAAA,kBAAkB,EAAEU,SAAS,CAACC,MAAAA;AARb;AADRsX,KAYJ5W,eAAe;;AAmBxB,MAAMC,MAAM,GAAG,OAAO,EAAP,CAAf,CAAA;;AAEA,aAAeY,UAAU,CAACZ,MAAD,CAAV,CAAmB2W,IAAnB,CAAf;;ACpCA,eAAe;AACbnO,EAAAA,KAAK,EAAE;AACLuB,IAAAA,qBAAqB,EAAE,IADlB;AAELiJ,IAAAA,0BAA0B,EAAE,KAFvB;AAGLvC,IAAAA,8BAA8B,EAAE1I,kBAAkB,CAACC,OAH9C;AAILY,IAAAA,UAAU,EAAE,EAJP;AAKLS,IAAAA,UAAU,EAAE,EALP;AAMLH,IAAAA,gBAAgB,EAAE,CANb;AAOLvF,IAAAA,OAAO,EAAE,EAPJ;AAQL6L,IAAAA,YAAY,EAAE,EART;AASL0E,IAAAA,eAAe,EAAE,OATZ;AAULzL,IAAAA,eAAe,EAAE,EAVZ;AAWLoM,IAAAA,eAAe,EAAE,KAXZ;AAYLnH,IAAAA,eAAe,EAAE,IAZZ;AAaL0C,IAAAA,gBAAgB,EAAE,CAbb;AAcLrF,IAAAA,qBAAqB,EAAE,CAdlB;AAeLuJ,IAAAA,cAAc,EAAE,IAfX;AAgBLQ,IAAAA,aAAa,EAAE,IAhBV;AAiBLC,IAAAA,gBAAgB,EAAE,IAjBb;AAkBL3L,IAAAA,SAAS,EAAE,CAAC,EAAD,CAlBN;AAmBLwM,IAAAA,0BAA0B,EAAE,IAnBvB;AAoBLX,IAAAA,0BAA0B,EAAE,IApBvB;AAqBLC,IAAAA,qBAAqB,EAAE,QArBlB;AAsBL0B,IAAAA,YAAY,EAAE,MAAA;AAtBT,GADM;AAyBb9Y,EAAAA,aAAa,EAAE;AACblC,IAAAA,sBAAsB,EAAE;AACtBib,MAAAA,KAAK,EAAE;AAAE1Y,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OADe;AAEtB2Y,MAAAA,KAAK,EAAE;AAAE3Y,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OAFe;AAGtB4Y,MAAAA,KAAK,EAAE;AAAE5Y,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OAHe;AAItB6Y,MAAAA,SAAS,EAAE;AAAE7Y,QAAAA,QAAQ,EAAE,IAAA;AAAZ,OAJW;AAKtB8Y,MAAAA,cAAc,EAAE;AAAE9Y,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OALM;AAMtB+Y,MAAAA,kBAAkB,EAAE;AAAE/Y,QAAAA,QAAQ,EAAE,IAAA;AAAZ,OAAA;AANE,KADX;AASbG,IAAAA,UAAU,EAAE;AACVP,MAAAA,KAAK,EAAE,YADG;AAEVwU,MAAAA,QAAQ,EAAE,KAFA;AAGVvK,MAAAA,OAAO,EAAE,IAAA;AAHC,KATC;AAcbsL,IAAAA,QAAQ,EAAE;AACRf,MAAAA,QAAQ,EAAE,IADF;AAERxU,MAAAA,KAAK,EAAE,UAFC;AAGRiK,MAAAA,OAAO,EAAE,IAAA;AAHD,KAdG;AAmBb0F,IAAAA,eAAe,EAAE;AACf6E,MAAAA,QAAQ,EAAE,IADK;AAEfxU,MAAAA,KAAK,EAAE,mBAAA;AAFQ,KAnBJ;AAuBbmW,IAAAA,eAAe,EAAE;AACf3B,MAAAA,QAAQ,EAAE,IADK;AAEfxU,MAAAA,KAAK,EAAE,kBAAA;AAFQ,KAvBJ;AA2BbiQ,IAAAA,uBAAuB,EAAE;AACvBuE,MAAAA,QAAQ,EAAE,IADa;AAEvBxU,MAAAA,KAAK,EAAE,2BAAA;AAFgB,KA3BZ;AA+BbqW,IAAAA,aAAa,EAAE;AACb7B,MAAAA,QAAQ,EAAE,IADG;AAEbxU,MAAAA,KAAK,EAAE,0BAAA;AAFM,KA/BF;AAmCbkW,IAAAA,cAAc,EAAE;AACd1B,MAAAA,QAAQ,EAAE,IADI;AAEdxU,MAAAA,KAAK,EAAE,iCAAA;AAFO,KAnCH;AAuCbmL,IAAAA,gBAAgB,EAAE;AAChBqJ,MAAAA,QAAQ,EAAE,IADM;AAEhBxU,MAAAA,KAAK,EAAE,oBAAA;AAFS,KAvCL;AA2CbuW,IAAAA,cAAc,EAAE;AACd/B,MAAAA,QAAQ,EAAE,KADI;AAEdxU,MAAAA,KAAK,EAAE,uBAAA;AAFO,KA3CH;AA+Cb0V,IAAAA,MAAM,EAAE;AACNlB,MAAAA,QAAQ,EAAE,IADJ;AAENxU,MAAAA,KAAK,EAAE,QAFD;AAGNoZ,MAAAA,QAAQ,EAAE,KAHJ;AAINlY,MAAAA,kBAAkB,EAAE;AAClB4X,QAAAA,KAAK,EAAE;AAAE1Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElB2Y,QAAAA,KAAK,EAAE;AAAE3Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlB4Y,QAAAA,KAAK,EAAE;AAAE5Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AAJd,KA/CK;AAyDb+U,IAAAA,SAAS,EAAE;AACTX,MAAAA,QAAQ,EAAE,IADD;AAETxU,MAAAA,KAAK,EAAE,WAFE;AAGToZ,MAAAA,QAAQ,EAAE,KAHD;AAITlY,MAAAA,kBAAkB,EAAE;AAClB4X,QAAAA,KAAK,EAAE;AAAE1Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElB2Y,QAAAA,KAAK,EAAE;AAAE3Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlB4Y,QAAAA,KAAK,EAAE;AAAE5Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AAJX,KAzDE;AAmEboW,IAAAA,WAAW,EAAE;AACXhC,MAAAA,QAAQ,EAAE,KADC;AAEXxU,MAAAA,KAAK,EAAE,cAAA;AAFI,KAnEA;AAuEbyW,IAAAA,qBAAqB,EAAE,KAvEV;AAwEbC,IAAAA,mBAAmB,EAAE;AACnBlC,MAAAA,QAAQ,EAAE,KADS;AAEnBxU,MAAAA,KAAK,EAAE,sBAAA;AAFY,KAxER;AA4EbqV,IAAAA,mBAAmB,EAAE;AACnBb,MAAAA,QAAQ,EAAE,IADS;AAEnBxU,MAAAA,KAAK,EAAE,sBAFY;AAGnBoZ,MAAAA,QAAQ,EAAE,KAHS;AAInBlY,MAAAA,kBAAkB,EAAE;AAClB4X,QAAAA,KAAK,EAAE;AAAE1Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElB2Y,QAAAA,KAAK,EAAE;AAAE3Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlB4Y,QAAAA,KAAK,EAAE;AAAE5Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AAJD,KA5ER;AAsFbS,IAAAA,OAAO,EAAE;AACPK,MAAAA,kBAAkB,EAAE;AAClB4X,QAAAA,KAAK,EAAE;AAAE1Y,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SADW;AAElB2Y,QAAAA,KAAK,EAAE;AAAE3Y,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SAFW;AAGlB4Y,QAAAA,KAAK,EAAE;AAAE5Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AADb,KAtFI;AA6FbiL,IAAAA,SAAS,EAAE;AACTnK,MAAAA,kBAAkB,EAAE;AAClB4X,QAAAA,KAAK,EAAE;AAAE1Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElB2Y,QAAAA,KAAK,EAAE;AAAE3Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlB4Y,QAAAA,KAAK,EAAE;AAAE5Y,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AADX,KA7FE;AAoGb+W,IAAAA,qBAAqB,EAAE;AACrB3C,MAAAA,QAAQ,EAAE,KADW;AAErBxU,MAAAA,KAAK,EAAE,yBAAA;AAFc,KApGV;AAwGbS,IAAAA,aAAa,EAAE;AACb4U,MAAAA,mBAAmB,EAAE,GADR;AAEbK,MAAAA,MAAM,EAAE,GAFK;AAGbP,MAAAA,SAAS,EAAE,GAHE;AAIbpK,MAAAA,QAAQ,EAAE,GAJG;AAKb+D,MAAAA,aAAa,EAAE,GALF;AAMblJ,MAAAA,OAAO,EAAE,GAAA;AANI,KAxGF;AAgHblF,IAAAA,cAAc,EAAE;AACd2U,MAAAA,mBAAmB,EAAE,GADP;AAEdK,MAAAA,MAAM,EAAE,GAFM;AAGdP,MAAAA,SAAS,EAAE,GAHG;AAIdpK,MAAAA,QAAQ,EAAE,GAJI;AAKd+D,MAAAA,aAAa,EAAE,GALD;AAMdlJ,MAAAA,OAAO,EAAE,GAAA;AANK,KAhHH;AAwHb+Q,IAAAA,UAAU,EAAE;AACVnC,MAAAA,QAAQ,EAAE,KADA;AAEVxU,MAAAA,KAAK,EAAE,YAAA;AAFG,KAxHC;AA4HbsW,IAAAA,mBAAmB,EAAE,CA5HR;AA6HbO,IAAAA,qBAAqB,EAAE;AACrBrC,MAAAA,QAAQ,EAAE,IADW;AAErBxU,MAAAA,KAAK,EAAE,oBAAA;AAFc,KA7HV;AAiIbY,IAAAA,aAAa,EAAE;AACbyY,MAAAA,SAAS,EAAE,KADE;AAEbC,MAAAA,UAAU,EAAE,KAAA;AAFC,KAjIF;AAqIbnY,IAAAA,QAAQ,EAAE;AACRqT,MAAAA,QAAQ,EAAE,KADF;AAERxU,MAAAA,KAAK,EAAE,kBAFC;AAGRiK,MAAAA,OAAO,EAAE,KAAA;AAHD,KArIG;AA0Ib2M,IAAAA,eAAe,EAAE;AACf5W,MAAAA,KAAK,EAAE,kBADQ;AAEf2X,MAAAA,OAAO,EAAE,EAAA;AAFM,KAAA;AA1IJ,GAAA;AAzBF,CAAf;;;ACae,MAAM4B,mBAAN,SAAkCC,WAAlC,CAA8C;AAM3D;AACA;AAeAja,EAAAA,WAAW,GAAG;AACZ,IAAA,KAAA,EAAA,CAAA;AACA,IAAA,IAAA,CAAKka,MAAL,GAAcF,mBAAmB,CAACG,kBAApB,EAAd,CAAA;AACA,IAAA,IAAA,CAAKC,cAAL,GAAsBC,QAAQ,CAAC7Z,aAA/B,CAAA;AACD,GAAA;;AAEQ,EAAL0K,IAAAA,KAAK,CAACoP,CAAD,EAAI;AACX,IAAA,IAAA,CAAKJ,MAAL,GAAcF,mBAAmB,CAACG,kBAApB,CAAuCG,CAAvC,CAAd,CAAA;;AAEA,IAAA,IAAIA,CAAC,CAACjU,OAAF,IAAaiU,CAAC,CAACjU,OAAF,CAAUW,MAAV,IAAoBsT,CAAC,CAACxH,gBAAvC,EAAyD;AACvD,MAAKoH,IAAAA,CAAAA,MAAL,CAAYpH,gBAAZ,GAA+BwH,CAAC,CAACjU,OAAF,CAAUW,MAAzC,CAAA;AACA4H,MAAAA,OAAO,CAAC2L,IAAR,CAAa,uDAAb,CAAA,CAAA;AACD,KAAA;;AAED,IAAA,IAAA,CAAKja,MAAL,EAAA,CAAA;AACD,GAAA;;AAEgB,EAAbE,IAAAA,aAAa,CAACgG,CAAD,EAAI;AAAA,IAAA,IAAA,qBAAA,CAAA;;AACnB,IAAA,MAAMgU,gBAAgB,GACjBH,QAAAA,CAAAA,EAAAA,EAAAA,QAAQ,CAAC7Z,aADQ,EAEjBgG,CAFiB,CAAtB,CAAA;;AAKA,IAAA,IAAA,CAAK4T,cAAL,GAAsBI,gBAAtB,CANmB;AASnB;AACA;AACA;;AACA,IAAIA,IAAAA,gBAAJ,qCAAIA,gBAAgB,CAAE5Y,QAAtB,KAAI,IAAA,IAAA,qBAAA,CAA4B8I,OAAhC,EAAyC;AAAA,MAAA,IAAA,sBAAA,EAAA,sBAAA,CAAA;;AACvC,MAAI8P,IAAAA,gBAAJ,IAAIA,IAAAA,IAAAA,CAAAA,sBAAAA,GAAAA,gBAAgB,CAAEnD,eAAtB,KAAI,IAAA,IAAA,CAAA,sBAAA,GAAA,sBAAA,CAAmCe,OAAvC,KAAA,IAAA,IAAI,sBAA4CpR,CAAAA,MAAhD,EAAwD;AACtD,QAAA,IAAA,CAAKkT,MAAL,CAAYtY,QAAZ,GAAuB4Y,gBAAvB,IAAuBA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAAEnD,eAAlB,CAAkCe,OAAlC,CAA0C,CAA1C,EAA6CjG,KAApE,CAAA;AACD,OAAA;AACF,KAJD,MAIO,IAAIqI,gBAAgB,CAAC5Y,QAAjB,CAA0BqT,QAA1B,IAAsC,IAAKiF,CAAAA,MAAL,CAAYtY,QAAtD,EAAgE;AACrE,MAAA,IAAA,CAAKwY,cAAL,CAAoBxY,QAApB,CAA6B8I,OAA7B,GAAuC,IAAvC,CAAA;;AAEA,MAAA,IAAI,CAAC,IAAK0P,CAAAA,cAAL,CAAoB/C,eAApB,CAAoCe,OAArC,IAAgD,CAAC,IAAA,CAAKgC,cAAL,CAAoB/C,eAApB,CAAoCe,OAApC,CAA4CpR,MAAjG,EAAyG;AACvG,QAAA,IAAA,CAAKoT,cAAL,CAAoB/C,eAApB,CAAoCe,OAApC,GAA8C,EAA9C,CAAA;AACD,OALoE;AAQrE;;;AACA,MAAI,IAAA,CAAC,KAAKgC,cAAL,CAAoB/C,eAApB,CAAoCe,OAApC,CAA4C1K,IAA5C,CAAkD+M,MAAD,IAAYA,MAAM,CAACtI,KAAP,KAAiB,KAAK+H,MAAL,CAAYtY,QAA1F,CAAL,EAA0G;AACxG,QAAA,IAAA,CAAKwY,cAAL,CAAoB/C,eAApB,CAAoCe,OAApC,CAA4CrL,IAA5C,CAAiD;AAC/CoF,UAAAA,KAAK,EAAE,IAAK+H,CAAAA,MAAL,CAAYtY,QAD4B;AAE/CnB,UAAAA,KAAK,EAAE,IAAKyZ,CAAAA,MAAL,CAAYtY,QAAAA;AAF4B,SAAjD,CAAA,CAAA;AAID,OAAA;AACF,KAfM,MAeA;AACL,MAAO,OAAA,IAAA,CAAKsY,MAAL,CAAYtY,QAAnB,CAAA;AACD,KAAA;;AAED,IAAA,IAAA,CAAKtB,MAAL,EAAA,CAAA;AACD,GAAA;;AAED2M,EAAAA,cAAc,CAACqN,CAAD,EAAI;AAChB,IAAKJ,IAAAA,CAAAA,MAAL,GAAcI,CAAd,CAAA;AAEA,IAAA,IAAA,CAAKha,MAAL,EAAA,CAAA;AACA,IAAKoa,IAAAA,CAAAA,aAAL,CAAmB,IAAIC,iBAAJ,CAAsB,IAAKT,CAAAA,MAA3B,EAAmC,KAAnC,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDxD,EAAAA,sBAAsB,CAAClQ,CAAD,EAAI;AACxB,IAAK4T,IAAAA,CAAAA,cAAL,GAAsB5T,CAAtB,CAAA;AACA,IAAA,IAAA,CAAKlG,MAAL,EAAA,CAAA;AACD,GAAA;;AAEDsa,EAAAA,iBAAiB,GAAG;AAClB,IAAA,IAAA,CAAKta,MAAL,EAAA,CAAA;AACD,GAAA;AAED;AACF;AACA;AACA;;;AACEua,EAAAA,WAAW,CAACC,OAAD,EAAU;AACnB,IAAA,IAAA,CAAKJ,aAAL,CAAmB,IAAIK,gBAAJ,CAAqBD,OAArB,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDE,EAAAA,aAAa,CAACC,GAAD,EAAMC,IAAN,EAAY;AACvB,IAAKR,IAAAA,CAAAA,aAAL,CAAmB,IAAIS,gBAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDE,EAAAA,WAAW,CAACN,OAAD,EAAU;AACnB,IAAA,IAAA,CAAKJ,aAAL,CAAmB,IAAIW,gBAAJ,CAAqBP,OAArB,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDQ,EAAAA,aAAa,CAACL,GAAD,EAAMC,IAAN,EAAY;AACvB,IAAKR,IAAAA,CAAAA,aAAL,CAAmB,IAAIa,gBAAJ,CAAqBN,GAArB,EAA0BC,IAA1B,CAAnB,CAAA,CAAA;AACD,GAAA;;AAED5a,EAAAA,MAAM,GAAG;AACP,IAAA,MAAMkb,EAAE,gBAAG1b,KAAK,CAAC2b,aAAN,CAAoBpC,MAApB,EAA0B;AACnCnO,MAAAA,KAAK,EAAE,IAAA,CAAKgP,MADuB;AAEnC1Z,MAAAA,aAAa,EAAE,IAAA,CAAK4Z,cAFe;AAGnCnN,MAAAA,cAAc,EAAE,IAAKA,CAAAA,cAAL,CAAoByO,IAApB,CAAyB,IAAzB,CAHmB;AAInChF,MAAAA,sBAAsB,EAAE,IAAKA,CAAAA,sBAAL,CAA4BgF,IAA5B,CAAiC,IAAjC,CAJW;AAKnC5a,MAAAA,YAAY,EAAE;AACZyB,QAAAA,GAAG,EAAE,IAAKsY,CAAAA,WAAL,CAAiBa,IAAjB,CAAsB,IAAtB,CADO;AAEZlZ,QAAAA,MAAM,EAAE,IAAA,CAAKwY,aAAL,CAAmBU,IAAnB,CAAwB,IAAxB,CAAA;AAFI,OALqB;AASnCta,MAAAA,kBAAkB,EAAE;AAClBmB,QAAAA,GAAG,EAAE,IAAK6Y,CAAAA,WAAL,CAAiBM,IAAjB,CAAsB,IAAtB,CADa;AAElBlZ,QAAAA,MAAM,EAAE,IAAA,CAAK8Y,aAAL,CAAmBI,IAAnB,CAAwB,IAAxB,CAAA;AAFU,OAAA;AATe,KAA1B,CAAX,CAAA;AAeAlN,IAAAA,QAAQ,CAAClO,MAAT,CAAgBkb,EAAhB,EAAoB,IAApB,EAA0B,MAAM;AAC9B9M,MAAAA,UAAU,CAAC,IAAD,CAAV,CAAA;AACD,KAFD,CAAA,CAAA;AAGD,GAAA;;AApI0D,CAAA;;AAAxCsL,oBACZG,qBAAqB,CAACjP,KAAK,GAAG,EAAT,KAAA,QAAA,CAAA,EAAA,EACvBmP,QAAQ,CAACnP,KADc,EAEvBA,KAFuB;;AADT8O,oBAQZ2B,4BAA6BrB,CAAD,IAAO;AACxC,EAAI,IAAA;AAAEnP,IAAAA,eAAAA;AAAF,GAAsBmP,GAAAA,CAAC,IAAI,EAA/B,CAAA;AACAnP,EAAAA,eAAe,GAAGA,eAAe,IAAI,EAArC,CAAA;AACA,EAAA,MAAMyQ,qBAAqB,GAAGzQ,eAAe,CAAC5E,GAAhB,CAAqBqN,EAAD,IAAQ;AACxD,IAA+BiI,MAAAA,QAA/B,iCAA4CjI,EAA5C,EAAA,SAAA,CAAA,CAAA;;AACA,IAAA,OAAOiI,QAAP,CAAA;AACD,GAH6B,CAA9B,CAAA;AAIA,EAAA,OAAA,QAAA,CAAA,EAAA,EACKvB,CADL,EAAA;AAEEnP,IAAAA,eAAe,EAAEyQ,qBAFnB;AAGEnP,IAAAA,qBAAqB,EAAE,KAAA;AAHzB,GAAA,CAAA,CAAA;AAKD;;;;"}