@pie-element/match 11.0.5-esm.1 → 11.1.0-next.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.
Files changed (40) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/configure/CHANGELOG.md +63 -0
  3. package/configure/lib/add-row.js +27 -73
  4. package/configure/lib/add-row.js.map +1 -1
  5. package/configure/lib/answer-config-block.js +262 -335
  6. package/configure/lib/answer-config-block.js.map +1 -1
  7. package/configure/lib/common.js +18 -33
  8. package/configure/lib/common.js.map +1 -1
  9. package/configure/lib/configure.js +330 -420
  10. package/configure/lib/configure.js.map +1 -1
  11. package/configure/lib/defaults.js +5 -4
  12. package/configure/lib/defaults.js.map +1 -1
  13. package/configure/lib/general-config-block.js +123 -190
  14. package/configure/lib/general-config-block.js.map +1 -1
  15. package/configure/lib/index.js +117 -190
  16. package/configure/lib/index.js.map +1 -1
  17. package/configure/lib/row.js +269 -377
  18. package/configure/lib/row.js.map +1 -1
  19. package/configure/lib/utils.js +4 -15
  20. package/configure/lib/utils.js.map +1 -1
  21. package/configure/package.json +15 -14
  22. package/controller/CHANGELOG.md +49 -0
  23. package/controller/lib/defaults.js +2 -3
  24. package/controller/lib/defaults.js.map +1 -1
  25. package/controller/lib/index.js +173 -301
  26. package/controller/lib/index.js.map +1 -1
  27. package/controller/package.json +6 -6
  28. package/lib/answer-grid.js +142 -242
  29. package/lib/answer-grid.js.map +1 -1
  30. package/lib/index.js +59 -108
  31. package/lib/index.js.map +1 -1
  32. package/lib/main.js +123 -191
  33. package/lib/main.js.map +1 -1
  34. package/package.json +18 -29
  35. package/esm/configure.js +0 -3936
  36. package/esm/configure.js.map +0 -1
  37. package/esm/controller.js +0 -428
  38. package/esm/controller.js.map +0 -1
  39. package/esm/element.js +0 -472
  40. package/esm/element.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"configure.js","sources":["../configure/src/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/utils.js","../configure/src/general-config-block.jsx","../../../node_modules/@material-ui/icons/Add.js","../configure/src/add-row.jsx","../../../node_modules/@material-ui/icons/DragHandle.js","../../../node_modules/@material-ui/icons/Delete.js","../../../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/row.jsx","../configure/src/answer-config-block.jsx","../configure/src/configure.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;","export const generateValidationMessage = (model, configuration) => {\n const { choiceMode } = model;\n const { minQuestions, maxQuestions, maxAnswers } = configuration;\n\n const baselineValidationMessage =\n `\\nThere should be at least ${minQuestions}` +\n (maxQuestions ? ` and at most ${maxQuestions}` : '') +\n ' question row' + (minQuestions > 1 || maxQuestions ? 's.' : '.') +\n '\\nRow and column headings should be non-blank and unique. \\nFirst column heading is excluded from validation.' +\n (maxAnswers ? `\\nThere should be at most ${maxAnswers} answer choices.` : '')\n ;\n\n const correctResponseMessage =\n choiceMode === 'radio'\n ? '\\nThere should be a correct response defined for every row.'\n : '\\nThere should be at least one correct response defined for every row.';\n\n return 'Validation requirements:' + baselineValidationMessage + correctResponseMessage;\n};\n","import * as React from 'react';\nimport { InputContainer, NumberTextField } from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\n\nimport { generateValidationMessage } from '../utils';\n\nconst styles = (theme) => ({\n container: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n },\n input: {\n flex: 1,\n },\n numberTextField: {\n flexDirection: 'unset',\n },\n inputContainer: {\n width: '65%',\n },\n flexContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n titleText: {\n fontSize: theme.typography.fontSize + 2,\n marginRight: theme.spacing.unit,\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n});\n\nclass GeneralConfigBlock extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n onResponseTypeChange: PropTypes.func.isRequired,\n onLayoutChange: PropTypes.func.isRequired,\n };\n\n onChangeResponseType = (name) => (event) => {\n const { model, onResponseTypeChange } = this.props;\n const newModel = { ...model };\n\n newModel[name] = event.target.value;\n\n onResponseTypeChange(newModel[name]);\n };\n\n onChangeColumns = (name, value) => {\n const { model, onLayoutChange } = this.props;\n const newModel = { ...model };\n\n newModel[name] = value;\n\n onLayoutChange(newModel[name]);\n };\n\n render() {\n const { classes, model, configuration } = this.props;\n const { layout = {}, choiceMode = {}, maxAnswers } = configuration || {};\n\n const validationMessage = generateValidationMessage(model, configuration);\n\n return (\n <React.Fragment>\n <div className={classes.flexContainer}>\n <Typography className={classes.titleText} component={'div'}>\n Define questions\n </Typography>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} />\n </Tooltip>\n </div>\n\n <div className={classes.container}>\n <div className={classes.input}>\n {layout.settings && (\n <InputContainer label={layout.label} className={classes.inputContainer}>\n <NumberTextField\n type=\"number\"\n min={3}\n max={maxAnswers || 10}\n value={model.layout}\n onChange={(e, v) => this.onChangeColumns('layout', v)}\n suffix={'Columns'}\n className={classes.numberTextField}\n />\n </InputContainer>\n )}\n </div>\n\n <div className={classes.input}>\n {choiceMode.settings && (\n <InputContainer label={choiceMode.label} className={classes.inputContainer}>\n <Select onChange={this.onChangeResponseType('choiceMode')} value={model.choiceMode}>\n <MenuItem value=\"radio\">Radio - One Answer</MenuItem>\n <MenuItem value=\"checkbox\">Checkbox - Multiple Answers</MenuItem>\n </Select>\n </InputContainer>\n )}\n </div>\n </div>\n </React.Fragment>\n );\n }\n}\n\nexport default withStyles(styles)(GeneralConfigBlock);\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 d: \"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\"\n}), _react.default.createElement(\"path\", {\n fill: \"none\",\n d: \"M0 0h24v24H0z\"\n})), 'Add');\n\nexports.default = _default;","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nimport AddButton from '@material-ui/icons/Add';\n\nexport class AddRowButton extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n onAddClick: PropTypes.func.isRequired,\n };\n\n render() {\n const { classes, onAddClick } = this.props;\n\n return (\n <Button className={classes.button} disabled={false} onClick={onAddClick}>\n <AddButton className={classes.icon} />\n Add Another Row\n </Button>\n );\n }\n}\n\nconst styles = (theme) => ({\n button: {\n display: 'flex',\n alignSelf: 'flex-start',\n margin: 0,\n },\n icon: {\n marginRight: theme.spacing.unit / 2,\n },\n});\n\nexport default withStyles(styles)(AddRowButton);\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;","\"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 d: \"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\"\n}), _react.default.createElement(\"path\", {\n fill: \"none\",\n d: \"M0 0h24v24H0z\"\n})), 'Delete');\n\nexports.default = _default;","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 { getPluginProps } from './utils';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { AlertDialog, Checkbox } from '@pie-lib/config-ui';\nimport DragHandle from '@material-ui/icons/DragHandle';\nimport Radio from '@material-ui/core/Radio';\nimport IconButton from '@material-ui/core/IconButton';\nimport Delete from '@material-ui/icons/Delete';\nimport { DragSource, DropTarget } from 'react-dnd';\nimport debug from 'debug';\nimport EditableHtml, { DEFAULT_PLUGINS } from '@pie-lib/editable-html';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('@pie-element:categorize:configure:choice');\n\nexport let canDrag = false;\n\nexport class Row extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n row: PropTypes.object.isRequired,\n idx: PropTypes.number.isRequired,\n isDragging: PropTypes.bool.isRequired,\n maxImageWidth: PropTypes.object,\n maxImageHeight: PropTypes.object,\n onDeleteRow: PropTypes.func.isRequired,\n onChange: PropTypes.func.isRequired,\n connectDragSource: PropTypes.func.isRequired,\n connectDropTarget: PropTypes.func.isRequired,\n onMoveRow: 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 inputConfiguration: PropTypes.object,\n toolbarOpts: PropTypes.object,\n error: PropTypes.string,\n spellCheck: PropTypes.bool,\n minQuestions: PropTypes.number,\n };\n\n static defaultProps = {};\n\n state = {\n dialog: {\n open: false,\n text: '',\n },\n };\n\n componentDidMount() {\n document.addEventListener('mouseup', this.onMouseUpOnHandle);\n }\n\n onRowTitleChange = (rowIndex) => (value) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n newModel.rows[rowIndex].title = value;\n onChange(newModel);\n };\n\n onRowValueChange = (rowIndex, rowValueIndex) => (event) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n if (model.choiceMode === 'radio') {\n for (let i = 0; i < newModel.rows[rowIndex].values.length; i++) {\n newModel.rows[rowIndex].values[i] = false;\n }\n }\n\n newModel.rows[rowIndex].values[rowValueIndex] = event.target.checked;\n\n onChange(newModel);\n };\n\n onDeleteRow = (idx) => () => {\n const { model, onDeleteRow, minQuestions } = this.props;\n\n if (model.rows && model.rows.length === minQuestions) {\n this.setState({\n dialog: {\n open: true,\n text: `There should be at least ${minQuestions} question row` + (minQuestions > 1 ? 's' : '') + '.',\n },\n });\n } else {\n onDeleteRow(idx);\n }\n };\n\n onMouseDownOnHandle = () => {\n canDrag = true;\n };\n\n onMouseUpOnHandle = () => {\n canDrag = false;\n };\n\n render() {\n const {\n classes,\n imageSupport,\n connectDragSource,\n connectDropTarget,\n isDragging,\n model,\n row,\n idx,\n inputConfiguration = {},\n toolbarOpts,\n spellCheck,\n error,\n maxImageWidth,\n maxImageHeight,\n uploadSoundSupport,\n mathMlOptions = {},\n } = this.props;\n const { dialog } = this.state;\n const opacity = isDragging ? 0 : 1;\n\n const filteredDefaultPlugins = (DEFAULT_PLUGINS || []).filter(\n (p) => p !== 'bulleted-list' && p !== 'numbered-list',\n );\n\n const content = (\n <div style={{ opacity: opacity, width: '100%' }}>\n <span itemID={'handle'} className={classes.dragHandle} onMouseDown={this.onMouseDownOnHandle}>\n <DragHandle color={'primary'} />\n </span>\n\n <div className={classes.rowContainer}>\n <div className={classNames(classes.rowItem, classes.questionText)}>\n <EditableHtml\n imageSupport={imageSupport}\n autoWidthToolbar\n disableUnderline\n label={'label'}\n markup={row.title}\n onChange={this.onRowTitleChange(idx)}\n className={classes.editor}\n pluginProps={inputConfiguration}\n toolbarOpts={toolbarOpts}\n activePlugins={filteredDefaultPlugins}\n spellCheck={spellCheck}\n maxImageWidth={maxImageWidth}\n maxImageHeight={maxImageHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n error={error && error !== 'No correct response defined.'}\n mathMlOptions={mathMlOptions}\n />\n </div>\n\n {row.values.map((rowValue, rowIdx) => (\n <div key={rowIdx} className={classes.rowItem}>\n {model.choiceMode === 'radio' ? (\n <Radio\n className={classNames(classes.radioButton, classes.customColor, {\n [classes.errorResponse]: error?.includes('No correct response defined.'),\n })}\n onChange={this.onRowValueChange(idx, rowIdx)}\n checked={rowValue === true}\n />\n ) : (\n <Checkbox\n onChange={this.onRowValueChange(idx, rowIdx)}\n checked={rowValue === true}\n label={''}\n error={error?.includes('No correct response defined.')}\n />\n )}\n </div>\n ))}\n\n <div className={classes.deleteIcon}>\n <IconButton onClick={this.onDeleteRow(idx)} aria-label=\"Delete\">\n <Delete />\n </IconButton>\n </div>\n </div>\n\n {error && <div className={classes.errorText}>{error}</div>}\n <hr className={classes.separator} />\n\n <AlertDialog\n open={dialog.open}\n title=\"Warning\"\n text={dialog.text}\n onConfirm={() => this.setState({ dialog: { open: false } })}\n />\n </div>\n );\n\n return connectDragSource(connectDropTarget(content));\n }\n}\n\nconst styles = (theme) => ({\n actions: {\n padding: 0,\n justifyContent: 'space-between',\n },\n choice: {\n padding: theme.spacing.unit,\n overflow: 'visible',\n },\n dragHandle: {\n cursor: 'move',\n },\n dragDisabled: {\n cursor: 'inherit',\n },\n\n container: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n flexDirection: 'column',\n },\n rowContainer: {\n marginTop: theme.spacing.unit * 2,\n display: 'flex',\n alignItems: 'center',\n flex: 1,\n },\n rowItem: {\n flex: 1,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n minWidth: '120px',\n padding: `0 ${theme.spacing.unit}px`,\n },\n radioButton: {\n '& input': {\n width: '100% !important',\n },\n },\n customColor: {\n color: `${color.tertiary()} !important`,\n },\n deleteIcon: {\n flex: 0.5,\n display: 'flex',\n justifyContent: 'center',\n minWidth: '45px',\n padding: `0 ${theme.spacing.unit}px`,\n },\n questionText: {\n flex: 2,\n display: 'flex',\n justifyContent: 'flex-start',\n padding: 0,\n maxWidth: 'unset',\n textAlign: 'left',\n minWidth: '200px',\n marginRight: theme.spacing.unit,\n '&> div': {\n width: '100%',\n },\n },\n separator: {\n marginTop: theme.spacing.unit * 2,\n border: 0,\n borderTop: `2px solid ${theme.palette.grey['A100']}`,\n width: '100%',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n errorResponse: {\n color: theme.palette.error.main,\n },\n});\n\nconst StyledRow = withStyles(styles)(Row);\n\nconst NAME = 'row-config';\n\nexport const choiceSource = {\n canDrag() {\n return canDrag;\n },\n beginDrag(props) {\n return {\n id: props.row.id,\n index: props.idx,\n };\n },\n};\n\nconst StyledSource = DragSource(NAME, choiceSource, (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n isDragging: monitor.isDragging(),\n}))(StyledRow);\n\nexport const choiceTarget = {\n hover() {\n log('[hover]');\n },\n drop(props, monitor) {\n const item = monitor.getItem();\n\n log('[drop] item: ', item, 'didDrop?', monitor.didDrop());\n\n props.onMoveRow(item.index, props.idx);\n },\n};\n\nconst StyledSourceAndTarget = DropTarget(NAME, choiceTarget, (connect) => ({\n connectDropTarget: connect.dropTarget(),\n}))(StyledSource);\n\nexport default StyledSourceAndTarget;\n","import { getPluginProps } from './utils';\nimport * as React from 'react';\nimport cx from 'classnames';\nimport PropTypes from 'prop-types';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport AddRow from './add-row';\nimport Row from './row';\nimport debug from 'debug';\nimport lodash from 'lodash';\nimport EditableHtml, { DEFAULT_PLUGINS } from '@pie-lib/editable-html';\n\nconst log = debug('pie-elements:match:configure');\n\nconst styles = (theme) => ({\n container: {\n marginBottom: theme.spacing.unit * 2.5,\n display: 'flex',\n flexDirection: 'column',\n },\n rowContainer: {\n display: 'flex',\n alignItems: 'center',\n flex: 1,\n width: '100%',\n borderBottom: `2px solid ${theme.palette.grey['A100']}`,\n paddingBottom: theme.spacing.unit * 2,\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit,\n },\n rowItem: {\n flex: 1,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n flexDirection: 'column',\n '&> div': {\n width: '120px',\n padding: `0 ${theme.spacing.unit}px`,\n textAlign: 'center',\n },\n },\n deleteIcon: {\n flex: 0.5,\n minWidth: '45px',\n padding: `0 ${theme.spacing.unit}px`,\n },\n questionText: {\n flex: 2,\n display: 'flex',\n justifyContent: 'flex-start',\n marginRight: theme.spacing.unit,\n '&> div': {\n width: '100%',\n padding: 0,\n maxWidth: 'unset',\n textAlign: 'left',\n minWidth: '200px',\n },\n },\n rowTable: {\n display: 'flex',\n flexDirection: 'column',\n },\n headerInput: {\n '&> div': {\n fontWeight: 'bold',\n },\n },\n marginBottom: {\n marginBottom: theme.typography.fontSize - 2 + theme.spacing.unit,\n },\n columnErrorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: `${theme.spacing.unit}px !important`,\n width: 'fit-content !important',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingBottom: theme.spacing.unit,\n },\n});\n\nclass AnswerConfigBlock extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n onDeleteRow: PropTypes.func.isRequired,\n onAddRow: 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 moveRow = (from, to) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n const rows = newModel.rows || [];\n\n log('[moveRow]: ', from, to);\n\n const { movedRow, remainingRows } = rows.reduce(\n (acc, item, index) => {\n if (index === from) {\n acc.movedRow = item;\n } else {\n acc.remainingRows.push(item);\n }\n\n return acc;\n },\n { movedRow: null, remainingRows: [] },\n );\n\n const update = [...remainingRows.slice(0, to), movedRow, ...remainingRows.slice(to)];\n\n log('update: ', update);\n\n newModel.rows = update;\n\n onChange(newModel);\n };\n\n onChange =\n (name, isBoolean) =>\n ({ target }) => {\n const { model, onChange } = this.props;\n let value;\n\n if (isBoolean) {\n value = target.checked;\n } else {\n value = target.value;\n }\n\n lodash.set(model, name, value);\n onChange(model, name);\n };\n\n onHeaderChange = (headerIndex) => (value) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n if (headerIndex === 0) {\n newModel.headers[headerIndex] = value;\n onChange(newModel);\n\n return;\n }\n\n newModel.headers[headerIndex] = value;\n onChange(newModel);\n };\n\n render() {\n const { classes, model, onAddRow, imageSupport, configuration, toolbarOpts, spellCheck, uploadSoundSupport } =\n this.props;\n const {\n baseInputConfiguration = {},\n headers = {},\n rows = {},\n maxImageWidth = {},\n maxImageHeight = {},\n mathMlOptions = {},\n minQuestions,\n } = configuration || {};\n const { errors } = model || {};\n const { correctResponseError, rowsErrors, columnsErrors, noOfRowsError, columnsLengthError } = errors || {};\n\n const filteredDefaultPlugins = (DEFAULT_PLUGINS || []).filter(\n (p) => p !== 'table' && p !== 'bulleted-list' && p !== 'numbered-list',\n );\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n return (\n <div className={classes.container}>\n <Typography type=\"body1\" component=\"div\">\n Click on the labels to edit or remove. Set the correct answers by clicking each correct answer per row.\n </Typography>\n\n <div\n className={classes.rowTable}\n style={configuration.width ? { width: configuration.width, overflow: 'scroll' } : {}}\n >\n <div className={classes.rowContainer}>\n {headers.settings &&\n (model.headers || []).map((header, idx) => (\n <div\n key={idx}\n className={cx(classes.rowItem, {\n [classes.questionText]: idx === 0,\n })}\n >\n <EditableHtml\n onChange={this.onHeaderChange(idx)}\n markup={header}\n className={columnsErrors && !columnsErrors[idx] ? classes.marginBottom : classes.headerInput}\n label={'column label'}\n activePlugins={filteredDefaultPlugins}\n pluginProps={getPluginProps(headers?.inputConfiguration, baseInputConfiguration)}\n autoWidthToolbar\n spellCheck={spellCheck}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n error={columnsErrors && columnsErrors[idx]}\n />\n {columnsErrors && columnsErrors[idx] && (\n <div className={classes.columnErrorText}>{columnsErrors[idx]}</div>\n )}\n </div>\n ))}\n <div className={classes.deleteIcon} />\n </div>\n\n {model.rows.map((row, idx) => (\n <Row\n key={idx}\n model={model}\n row={row}\n idx={idx}\n onDeleteRow={this.props.onDeleteRow}\n onChange={this.props.onChange}\n onMoveRow={this.moveRow}\n imageSupport={imageSupport}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheck}\n error={rowsErrors?.[row.id]}\n maxImageWidth={(maxImageWidth && maxImageWidth.rowTitles) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rowTitles) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n mathMlOptions={mathMlOptions}\n minQuestions={minQuestions}\n inputConfiguration={getPluginProps(rows?.inputConfiguration, baseInputConfiguration)}\n />\n ))}\n\n {correctResponseError && <div className={classes.errorText}>{correctResponseError}</div>}\n {noOfRowsError && <div className={classes.errorText}>{noOfRowsError}</div>}\n {columnsLengthError && <div className={classes.errorText}>{columnsLengthError}</div>}\n\n <AddRow onAddClick={onAddRow} />\n </div>\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(AnswerConfigBlock);\n","import { getPluginProps } from './utils';\nimport React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport { FeedbackConfig, settings, layout, InputContainer, AlertDialog } from '@pie-lib/config-ui';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { withDragContext } from '@pie-lib/drag';\nimport PropTypes from 'prop-types';\nimport debug from 'debug';\nimport GeneralConfigBlock from './general-config-block';\nimport AnswerConfigBlock from './answer-config-block';\n\nconst log = debug('@pie-element:match:configure');\nconst { Panel, toggle, radio, dropdown } = settings;\n\nconst styles = (theme) => ({\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n});\n\nclass Configure extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n classes: PropTypes.object,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.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 };\n\n static defaultProps = {\n classes: {},\n };\n\n constructor(props) {\n super(props);\n\n let maxId = 0;\n\n if (props.model.rows && props.model.rows.length > 0) {\n maxId = Math.max(...props.model.rows.map((row) => row.id));\n }\n\n this.rowIdCounter = maxId + 1;\n\n this.state = {\n activeTab: 0,\n dialog: {\n open: false,\n text: '',\n },\n };\n }\n\n componentDidMount() {\n const { updatedRows, wasChanged } = this.validateRowsID(this.props.model.rows);\n\n if (wasChanged) {\n const newModel = { ...this.props.model, rows: updatedRows };\n this.props.onModelChanged(newModel);\n }\n }\n\n validateRowsID(rows) {\n let wasChanged = false;\n\n const updatedRows = (rows || []).map((row, index) => {\n if (row.id !== index + 1) {\n wasChanged = true;\n\n return { ...row, id: index + 1 };\n }\n\n return row;\n });\n\n return { updatedRows, wasChanged };\n }\n\n onTabChange = (event, value) => {\n this.setState({ activeTab: value });\n };\n\n onChangeTabIndex = (index) => {\n this.setState({ activeTab: index });\n };\n\n onChange = (model) => {\n this.props.onModelChanged(model);\n };\n\n onFeedbackChange = (feedback) => {\n const { model, onModelChanged } = this.props;\n model.feedback = feedback;\n\n onModelChanged(model);\n };\n\n onDeleteRow = (rowIndex) => {\n const { model } = this.props;\n const newModel = { ...model };\n\n newModel.rows.splice(rowIndex, 1);\n\n this.onChange(newModel);\n };\n\n onAddRow = () => {\n const { model, configuration } = this.props;\n const newModel = { ...model };\n const { maxQuestions } = configuration || {};\n\n if (maxQuestions && (newModel.rows || []).length >= maxQuestions) {\n this.setState({\n dialog: {\n open: true,\n text: `There can be maximum ${maxQuestions} question row` + (maxQuestions > 1 ? 's' : '') + '.',\n },\n });\n return;\n }\n\n newModel.rows = newModel.rows.concat({\n id: this.rowIdCounter + 1,\n title: `Question Text ${(newModel.rows || []).length + 1}`,\n values: new Array(model.layout - 1).fill(false),\n });\n\n this.rowIdCounter += 1;\n\n this.onChange(newModel);\n };\n\n onLayoutChange = (newLayout) => {\n const { model } = this.props;\n const oldLayout = model.layout;\n const newModel = { ...model };\n\n if (newLayout > oldLayout) {\n for (let i = 0; i < newLayout - oldLayout; i++) {\n newModel.headers.push(`Column ${newModel.headers.length + 1}`);\n }\n\n newModel.rows.forEach((row) => {\n for (let i = 0; i < newLayout - oldLayout; i++) {\n row.values.push(false);\n }\n });\n } else if (newLayout < oldLayout) {\n newModel.headers.splice(newLayout);\n\n newModel.rows.forEach((row) => {\n row.values.splice(newLayout - 1);\n });\n }\n\n newModel.layout = newLayout;\n\n this.onChange(newModel);\n };\n\n onResponseTypeChange = (newChoiceMode) => {\n const { model } = this.props;\n const newModel = { ...model };\n\n // if we're switching to radio and we have more than one true, reset\n if (newChoiceMode === 'radio') {\n newModel.rows.forEach((row) => {\n const trueCount = row.values.reduce((total, current) => (current === true ? total + 1 : total));\n\n if (trueCount > 1) {\n row.values = new Array(model.layout - 1).fill(false);\n }\n });\n }\n\n newModel.choiceMode = newChoiceMode;\n\n this.onChange(newModel);\n };\n\n onPartialScoringChange = (partialScoring) => {\n this.props.model.partialScoring = partialScoring;\n\n this.props.onModelChanged(this.props.model);\n };\n\n onPromptChanged = (prompt) => {\n this.props.onModelChanged({ ...this.props.model, prompt });\n };\n\n onTeacherInstructionsChanged = (teacherInstructions) => {\n this.props.onModelChanged({ ...this.props.model, teacherInstructions });\n };\n\n onRationaleChanged = (rationale) => {\n this.props.onModelChanged({ ...this.props.model, rationale });\n };\n\n render() {\n const { classes, model, imageSupport, onModelChanged, configuration, onConfigurationChanged, uploadSoundSupport } =\n this.props;\n const {\n baseInputConfiguration = {},\n contentDimensions = {},\n feedback = {},\n lockChoiceOrder = {},\n maxImageWidth = {},\n maxImageHeight = {},\n partialScoring = {},\n prompt = {},\n rationale = {},\n settingsPanelDisabled,\n scoringType = {},\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n withRubric = {},\n language = {},\n languageChoices = {},\n } = configuration || {};\n const {\n errors,\n extraCSSRules,\n feedbackEnabled,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n } = model || {};\n const {\n prompt: promptError,\n rationale: rationaleError,\n teacherInstructions: teacherInstructionsError,\n } = errors || {};\n const { dialog } = this.state;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\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 feedbackEnabled: feedback.settings && toggle(feedback.label),\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n promptEnabled: prompt.settings && toggle(prompt.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 log('[render] model', model);\n\n return (\n <layout.ConfigLayout\n extraCSSRules={extraCSSRules}\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.onTeacherInstructionsChanged}\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 />\n {teacherInstructionsError && <div className={classes.errorText}>{teacherInstructionsError}</div>}\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\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 />\n {promptError && <div className={classes.errorText}>{promptError}</div>}\n </InputContainer>\n )}\n\n <GeneralConfigBlock\n model={model}\n configuration={configuration}\n onResponseTypeChange={this.onResponseTypeChange}\n onLayoutChange={this.onLayoutChange}\n />\n\n <AnswerConfigBlock\n model={model}\n configuration={configuration}\n imageSupport={imageSupport}\n onChange={this.onChange}\n onAddRow={this.onAddRow}\n onDeleteRow={this.onDeleteRow}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n uploadSoundSupport={uploadSoundSupport}\n />\n\n {rationaleEnabled && (\n <InputContainer label={rationale.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={this.onRationaleChanged}\n imageSupport={imageSupport}\n error={rationaleError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rationale?.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 />\n {rationaleError && <div className={classes.errorText}>{rationaleError}</div>}\n </InputContainer>\n )}\n\n {feedbackEnabled && (\n <FeedbackConfig feedback={model.feedback} onChange={this.onFeedbackChange} toolbarOpts={toolbarOpts} />\n )}\n <AlertDialog\n open={dialog.open}\n title=\"Warning\"\n text={dialog.text}\n onConfirm={() => this.setState({ dialog: { open: false } })}\n />\n </layout.ConfigLayout>\n );\n }\n}\n\nexport const Config = Configure;\n\nexport default withDragContext(withStyles(styles)(Configure));\n","/** NOTE: teacherInstructions, studentInstructions, rationale & scoringType\n * functionalities are not defined yet - the value for those can belong to\n * model or to configuration\n */\n\nexport default {\n model: {\n choiceMode: 'radio',\n feedbackEnabled: false,\n headers: ['Column 1', 'Column 2', 'Column 3'],\n layout: 3,\n lockChoiceOrder: true,\n partialScoring: false,\n prompt: '',\n promptEnabled: true,\n rationale: '',\n rationaleEnabled: true,\n rows: [],\n scoringType: 'auto',\n studentInstructionsEnabled: true,\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\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 rows: {\n inputConfiguration: {\n audio: { disabled: true },\n video: { disabled: true },\n image: { disabled: false },\n },\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n enabled: true,\n },\n headers: {\n settings: true,\n inputConfiguration: {\n audio: { disabled: true },\n video: { disabled: true },\n image: { disabled: false },\n },\n },\n layout: {\n settings: true,\n label: 'Layout',\n },\n lockChoiceOrder: {\n settings: false,\n label: 'Lock Choice Order',\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\n },\n choiceMode: {\n settings: true,\n label: 'Response Type',\n },\n prompt: {\n settings: true,\n label: 'Prompt',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n inputConfiguration: {\n audio: { disabled: false },\n video: { disabled: false },\n image: { disabled: false },\n },\n required: false,\n },\n maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n rowTitles: 300,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n rowTitles: 150,\n },\n withRubric: {\n settings: false,\n label: 'Add Rubric',\n },\n minQuestions: 2,\n maxQuestions: 5,\n maxLengthQuestionsHeading: 100,\n maxAnswers: 5,\n maxLengthAnswers: 100,\n maxLengthFirstColumnHeading: 100,\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 { isEmpty, set } from 'lodash';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport Configure from './configure';\nimport {\n ModelUpdatedEvent,\n DeleteImageEvent,\n InsertImageEvent,\n InsertSoundEvent,\n DeleteSoundEvent,\n} from '@pie-framework/pie-configure-events';\nimport debug from 'debug';\nimport defaultValues from './defaults';\nimport cloneDeep from 'lodash/cloneDeep';\n\nconst log = debug('pie-elements:match:configure');\n\nexport default class MatchConfigure extends HTMLElement {\n static createDefaultModel = (model = {}) => ({\n ...defaultValues.model,\n ...model,\n });\n\n constructor() {\n super();\n this._model = MatchConfigure.createDefaultModel();\n this._configuration = defaultValues.configuration;\n }\n\n set model(m) {\n this._model = MatchConfigure.createDefaultModel(m);\n this._modelCopy = cloneDeep(this._model);\n\n this._render();\n }\n\n resetModelAfterConfigurationIsSet = () => {\n // In environments that use pie-player-components, model is set before configuration.\n // This is the reason why sometimes the model gets altered non-reversible\n // (altered using default configuration instead of client configuration, because at that point client configuration was not set yet)\n // Therefore, in such environments, we will make sure to keep a modelCopy (initialised in set model) and use it to reset\n // the model in set configuration (resetModelAfterConfigurationIsSet) if set configuration is ever called\n const pieAuthors = document.querySelectorAll('pie-author');\n this.hasPlayerAsParent = Array.from(pieAuthors).some((author) => author.contains(this));\n\n if (this.hasPlayerAsParent) {\n if (this._modelCopy) {\n this._model = this._modelCopy;\n } else {\n delete this._modelCopy;\n }\n }\n };\n\n set configuration(c) {\n const newConfiguration = {\n ...defaultValues.configuration,\n ...c,\n };\n\n this._configuration = newConfiguration;\n\n this.resetModelAfterConfigurationIsSet();\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 /**\n * @Deprecated we added rows.inputConfiguration to handle the plugins in the editable html fields\n * if rows.inputConfiguration is not defined we try to default to the old enableImages flag\n * This flag 'enableImages' will be removed in the future\n */\n \n if (isEmpty(c?.rows?.inputConfiguration)) {\n set(this._configuration.rows, 'inputConfiguration.image.disabled', !this._model?.enableImages);\n set(this._configuration.rows, 'inputConfiguration.video.disabled', true);\n set(this._configuration.rows, 'inputConfiguration.audio.disabled', true);\n }\n\n this._render();\n }\n\n onModelChanged(model) {\n this._model = model;\n log('[onModelChanged]: ', this._model);\n this._render();\n this.dispatchEvent(new ModelUpdatedEvent(this._model));\n }\n\n onConfigurationChanged(config) {\n this._configuration = config;\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 if (this._model) {\n const el = React.createElement(Configure, {\n onModelChanged: this.onModelChanged.bind(this),\n onConfigurationChanged: this.onConfigurationChanged.bind(this),\n model: this._model,\n configuration: this._configuration,\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 ReactDOM.render(el, 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","generateValidationMessage","model","configuration","choiceMode","minQuestions","maxQuestions","maxAnswers","baselineValidationMessage","correctResponseMessage","styles","theme","container","marginTop","spacing","unit","display","input","flex","numberTextField","flexDirection","inputContainer","width","flexContainer","alignItems","titleText","fontSize","typography","marginRight","tooltip","whiteSpace","maxWidth","GeneralConfigBlock","React","Component","onChangeResponseType","name","event","onResponseTypeChange","newModel","target","value","onChangeColumns","onLayoutChange","render","classes","layout","validationMessage","Info","settings","label","e","v","propTypes","PropTypes","object","isRequired","func","withStyles","AddRowButton","onAddClick","button","AddButton","icon","alignSelf","margin","_classCallCheck","_defineProperties","_createClass","_defineProperty","_typeof","reactIsModule","_jsx","ALLOWED_SPEC_METHODS","log","debug","canDrag","Row","state","dialog","open","text","onRowTitleChange","rowIndex","onChange","rows","title","onRowValueChange","rowValueIndex","i","values","length","checked","onDeleteRow","idx","setState","onMouseDownOnHandle","onMouseUpOnHandle","componentDidMount","document","addEventListener","imageSupport","connectDragSource","connectDropTarget","isDragging","row","inputConfiguration","toolbarOpts","spellCheck","error","maxImageWidth","maxImageHeight","uploadSoundSupport","mathMlOptions","opacity","filteredDefaultPlugins","DEFAULT_PLUGINS","filter","p","content","dragHandle","DragHandle","rowContainer","classNames","rowItem","questionText","editor","language","map","rowValue","rowIdx","radioButton","customColor","errorResponse","includes","deleteIcon","Delete","errorText","separator","number","bool","onMoveRow","shape","add","delete","string","defaultProps","actions","padding","justifyContent","choice","overflow","cursor","dragDisabled","minWidth","color","tertiary","textAlign","border","borderTop","palette","grey","main","paddingTop","StyledRow","NAME","choiceSource","beginDrag","id","index","StyledSource","DragSource","connect","monitor","dragSource","choiceTarget","hover","drop","item","getItem","didDrop","StyledSourceAndTarget","DropTarget","dropTarget","marginBottom","borderBottom","paddingBottom","rowTable","headerInput","fontWeight","columnErrorText","AnswerConfigBlock","moveRow","from","to","movedRow","remainingRows","reduce","acc","push","update","slice","isBoolean","lodash","set","onHeaderChange","headerIndex","headers","onAddRow","errors","correctResponseError","rowsErrors","columnsErrors","noOfRowsError","columnsLengthError","defaultImageMaxWidth","prompt","defaultImageMaxHeight","header","cx","rowTitles","Panel","toggle","radio","dropdown","promptHolder","Configure","constructor","onTabChange","activeTab","onChangeTabIndex","onModelChanged","onFeedbackChange","feedback","splice","concat","rowIdCounter","Array","fill","newLayout","oldLayout","forEach","newChoiceMode","trueCount","total","current","onPartialScoringChange","partialScoring","onPromptChanged","onTeacherInstructionsChanged","teacherInstructions","onRationaleChanged","rationale","maxId","Math","max","updatedRows","wasChanged","validateRowsID","onConfigurationChanged","contentDimensions","lockChoiceOrder","settingsPanelDisabled","scoringType","studentInstructions","withRubric","languageChoices","extraCSSRules","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","promptError","rationaleError","teacherInstructionsError","position","panelSettings","enabled","options","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","withDragContext","audio","disabled","video","image","showParagraphs","separateParagraphs","required","maxLengthQuestionsHeading","maxLengthAnswers","maxLengthFirstColumnHeading","mmlOutput","mmlEditing","MatchConfigure","HTMLElement","resetModelAfterConfigurationIsSet","pieAuthors","querySelectorAll","hasPlayerAsParent","some","author","contains","_modelCopy","_model","createDefaultModel","_configuration","defaultValues","m","cloneDeep","_render","c","newConfiguration","find","option","isEmpty","enableImages","dispatchEvent","ModelUpdatedEvent","insertImage","handler","InsertImageEvent","onDeleteImage","src","done","DeleteImageEvent","insertSound","InsertSoundEvent","onDeleteSound","DeleteSoundEvent","el","createElement","bind","ReactDOM"],"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,cAAgB,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,cAAgB,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,cAAgB,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;;ACpBnB,MAAMmB,yBAAyB,GAAG,CAACC,KAAD,EAAQC,aAAR,KAA0B;AACjE,EAAM,MAAA;AAAEC,IAAAA,UAAAA;AAAF,GAAA,GAAiBF,KAAvB,CAAA;AACA,EAAM,MAAA;AAAEG,IAAAA,YAAF;AAAgBC,IAAAA,YAAhB;AAA8BC,IAAAA,UAAAA;AAA9B,GAAA,GAA6CJ,aAAnD,CAAA;AAEA,EAAA,MAAMK,yBAAyB,GAC5B,CAA6BH,2BAAAA,EAAAA,YAAa,EAA3C,IACCC,YAAY,GAAI,CAAA,aAAA,EAAeA,YAAa,CAAhC,CAAA,GAAoC,EADjD,CAAA,GAEA,eAFA,IAEmBD,YAAY,GAAG,CAAf,IAAoBC,YAApB,GAAmC,IAAnC,GAA0C,GAF7D,CAGA,GAAA,+GAHA,IAICC,UAAU,GAAI,CAA4BA,0BAAAA,EAAAA,UAAW,CAA3C,gBAAA,CAAA,GAA+D,EAJ1E,CADF,CAAA;AAQA,EAAME,MAAAA,sBAAsB,GAC1BL,UAAU,KAAK,OAAf,GACI,6DADJ,GAEI,wEAHN,CAAA;AAKA,EAAO,OAAA,0BAAA,GAA6BI,yBAA7B,GAAyDC,sBAAhE,CAAA;AACD,CAlBM;;ACYP,MAAMC,QAAM,GAAIC,KAAD,KAAY;AACzBC,EAAAA,SAAS,EAAE;AACTC,IAAAA,SAAS,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADvB;AAETC,IAAAA,OAAO,EAAE,MAAA;AAFA,GADc;AAKzBC,EAAAA,KAAK,EAAE;AACLC,IAAAA,IAAI,EAAE,CAAA;AADD,GALkB;AAQzBC,EAAAA,eAAe,EAAE;AACfC,IAAAA,aAAa,EAAE,OAAA;AADA,GARQ;AAWzBC,EAAAA,cAAc,EAAE;AACdC,IAAAA,KAAK,EAAE,KAAA;AADO,GAXS;AAczBC,EAAAA,aAAa,EAAE;AACbP,IAAAA,OAAO,EAAE,MADI;AAEbQ,IAAAA,UAAU,EAAE,QAAA;AAFC,GAdU;AAkBzBC,EAAAA,SAAS,EAAE;AACTC,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETE,IAAAA,WAAW,EAAEjB,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAFlB,GAlBc;AAsBzBc,EAAAA,OAAO,EAAE;AACPH,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAD/B;AAEPI,IAAAA,UAAU,EAAE,KAFL;AAGPC,IAAAA,QAAQ,EAAE,OAAA;AAHH,GAAA;AAtBgB,CAAZ,CAAf,CAAA;;AA6BA,MAAMC,kBAAN,SAAiCC,KAAK,CAACC,SAAvC,CAAiD;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAAA,IAAA,CAS/CC,oBAT+C,GASvBC,IAAD,IAAWC,KAAD,IAAW;AAC1C,MAAM,MAAA;AAAEnC,QAAAA,KAAF;AAASoC,QAAAA,oBAAAA;AAAT,OAAA,GAAkC,KAAK7D,KAA7C,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEAqC,MAAAA,QAAQ,CAACH,IAAD,CAAR,GAAiBC,KAAK,CAACG,MAAN,CAAaC,KAA9B,CAAA;AAEAH,MAAAA,oBAAoB,CAACC,QAAQ,CAACH,IAAD,CAAT,CAApB,CAAA;AACD,KAhB8C,CAAA;;AAAA,IAAA,IAAA,CAkB/CM,eAlB+C,GAkB7B,CAACN,IAAD,EAAOK,KAAP,KAAiB;AACjC,MAAM,MAAA;AAAEvC,QAAAA,KAAF;AAASyC,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAKlE,KAAvC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEAqC,MAAAA,QAAQ,CAACH,IAAD,CAAR,GAAiBK,KAAjB,CAAA;AAEAE,MAAAA,cAAc,CAACJ,QAAQ,CAACH,IAAD,CAAT,CAAd,CAAA;AACD,KAzB8C,CAAA;AAAA,GAAA;;AA2B/CQ,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEC,MAAAA,OAAF;AAAW3C,MAAAA,KAAX;AAAkBC,MAAAA,aAAAA;AAAlB,KAAA,GAAoC,KAAK1B,KAA/C,CAAA;AACA,IAAM,MAAA;AAAEqE,MAAAA,MAAM,GAAG,EAAX;AAAe1C,MAAAA,UAAU,GAAG,EAA5B;AAAgCG,MAAAA,UAAAA;AAAhC,KAA+CJ,GAAAA,aAAa,IAAI,EAAtE,CAAA;AAEA,IAAA,MAAM4C,iBAAiB,GAAG9C,yBAAyB,CAACC,KAAD,EAAQC,aAAR,CAAnD,CAAA;AAEA,IAAA,oBACE,KAAC,CAAA,aAAA,CAAA,KAAD,CAAO,QAAP,EACE,IAAA,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE0C,OAAO,CAACtB,aAAAA;AAAxB,KAAA,eACE,oBAAC,UAAD,EAAA;AAAY,MAAA,SAAS,EAAEsB,OAAO,CAACpB,SAA/B;AAA0C,MAAA,SAAS,EAAE,KAAA;AAArD,KADF,EAAA,kBAAA,CAAA,eAIE,oBAAC,OAAD,EAAA;AACE,MAAA,OAAO,EAAE;AAAEI,QAAAA,OAAO,EAAEgB,OAAO,CAAChB,OAAAA;AAAnB,OADX;AAEE,MAAA,oBAAoB,EAFtB,IAAA;AAGE,MAAA,oBAAoB,EAHtB,IAAA;AAIE,MAAA,SAAS,EAAE,OAJb;AAKE,MAAA,KAAK,EAAEkB,iBAAAA;AALT,KAAA,eAOE,oBAACC,WAAD,EAAA;AAAM,MAAA,QAAQ,EAAE,OAAhB;AAAyB,MAAA,KAAK,EAAE,SAAA;AAAhC,KAPF,CAAA,CAJF,CADF,eAgBE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEH,OAAO,CAACjC,SAAAA;AAAxB,KACE,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEiC,OAAO,CAAC5B,KAAAA;AAAxB,KAAA,EACG6B,MAAM,CAACG,QAAP,iBACC,oBAAC,cAAD,EAAA;AAAgB,MAAA,KAAK,EAAEH,MAAM,CAACI,KAA9B;AAAqC,MAAA,SAAS,EAAEL,OAAO,CAACxB,cAAAA;AAAxD,KAAA,eACE,oBAAC,eAAD,EAAA;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,GAAG,EAAE,CAFP;AAGE,MAAA,GAAG,EAAEd,UAAU,IAAI,EAHrB;AAIE,MAAA,KAAK,EAAEL,KAAK,CAAC4C,MAJf;AAKE,MAAA,QAAQ,EAAE,CAACK,CAAD,EAAIC,CAAJ,KAAU,IAAA,CAAKV,eAAL,CAAqB,QAArB,EAA+BU,CAA/B,CALtB;AAME,MAAA,MAAM,EAAE,SANV;AAOE,MAAA,SAAS,EAAEP,OAAO,CAAC1B,eAAAA;AAPrB,KADF,CAAA,CAFJ,CADF,eAiBE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE0B,OAAO,CAAC5B,KAAAA;AAAxB,KAAA,EACGb,UAAU,CAAC6C,QAAX,iBACC,oBAAC,cAAD,EAAA;AAAgB,MAAA,KAAK,EAAE7C,UAAU,CAAC8C,KAAlC;AAAyC,MAAA,SAAS,EAAEL,OAAO,CAACxB,cAAAA;AAA5D,KAAA,eACE,oBAAC,MAAD,EAAA;AAAQ,MAAA,QAAQ,EAAE,IAAA,CAAKc,oBAAL,CAA0B,YAA1B,CAAlB;AAA2D,MAAA,KAAK,EAAEjC,KAAK,CAACE,UAAAA;AAAxE,KAAA,eACE,oBAAC,QAAD,EAAA;AAAU,MAAA,KAAK,EAAC,OAAA;AAAhB,KADF,EAAA,oBAAA,CAAA,eAEE,oBAAC,QAAD,EAAA;AAAU,MAAA,KAAK,EAAC,UAAA;AAAhB,KAAA,EAAA,6BAAA,CAFF,CADF,CAFJ,CAjBF,CAhBF,CADF,CAAA;AA+CD,GAAA;;AAhF8C,CAAA;;AAA3C4B,mBACGqB,YAAY;AACjBR,EAAAA,OAAO,EAAES,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBtD,EAAAA,KAAK,EAAEoD,SAAS,CAACC,MAAV,CAAiBC,UAFP;AAGjBrD,EAAAA,aAAa,EAAEmD,SAAS,CAACC,MAAV,CAAiBC,UAHf;AAIjBlB,EAAAA,oBAAoB,EAAEgB,SAAS,CAACG,IAAV,CAAeD,UAJpB;AAKjBb,EAAAA,cAAc,EAAEW,SAAS,CAACG,IAAV,CAAeD,UAAAA;AALd;AAkFrB,2BAAeE,UAAU,CAAChD,QAAD,CAAV,CAAmBsB,kBAAnB,CAAf;;;;AC1HA,IAAIjD,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,GAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAemB,WAAA,GAAA,GAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAIV,QAAM,GAAGN,wBAAsB,CAACE,cAAgB,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,CAAC,EAAE,qCAAqC;AAC1C,CAAC,CAAC,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACzC,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,CAAC,EAAE,eAAe;AACpB,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ;AACAU,WAAA,GAAA,GAAA,CAAA,OAAe,GAAGjB,UAAQ;;ACdnB,MAAM6E,YAAN,SAA2B1B,cAAK,CAACC,SAAjC,CAA2C;AAMhDU,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEC,MAAAA,OAAF;AAAWe,MAAAA,UAAAA;AAAX,KAAA,GAA0B,KAAKnF,KAArC,CAAA;AAEA,IAAA,oBACEwD,6BAAC,MAAD,EAAA;AAAQ,MAAA,SAAS,EAAEY,OAAO,CAACgB,MAA3B;AAAmC,MAAA,QAAQ,EAAE,KAA7C;AAAoD,MAAA,OAAO,EAAED,UAAAA;AAA7D,KAAA,eACE3B,6BAAC6B,WAAD,EAAA;AAAW,MAAA,SAAS,EAAEjB,OAAO,CAACkB,IAAAA;AAA9B,KAAA,CADF,EADF,iBAAA,CAAA,CAAA;AAMD,GAAA;;AAf+C,CAAA;AAArCJ,aACJN,YAAY;AACjBR,EAAAA,OAAO,EAAES,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBI,EAAAA,UAAU,EAAEN,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFV;;AAiBrB,MAAM9C,QAAM,GAAIC,KAAD,KAAY;AACzBkD,EAAAA,MAAM,EAAE;AACN7C,IAAAA,OAAO,EAAE,MADH;AAENgD,IAAAA,SAAS,EAAE,YAFL;AAGNC,IAAAA,MAAM,EAAE,CAAA;AAHF,GADiB;AAMzBF,EAAAA,IAAI,EAAE;AACJnC,IAAAA,WAAW,EAAEjB,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAD9B,GAAA;AANmB,CAAZ,CAAf,CAAA;;AAWA,aAAe2C,UAAU,CAAChD,QAAD,CAAV,CAAmBiD,YAAnB,CAAf;;;;ACjCA,IAAI5E,wBAAsB,GAAGH,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,UAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAemB,WAAA,GAAA,UAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAIV,QAAM,GAAGN,wBAAsB,CAACE,cAAgB,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,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACvL,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,CAAC,EAAE,iBAAiB;AACtB,CAAC,CAAC,CAAC,EAAEA,QAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1C,EAAE,CAAC,EAAE,iCAAiC;AACtC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACnB;AACAU,WAAA,GAAA,UAAA,CAAA,OAAe,GAAGjB,UAAQ;;;;AClB1B,IAAI,sBAAsB,GAAGF,6BAAuD,CAAC;AACrF;AACA,MAAM,CAAC,cAAc,CAAC,MAAO,EAAE,YAAY,EAAE;AAC7C,EAAE,KAAK,EAAE,IAAI;AACb,CAAC,CAAC,CAAC;AACH,IAAe,SAAA,GAAA,MAAA,CAAA,OAAA,GAAG,KAAK,CAAC,CAAC;AACzB;AACA,IAAI,MAAM,GAAG,sBAAsB,CAACK,cAAgB,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;AAC5I,EAAE,CAAC,EAAE,+EAA+E;AACpF,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;AACzC,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,CAAC,EAAE,eAAe;AACpB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACf;AACA,SAAA,GAAA,MAAA,CAAA,OAAe,GAAG,QAAQ;;ACnB1B;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,SAAS4E,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,GAAG3F,sBAA2C,CAAC;AAC/D,CAAC,MAAM;AACP,EAAE2F,SAAA,CAAA,OAAc,GAAGtF,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,SAASsF,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;;AChCA,MAAMC,KAAG,GAAGC,KAAK,CAAC,0CAAD,CAAjB,CAAA;AAEO,IAAIC,OAAO,GAAG,KAAd,CAAA;AAEA,MAAMC,GAAN,SAAkB5C,cAAK,CAACC,SAAxB,CAAkC;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,IAAA,IAAA,CA+BvC4C,KA/BuC,GA+B/B;AACNC,MAAAA,MAAM,EAAE;AACNC,QAAAA,IAAI,EAAE,KADA;AAENC,QAAAA,IAAI,EAAE,EAAA;AAFA,OAAA;AADF,KA/B+B,CAAA;;AAAA,IAAA,IAAA,CA0CvCC,gBA1CuC,GA0CnBC,QAAD,IAAe1C,KAAD,IAAW;AAC1C,MAAM,MAAA;AAAEvC,QAAAA,KAAF;AAASkF,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAK3G,KAAjC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEAqC,MAAAA,QAAQ,CAAC8C,IAAT,CAAcF,QAAd,CAAwBG,CAAAA,KAAxB,GAAgC7C,KAAhC,CAAA;AACA2C,MAAAA,QAAQ,CAAC7C,QAAD,CAAR,CAAA;AACD,KAhDsC,CAAA;;AAAA,IAkDvCgD,IAAAA,CAAAA,gBAlDuC,GAkDpB,CAACJ,QAAD,EAAWK,aAAX,KAA8BnD,KAAD,IAAW;AACzD,MAAM,MAAA;AAAEnC,QAAAA,KAAF;AAASkF,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAK3G,KAAjC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEA,MAAA,IAAIA,KAAK,CAACE,UAAN,KAAqB,OAAzB,EAAkC;AAChC,QAAA,KAAK,IAAIqF,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGlD,QAAQ,CAAC8C,IAAT,CAAcF,QAAd,EAAwBO,MAAxB,CAA+BC,MAAnD,EAA2DF,CAAC,EAA5D,EAAgE;AAC9DlD,UAAAA,QAAQ,CAAC8C,IAAT,CAAcF,QAAd,EAAwBO,MAAxB,CAA+BD,CAA/B,CAAA,GAAoC,KAApC,CAAA;AACD,SAAA;AACF,OAAA;;AAEDlD,MAAAA,QAAQ,CAAC8C,IAAT,CAAcF,QAAd,CAAwBO,CAAAA,MAAxB,CAA+BF,aAA/B,CAAgDnD,GAAAA,KAAK,CAACG,MAAN,CAAaoD,OAA7D,CAAA;AAEAR,MAAAA,QAAQ,CAAC7C,QAAD,CAAR,CAAA;AACD,KA/DsC,CAAA;;AAAA,IAAA,IAAA,CAiEvCsD,WAjEuC,GAiExBC,GAAD,IAAS,MAAM;AAC3B,MAAM,MAAA;AAAE5F,QAAAA,KAAF;AAAS2F,QAAAA,WAAT;AAAsBxF,QAAAA,YAAAA;AAAtB,OAAA,GAAuC,KAAK5B,KAAlD,CAAA;;AAEA,MAAIyB,IAAAA,KAAK,CAACmF,IAAN,IAAcnF,KAAK,CAACmF,IAAN,CAAWM,MAAX,KAAsBtF,YAAxC,EAAsD;AACpD,QAAA,IAAA,CAAK0F,QAAL,CAAc;AACZhB,UAAAA,MAAM,EAAE;AACNC,YAAAA,IAAI,EAAE,IADA;AAENC,YAAAA,IAAI,EAAG,CAA2B5E,yBAAAA,EAAAA,YAAa,CAAzC,aAAA,CAAA,IAA2DA,YAAY,GAAG,CAAf,GAAmB,GAAnB,GAAyB,EAApF,CAA0F,GAAA,GAAA;AAF1F,WAAA;AADI,SAAd,CAAA,CAAA;AAMD,OAPD,MAOO;AACLwF,QAAAA,WAAW,CAACC,GAAD,CAAX,CAAA;AACD,OAAA;AACF,KA9EsC,CAAA;;AAAA,IAgFvCE,IAAAA,CAAAA,mBAhFuC,GAgFjB,MAAM;AAC1BpB,MAAAA,OAAO,GAAG,IAAV,CAAA;AACD,KAlFsC,CAAA;;AAAA,IAoFvCqB,IAAAA,CAAAA,iBApFuC,GAoFnB,MAAM;AACxBrB,MAAAA,OAAO,GAAG,KAAV,CAAA;AACD,KAtFsC,CAAA;AAAA,GAAA;;AAsCvCsB,EAAAA,iBAAiB,GAAG;AAClBC,IAAAA,QAAQ,CAACC,gBAAT,CAA0B,SAA1B,EAAqC,KAAKH,iBAA1C,CAAA,CAAA;AACD,GAAA;;AAgDDrD,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AACJC,MAAAA,OADI;AAEJwD,MAAAA,YAFI;AAGJC,MAAAA,iBAHI;AAIJC,MAAAA,iBAJI;AAKJC,MAAAA,UALI;AAMJtG,MAAAA,KANI;AAOJuG,MAAAA,GAPI;AAQJX,MAAAA,GARI;AASJY,MAAAA,kBAAkB,GAAG,EATjB;AAUJC,MAAAA,WAVI;AAWJC,MAAAA,UAXI;AAYJC,MAAAA,KAZI;AAaJC,MAAAA,aAbI;AAcJC,MAAAA,cAdI;AAeJC,MAAAA,kBAfI;AAgBJC,MAAAA,aAAa,GAAG,EAAA;AAhBZ,KAAA,GAiBF,KAAKxI,KAjBT,CAAA;AAkBA,IAAM,MAAA;AAAEsG,MAAAA,MAAAA;AAAF,KAAA,GAAa,KAAKD,KAAxB,CAAA;AACA,IAAA,MAAMoC,OAAO,GAAGV,UAAU,GAAG,CAAH,GAAO,CAAjC,CAAA;AAEA,IAAA,MAAMW,sBAAsB,GAAG,CAACC,eAAe,IAAI,EAApB,EAAwBC,MAAxB,CAC5BC,CAAD,IAAOA,CAAC,KAAK,eAAN,IAAyBA,CAAC,KAAK,eADT,CAA/B,CAAA;AAIA,IAAA,MAAMC,OAAO,gBACXtF,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,KAAK,EAAE;AAAEiF,QAAAA,OAAO,EAAEA,OAAX;AAAoB5F,QAAAA,KAAK,EAAE,MAAA;AAA3B,OAAA;AAAZ,KACE,eAAAW,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAM,MAAA,MAAM,EAAE,QAAd;AAAwB,MAAA,SAAS,EAAEY,OAAO,CAAC2E,UAA3C;AAAuD,MAAA,WAAW,EAAE,IAAKxB,CAAAA,mBAAAA;AAAzE,KAAA,eACE/D,6BAACwF,WAAD,EAAA;AAAY,MAAA,KAAK,EAAE,SAAA;AAAnB,KAAA,CADF,CADF,eAKExF,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC6E,YAAAA;AAAxB,KACE,eAAAzF,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE0F,UAAU,CAAC9E,OAAO,CAAC+E,OAAT,EAAkB/E,OAAO,CAACgF,YAA1B,CAAA;AAA1B,KAAA,eACE5F,6BAAC,YAAD,EAAA;AACE,MAAA,YAAY,EAAEoE,YADhB;AAEE,MAAA,gBAAgB,EAFlB,IAAA;AAGE,MAAA,gBAAgB,EAHlB,IAAA;AAIE,MAAA,KAAK,EAAE,OAJT;AAKE,MAAA,MAAM,EAAEI,GAAG,CAACnB,KALd;AAME,MAAA,QAAQ,EAAE,IAAA,CAAKJ,gBAAL,CAAsBY,GAAtB,CANZ;AAOE,MAAA,SAAS,EAAEjD,OAAO,CAACiF,MAPrB;AAQE,MAAA,WAAW,EAAEpB,kBARf;AASE,MAAA,WAAW,EAAEC,WATf;AAUE,MAAA,aAAa,EAAEQ,sBAVjB;AAWE,MAAA,UAAU,EAAEP,UAXd;AAYE,MAAA,aAAa,EAAEE,aAZjB;AAaE,MAAA,cAAc,EAAEC,cAblB;AAcE,MAAA,kBAAkB,EAAEC,kBAdtB;AAeE,MAAA,uBAAuB,EAAE,CAAC;AAAEe,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAf3B;AAgBE,MAAA,KAAK,EAAElB,KAAK,IAAIA,KAAK,KAAK,8BAhB5B;AAiBE,MAAA,aAAa,EAAEI,aAAAA;AAjBjB,KAAA,CADF,CADF,EAuBGR,GAAG,CAACf,MAAJ,CAAWsC,GAAX,CAAe,CAACC,QAAD,EAAWC,MAAX,kBACdjG,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,GAAG,EAAEiG,MAAV;AAAkB,MAAA,SAAS,EAAErF,OAAO,CAAC+E,OAAAA;AAArC,KAAA,EACG1H,KAAK,CAACE,UAAN,KAAqB,OAArB,gBACC6B,6BAAC,KAAD,EAAA;AACE,MAAA,SAAS,EAAE0F,UAAU,CAAC9E,OAAO,CAACsF,WAAT,EAAsBtF,OAAO,CAACuF,WAA9B,EAA2C;AAC9D,QAACvF,CAAAA,OAAO,CAACwF,aAAT,GAAyBxB,KAAzB,oBAAyBA,KAAK,CAAEyB,QAAP,CAAgB,8BAAhB,CAAA;AADqC,OAA3C,CADvB;AAIE,MAAA,QAAQ,EAAE,IAAK/C,CAAAA,gBAAL,CAAsBO,GAAtB,EAA2BoC,MAA3B,CAJZ;AAKE,MAAA,OAAO,EAAED,QAAQ,KAAK,IAAA;AALxB,KADD,CAAA,gBASChG,6BAAC,QAAD,EAAA;AACE,MAAA,QAAQ,EAAE,IAAKsD,CAAAA,gBAAL,CAAsBO,GAAtB,EAA2BoC,MAA3B,CADZ;AAEE,MAAA,OAAO,EAAED,QAAQ,KAAK,IAFxB;AAGE,MAAA,KAAK,EAAE,EAHT;AAIE,MAAA,KAAK,EAAEpB,KAAF,IAAA,IAAA,GAAA,KAAA,CAAA,GAAEA,KAAK,CAAEyB,QAAP,CAAgB,8BAAhB,CAAA;AAJT,KAVJ,CAAA,CADD,CAvBH,eA4CErG,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC0F,UAAAA;AAAxB,KAAA,eACEtG,6BAAC,UAAD,EAAA;AAAY,MAAA,OAAO,EAAE,IAAA,CAAK4D,WAAL,CAAiBC,GAAjB,CAArB;AAA4C,MAAW,YAAA,EAAA,QAAA;AAAvD,KACE,eAAA7D,cAAA,CAAA,aAAA,CAACuG,SAAD,EADF,IAAA,CAAA,CADF,CA5CF,CALF,EAwDG3B,KAAK,iBAAI5E,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC4F,SAAAA;AAAxB,KAAoC5B,EAAAA,KAApC,CAxDZ,eAyDE5E,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAI,MAAA,SAAS,EAAEY,OAAO,CAAC6F,SAAAA;AAAvB,KAzDF,CAAA,eA2DEzG,6BAAC,WAAD,EAAA;AACE,MAAA,IAAI,EAAE8C,MAAM,CAACC,IADf;AAEE,MAAA,KAAK,EAAC,SAFR;AAGE,MAAA,IAAI,EAAED,MAAM,CAACE,IAHf;AAIE,MAAA,SAAS,EAAE,MAAM,IAAA,CAAKc,QAAL,CAAc;AAAEhB,QAAAA,MAAM,EAAE;AAAEC,UAAAA,IAAI,EAAE,KAAA;AAAR,SAAA;AAAV,OAAd,CAAA;AAJnB,KAAA,CA3DF,CADF,CAAA;AAqEA,IAAA,OAAOsB,iBAAiB,CAACC,iBAAiB,CAACgB,OAAD,CAAlB,CAAxB,CAAA;AACD,GAAA;;AAxLsC,CAAA;AAA5B1C,IACJxB,YAAY;AACjBR,EAAAA,OAAO,EAAES,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBtD,EAAAA,KAAK,EAAEoD,SAAS,CAACC,MAAV,CAAiBC,UAFP;AAGjBiD,EAAAA,GAAG,EAAEnD,SAAS,CAACC,MAAV,CAAiBC,UAHL;AAIjBsC,EAAAA,GAAG,EAAExC,SAAS,CAACqF,MAAV,CAAiBnF,UAJL;AAKjBgD,EAAAA,UAAU,EAAElD,SAAS,CAACsF,IAAV,CAAepF,UALV;AAMjBsD,EAAAA,aAAa,EAAExD,SAAS,CAACC,MANR;AAOjBwD,EAAAA,cAAc,EAAEzD,SAAS,CAACC,MAPT;AAQjBsC,EAAAA,WAAW,EAAEvC,SAAS,CAACG,IAAV,CAAeD,UARX;AASjB4B,EAAAA,QAAQ,EAAE9B,SAAS,CAACG,IAAV,CAAeD,UATR;AAUjB8C,EAAAA,iBAAiB,EAAEhD,SAAS,CAACG,IAAV,CAAeD,UAVjB;AAWjB+C,EAAAA,iBAAiB,EAAEjD,SAAS,CAACG,IAAV,CAAeD,UAXjB;AAYjBqF,EAAAA,SAAS,EAAEvF,SAAS,CAACG,IAAV,CAAeD,UAZT;AAajB6C,EAAAA,YAAY,EAAE/C,SAAS,CAACwF,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADQ;AAE5BwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFK,GAAhB,CAbG;AAiBjBwD,EAAAA,kBAAkB,EAAE1D,SAAS,CAACwF,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADc;AAElCwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFW,GAAhB,CAjBH;AAqBjBkD,EAAAA,kBAAkB,EAAEpD,SAAS,CAACC,MArBb;AAsBjBoD,EAAAA,WAAW,EAAErD,SAAS,CAACC,MAtBN;AAuBjBsD,EAAAA,KAAK,EAAEvD,SAAS,CAAC2F,MAvBA;AAwBjBrC,EAAAA,UAAU,EAAEtD,SAAS,CAACsF,IAxBL;AAyBjBvI,EAAAA,YAAY,EAAEiD,SAAS,CAACqF,MAAAA;AAzBP;AADR9D,IA6BJqE,eAAe;;AA8JxB,MAAMxI,QAAM,GAAIC,KAAD,KAAY;AACzBwI,EAAAA,OAAO,EAAE;AACPC,IAAAA,OAAO,EAAE,CADF;AAEPC,IAAAA,cAAc,EAAE,eAAA;AAFT,GADgB;AAKzBC,EAAAA,MAAM,EAAE;AACNF,IAAAA,OAAO,EAAEzI,KAAK,CAACG,OAAN,CAAcC,IADjB;AAENwI,IAAAA,QAAQ,EAAE,SAAA;AAFJ,GALiB;AASzB/B,EAAAA,UAAU,EAAE;AACVgC,IAAAA,MAAM,EAAE,MAAA;AADE,GATa;AAYzBC,EAAAA,YAAY,EAAE;AACZD,IAAAA,MAAM,EAAE,SAAA;AADI,GAZW;AAgBzB5I,EAAAA,SAAS,EAAE;AACTC,IAAAA,SAAS,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADvB;AAETC,IAAAA,OAAO,EAAE,MAFA;AAGTI,IAAAA,aAAa,EAAE,QAAA;AAHN,GAhBc;AAqBzBsG,EAAAA,YAAY,EAAE;AACZ7G,IAAAA,SAAS,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADpB;AAEZC,IAAAA,OAAO,EAAE,MAFG;AAGZQ,IAAAA,UAAU,EAAE,QAHA;AAIZN,IAAAA,IAAI,EAAE,CAAA;AAJM,GArBW;AA2BzB0G,EAAAA,OAAO,EAAE;AACP1G,IAAAA,IAAI,EAAE,CADC;AAEPF,IAAAA,OAAO,EAAE,MAFF;AAGPqI,IAAAA,cAAc,EAAE,QAHT;AAIP7H,IAAAA,UAAU,EAAE,QAJL;AAKPkI,IAAAA,QAAQ,EAAE,OALH;AAMPN,IAAAA,OAAO,EAAG,CAAA,EAAA,EAAIzI,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AAN1B,GA3BgB;AAmCzBoH,EAAAA,WAAW,EAAE;AACX,IAAW,SAAA,EAAA;AACT7G,MAAAA,KAAK,EAAE,iBAAA;AADE,KAAA;AADA,GAnCY;AAwCzB8G,EAAAA,WAAW,EAAE;AACXuB,IAAAA,KAAK,EAAG,CAAA,EAAEA,KAAK,CAACC,QAAN,EAAiB,CAAA,WAAA,CAAA;AADhB,GAxCY;AA2CzBrB,EAAAA,UAAU,EAAE;AACVrH,IAAAA,IAAI,EAAE,GADI;AAEVF,IAAAA,OAAO,EAAE,MAFC;AAGVqI,IAAAA,cAAc,EAAE,QAHN;AAIVK,IAAAA,QAAQ,EAAE,MAJA;AAKVN,IAAAA,OAAO,EAAG,CAAA,EAAA,EAAIzI,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AALvB,GA3Ca;AAkDzB8G,EAAAA,YAAY,EAAE;AACZ3G,IAAAA,IAAI,EAAE,CADM;AAEZF,IAAAA,OAAO,EAAE,MAFG;AAGZqI,IAAAA,cAAc,EAAE,YAHJ;AAIZD,IAAAA,OAAO,EAAE,CAJG;AAKZrH,IAAAA,QAAQ,EAAE,OALE;AAMZ8H,IAAAA,SAAS,EAAE,MANC;AAOZH,IAAAA,QAAQ,EAAE,OAPE;AAQZ9H,IAAAA,WAAW,EAAEjB,KAAK,CAACG,OAAN,CAAcC,IARf;AASZ,IAAU,QAAA,EAAA;AACRO,MAAAA,KAAK,EAAE,MAAA;AADC,KAAA;AATE,GAlDW;AA+DzBoH,EAAAA,SAAS,EAAE;AACT7H,IAAAA,SAAS,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CADvB;AAET+I,IAAAA,MAAM,EAAE,CAFC;AAGTC,IAAAA,SAAS,EAAG,CAAA,UAAA,EAAYpJ,KAAK,CAACqJ,OAAN,CAAcC,IAAd,CAAmB,MAAnB,CAA2B,CAH1C,CAAA;AAIT3I,IAAAA,KAAK,EAAE,MAAA;AAJE,GA/Dc;AAqEzBmH,EAAAA,SAAS,EAAE;AACT/G,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETiI,IAAAA,KAAK,EAAEhJ,KAAK,CAACqJ,OAAN,CAAcnD,KAAd,CAAoBqD,IAFlB;AAGTC,IAAAA,UAAU,EAAExJ,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHjB,GArEc;AA0EzBsH,EAAAA,aAAa,EAAE;AACbsB,IAAAA,KAAK,EAAEhJ,KAAK,CAACqJ,OAAN,CAAcnD,KAAd,CAAoBqD,IAAAA;AADd,GAAA;AA1EU,CAAZ,CAAf,CAAA;;AA+EA,MAAME,SAAS,GAAG1G,UAAU,CAAChD,QAAD,CAAV,CAAmBmE,GAAnB,CAAlB,CAAA;AAEA,MAAMwF,IAAI,GAAG,YAAb,CAAA;AAEO,MAAMC,YAAY,GAAG;AAC1B1F,EAAAA,OAAO,GAAG;AACR,IAAA,OAAOA,OAAP,CAAA;AACD,GAHyB;;AAI1B2F,EAAAA,SAAS,CAAC9L,KAAD,EAAQ;AACf,IAAO,OAAA;AACL+L,MAAAA,EAAE,EAAE/L,KAAK,CAACgI,GAAN,CAAU+D,EADT;AAELC,MAAAA,KAAK,EAAEhM,KAAK,CAACqH,GAAAA;AAFR,KAAP,CAAA;AAID,GAAA;;AATyB,CAArB,CAAA;AAYP,MAAM4E,YAAY,GAAGC,UAAU,CAACN,IAAD,EAAOC,YAAP,EAAqB,CAACM,OAAD,EAAUC,OAAV,MAAuB;AACzEvE,EAAAA,iBAAiB,EAAEsE,OAAO,CAACE,UAAR,EADsD;AAEzEtE,EAAAA,UAAU,EAAEqE,OAAO,CAACrE,UAAR,EAAA;AAF6D,CAAvB,CAArB,CAAV,CAGjB4D,SAHiB,CAArB,CAAA;AAKO,MAAMW,YAAY,GAAG;AAC1BC,EAAAA,KAAK,GAAG;AACNtG,IAAAA,KAAG,CAAC,SAAD,CAAH,CAAA;AACD,GAHyB;;AAI1BuG,EAAAA,IAAI,CAACxM,KAAD,EAAQoM,OAAR,EAAiB;AACnB,IAAA,MAAMK,IAAI,GAAGL,OAAO,CAACM,OAAR,EAAb,CAAA;AAEAzG,IAAAA,KAAG,CAAC,eAAD,EAAkBwG,IAAlB,EAAwB,UAAxB,EAAoCL,OAAO,CAACO,OAAR,EAApC,CAAH,CAAA;AAEA3M,IAAAA,KAAK,CAACoK,SAAN,CAAgBqC,IAAI,CAACT,KAArB,EAA4BhM,KAAK,CAACqH,GAAlC,CAAA,CAAA;AACD,GAAA;;AAVyB,CAArB,CAAA;AAaP,MAAMuF,qBAAqB,GAAGC,UAAU,CAACjB,IAAD,EAAOU,YAAP,EAAsBH,OAAD,KAAc;AACzErE,EAAAA,iBAAiB,EAAEqE,OAAO,CAACW,UAAR,EAAA;AADsD,CAAd,CAArB,CAAV,CAE1Bb,YAF0B,CAA9B;;ACnTA,MAAMhG,KAAG,GAAGC,KAAK,CAAC,8BAAD,CAAjB,CAAA;;AAEA,MAAMjE,QAAM,GAAIC,KAAD,KAAY;AACzBC,EAAAA,SAAS,EAAE;AACT4K,IAAAA,YAAY,EAAE7K,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,GAD1B;AAETC,IAAAA,OAAO,EAAE,MAFA;AAGTI,IAAAA,aAAa,EAAE,QAAA;AAHN,GADc;AAMzBsG,EAAAA,YAAY,EAAE;AACZ1G,IAAAA,OAAO,EAAE,MADG;AAEZQ,IAAAA,UAAU,EAAE,QAFA;AAGZN,IAAAA,IAAI,EAAE,CAHM;AAIZI,IAAAA,KAAK,EAAE,MAJK;AAKZmK,IAAAA,YAAY,EAAG,CAAA,UAAA,EAAY9K,KAAK,CAACqJ,OAAN,CAAcC,IAAd,CAAmB,MAAnB,CAA2B,CAL1C,CAAA;AAMZyB,IAAAA,aAAa,EAAE/K,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CANxB;AAOZF,IAAAA,SAAS,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAPpB;AAQZyK,IAAAA,YAAY,EAAE7K,KAAK,CAACG,OAAN,CAAcC,IAAAA;AARhB,GANW;AAgBzB6G,EAAAA,OAAO,EAAE;AACP1G,IAAAA,IAAI,EAAE,CADC;AAEPF,IAAAA,OAAO,EAAE,MAFF;AAGPqI,IAAAA,cAAc,EAAE,QAHT;AAIP7H,IAAAA,UAAU,EAAE,QAJL;AAKPJ,IAAAA,aAAa,EAAE,QALR;AAMP,IAAU,QAAA,EAAA;AACRE,MAAAA,KAAK,EAAE,OADC;AAER8H,MAAAA,OAAO,EAAG,CAAIzI,EAAAA,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAFzB,EAAA,CAAA;AAGR8I,MAAAA,SAAS,EAAE,QAAA;AAHH,KAAA;AANH,GAhBgB;AA4BzBtB,EAAAA,UAAU,EAAE;AACVrH,IAAAA,IAAI,EAAE,GADI;AAEVwI,IAAAA,QAAQ,EAAE,MAFA;AAGVN,IAAAA,OAAO,EAAG,CAAA,EAAA,EAAIzI,KAAK,CAACG,OAAN,CAAcC,IAAK,CAAA,EAAA,CAAA;AAHvB,GA5Ba;AAiCzB8G,EAAAA,YAAY,EAAE;AACZ3G,IAAAA,IAAI,EAAE,CADM;AAEZF,IAAAA,OAAO,EAAE,MAFG;AAGZqI,IAAAA,cAAc,EAAE,YAHJ;AAIZzH,IAAAA,WAAW,EAAEjB,KAAK,CAACG,OAAN,CAAcC,IAJf;AAKZ,IAAU,QAAA,EAAA;AACRO,MAAAA,KAAK,EAAE,MADC;AAER8H,MAAAA,OAAO,EAAE,CAFD;AAGRrH,MAAAA,QAAQ,EAAE,OAHF;AAIR8H,MAAAA,SAAS,EAAE,MAJH;AAKRH,MAAAA,QAAQ,EAAE,OAAA;AALF,KAAA;AALE,GAjCW;AA8CzBiC,EAAAA,QAAQ,EAAE;AACR3K,IAAAA,OAAO,EAAE,MADD;AAERI,IAAAA,aAAa,EAAE,QAAA;AAFP,GA9Ce;AAkDzBwK,EAAAA,WAAW,EAAE;AACX,IAAU,QAAA,EAAA;AACRC,MAAAA,UAAU,EAAE,MAAA;AADJ,KAAA;AADC,GAlDY;AAuDzBL,EAAAA,YAAY,EAAE;AACZA,IAAAA,YAAY,EAAE7K,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAA5B,GAAgCf,KAAK,CAACG,OAAN,CAAcC,IAAAA;AADhD,GAvDW;AA0DzB+K,EAAAA,eAAe,EAAE;AACfpK,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CADvB;AAEfiI,IAAAA,KAAK,EAAEhJ,KAAK,CAACqJ,OAAN,CAAcnD,KAAd,CAAoBqD,IAFZ;AAGfC,IAAAA,UAAU,EAAG,CAAExJ,EAAAA,KAAK,CAACG,OAAN,CAAcC,IAAK,CAHnB,aAAA,CAAA;AAIfO,IAAAA,KAAK,EAAE,wBAAA;AAJQ,GA1DQ;AAgEzBmH,EAAAA,SAAS,EAAE;AACT/G,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETiI,IAAAA,KAAK,EAAEhJ,KAAK,CAACqJ,OAAN,CAAcnD,KAAd,CAAoBqD,IAFlB;AAGTwB,IAAAA,aAAa,EAAE/K,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHpB,GAAA;AAhEc,CAAZ,CAAf,CAAA;;AAuEA,MAAMgL,iBAAN,SAAgC9J,KAAK,CAACC,SAAtC,CAAgD;AAAA,EAAA,WAAA,CAAA,GAAA,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAA,IAAA,CAAA,CAAA;;AAAA,IAAA,IAAA,CAoB9C8J,OApB8C,GAoBpC,CAACC,IAAD,EAAOC,EAAP,KAAc;AACtB,MAAM,MAAA;AAAEhM,QAAAA,KAAF;AAASkF,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAK3G,KAAjC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AACA,MAAA,MAAMmF,IAAI,GAAG9C,QAAQ,CAAC8C,IAAT,IAAiB,EAA9B,CAAA;AAEAX,MAAAA,KAAG,CAAC,aAAD,EAAgBuH,IAAhB,EAAsBC,EAAtB,CAAH,CAAA;AAEA,MAAM,MAAA;AAAEC,QAAAA,QAAF;AAAYC,QAAAA,aAAAA;AAAZ,OAA8B/G,GAAAA,IAAI,CAACgH,MAAL,CAClC,CAACC,GAAD,EAAMpB,IAAN,EAAYT,KAAZ,KAAsB;AACpB,QAAIA,IAAAA,KAAK,KAAKwB,IAAd,EAAoB;AAClBK,UAAAA,GAAG,CAACH,QAAJ,GAAejB,IAAf,CAAA;AACD,SAFD,MAEO;AACLoB,UAAAA,GAAG,CAACF,aAAJ,CAAkBG,IAAlB,CAAuBrB,IAAvB,CAAA,CAAA;AACD,SAAA;;AAED,QAAA,OAAOoB,GAAP,CAAA;AACD,OATiC,EAUlC;AAAEH,QAAAA,QAAQ,EAAE,IAAZ;AAAkBC,QAAAA,aAAa,EAAE,EAAA;AAAjC,OAVkC,CAApC,CAAA;AAaA,MAAMI,MAAAA,MAAM,GAAG,CAAC,GAAGJ,aAAa,CAACK,KAAd,CAAoB,CAApB,EAAuBP,EAAvB,CAAJ,EAAgCC,QAAhC,EAA0C,GAAGC,aAAa,CAACK,KAAd,CAAoBP,EAApB,CAA7C,CAAf,CAAA;AAEAxH,MAAAA,KAAG,CAAC,UAAD,EAAa8H,MAAb,CAAH,CAAA;AAEAjK,MAAAA,QAAQ,CAAC8C,IAAT,GAAgBmH,MAAhB,CAAA;AAEApH,MAAAA,QAAQ,CAAC7C,QAAD,CAAR,CAAA;AACD,KA/C6C,CAAA;;AAAA,IAAA,IAAA,CAiD9C6C,QAjD8C,GAkD5C,CAAChD,IAAD,EAAOsK,SAAP,KACA,CAAC;AAAElK,MAAAA,MAAAA;AAAF,KAAD,KAAgB;AACd,MAAM,MAAA;AAAEtC,QAAAA,KAAF;AAASkF,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAK3G,KAAjC,CAAA;AACA,MAAA,IAAIgE,KAAJ,CAAA;;AAEA,MAAA,IAAIiK,SAAJ,EAAe;AACbjK,QAAAA,KAAK,GAAGD,MAAM,CAACoD,OAAf,CAAA;AACD,OAFD,MAEO;AACLnD,QAAAA,KAAK,GAAGD,MAAM,CAACC,KAAf,CAAA;AACD,OAAA;;AAEDkK,MAAAA,MAAM,CAACC,GAAP,CAAW1M,KAAX,EAAkBkC,IAAlB,EAAwBK,KAAxB,CAAA,CAAA;AACA2C,MAAAA,QAAQ,CAAClF,KAAD,EAAQkC,IAAR,CAAR,CAAA;AACD,KA/D2C,CAAA;;AAAA,IAAA,IAAA,CAiE9CyK,cAjE8C,GAiE5BC,WAAD,IAAkBrK,KAAD,IAAW;AAC3C,MAAM,MAAA;AAAEvC,QAAAA,KAAF;AAASkF,QAAAA,QAAAA;AAAT,OAAA,GAAsB,KAAK3G,KAAjC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEA,MAAI4M,IAAAA,WAAW,KAAK,CAApB,EAAuB;AACrBvK,QAAAA,QAAQ,CAACwK,OAAT,CAAiBD,WAAjB,IAAgCrK,KAAhC,CAAA;AACA2C,QAAAA,QAAQ,CAAC7C,QAAD,CAAR,CAAA;AAEA,QAAA,OAAA;AACD,OAAA;;AAEDA,MAAAA,QAAQ,CAACwK,OAAT,CAAiBD,WAAjB,IAAgCrK,KAAhC,CAAA;AACA2C,MAAAA,QAAQ,CAAC7C,QAAD,CAAR,CAAA;AACD,KA9E6C,CAAA;AAAA,GAAA;;AAgF9CK,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEC,MAAAA,OAAF;AAAW3C,MAAAA,KAAX;AAAkB8M,MAAAA,QAAlB;AAA4B3G,MAAAA,YAA5B;AAA0ClG,MAAAA,aAA1C;AAAyDwG,MAAAA,WAAzD;AAAsEC,MAAAA,UAAtE;AAAkFI,MAAAA,kBAAAA;AAAlF,KAAA,GACJ,KAAKvI,KADP,CAAA;AAEA,IAAM,MAAA;AACJC,MAAAA,sBAAsB,GAAG,EADrB;AAEJqO,MAAAA,OAAO,GAAG,EAFN;AAGJ1H,MAAAA,IAAI,GAAG,EAHH;AAIJyB,MAAAA,aAAa,GAAG,EAJZ;AAKJC,MAAAA,cAAc,GAAG,EALb;AAMJE,MAAAA,aAAa,GAAG,EANZ;AAOJ5G,MAAAA,YAAAA;AAPI,KAQFF,GAAAA,aAAa,IAAI,EARrB,CAAA;AASA,IAAM,MAAA;AAAE8M,MAAAA,MAAAA;AAAF,KAAa/M,GAAAA,KAAK,IAAI,EAA5B,CAAA;AACA,IAAM,MAAA;AAAEgN,MAAAA,oBAAF;AAAwBC,MAAAA,UAAxB;AAAoCC,MAAAA,aAApC;AAAmDC,MAAAA,aAAnD;AAAkEC,MAAAA,kBAAAA;AAAlE,KAAyFL,GAAAA,MAAM,IAAI,EAAzG,CAAA;AAEA,IAAM9F,MAAAA,sBAAsB,GAAG,CAACC,eAAe,IAAI,EAApB,EAAwBC,MAAxB,CAC5BC,CAAD,IAAOA,CAAC,KAAK,OAAN,IAAiBA,CAAC,KAAK,eAAvB,IAA0CA,CAAC,KAAK,eAD1B,CAA/B,CAAA;AAIA,IAAA,MAAMiG,oBAAoB,GAAGzG,aAAa,IAAIA,aAAa,CAAC0G,MAA5D,CAAA;AACA,IAAA,MAAMC,qBAAqB,GAAG1G,cAAc,IAAIA,cAAc,CAACyG,MAA/D,CAAA;AAEA,IACE,oBAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE3K,OAAO,CAACjC,SAAAA;AAAxB,KAAA,eACE,oBAAC,UAAD,EAAA;AAAY,MAAA,IAAI,EAAC,OAAjB;AAAyB,MAAA,SAAS,EAAC,KAAA;AAAnC,KAAA,EAAA,yGAAA,CADF,eAKE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,MAAA,SAAS,EAAEiC,OAAO,CAAC8I,QADrB;AAEE,MAAA,KAAK,EAAExL,aAAa,CAACmB,KAAd,GAAsB;AAAEA,QAAAA,KAAK,EAAEnB,aAAa,CAACmB,KAAvB;AAA8BiI,QAAAA,QAAQ,EAAE,QAAA;AAAxC,OAAtB,GAA2E,EAAA;AAFpF,KAIE,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAE1G,OAAO,CAAC6E,YAAAA;AAAxB,KAAA,EACGqF,OAAO,CAAC9J,QAAR,IACC,CAAC/C,KAAK,CAAC6M,OAAN,IAAiB,EAAlB,EAAsB/E,GAAtB,CAA0B,CAAC0F,MAAD,EAAS5H,GAAT,kBACxB,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AACE,MAAA,GAAG,EAAEA,GADP;AAEE,MAAA,SAAS,EAAE6H,UAAE,CAAC9K,OAAO,CAAC+E,OAAT,EAAkB;AAC7B,QAAA,CAAC/E,OAAO,CAACgF,YAAT,GAAwB/B,GAAG,KAAK,CAAA;AADH,OAAlB,CAAA;AAFf,KAAA,eAME,oBAAC,YAAD,EAAA;AACE,MAAA,QAAQ,EAAE,IAAA,CAAK+G,cAAL,CAAoB/G,GAApB,CADZ;AAEE,MAAA,MAAM,EAAE4H,MAFV;AAGE,MAAA,SAAS,EAAEN,aAAa,IAAI,CAACA,aAAa,CAACtH,GAAD,CAA/B,GAAuCjD,OAAO,CAAC2I,YAA/C,GAA8D3I,OAAO,CAAC+I,WAHnF;AAIE,MAAA,KAAK,EAAE,cAJT;AAKE,MAAA,aAAa,EAAEzE,sBALjB;AAME,MAAA,WAAW,EAAE3I,cAAc,CAACuO,OAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAErG,kBAAV,EAA8BhI,sBAA9B,CAN7B;AAOE,MAAA,gBAAgB,EAPlB,IAAA;AAQE,MAAA,UAAU,EAAEkI,UARd;AASE,MAAA,kBAAkB,EAAEI,kBATtB;AAUE,MAAA,uBAAuB,EAAE,CAAC;AAAEe,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAV3B;AAWE,MAAA,KAAK,EAAEqF,aAAa,IAAIA,aAAa,CAACtH,GAAD,CAAA;AAXvC,KAAA,CANF,EAmBGsH,aAAa,IAAIA,aAAa,CAACtH,GAAD,CAA9B,iBACC,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEjD,OAAO,CAACiJ,eAAAA;AAAxB,KAAA,EAA0CsB,aAAa,CAACtH,GAAD,CAAvD,CApBJ,CADF,CAFJ,eA2BE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEjD,OAAO,CAAC0F,UAAAA;AAAxB,KAAA,CA3BF,CAJF,EAkCGrI,KAAK,CAACmF,IAAN,CAAW2C,GAAX,CAAe,CAACvB,GAAD,EAAMX,GAAN,kBACd,oBAACjB,qBAAD,EAAA;AACE,MAAA,GAAG,EAAEiB,GADP;AAEE,MAAA,KAAK,EAAE5F,KAFT;AAGE,MAAA,GAAG,EAAEuG,GAHP;AAIE,MAAA,GAAG,EAAEX,GAJP;AAKE,MAAA,WAAW,EAAE,IAAKrH,CAAAA,KAAL,CAAWoH,WAL1B;AAME,MAAA,QAAQ,EAAE,IAAKpH,CAAAA,KAAL,CAAW2G,QANvB;AAOE,MAAA,SAAS,EAAE,IAAA,CAAK4G,OAPlB;AAQE,MAAA,YAAY,EAAE3F,YARhB;AASE,MAAA,WAAW,EAAEM,WATf;AAUE,MAAA,UAAU,EAAEC,UAVd;AAWE,MAAA,KAAK,EAAEuG,UAAF,IAAA,IAAA,GAAA,KAAA,CAAA,GAAEA,UAAU,CAAG1G,GAAG,CAAC+D,EAAP,CAXnB;AAYE,MAAA,aAAa,EAAG1D,aAAa,IAAIA,aAAa,CAAC8G,SAAhC,IAA8CL,oBAZ/D;AAaE,MAAA,cAAc,EAAGxG,cAAc,IAAIA,cAAc,CAAC6G,SAAlC,IAAgDH,qBAblE;AAcE,MAAA,kBAAkB,EAAEzG,kBAdtB;AAeE,MAAA,aAAa,EAAEC,aAfjB;AAgBE,MAAA,YAAY,EAAE5G,YAhBhB;AAiBE,MAAA,kBAAkB,EAAE7B,cAAc,CAAC6G,IAAD,oBAACA,IAAI,CAAEqB,kBAAP,EAA2BhI,sBAA3B,CAAA;AAjBpC,KADD,CAAA,CAlCH,EAwDGwO,oBAAoB,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAErK,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoCyE,oBAApC,CAxD3B,EAyDGG,aAAa,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAExK,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoC4E,aAApC,CAzDpB,EA0DGC,kBAAkB,iBAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEzK,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoC6E,kBAApC,CA1DzB,eA4DE,KAAA,CAAA,aAAA,CAAC,MAAD,EAAA;AAAQ,MAAA,UAAU,EAAEN,QAAAA;AAApB,KAAA,CA5DF,CALF,CADF,CAAA;AAsED,GAAA;;AA5K6C,CAAA;;AAA1CjB,kBACG1I,YAAY;AACjBR,EAAAA,OAAO,EAAES,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEjBtD,EAAAA,KAAK,EAAEoD,SAAS,CAACC,MAAV,CAAiBC,UAFP;AAGjBrD,EAAAA,aAAa,EAAEmD,SAAS,CAACC,MAAV,CAAiBC,UAHf;AAIjB4B,EAAAA,QAAQ,EAAE9B,SAAS,CAACG,IAAV,CAAeD,UAJR;AAKjBqC,EAAAA,WAAW,EAAEvC,SAAS,CAACG,IAAV,CAAeD,UALX;AAMjBwJ,EAAAA,QAAQ,EAAE1J,SAAS,CAACG,IAAV,CAAeD,UANR;AAOjB6C,EAAAA,YAAY,EAAE/C,SAAS,CAACwF,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADQ;AAE5BwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFK,GAAhB,CAPG;AAWjBwD,EAAAA,kBAAkB,EAAE1D,SAAS,CAACwF,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADc;AAElCwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFW,GAAhB,CAXH;AAejBmD,EAAAA,WAAW,EAAErD,SAAS,CAACC,MAfN;AAgBjBqD,EAAAA,UAAU,EAAEtD,SAAS,CAACsF,IAAAA;AAhBL;AA8KrB,0BAAelF,UAAU,CAAChD,QAAD,CAAV,CAAmBqL,iBAAnB,CAAf;;ACzPA,MAAMrH,KAAG,GAAGC,KAAK,CAAC,8BAAD,CAAjB,CAAA;AACA,MAAM;AAAEkJ,EAAAA,KAAF;AAASC,EAAAA,MAAT;AAAiBC,EAAAA,KAAjB;AAAwBC,EAAAA,QAAAA;AAAxB,CAAA,GAAqC/K,QAA3C,CAAA;;AAEA,MAAMvC,MAAM,GAAIC,KAAD,KAAY;AACzBsN,EAAAA,YAAY,EAAE;AACZ3M,IAAAA,KAAK,EAAE,MADK;AAEZ6I,IAAAA,UAAU,EAAExJ,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAFrB;AAGZyK,IAAAA,YAAY,EAAE7K,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAAA;AAHvB,GADW;AAMzB0H,EAAAA,SAAS,EAAE;AACT/G,IAAAA,QAAQ,EAAEf,KAAK,CAACgB,UAAN,CAAiBD,QAAjB,GAA4B,CAD7B;AAETiI,IAAAA,KAAK,EAAEhJ,KAAK,CAACqJ,OAAN,CAAcnD,KAAd,CAAoBqD,IAFlB;AAGTC,IAAAA,UAAU,EAAExJ,KAAK,CAACG,OAAN,CAAcC,IAAAA;AAHjB,GAAA;AANc,CAAZ,CAAf,CAAA;;AAaA,MAAMmN,SAAN,SAAwBjM,cAAK,CAACC,SAA9B,CAAwC;AAqBtCiM,EAAAA,WAAW,CAAC1P,KAAD,EAAQ;AACjB,IAAA,KAAA,CAAMA,KAAN,CAAA,CAAA;;AADiB,IAAA,IAAA,CA6CnB2P,WA7CmB,GA6CL,CAAC/L,KAAD,EAAQI,KAAR,KAAkB;AAC9B,MAAA,IAAA,CAAKsD,QAAL,CAAc;AAAEsI,QAAAA,SAAS,EAAE5L,KAAAA;AAAb,OAAd,CAAA,CAAA;AACD,KA/CkB,CAAA;;AAAA,IAiDnB6L,IAAAA,CAAAA,gBAjDmB,GAiDC7D,KAAD,IAAW;AAC5B,MAAA,IAAA,CAAK1E,QAAL,CAAc;AAAEsI,QAAAA,SAAS,EAAE5D,KAAAA;AAAb,OAAd,CAAA,CAAA;AACD,KAnDkB,CAAA;;AAAA,IAqDnBrF,IAAAA,CAAAA,QArDmB,GAqDPlF,KAAD,IAAW;AACpB,MAAA,IAAA,CAAKzB,KAAL,CAAW8P,cAAX,CAA0BrO,KAA1B,CAAA,CAAA;AACD,KAvDkB,CAAA;;AAAA,IAyDnBsO,IAAAA,CAAAA,gBAzDmB,GAyDCC,QAAD,IAAc;AAC/B,MAAM,MAAA;AAAEvO,QAAAA,KAAF;AAASqO,QAAAA,cAAAA;AAAT,OAAA,GAA4B,KAAK9P,KAAvC,CAAA;AACAyB,MAAAA,KAAK,CAACuO,QAAN,GAAiBA,QAAjB,CAAA;AAEAF,MAAAA,cAAc,CAACrO,KAAD,CAAd,CAAA;AACD,KA9DkB,CAAA;;AAAA,IAgEnB2F,IAAAA,CAAAA,WAhEmB,GAgEJV,QAAD,IAAc;AAC1B,MAAM,MAAA;AAAEjF,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAKzB,KAAvB,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEAqC,MAAAA,QAAQ,CAAC8C,IAAT,CAAcqJ,MAAd,CAAqBvJ,QAArB,EAA+B,CAA/B,CAAA,CAAA;AAEA,MAAKC,IAAAA,CAAAA,QAAL,CAAc7C,QAAd,CAAA,CAAA;AACD,KAvEkB,CAAA;;AAAA,IAyEnByK,IAAAA,CAAAA,QAzEmB,GAyER,MAAM;AACf,MAAM,MAAA;AAAE9M,QAAAA,KAAF;AAASC,QAAAA,aAAAA;AAAT,OAAA,GAA2B,KAAK1B,KAAtC,CAAA;;AACA,MAAM8D,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AACA,MAAM,MAAA;AAAEI,QAAAA,YAAAA;AAAF,OAAmBH,GAAAA,aAAa,IAAI,EAA1C,CAAA;;AAEA,MAAA,IAAIG,YAAY,IAAI,CAACiC,QAAQ,CAAC8C,IAAT,IAAiB,EAAlB,EAAsBM,MAAtB,IAAgCrF,YAApD,EAAkE;AAChE,QAAA,IAAA,CAAKyF,QAAL,CAAc;AACZhB,UAAAA,MAAM,EAAE;AACNC,YAAAA,IAAI,EAAE,IADA;AAENC,YAAAA,IAAI,EAAG,CAAuB3E,qBAAAA,EAAAA,YAAa,CAArC,aAAA,CAAA,IAAuDA,YAAY,GAAG,CAAf,GAAmB,GAAnB,GAAyB,EAAhF,CAAsF,GAAA,GAAA;AAFtF,WAAA;AADI,SAAd,CAAA,CAAA;AAMA,QAAA,OAAA;AACD,OAAA;;AAEDiC,MAAAA,QAAQ,CAAC8C,IAAT,GAAgB9C,QAAQ,CAAC8C,IAAT,CAAcsJ,MAAd,CAAqB;AACnCnE,QAAAA,EAAE,EAAE,IAAKoE,CAAAA,YAAL,GAAoB,CADW;AAEnCtJ,QAAAA,KAAK,EAAG,CAAgB,cAAA,EAAA,CAAC/C,QAAQ,CAAC8C,IAAT,IAAiB,EAAlB,EAAsBM,MAAtB,GAA+B,CAAE,CAFtB,CAAA;AAGnCD,QAAAA,MAAM,EAAE,IAAImJ,KAAJ,CAAU3O,KAAK,CAAC4C,MAAN,GAAe,CAAzB,CAA4BgM,CAAAA,IAA5B,CAAiC,KAAjC,CAAA;AAH2B,OAArB,CAAhB,CAAA;AAMA,MAAKF,IAAAA,CAAAA,YAAL,IAAqB,CAArB,CAAA;AAEA,MAAKxJ,IAAAA,CAAAA,QAAL,CAAc7C,QAAd,CAAA,CAAA;AACD,KAjGkB,CAAA;;AAAA,IAmGnBI,IAAAA,CAAAA,cAnGmB,GAmGDoM,SAAD,IAAe;AAC9B,MAAM,MAAA;AAAE7O,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAKzB,KAAvB,CAAA;AACA,MAAA,MAAMuQ,SAAS,GAAG9O,KAAK,CAAC4C,MAAxB,CAAA;;AACA,MAAMP,MAAAA,QAAQ,GAAQrC,QAAAA,CAAAA,EAAAA,EAAAA,KAAR,CAAd,CAAA;;AAEA,MAAI6O,IAAAA,SAAS,GAAGC,SAAhB,EAA2B;AACzB,QAAA,KAAK,IAAIvJ,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGsJ,SAAS,GAAGC,SAAhC,EAA2CvJ,CAAC,EAA5C,EAAgD;AAC9ClD,UAAAA,QAAQ,CAACwK,OAAT,CAAiBR,IAAjB,CAAuB,CAAA,OAAA,EAAShK,QAAQ,CAACwK,OAAT,CAAiBpH,MAAjB,GAA0B,CAAE,CAA5D,CAAA,CAAA,CAAA;AACD,SAAA;;AAEDpD,QAAAA,QAAQ,CAAC8C,IAAT,CAAc4J,OAAd,CAAuBxI,GAAD,IAAS;AAC7B,UAAA,KAAK,IAAIhB,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGsJ,SAAS,GAAGC,SAAhC,EAA2CvJ,CAAC,EAA5C,EAAgD;AAC9CgB,YAAAA,GAAG,CAACf,MAAJ,CAAW6G,IAAX,CAAgB,KAAhB,CAAA,CAAA;AACD,WAAA;AACF,SAJD,CAAA,CAAA;AAKD,OAVD,MAUO,IAAIwC,SAAS,GAAGC,SAAhB,EAA2B;AAChCzM,QAAAA,QAAQ,CAACwK,OAAT,CAAiB2B,MAAjB,CAAwBK,SAAxB,CAAA,CAAA;AAEAxM,QAAAA,QAAQ,CAAC8C,IAAT,CAAc4J,OAAd,CAAuBxI,GAAD,IAAS;AAC7BA,UAAAA,GAAG,CAACf,MAAJ,CAAWgJ,MAAX,CAAkBK,SAAS,GAAG,CAA9B,CAAA,CAAA;AACD,SAFD,CAAA,CAAA;AAGD,OAAA;;AAEDxM,MAAAA,QAAQ,CAACO,MAAT,GAAkBiM,SAAlB,CAAA;AAEA,MAAK3J,IAAAA,CAAAA,QAAL,CAAc7C,QAAd,CAAA,CAAA;AACD,KA7HkB,CAAA;;AAAA,IA+HnBD,IAAAA,CAAAA,oBA/HmB,GA+HK4M,aAAD,IAAmB;AACxC,MAAM,MAAA;AAAEhP,QAAAA,KAAAA;AAAF,OAAA,GAAY,KAAKzB,KAAvB,CAAA;;AACA,MAAA,MAAM8D,QAAQ,GAAA,QAAA,CAAA,EAAA,EAAQrC,KAAR,CAAd,CAFwC;;;AAKxC,MAAIgP,IAAAA,aAAa,KAAK,OAAtB,EAA+B;AAC7B3M,QAAAA,QAAQ,CAAC8C,IAAT,CAAc4J,OAAd,CAAuBxI,GAAD,IAAS;AAC7B,UAAM0I,MAAAA,SAAS,GAAG1I,GAAG,CAACf,MAAJ,CAAW2G,MAAX,CAAkB,CAAC+C,KAAD,EAAQC,OAAR,KAAqBA,OAAO,KAAK,IAAZ,GAAmBD,KAAK,GAAG,CAA3B,GAA+BA,KAAtE,CAAlB,CAAA;;AAEA,UAAID,IAAAA,SAAS,GAAG,CAAhB,EAAmB;AACjB1I,YAAAA,GAAG,CAACf,MAAJ,GAAa,IAAImJ,KAAJ,CAAU3O,KAAK,CAAC4C,MAAN,GAAe,CAAzB,CAAA,CAA4BgM,IAA5B,CAAiC,KAAjC,CAAb,CAAA;AACD,WAAA;AACF,SAND,CAAA,CAAA;AAOD,OAAA;;AAEDvM,MAAAA,QAAQ,CAACnC,UAAT,GAAsB8O,aAAtB,CAAA;AAEA,MAAK9J,IAAAA,CAAAA,QAAL,CAAc7C,QAAd,CAAA,CAAA;AACD,KAjJkB,CAAA;;AAAA,IAmJnB+M,IAAAA,CAAAA,sBAnJmB,GAmJOC,cAAD,IAAoB;AAC3C,MAAA,IAAA,CAAK9Q,KAAL,CAAWyB,KAAX,CAAiBqP,cAAjB,GAAkCA,cAAlC,CAAA;AAEA,MAAA,IAAA,CAAK9Q,KAAL,CAAW8P,cAAX,CAA0B,IAAK9P,CAAAA,KAAL,CAAWyB,KAArC,CAAA,CAAA;AACD,KAvJkB,CAAA;;AAAA,IAyJnBsP,IAAAA,CAAAA,eAzJmB,GAyJAhC,MAAD,IAAY;AAC5B,MAAA,IAAA,CAAK/O,KAAL,CAAW8P,cAAX,cAA+B,IAAK9P,CAAAA,KAAL,CAAWyB,KAA1C,EAAA;AAAiDsN,QAAAA,MAAAA;AAAjD,OAAA,CAAA,CAAA,CAAA;AACD,KA3JkB,CAAA;;AAAA,IA6JnBiC,IAAAA,CAAAA,4BA7JmB,GA6JaC,mBAAD,IAAyB;AACtD,MAAA,IAAA,CAAKjR,KAAL,CAAW8P,cAAX,cAA+B,IAAK9P,CAAAA,KAAL,CAAWyB,KAA1C,EAAA;AAAiDwP,QAAAA,mBAAAA;AAAjD,OAAA,CAAA,CAAA,CAAA;AACD,KA/JkB,CAAA;;AAAA,IAiKnBC,IAAAA,CAAAA,kBAjKmB,GAiKGC,SAAD,IAAe;AAClC,MAAA,IAAA,CAAKnR,KAAL,CAAW8P,cAAX,cAA+B,IAAK9P,CAAAA,KAAL,CAAWyB,KAA1C,EAAA;AAAiD0P,QAAAA,SAAAA;AAAjD,OAAA,CAAA,CAAA,CAAA;AACD,KAnKkB,CAAA;;AAGjB,IAAIC,IAAAA,KAAK,GAAG,CAAZ,CAAA;;AAEA,IAAA,IAAIpR,KAAK,CAACyB,KAAN,CAAYmF,IAAZ,IAAoB5G,KAAK,CAACyB,KAAN,CAAYmF,IAAZ,CAAiBM,MAAjB,GAA0B,CAAlD,EAAqD;AACnDkK,MAAAA,KAAK,GAAGC,IAAI,CAACC,GAAL,CAAS,GAAGtR,KAAK,CAACyB,KAAN,CAAYmF,IAAZ,CAAiB2C,GAAjB,CAAsBvB,GAAD,IAASA,GAAG,CAAC+D,EAAlC,CAAZ,CAAR,CAAA;AACD,KAAA;;AAED,IAAA,IAAA,CAAKoE,YAAL,GAAoBiB,KAAK,GAAG,CAA5B,CAAA;AAEA,IAAA,IAAA,CAAK/K,KAAL,GAAa;AACXuJ,MAAAA,SAAS,EAAE,CADA;AAEXtJ,MAAAA,MAAM,EAAE;AACNC,QAAAA,IAAI,EAAE,KADA;AAENC,QAAAA,IAAI,EAAE,EAAA;AAFA,OAAA;AAFG,KAAb,CAAA;AAOD,GAAA;;AAEDiB,EAAAA,iBAAiB,GAAG;AAClB,IAAM,MAAA;AAAE8J,MAAAA,WAAF;AAAeC,MAAAA,UAAAA;AAAf,KAA8B,GAAA,IAAA,CAAKC,cAAL,CAAoB,IAAA,CAAKzR,KAAL,CAAWyB,KAAX,CAAiBmF,IAArC,CAApC,CAAA;;AAEA,IAAA,IAAI4K,UAAJ,EAAgB;AACd,MAAA,MAAM1N,QAAQ,GAAA,QAAA,CAAA,EAAA,EAAQ,IAAK9D,CAAAA,KAAL,CAAWyB,KAAnB,EAAA;AAA0BmF,QAAAA,IAAI,EAAE2K,WAAAA;AAAhC,OAAd,CAAA,CAAA;;AACA,MAAA,IAAA,CAAKvR,KAAL,CAAW8P,cAAX,CAA0BhM,QAA1B,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AAED2N,EAAAA,cAAc,CAAC7K,IAAD,EAAO;AACnB,IAAI4K,IAAAA,UAAU,GAAG,KAAjB,CAAA;AAEA,IAAA,MAAMD,WAAW,GAAG,CAAC3K,IAAI,IAAI,EAAT,EAAa2C,GAAb,CAAiB,CAACvB,GAAD,EAAMgE,KAAN,KAAgB;AACnD,MAAA,IAAIhE,GAAG,CAAC+D,EAAJ,KAAWC,KAAK,GAAG,CAAvB,EAA0B;AACxBwF,QAAAA,UAAU,GAAG,IAAb,CAAA;AAEA,QAAA,OAAA,QAAA,CAAA,EAAA,EAAYxJ,GAAZ,EAAA;AAAiB+D,UAAAA,EAAE,EAAEC,KAAK,GAAG,CAAA;AAA7B,SAAA,CAAA,CAAA;AACD,OAAA;;AAED,MAAA,OAAOhE,GAAP,CAAA;AACD,KARmB,CAApB,CAAA;AAUA,IAAO,OAAA;AAAEuJ,MAAAA,WAAF;AAAeC,MAAAA,UAAAA;AAAf,KAAP,CAAA;AACD,GAAA;;AA0HDrN,EAAAA,MAAM,GAAG;AACP,IAAM,MAAA;AAAEC,MAAAA,OAAF;AAAW3C,MAAAA,KAAX;AAAkBmG,MAAAA,YAAlB;AAAgCkI,MAAAA,cAAhC;AAAgDpO,MAAAA,aAAhD;AAA+DgQ,MAAAA,sBAA/D;AAAuFnJ,MAAAA,kBAAAA;AAAvF,KAAA,GACJ,KAAKvI,KADP,CAAA;AAEA,IAAM,MAAA;AACJC,MAAAA,sBAAsB,GAAG,EADrB;AAEJ0R,MAAAA,iBAAiB,GAAG,EAFhB;AAGJ3B,MAAAA,QAAQ,GAAG,EAHP;AAIJ4B,MAAAA,eAAe,GAAG,EAJd;AAKJvJ,MAAAA,aAAa,GAAG,EALZ;AAMJC,MAAAA,cAAc,GAAG,EANb;AAOJwI,MAAAA,cAAc,GAAG,EAPb;AAQJ/B,MAAAA,MAAM,GAAG,EARL;AASJoC,MAAAA,SAAS,GAAG,EATR;AAUJU,MAAAA,qBAVI;AAWJC,MAAAA,WAAW,GAAG,EAXV;AAYJ3J,MAAAA,UAAU,GAAG,EAZT;AAaJ4J,MAAAA,mBAAmB,GAAG,EAblB;AAcJd,MAAAA,mBAAmB,GAAG,EAdlB;AAeJe,MAAAA,UAAU,GAAG,EAfT;AAgBJ1I,MAAAA,QAAQ,GAAG,EAhBP;AAiBJ2I,MAAAA,eAAe,GAAG,EAAA;AAjBd,KAkBFvQ,GAAAA,aAAa,IAAI,EAlBrB,CAAA;AAmBA,IAAM,MAAA;AACJ8M,MAAAA,MADI;AAEJ0D,MAAAA,aAFI;AAGJC,MAAAA,eAHI;AAIJC,MAAAA,aAJI;AAKJC,MAAAA,gBALI;AAMJC,MAAAA,iBANI;AAOJC,MAAAA,0BAPI;AAQJC,MAAAA,qBAAAA;AARI,KASF/Q,GAAAA,KAAK,IAAI,EATb,CAAA;AAUA,IAAM,MAAA;AACJsN,MAAAA,MAAM,EAAE0D,WADJ;AAEJtB,MAAAA,SAAS,EAAEuB,cAFP;AAGJzB,MAAAA,mBAAmB,EAAE0B,wBAAAA;AAHjB,KAIFnE,GAAAA,MAAM,IAAI,EAJd,CAAA;AAKA,IAAM,MAAA;AAAElI,MAAAA,MAAAA;AAAF,KAAA,GAAa,KAAKD,KAAxB,CAAA;AAEA,IAAA,MAAM6B,WAAW,GAAG;AAClB0K,MAAAA,QAAQ,EAAEJ,qBAAqB,KAAK,KAA1B,GAAkC,KAAlC,GAA0C,QAAA;AADlC,KAApB,CAAA;AAIA,IAAA,MAAM1D,oBAAoB,GAAGzG,aAAa,IAAIA,aAAa,CAAC0G,MAA5D,CAAA;AACA,IAAA,MAAMC,qBAAqB,GAAG1G,cAAc,IAAIA,cAAc,CAACyG,MAA/D,CAAA;AAEA,IAAA,MAAM8D,aAAa,GAAG;AACpB/B,MAAAA,cAAc,EAAEA,cAAc,CAACtM,QAAf,IAA2B6K,MAAM,CAACyB,cAAc,CAACrM,KAAhB,CAD7B;AAEpBmN,MAAAA,eAAe,EAAEA,eAAe,CAACpN,QAAhB,IAA4B6K,MAAM,CAACuC,eAAe,CAACnN,KAAjB,CAF/B;AAGpB0N,MAAAA,eAAe,EAAEnC,QAAQ,CAACxL,QAAT,IAAqB6K,MAAM,CAACW,QAAQ,CAACvL,KAAV,CAHxB;AAIpB,MAAoB6E,kBAAAA,EAAAA,QAAQ,CAAC9E,QAAT,IAAqB6K,MAAM,CAAC/F,QAAQ,CAAC7E,KAAV,EAAiB,IAAjB,CAJ3B;AAKpB6E,MAAAA,QAAQ,EAAEA,QAAQ,CAAC9E,QAAT,IAAqB8E,QAAQ,CAACwJ,OAA9B,IAAyCvD,QAAQ,CAAC0C,eAAe,CAACxN,KAAjB,EAAwBwN,eAAe,CAACc,OAAxC,CAAA;AALvC,KAAtB,CAAA;AAOA,IAAA,MAAMC,eAAe,GAAG;AACtBT,MAAAA,0BAA0B,EAAEtB,mBAAmB,CAACzM,QAApB,IAAgC6K,MAAM,CAAC4B,mBAAmB,CAACxM,KAArB,CAD5C;AAEtBwO,MAAAA,0BAA0B,EAAElB,mBAAmB,CAACvN,QAApB,IAAgC6K,MAAM,CAAC0C,mBAAmB,CAACtN,KAArB,CAF5C;AAGtB2N,MAAAA,aAAa,EAAErD,MAAM,CAACvK,QAAP,IAAmB6K,MAAM,CAACN,MAAM,CAACtK,KAAR,CAHlB;AAItB4N,MAAAA,gBAAgB,EAAElB,SAAS,CAAC3M,QAAV,IAAsB6K,MAAM,CAAC8B,SAAS,CAAC1M,KAAX,CAJxB;AAKtB6N,MAAAA,iBAAiB,EAAEnK,UAAU,CAAC3D,QAAX,IAAuB6K,MAAM,CAAClH,UAAU,CAAC1D,KAAZ,CAL1B;AAMtBqN,MAAAA,WAAW,EAAEA,WAAW,CAACtN,QAAZ,IAAwB8K,KAAK,CAACwC,WAAW,CAACrN,KAAb,EAAoB,CAAC,MAAD,EAAS,QAAT,CAApB,CANpB;AAOtByO,MAAAA,aAAa,EAAE,CAAAlB,UAAU,IAAA,IAAV,YAAAA,UAAU,CAAExN,QAAZ,KAAwB6K,MAAM,CAAC2C,UAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAEvN,KAAb,CAAA;AAPvB,KAAxB,CAAA;AAUAwB,IAAAA,KAAG,CAAC,gBAAD,EAAmBxE,KAAnB,CAAH,CAAA;AAEA,IACE,oBAAA+B,cAAA,CAAA,aAAA,CAAC,MAAD,CAAQ,YAAR,EAAA;AACE,MAAA,aAAa,EAAE0O,aADjB;AAEE,MAAA,UAAU,EAAEP,iBAFd;AAGE,MAAA,YAAY,EAAEE,qBAHhB;AAIE,MAAA,QAAQ,eACNrO,cAAA,CAAA,aAAA,CAAC,KAAD,EAAA;AACE,QAAA,KAAK,EAAE/B,KADT;AAEE,QAAA,aAAa,EAAEC,aAFjB;AAGE,QAAA,aAAa,EAAGD,KAAD,IAAWqO,cAAc,CAACrO,KAAD,CAH1C;AAIE,QAAA,qBAAqB,EAAG0R,MAAD,IAAYzB,sBAAsB,CAACyB,MAAD,CAJ3D;AAKE,QAAA,MAAM,EAAE;AACNC,UAAAA,QAAQ,EAAEP,aADJ;AAENQ,UAAAA,UAAU,EAAEL,eAAAA;AAFN,SAAA;AALV,OAAA,CAAA;AALJ,KAiBGT,EAAAA,0BAA0B,iBACzB/O,cAAA,CAAA,aAAA,CAAC,cAAD,EAAA;AAAgB,MAAA,KAAK,EAAEyN,mBAAmB,CAACxM,KAA3C;AAAkD,MAAA,SAAS,EAAEL,OAAO,CAACoL,YAAAA;AAArE,KAAA,eACEhM,6BAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAEY,OAAO,CAAC2K,MADrB;AAEE,MAAA,MAAM,EAAEtN,KAAK,CAACwP,mBAAN,IAA6B,EAFvC;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKD,4BAHjB;AAIE,MAAA,YAAY,EAAEpJ,YAJhB;AAKE,MAAA,KAAK,EAAE+K,wBALT;AAME,MAAA,QAAQ,EAAE,KANZ;AAOE,MAAA,WAAW,EAAEzK,WAPf;AAQE,MAAA,WAAW,EAAEnI,cAAc,CAACkR,mBAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,mBAAmB,CAAEhJ,kBAAtB,EAA0ChI,sBAA1C,CAR7B;AASE,MAAA,UAAU,EAAEqS,iBATd;AAUE,MAAA,aAAa,EAAGjK,aAAa,IAAIA,aAAa,CAAC4I,mBAAhC,IAAwDnC,oBAVzE;AAWE,MAAA,cAAc,EAAGxG,cAAc,IAAIA,cAAc,CAAC2I,mBAAlC,IAA0DjC,qBAX5E;AAYE,MAAA,kBAAkB,EAAEzG,kBAZtB;AAaE,MAAA,uBAAuB,EAAE,CAAC;AAAEe,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAAA;AAb3B,KADF,CAAA,EAgBGqJ,wBAAwB,iBAAInP,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoC2I,wBAApC,CAhB/B,CAlBJ,EAsCGP,aAAa,iBACZ5O,6BAAC,cAAD,EAAA;AAAgB,MAAA,KAAK,EAAEuL,MAAM,CAACtK,KAA9B;AAAqC,MAAA,SAAS,EAAEL,OAAO,CAACoL,YAAAA;AAAxD,KAAA,eACEhM,6BAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAEY,OAAO,CAAC2K,MADrB;AAEE,MAAA,MAAM,EAAEtN,KAAK,CAACsN,MAFhB;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKgC,eAHjB;AAIE,MAAA,YAAY,EAAEnJ,YAJhB;AAKE,MAAA,KAAK,EAAE6K,WALT;AAME,MAAA,QAAQ,EAAE,KANZ;AAOE,MAAA,gBAAgB,EAPlB,IAAA;AAQE,MAAA,WAAW,EAAEvK,WARf;AASE,MAAA,WAAW,EAAEnI,cAAc,CAACgP,MAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAE9G,kBAAT,EAA6BhI,sBAA7B,CAT7B;AAUE,MAAA,UAAU,EAAEqS,iBAVd;AAWE,MAAA,aAAa,EAAEjK,aAAa,IAAIA,aAAa,CAAC0G,MAXhD;AAYE,MAAA,cAAc,EAAEzG,cAAc,IAAIA,cAAc,CAACyG,MAZnD;AAaE,MAAA,kBAAkB,EAAExG,kBAbtB;AAcE,MAAA,uBAAuB,EAAE,CAAC;AAAEe,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAAA;AAd3B,KADF,CAAA,EAiBGmJ,WAAW,iBAAIjP,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoCyI,WAApC,CAjBlB,CAvCJ,eA4DEjP,6BAACD,oBAAD,EAAA;AACE,MAAA,KAAK,EAAE9B,KADT;AAEE,MAAA,aAAa,EAAEC,aAFjB;AAGE,MAAA,oBAAoB,EAAE,IAAA,CAAKmC,oBAH7B;AAIE,MAAA,cAAc,EAAE,IAAKK,CAAAA,cAAAA;AAJvB,KA5DF,CAAA,eAmEEV,6BAAC8J,mBAAD,EAAA;AACE,MAAA,KAAK,EAAE7L,KADT;AAEE,MAAA,aAAa,EAAEC,aAFjB;AAGE,MAAA,YAAY,EAAEkG,YAHhB;AAIE,MAAA,QAAQ,EAAE,IAAA,CAAKjB,QAJjB;AAKE,MAAA,QAAQ,EAAE,IAAA,CAAK4H,QALjB;AAME,MAAA,WAAW,EAAE,IAAA,CAAKnH,WANpB;AAOE,MAAA,WAAW,EAAEc,WAPf;AAQE,MAAA,UAAU,EAAEoK,iBARd;AASE,MAAA,kBAAkB,EAAE/J,kBAAAA;AATtB,KAAA,CAnEF,EA+EG8J,gBAAgB,iBACf7O,cAAA,CAAA,aAAA,CAAC,cAAD,EAAA;AAAgB,MAAA,KAAK,EAAE2N,SAAS,CAAC1M,KAAjC;AAAwC,MAAA,SAAS,EAAEL,OAAO,CAACoL,YAAAA;AAA3D,KAAA,eACEhM,6BAAC,YAAD,EAAA;AACE,MAAA,SAAS,EAAEY,OAAO,CAAC2K,MADrB;AAEE,MAAA,MAAM,EAAEtN,KAAK,CAAC0P,SAAN,IAAmB,EAF7B;AAGE,MAAA,QAAQ,EAAE,IAAA,CAAKD,kBAHjB;AAIE,MAAA,YAAY,EAAEtJ,YAJhB;AAKE,MAAA,KAAK,EAAE8K,cALT;AAME,MAAA,WAAW,EAAExK,WANf;AAOE,MAAA,WAAW,EAAEnI,cAAc,CAACoR,SAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAElJ,kBAAZ,EAAgChI,sBAAhC,CAP7B;AAQE,MAAA,UAAU,EAAEqS,iBARd;AASE,MAAA,aAAa,EAAGjK,aAAa,IAAIA,aAAa,CAAC8I,SAAhC,IAA8CrC,oBAT/D;AAUE,MAAA,cAAc,EAAGxG,cAAc,IAAIA,cAAc,CAAC6I,SAAlC,IAAgDnC,qBAVlE;AAWE,MAAA,kBAAkB,EAAEzG,kBAXtB;AAYE,MAAA,uBAAuB,EAAE,CAAC;AAAEe,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAAD,EAA0B;AAAEA,QAAAA,QAAQ,EAAE,SAAA;AAAZ,OAA1B,CAAA;AAZ3B,KADF,CAAA,EAeGoJ,cAAc,iBAAIlP,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA;AAAK,MAAA,SAAS,EAAEY,OAAO,CAAC4F,SAAAA;AAAxB,KAAA,EAAoC0I,cAApC,CAfrB,CAhFJ,EAmGGP,eAAe,iBACd3O,6BAAC,cAAD,EAAA;AAAgB,MAAA,QAAQ,EAAE/B,KAAK,CAACuO,QAAhC;AAA0C,MAAA,QAAQ,EAAE,IAAA,CAAKD,gBAAzD;AAA2E,MAAA,WAAW,EAAE7H,WAAAA;AAAxF,KApGJ,CAAA,eAsGE1E,6BAAC,WAAD,EAAA;AACE,MAAA,IAAI,EAAE8C,MAAM,CAACC,IADf;AAEE,MAAA,KAAK,EAAC,SAFR;AAGE,MAAA,IAAI,EAAED,MAAM,CAACE,IAHf;AAIE,MAAA,SAAS,EAAE,MAAM,IAAA,CAAKc,QAAL,CAAc;AAAEhB,QAAAA,MAAM,EAAE;AAAEC,UAAAA,IAAI,EAAE,KAAA;AAAR,SAAA;AAAV,OAAd,CAAA;AAJnB,KAAA,CAtGF,CADF,CAAA;AA+GD,GAAA;;AA1WqC,CAAA;;AAAlCkJ,UACG7K,YAAY;AACjBkL,EAAAA,cAAc,EAAEjL,SAAS,CAACG,IADT;AAEjB0M,EAAAA,sBAAsB,EAAE7M,SAAS,CAACG,IAFjB;AAGjBZ,EAAAA,OAAO,EAAES,SAAS,CAACC,MAHF;AAIjBrD,EAAAA,KAAK,EAAEoD,SAAS,CAACC,MAAV,CAAiBC,UAJP;AAKjBrD,EAAAA,aAAa,EAAEmD,SAAS,CAACC,MAAV,CAAiBC,UALf;AAMjB6C,EAAAA,YAAY,EAAE/C,SAAS,CAACwF,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADQ;AAE5BwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFK,GAAhB,CANG;AAUjBwD,EAAAA,kBAAkB,EAAE1D,SAAS,CAACwF,KAAV,CAAgB;AAClCC,IAAAA,GAAG,EAAEzF,SAAS,CAACG,IAAV,CAAeD,UADc;AAElCwF,IAAAA,MAAM,EAAE1F,SAAS,CAACG,IAAV,CAAeD,UAAAA;AAFW,GAAhB,CAAA;AAVH;AADf0K,UAiBGhF,eAAe;AACpBrG,EAAAA,OAAO,EAAE,EAAA;AADW;AA8VxB,kBAAekP,eAAe,CAACrO,UAAU,CAAChD,MAAD,CAAV,CAAmBwN,SAAnB,CAAD,CAA9B;;AC1YA;AACA;AACA;AACA;AAEA,oBAAe;AACbhO,EAAAA,KAAK,EAAE;AACLE,IAAAA,UAAU,EAAE,OADP;AAELwQ,IAAAA,eAAe,EAAE,KAFZ;AAGL7D,IAAAA,OAAO,EAAE,CAAC,UAAD,EAAa,UAAb,EAAyB,UAAzB,CAHJ;AAILjK,IAAAA,MAAM,EAAE,CAJH;AAKLuN,IAAAA,eAAe,EAAE,IALZ;AAMLd,IAAAA,cAAc,EAAE,KANX;AAOL/B,IAAAA,MAAM,EAAE,EAPH;AAQLqD,IAAAA,aAAa,EAAE,IARV;AASLjB,IAAAA,SAAS,EAAE,EATN;AAULkB,IAAAA,gBAAgB,EAAE,IAVb;AAWLzL,IAAAA,IAAI,EAAE,EAXD;AAYLkL,IAAAA,WAAW,EAAE,MAZR;AAaLmB,IAAAA,0BAA0B,EAAE,IAbvB;AAcLhC,IAAAA,mBAAmB,EAAE,EAdhB;AAeLsB,IAAAA,0BAA0B,EAAE,IAfvB;AAgBLC,IAAAA,qBAAqB,EAAE,QAAA;AAhBlB,GADM;AAmBb9Q,EAAAA,aAAa,EAAE;AACbzB,IAAAA,sBAAsB,EAAE;AACtBsT,MAAAA,KAAK,EAAE;AAAEC,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OADe;AAEtBC,MAAAA,KAAK,EAAE;AAAED,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OAFe;AAGtBE,MAAAA,KAAK,EAAE;AAAEF,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OAHe;AAItBpI,MAAAA,SAAS,EAAE;AAAEoI,QAAAA,QAAQ,EAAE,IAAA;AAAZ,OAJW;AAKtBG,MAAAA,cAAc,EAAE;AAAEH,QAAAA,QAAQ,EAAE,KAAA;AAAZ,OALM;AAMtBI,MAAAA,kBAAkB,EAAE;AAAEJ,QAAAA,QAAQ,EAAE,IAAA;AAAZ,OAAA;AANE,KADX;AASb5M,IAAAA,IAAI,EAAE;AACJqB,MAAAA,kBAAkB,EAAE;AAClBsL,QAAAA,KAAK,EAAE;AAAEC,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SADW;AAElBC,QAAAA,KAAK,EAAE;AAAED,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SAFW;AAGlBE,QAAAA,KAAK,EAAE;AAAEF,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AADhB,KATO;AAgBbxD,IAAAA,QAAQ,EAAE;AACRxL,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,KAAK,EAAE,UAFC;AAGRqO,MAAAA,OAAO,EAAE,IAAA;AAHD,KAhBG;AAqBbxE,IAAAA,OAAO,EAAE;AACP9J,MAAAA,QAAQ,EAAE,IADH;AAEPyD,MAAAA,kBAAkB,EAAE;AAClBsL,QAAAA,KAAK,EAAE;AAAEC,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SADW;AAElBC,QAAAA,KAAK,EAAE;AAAED,UAAAA,QAAQ,EAAE,IAAA;AAAZ,SAFW;AAGlBE,QAAAA,KAAK,EAAE;AAAEF,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAAA;AAFb,KArBI;AA6BbnP,IAAAA,MAAM,EAAE;AACNG,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE,QAAA;AAFD,KA7BK;AAiCbmN,IAAAA,eAAe,EAAE;AACfpN,MAAAA,QAAQ,EAAE,KADK;AAEfC,MAAAA,KAAK,EAAE,mBAAA;AAFQ,KAjCJ;AAqCbqM,IAAAA,cAAc,EAAE;AACdtM,MAAAA,QAAQ,EAAE,KADI;AAEdC,MAAAA,KAAK,EAAE,uBAAA;AAFO,KArCH;AAyCb9C,IAAAA,UAAU,EAAE;AACV6C,MAAAA,QAAQ,EAAE,IADA;AAEVC,MAAAA,KAAK,EAAE,eAAA;AAFG,KAzCC;AA6CbsK,IAAAA,MAAM,EAAE;AACNvK,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE,QAFD;AAGNwD,MAAAA,kBAAkB,EAAE;AAClBsL,QAAAA,KAAK,EAAE;AAAEC,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElBC,QAAAA,KAAK,EAAE;AAAED,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlBE,QAAAA,KAAK,EAAE;AAAEF,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAHd;AAQNK,MAAAA,QAAQ,EAAE,KAAA;AARJ,KA7CK;AAuDb1C,IAAAA,SAAS,EAAE;AACT3M,MAAAA,QAAQ,EAAE,IADD;AAETC,MAAAA,KAAK,EAAE,WAFE;AAGTwD,MAAAA,kBAAkB,EAAE;AAClBsL,QAAAA,KAAK,EAAE;AAAEC,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElBC,QAAAA,KAAK,EAAE;AAAED,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlBE,QAAAA,KAAK,EAAE;AAAEF,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAHX;AAQTK,MAAAA,QAAQ,EAAE,KAAA;AARD,KAvDE;AAiEbhC,IAAAA,qBAAqB,EAAE,KAjEV;AAkEb1J,IAAAA,UAAU,EAAE;AACV1D,MAAAA,KAAK,EAAE,YADG;AAEVD,MAAAA,QAAQ,EAAE,KAFA;AAGVsO,MAAAA,OAAO,EAAE,IAAA;AAHC,KAlEC;AAuEbhB,IAAAA,WAAW,EAAE;AACXtN,MAAAA,QAAQ,EAAE,KADC;AAEXC,MAAAA,KAAK,EAAE,cAAA;AAFI,KAvEA;AA2EbsN,IAAAA,mBAAmB,EAAE;AACnBvN,MAAAA,QAAQ,EAAE,KADS;AAEnBC,MAAAA,KAAK,EAAE,sBAAA;AAFY,KA3ER;AA+EbwM,IAAAA,mBAAmB,EAAE;AACnBzM,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE,sBAFY;AAGnBwD,MAAAA,kBAAkB,EAAE;AAClBsL,QAAAA,KAAK,EAAE;AAAEC,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SADW;AAElBC,QAAAA,KAAK,EAAE;AAAED,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAFW;AAGlBE,QAAAA,KAAK,EAAE;AAAEF,UAAAA,QAAQ,EAAE,KAAA;AAAZ,SAAA;AAHW,OAHD;AAQnBK,MAAAA,QAAQ,EAAE,KAAA;AARS,KA/ER;AAyFbxL,IAAAA,aAAa,EAAE;AACb4I,MAAAA,mBAAmB,EAAE,GADR;AAEblC,MAAAA,MAAM,EAAE,GAFK;AAGboC,MAAAA,SAAS,EAAE,GAHE;AAIbhC,MAAAA,SAAS,EAAE,GAAA;AAJE,KAzFF;AA+Fb7G,IAAAA,cAAc,EAAE;AACd2I,MAAAA,mBAAmB,EAAE,GADP;AAEdlC,MAAAA,MAAM,EAAE,GAFM;AAGdoC,MAAAA,SAAS,EAAE,GAHG;AAIdhC,MAAAA,SAAS,EAAE,GAAA;AAJG,KA/FH;AAqGb6C,IAAAA,UAAU,EAAE;AACVxN,MAAAA,QAAQ,EAAE,KADA;AAEVC,MAAAA,KAAK,EAAE,YAAA;AAFG,KArGC;AAyGb7C,IAAAA,YAAY,EAAE,CAzGD;AA0GbC,IAAAA,YAAY,EAAE,CA1GD;AA2GbiS,IAAAA,yBAAyB,EAAE,GA3Gd;AA4GbhS,IAAAA,UAAU,EAAE,CA5GC;AA6GbiS,IAAAA,gBAAgB,EAAE,GA7GL;AA8GbC,IAAAA,2BAA2B,EAAE,GA9GhB;AA+GbxL,IAAAA,aAAa,EAAE;AACbyL,MAAAA,SAAS,EAAE,KADE;AAEbC,MAAAA,UAAU,EAAE,KAAA;AAFC,KA/GF;AAmHb5K,IAAAA,QAAQ,EAAE;AACR9E,MAAAA,QAAQ,EAAE,KADF;AAERC,MAAAA,KAAK,EAAE,kBAFC;AAGRqO,MAAAA,OAAO,EAAE,KAAA;AAHD,KAnHG;AAwHbb,IAAAA,eAAe,EAAE;AACfxN,MAAAA,KAAK,EAAE,kBADQ;AAEfsO,MAAAA,OAAO,EAAE,EAAA;AAFM,KAAA;AAxHJ,GAAA;AAnBF,CAAf;;ACUA,MAAM9M,GAAG,GAAGC,KAAK,CAAC,8BAAD,CAAjB,CAAA;AAEe,MAAMiO,cAAN,SAA6BC,WAA7B,CAAyC;AAMtD1E,EAAAA,WAAW,GAAG;AACZ,IAAA,KAAA,EAAA,CAAA;;AADY,IAad2E,IAAAA,CAAAA,iCAbc,GAasB,MAAM;AACxC;AACA;AACA;AACA;AACA;AACA,MAAA,MAAMC,UAAU,GAAG5M,QAAQ,CAAC6M,gBAAT,CAA0B,YAA1B,CAAnB,CAAA;AACA,MAAA,IAAA,CAAKC,iBAAL,GAAyBpE,KAAK,CAAC5C,IAAN,CAAW8G,UAAX,CAAuBG,CAAAA,IAAvB,CAA6BC,MAAD,IAAYA,MAAM,CAACC,QAAP,CAAgB,IAAhB,CAAxC,CAAzB,CAAA;;AAEA,MAAI,IAAA,IAAA,CAAKH,iBAAT,EAA4B;AAC1B,QAAI,IAAA,IAAA,CAAKI,UAAT,EAAqB;AACnB,UAAKC,IAAAA,CAAAA,MAAL,GAAc,IAAA,CAAKD,UAAnB,CAAA;AACD,SAFD,MAEO;AACL,UAAA,OAAO,KAAKA,UAAZ,CAAA;AACD,SAAA;AACF,OAAA;AACF,KA7Ba,CAAA;;AAEZ,IAAA,IAAA,CAAKC,MAAL,GAAcV,cAAc,CAACW,kBAAf,EAAd,CAAA;AACA,IAAA,IAAA,CAAKC,cAAL,GAAsBC,aAAa,CAACtT,aAApC,CAAA;AACD,GAAA;;AAEQ,EAALD,IAAAA,KAAK,CAACwT,CAAD,EAAI;AACX,IAAA,IAAA,CAAKJ,MAAL,GAAcV,cAAc,CAACW,kBAAf,CAAkCG,CAAlC,CAAd,CAAA;AACA,IAAA,IAAA,CAAKL,UAAL,GAAkBM,SAAS,CAAC,IAAA,CAAKL,MAAN,CAA3B,CAAA;;AAEA,IAAA,IAAA,CAAKM,OAAL,EAAA,CAAA;AACD,GAAA;;AAoBgB,EAAbzT,IAAAA,aAAa,CAAC0T,CAAD,EAAI;AAAA,IAAA,IAAA,qBAAA,EAAA,OAAA,CAAA;;AACnB,IAAA,MAAMC,gBAAgB,GACjBL,QAAAA,CAAAA,EAAAA,EAAAA,aAAa,CAACtT,aADG,EAEjB0T,CAFiB,CAAtB,CAAA;;AAKA,IAAKL,IAAAA,CAAAA,cAAL,GAAsBM,gBAAtB,CAAA;AAEA,IAAKhB,IAAAA,CAAAA,iCAAL,GARmB;AAWnB;AACA;AACA;;AACA,IAAIgB,IAAAA,gBAAJ,qCAAIA,gBAAgB,CAAE/L,QAAtB,KAAI,IAAA,IAAA,qBAAA,CAA4BwJ,OAAhC,EAAyC;AAAA,MAAA,IAAA,sBAAA,EAAA,sBAAA,CAAA;;AACvC,MAAIuC,IAAAA,gBAAJ,IAAIA,IAAAA,IAAAA,CAAAA,sBAAAA,GAAAA,gBAAgB,CAAEpD,eAAtB,KAAI,IAAA,IAAA,CAAA,sBAAA,GAAA,sBAAA,CAAmCc,OAAvC,KAAA,IAAA,IAAI,sBAA4C7L,CAAAA,MAAhD,EAAwD;AACtD,QAAA,IAAA,CAAK2N,MAAL,CAAYvL,QAAZ,GAAuB+L,gBAAvB,IAAuBA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAgB,CAAEpD,eAAlB,CAAkCc,OAAlC,CAA0C,CAA1C,EAA6C/O,KAApE,CAAA;AACD,OAAA;AACF,KAJD,MAIO,IAAIqR,gBAAgB,CAAC/L,QAAjB,CAA0B9E,QAA1B,IAAsC,IAAKqQ,CAAAA,MAAL,CAAYvL,QAAtD,EAAgE;AACrE,MAAA,IAAA,CAAKyL,cAAL,CAAoBzL,QAApB,CAA6BwJ,OAA7B,GAAuC,IAAvC,CAAA;;AAEA,MAAA,IAAI,CAAC,IAAKiC,CAAAA,cAAL,CAAoB9C,eAApB,CAAoCc,OAArC,IAAgD,CAAC,IAAA,CAAKgC,cAAL,CAAoB9C,eAApB,CAAoCc,OAApC,CAA4C7L,MAAjG,EAAyG;AACvG,QAAA,IAAA,CAAK6N,cAAL,CAAoB9C,eAApB,CAAoCc,OAApC,GAA8C,EAA9C,CAAA;AACD,OALoE;AAQrE;;;AACA,MAAI,IAAA,CAAC,KAAKgC,cAAL,CAAoB9C,eAApB,CAAoCc,OAApC,CAA4CuC,IAA5C,CAAkDC,MAAD,IAAYA,MAAM,CAACvR,KAAP,KAAiB,KAAK6Q,MAAL,CAAYvL,QAA1F,CAAL,EAA0G;AACxG,QAAA,IAAA,CAAKyL,cAAL,CAAoB9C,eAApB,CAAoCc,OAApC,CAA4CjF,IAA5C,CAAiD;AAC/C9J,UAAAA,KAAK,EAAE,IAAK6Q,CAAAA,MAAL,CAAYvL,QAD4B;AAE/C7E,UAAAA,KAAK,EAAE,IAAKoQ,CAAAA,MAAL,CAAYvL,QAAAA;AAF4B,SAAjD,CAAA,CAAA;AAID,OAAA;AACF,KAfM,MAeA;AACL,MAAO,OAAA,IAAA,CAAKuL,MAAL,CAAYvL,QAAnB,CAAA;AACD,KAAA;AAED;AACJ;AACA;AACA;AACA;;;AAEI,IAAIkM,IAAAA,OAAO,CAACJ,CAAD,IAACA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,CAAAA,OAAAA,GAAAA,CAAC,CAAExO,IAAJ,KAAC,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAASqB,kBAAV,CAAX,EAA0C;AAAA,MAAA,IAAA,YAAA,CAAA;;AACxCkG,MAAAA,GAAG,CAAC,IAAA,CAAK4G,cAAL,CAAoBnO,IAArB,EAA2B,mCAA3B,EAAgE,EAAA,CAAA,YAAA,GAAC,KAAKiO,MAAN,KAAA,IAAA,IAAC,YAAaY,CAAAA,YAAd,CAAhE,CAAH,CAAA;AACAtH,MAAAA,GAAG,CAAC,IAAA,CAAK4G,cAAL,CAAoBnO,IAArB,EAA2B,mCAA3B,EAAgE,IAAhE,CAAH,CAAA;AACAuH,MAAAA,GAAG,CAAC,IAAA,CAAK4G,cAAL,CAAoBnO,IAArB,EAA2B,mCAA3B,EAAgE,IAAhE,CAAH,CAAA;AACD,KAAA;;AAED,IAAA,IAAA,CAAKuO,OAAL,EAAA,CAAA;AACD,GAAA;;AAEDrF,EAAAA,cAAc,CAACrO,KAAD,EAAQ;AACpB,IAAKoT,IAAAA,CAAAA,MAAL,GAAcpT,KAAd,CAAA;AACAwE,IAAAA,GAAG,CAAC,oBAAD,EAAuB,IAAA,CAAK4O,MAA5B,CAAH,CAAA;;AACA,IAAA,IAAA,CAAKM,OAAL,EAAA,CAAA;;AACA,IAAA,IAAA,CAAKO,aAAL,CAAmB,IAAIC,iBAAJ,CAAsB,IAAA,CAAKd,MAA3B,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDnD,EAAAA,sBAAsB,CAACyB,MAAD,EAAS;AAC7B,IAAK4B,IAAAA,CAAAA,cAAL,GAAsB5B,MAAtB,CAAA;;AACA,IAAA,IAAA,CAAKgC,OAAL,EAAA,CAAA;AACD,GAAA;AAED;AACF;AACA;AACA;;;AACES,EAAAA,WAAW,CAACC,OAAD,EAAU;AACnB,IAAA,IAAA,CAAKH,aAAL,CAAmB,IAAII,gBAAJ,CAAqBD,OAArB,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDE,EAAAA,aAAa,CAACC,GAAD,EAAMC,IAAN,EAAY;AACvB,IAAKP,IAAAA,CAAAA,aAAL,CAAmB,IAAIQ,gBAAJ,CAAqBF,GAArB,EAA0BC,IAA1B,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDE,EAAAA,WAAW,CAACN,OAAD,EAAU;AACnB,IAAA,IAAA,CAAKH,aAAL,CAAmB,IAAIU,gBAAJ,CAAqBP,OAArB,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDQ,EAAAA,aAAa,CAACL,GAAD,EAAMC,IAAN,EAAY;AACvB,IAAKP,IAAAA,CAAAA,aAAL,CAAmB,IAAIY,gBAAJ,CAAqBN,GAArB,EAA0BC,IAA1B,CAAnB,CAAA,CAAA;AACD,GAAA;;AAEDd,EAAAA,OAAO,GAAG;AACR,IAAI,IAAA,IAAA,CAAKN,MAAT,EAAiB;AACf,MAAA,MAAM0B,EAAE,gBAAG/S,cAAK,CAACgT,aAAN,CAAoB/G,WAApB,EAA+B;AACxCK,QAAAA,cAAc,EAAE,IAAKA,CAAAA,cAAL,CAAoB2G,IAApB,CAAyB,IAAzB,CADwB;AAExC/E,QAAAA,sBAAsB,EAAE,IAAKA,CAAAA,sBAAL,CAA4B+E,IAA5B,CAAiC,IAAjC,CAFgB;AAGxChV,QAAAA,KAAK,EAAE,IAAA,CAAKoT,MAH4B;AAIxCnT,QAAAA,aAAa,EAAE,IAAA,CAAKqT,cAJoB;AAKxCnN,QAAAA,YAAY,EAAE;AACZ0C,UAAAA,GAAG,EAAE,IAAKsL,CAAAA,WAAL,CAAiBa,IAAjB,CAAsB,IAAtB,CADO;AAEZlM,UAAAA,MAAM,EAAE,IAAA,CAAKwL,aAAL,CAAmBU,IAAnB,CAAwB,IAAxB,CAAA;AAFI,SAL0B;AASxClO,QAAAA,kBAAkB,EAAE;AAClB+B,UAAAA,GAAG,EAAE,IAAK6L,CAAAA,WAAL,CAAiBM,IAAjB,CAAsB,IAAtB,CADa;AAElBlM,UAAAA,MAAM,EAAE,IAAA,CAAK8L,aAAL,CAAmBI,IAAnB,CAAwB,IAAxB,CAAA;AAFU,SAAA;AAToB,OAA/B,CAAX,CAAA;AAcAC,MAAAA,QAAQ,CAACvS,MAAT,CAAgBoS,EAAhB,EAAoB,IAApB,CAAA,CAAA;AACD,KAAA;AACF,GAAA;;AA3IqD,CAAA;;AAAnCpC,eACZW,qBAAqB,CAACrT,KAAK,GAAG,EAAT,KAAA,QAAA,CAAA,EAAA,EACvBuT,aAAa,CAACvT,KADS,EAEvBA,KAFuB;;;;"}