UNPKG

merchi_product_form

Version:
87 lines (86 loc) 14.7 kB
'use client'; function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _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); } function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } function _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; } import * as React from 'react'; import { useController } from 'react-hook-form'; import VariationFieldOptionDefaultInputs from './VariationFieldOptionDefaultInputs'; import { variationFieldOptionCostDetail } from './utils'; import { useMerchiFormContext } from '../context/MerchiProductFormProvider'; import { jsx as _jsx } from "react/jsx-runtime"; import { jsxs as _jsxs } from "react/jsx-runtime"; function VariationCheckBoxOrRadioOption(_ref) { var disabled = _ref.disabled, index = _ref.index, inputType = _ref.inputType, _ref$isAvailable = _ref.isAvailable, isAvailable = _ref$isAvailable === void 0 ? true : _ref$isAvailable, name = _ref.name, option = _ref.option, variation = _ref.variation; var _useMerchiFormContext = useMerchiFormContext(), classNameOptionContainer = _useMerchiFormContext.classNameOptionContainer, classNameOptionInput = _useMerchiFormContext.classNameOptionInput, classNameOptionLabel = _useMerchiFormContext.classNameOptionLabel, classNameOptionSuper = _useMerchiFormContext.classNameOptionSuper, getQuote = _useMerchiFormContext.getQuote, control = _useMerchiFormContext.control; var _useController = useController({ name: "".concat(name, ".value"), control: control }), field = _useController.field; var variationField = variation.variationField; var sellerProductEditable = variationField.sellerProductEditable; var id = option.id, value = option.value; var optionCost = variationFieldOptionCostDetail(option); var outOfStock = !isAvailable ? ' - insufficient stock' : ''; var outOfStockOrCost = outOfStock || optionCost; var activeIds = (field.value || '').split(','); var isActive = activeIds.includes(String(id)); var handleChange = function handleChange(e) { var updatedIds = _toConsumableArray(activeIds); if (sellerProductEditable || inputType === 'checkbox') { // Checkbox Logic if (e.target.checked && !updatedIds.includes(String(id))) { updatedIds.push(String(id)); } else if (!e.target.checked) { updatedIds = updatedIds.filter(function (existingId) { return existingId !== String(id); }); } } else if (inputType === 'radio') { // Radio Logic updatedIds = [String(id)]; } field.onChange(updatedIds.join(',')); getQuote(); }; return /*#__PURE__*/_jsxs("div", { className: classNameOptionContainer, children: [/*#__PURE__*/_jsx(VariationFieldOptionDefaultInputs, { option: option, optionName: "".concat(name, ".variationField.options[").concat(index, "]") }), /*#__PURE__*/_jsx("input", { className: classNameOptionInput, checked: isActive, type: sellerProductEditable ? 'checkbox' : inputType, disabled: disabled || !isAvailable, value: id, name: "".concat(name, ".value"), onChange: handleChange }), /*#__PURE__*/_jsx("label", { className: classNameOptionLabel, children: value }), outOfStockOrCost && /*#__PURE__*/_jsxs("span", { className: classNameOptionSuper, children: [outOfStock, " ", optionCost] })] }); } export default VariationCheckBoxOrRadioOption; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdG9Db25zdW1hYmxlQXJyYXkiLCJhcnIiLCJfYXJyYXlXaXRob3V0SG9sZXMiLCJfaXRlcmFibGVUb0FycmF5IiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwiX25vbkl0ZXJhYmxlU3ByZWFkIiwiVHlwZUVycm9yIiwibyIsIm1pbkxlbiIsIl9hcnJheUxpa2VUb0FycmF5IiwibiIsIk9iamVjdCIsInByb3RvdHlwZSIsInRvU3RyaW5nIiwiY2FsbCIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiQXJyYXkiLCJmcm9tIiwidGVzdCIsIml0ZXIiLCJTeW1ib2wiLCJpdGVyYXRvciIsImlzQXJyYXkiLCJsZW4iLCJsZW5ndGgiLCJpIiwiYXJyMiIsIlJlYWN0IiwidXNlQ29udHJvbGxlciIsIlZhcmlhdGlvbkZpZWxkT3B0aW9uRGVmYXVsdElucHV0cyIsInZhcmlhdGlvbkZpZWxkT3B0aW9uQ29zdERldGFpbCIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIlZhcmlhdGlvbkNoZWNrQm94T3JSYWRpb09wdGlvbiIsIl9yZWYiLCJkaXNhYmxlZCIsImluZGV4IiwiaW5wdXRUeXBlIiwiX3JlZiRpc0F2YWlsYWJsZSIsImlzQXZhaWxhYmxlIiwib3B0aW9uIiwidmFyaWF0aW9uIiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0IiwiY2xhc3NOYW1lT3B0aW9uQ29udGFpbmVyIiwiY2xhc3NOYW1lT3B0aW9uSW5wdXQiLCJjbGFzc05hbWVPcHRpb25MYWJlbCIsImNsYXNzTmFtZU9wdGlvblN1cGVyIiwiZ2V0UXVvdGUiLCJjb250cm9sIiwiX3VzZUNvbnRyb2xsZXIiLCJjb25jYXQiLCJmaWVsZCIsInZhcmlhdGlvbkZpZWxkIiwic2VsbGVyUHJvZHVjdEVkaXRhYmxlIiwiaWQiLCJ2YWx1ZSIsIm9wdGlvbkNvc3QiLCJvdXRPZlN0b2NrIiwib3V0T2ZTdG9ja09yQ29zdCIsImFjdGl2ZUlkcyIsInNwbGl0IiwiaXNBY3RpdmUiLCJpbmNsdWRlcyIsIlN0cmluZyIsImhhbmRsZUNoYW5nZSIsImUiLCJ1cGRhdGVkSWRzIiwidGFyZ2V0IiwiY2hlY2tlZCIsInB1c2giLCJmaWx0ZXIiLCJleGlzdGluZ0lkIiwib25DaGFuZ2UiLCJqb2luIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJvcHRpb25OYW1lIiwidHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL1ZhcmlhdGlvbkNoZWNrQm94T3JSYWRpb09wdGlvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlQ29udHJvbGxlciB9IGZyb20gJ3JlYWN0LWhvb2stZm9ybSc7XG5pbXBvcnQgVmFyaWF0aW9uRmllbGRPcHRpb25EZWZhdWx0SW5wdXRzIGZyb20gJy4vVmFyaWF0aW9uRmllbGRPcHRpb25EZWZhdWx0SW5wdXRzJztcbmltcG9ydCB7IHZhcmlhdGlvbkZpZWxkT3B0aW9uQ29zdERldGFpbCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlTWVyY2hpRm9ybUNvbnRleHQgfSBmcm9tICcuLi9jb250ZXh0L01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXInO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGluZGV4OiBudW1iZXI7XG4gIGlucHV0VHlwZT86IHN0cmluZztcbiAgaXNBdmFpbGFibGU6IGJvb2xlYW47XG4gIG5hbWU6IHN0cmluZztcbiAgb3B0aW9uOiBhbnk7XG4gIHZhcmlhdGlvbjogYW55O1xufVxuXG5mdW5jdGlvbiBWYXJpYXRpb25DaGVja0JveE9yUmFkaW9PcHRpb24oe1xuICBkaXNhYmxlZCxcbiAgaW5kZXgsXG4gIGlucHV0VHlwZSxcbiAgaXNBdmFpbGFibGUgPSB0cnVlLFxuICBuYW1lLFxuICBvcHRpb24sXG4gIHZhcmlhdGlvbixcbn06IFByb3BzKSB7XG4gIGNvbnN0IHtcbiAgICBjbGFzc05hbWVPcHRpb25Db250YWluZXIsXG4gICAgY2xhc3NOYW1lT3B0aW9uSW5wdXQsXG4gICAgY2xhc3NOYW1lT3B0aW9uTGFiZWwsXG4gICAgY2xhc3NOYW1lT3B0aW9uU3VwZXIsXG4gICAgZ2V0UXVvdGUsXG4gICAgY29udHJvbCwgLy8gTmV3bHkgYWRkZWQgZnJvbSB0aGUgY29udGV4dFxuICB9ID0gdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcbiAgY29uc3QgeyBmaWVsZCB9ID0gdXNlQ29udHJvbGxlcih7XG4gICAgbmFtZTogYCR7bmFtZX0udmFsdWVgLFxuICAgIGNvbnRyb2wsXG4gIH0pO1xuICBjb25zdCB7IHZhcmlhdGlvbkZpZWxkIH0gPSB2YXJpYXRpb247XG4gIGNvbnN0IHsgc2VsbGVyUHJvZHVjdEVkaXRhYmxlIH0gPSB2YXJpYXRpb25GaWVsZDtcbiAgY29uc3QgeyBpZCwgdmFsdWUgfSA9IG9wdGlvbjtcbiAgY29uc3Qgb3B0aW9uQ29zdCA9IHZhcmlhdGlvbkZpZWxkT3B0aW9uQ29zdERldGFpbChvcHRpb24pO1xuICBjb25zdCBvdXRPZlN0b2NrID0gIWlzQXZhaWxhYmxlID8gJyAtIGluc3VmZmljaWVudCBzdG9jaycgOiAnJztcbiAgY29uc3Qgb3V0T2ZTdG9ja09yQ29zdCA9IG91dE9mU3RvY2sgfHwgb3B0aW9uQ29zdDtcbiAgY29uc3QgYWN0aXZlSWRzID0gKGZpZWxkLnZhbHVlIHx8ICcnKS5zcGxpdCgnLCcpO1xuICBjb25zdCBpc0FjdGl2ZSA9IGFjdGl2ZUlkcy5pbmNsdWRlcyhTdHJpbmcoaWQpKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICBsZXQgdXBkYXRlZElkcyA9IFsuLi5hY3RpdmVJZHNdO1xuXG4gICAgaWYgKHNlbGxlclByb2R1Y3RFZGl0YWJsZSB8fCBpbnB1dFR5cGUgPT09ICdjaGVja2JveCcpIHtcbiAgICAgIC8vIENoZWNrYm94IExvZ2ljXG4gICAgICBpZiAoZS50YXJnZXQuY2hlY2tlZCAmJiAhdXBkYXRlZElkcy5pbmNsdWRlcyhTdHJpbmcoaWQpKSkge1xuICAgICAgICB1cGRhdGVkSWRzLnB1c2goU3RyaW5nKGlkKSk7XG4gICAgICB9IGVsc2UgaWYgKCFlLnRhcmdldC5jaGVja2VkKSB7XG4gICAgICAgIHVwZGF0ZWRJZHMgPSB1cGRhdGVkSWRzLmZpbHRlcihcbiAgICAgICAgICAoZXhpc3RpbmdJZCkgPT4gZXhpc3RpbmdJZCAhPT0gU3RyaW5nKGlkKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaW5wdXRUeXBlID09PSAncmFkaW8nKSB7XG4gICAgICAvLyBSYWRpbyBMb2dpY1xuICAgICAgdXBkYXRlZElkcyA9IFtTdHJpbmcoaWQpXTtcbiAgICB9XG5cbiAgICBmaWVsZC5vbkNoYW5nZSh1cGRhdGVkSWRzLmpvaW4oJywnKSk7XG5cbiAgICBnZXRRdW90ZSgpO1xuICB9O1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVPcHRpb25Db250YWluZXJ9PlxuICAgICAgPFZhcmlhdGlvbkZpZWxkT3B0aW9uRGVmYXVsdElucHV0c1xuICAgICAgICBvcHRpb249e29wdGlvbn1cbiAgICAgICAgb3B0aW9uTmFtZT17YCR7bmFtZX0udmFyaWF0aW9uRmllbGQub3B0aW9uc1ske2luZGV4fV1gfVxuICAgICAgLz5cbiAgICAgIDxpbnB1dFxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZU9wdGlvbklucHV0fVxuICAgICAgICBjaGVja2VkPXtpc0FjdGl2ZX1cbiAgICAgICAgdHlwZT17c2VsbGVyUHJvZHVjdEVkaXRhYmxlID8gJ2NoZWNrYm94JyA6IGlucHV0VHlwZX1cbiAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkIHx8ICFpc0F2YWlsYWJsZX1cbiAgICAgICAgdmFsdWU9e2lkfVxuICAgICAgICBuYW1lPXtgJHtuYW1lfS52YWx1ZWB9XG4gICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAvPlxuICAgICAgPGxhYmVsIGNsYXNzTmFtZT17Y2xhc3NOYW1lT3B0aW9uTGFiZWx9Pnt2YWx1ZX08L2xhYmVsPlxuICAgICAge291dE9mU3RvY2tPckNvc3QgJiYgKFxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2NsYXNzTmFtZU9wdGlvblN1cGVyfT5cbiAgICAgICAgICB7b3V0T2ZTdG9ja30ge29wdGlvbkNvc3R9XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFZhcmlhdGlvbkNoZWNrQm94T3JSYWRpb09wdGlvbjtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7QUFBQyxTQUFBQSxtQkFBQUMsR0FBQSxXQUFBQyxrQkFBQSxDQUFBRCxHQUFBLEtBQUFFLGdCQUFBLENBQUFGLEdBQUEsS0FBQUcsMkJBQUEsQ0FBQUgsR0FBQSxLQUFBSSxrQkFBQTtBQUFBLFNBQUFBLG1CQUFBLGNBQUFDLFNBQUE7QUFBQSxTQUFBRiw0QkFBQUcsQ0FBQSxFQUFBQyxNQUFBLFNBQUFELENBQUEscUJBQUFBLENBQUEsc0JBQUFFLGlCQUFBLENBQUFGLENBQUEsRUFBQUMsTUFBQSxPQUFBRSxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsU0FBQSxDQUFBQyxRQUFBLENBQUFDLElBQUEsQ0FBQVAsQ0FBQSxFQUFBUSxLQUFBLGFBQUFMLENBQUEsaUJBQUFILENBQUEsQ0FBQVMsV0FBQSxFQUFBTixDQUFBLEdBQUFILENBQUEsQ0FBQVMsV0FBQSxDQUFBQyxJQUFBLE1BQUFQLENBQUEsY0FBQUEsQ0FBQSxtQkFBQVEsS0FBQSxDQUFBQyxJQUFBLENBQUFaLENBQUEsT0FBQUcsQ0FBQSwrREFBQVUsSUFBQSxDQUFBVixDQUFBLFVBQUFELGlCQUFBLENBQUFGLENBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFMLGlCQUFBa0IsSUFBQSxlQUFBQyxNQUFBLG9CQUFBRCxJQUFBLENBQUFDLE1BQUEsQ0FBQUMsUUFBQSxhQUFBRixJQUFBLCtCQUFBSCxLQUFBLENBQUFDLElBQUEsQ0FBQUUsSUFBQTtBQUFBLFNBQUFuQixtQkFBQUQsR0FBQSxRQUFBaUIsS0FBQSxDQUFBTSxPQUFBLENBQUF2QixHQUFBLFVBQUFRLGlCQUFBLENBQUFSLEdBQUE7QUFBQSxTQUFBUSxrQkFBQVIsR0FBQSxFQUFBd0IsR0FBQSxRQUFBQSxHQUFBLFlBQUFBLEdBQUEsR0FBQXhCLEdBQUEsQ0FBQXlCLE1BQUEsRUFBQUQsR0FBQSxHQUFBeEIsR0FBQSxDQUFBeUIsTUFBQSxXQUFBQyxDQUFBLE1BQUFDLElBQUEsT0FBQVYsS0FBQSxDQUFBTyxHQUFBLEdBQUFFLENBQUEsR0FBQUYsR0FBQSxFQUFBRSxDQUFBLElBQUFDLElBQUEsQ0FBQUQsQ0FBQSxJQUFBMUIsR0FBQSxDQUFBMEIsQ0FBQSxVQUFBQyxJQUFBO0FBQ2IsT0FBTyxLQUFLQyxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxhQUFhLFFBQVEsaUJBQWlCO0FBQy9DLE9BQU9DLGlDQUFpQyxNQUFNLHFDQUFxQztBQUNuRixTQUFTQyw4QkFBOEIsUUFBUSxTQUFTO0FBQ3hELFNBQVNDLG9CQUFvQixRQUFRLHNDQUFzQztBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUFBLFNBQUFDLElBQUEsSUFBQUMsS0FBQTtBQVk1RSxTQUFTQyw4QkFBOEJBLENBQUFDLElBQUEsRUFRN0I7RUFBQSxJQVBSQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtJQUNSQyxLQUFLLEdBQUFGLElBQUEsQ0FBTEUsS0FBSztJQUNMQyxTQUFTLEdBQUFILElBQUEsQ0FBVEcsU0FBUztJQUFBQyxnQkFBQSxHQUFBSixJQUFBLENBQ1RLLFdBQVc7SUFBWEEsV0FBVyxHQUFBRCxnQkFBQSxjQUFHLElBQUksR0FBQUEsZ0JBQUE7SUFDbEIxQixJQUFJLEdBQUFzQixJQUFBLENBQUp0QixJQUFJO0lBQ0o0QixNQUFNLEdBQUFOLElBQUEsQ0FBTk0sTUFBTTtJQUNOQyxTQUFTLEdBQUFQLElBQUEsQ0FBVE8sU0FBUztFQUVULElBQUFDLHFCQUFBLEdBT0lkLG9CQUFvQixDQUFDLENBQUM7SUFOeEJlLHdCQUF3QixHQUFBRCxxQkFBQSxDQUF4QkMsd0JBQXdCO0lBQ3hCQyxvQkFBb0IsR0FBQUYscUJBQUEsQ0FBcEJFLG9CQUFvQjtJQUNwQkMsb0JBQW9CLEdBQUFILHFCQUFBLENBQXBCRyxvQkFBb0I7SUFDcEJDLG9CQUFvQixHQUFBSixxQkFBQSxDQUFwQkksb0JBQW9CO0lBQ3BCQyxRQUFRLEdBQUFMLHFCQUFBLENBQVJLLFFBQVE7SUFDUkMsT0FBTyxHQUFBTixxQkFBQSxDQUFQTSxPQUFPO0VBRVQsSUFBQUMsY0FBQSxHQUFrQnhCLGFBQWEsQ0FBQztNQUM5QmIsSUFBSSxLQUFBc0MsTUFBQSxDQUFLdEMsSUFBSSxXQUFRO01BQ3JCb0MsT0FBTyxFQUFQQTtJQUNGLENBQUMsQ0FBQztJQUhNRyxLQUFLLEdBQUFGLGNBQUEsQ0FBTEUsS0FBSztFQUliLElBQVFDLGNBQWMsR0FBS1gsU0FBUyxDQUE1QlcsY0FBYztFQUN0QixJQUFRQyxxQkFBcUIsR0FBS0QsY0FBYyxDQUF4Q0MscUJBQXFCO0VBQzdCLElBQVFDLEVBQUUsR0FBWWQsTUFBTSxDQUFwQmMsRUFBRTtJQUFFQyxLQUFLLEdBQUtmLE1BQU0sQ0FBaEJlLEtBQUs7RUFDakIsSUFBTUMsVUFBVSxHQUFHN0IsOEJBQThCLENBQUNhLE1BQU0sQ0FBQztFQUN6RCxJQUFNaUIsVUFBVSxHQUFHLENBQUNsQixXQUFXLEdBQUcsdUJBQXVCLEdBQUcsRUFBRTtFQUM5RCxJQUFNbUIsZ0JBQWdCLEdBQUdELFVBQVUsSUFBSUQsVUFBVTtFQUNqRCxJQUFNRyxTQUFTLEdBQUcsQ0FBQ1IsS0FBSyxDQUFDSSxLQUFLLElBQUksRUFBRSxFQUFFSyxLQUFLLENBQUMsR0FBRyxDQUFDO0VBQ2hELElBQU1DLFFBQVEsR0FBR0YsU0FBUyxDQUFDRyxRQUFRLENBQUNDLE1BQU0sQ0FBQ1QsRUFBRSxDQUFDLENBQUM7RUFFL0MsSUFBTVUsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUlDLENBQXNDLEVBQUs7SUFDL0QsSUFBSUMsVUFBVSxHQUFBdkUsa0JBQUEsQ0FBT2dFLFNBQVMsQ0FBQztJQUUvQixJQUFJTixxQkFBcUIsSUFBSWhCLFNBQVMsS0FBSyxVQUFVLEVBQUU7TUFDckQ7TUFDQSxJQUFJNEIsQ0FBQyxDQUFDRSxNQUFNLENBQUNDLE9BQU8sSUFBSSxDQUFDRixVQUFVLENBQUNKLFFBQVEsQ0FBQ0MsTUFBTSxDQUFDVCxFQUFFLENBQUMsQ0FBQyxFQUFFO1FBQ3hEWSxVQUFVLENBQUNHLElBQUksQ0FBQ04sTUFBTSxDQUFDVCxFQUFFLENBQUMsQ0FBQztNQUM3QixDQUFDLE1BQU0sSUFBSSxDQUFDVyxDQUFDLENBQUNFLE1BQU0sQ0FBQ0MsT0FBTyxFQUFFO1FBQzVCRixVQUFVLEdBQUdBLFVBQVUsQ0FBQ0ksTUFBTSxDQUM1QixVQUFDQyxVQUFVO1VBQUEsT0FBS0EsVUFBVSxLQUFLUixNQUFNLENBQUNULEVBQUUsQ0FBQztRQUFBLENBQzNDLENBQUM7TUFDSDtJQUNGLENBQUMsTUFBTSxJQUFJakIsU0FBUyxLQUFLLE9BQU8sRUFBRTtNQUNoQztNQUNBNkIsVUFBVSxHQUFHLENBQUNILE1BQU0sQ0FBQ1QsRUFBRSxDQUFDLENBQUM7SUFDM0I7SUFFQUgsS0FBSyxDQUFDcUIsUUFBUSxDQUFDTixVQUFVLENBQUNPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVwQzFCLFFBQVEsQ0FBQyxDQUFDO0VBQ1osQ0FBQztFQUNELG9CQUNFZixLQUFBO0lBQUswQyxTQUFTLEVBQUUvQix3QkFBeUI7SUFBQWdDLFFBQUEsZ0JBQ3ZDN0MsSUFBQSxDQUFDSixpQ0FBaUM7TUFDaENjLE1BQU0sRUFBRUEsTUFBTztNQUNmb0MsVUFBVSxLQUFBMUIsTUFBQSxDQUFLdEMsSUFBSSw4QkFBQXNDLE1BQUEsQ0FBMkJkLEtBQUs7SUFBSSxDQUN4RCxDQUFDLGVBQ0ZOLElBQUE7TUFDRTRDLFNBQVMsRUFBRTlCLG9CQUFxQjtNQUNoQ3dCLE9BQU8sRUFBRVAsUUFBUztNQUNsQmdCLElBQUksRUFBRXhCLHFCQUFxQixHQUFHLFVBQVUsR0FBR2hCLFNBQVU7TUFDckRGLFFBQVEsRUFBRUEsUUFBUSxJQUFJLENBQUNJLFdBQVk7TUFDbkNnQixLQUFLLEVBQUVELEVBQUc7TUFDVjFDLElBQUksS0FBQXNDLE1BQUEsQ0FBS3RDLElBQUksV0FBUztNQUN0QjRELFFBQVEsRUFBRVI7SUFBYSxDQUN4QixDQUFDLGVBQ0ZsQyxJQUFBO01BQU80QyxTQUFTLEVBQUU3QixvQkFBcUI7TUFBQThCLFFBQUEsRUFBRXBCO0lBQUssQ0FBUSxDQUFDLEVBQ3RERyxnQkFBZ0IsaUJBQ2YxQixLQUFBO01BQU0wQyxTQUFTLEVBQUU1QixvQkFBcUI7TUFBQTZCLFFBQUEsR0FDbkNsQixVQUFVLEVBQUMsR0FBQyxFQUFDRCxVQUFVO0lBQUEsQ0FDcEIsQ0FDUDtFQUFBLENBQ0UsQ0FBQztBQUVWO0FBRUEsZUFBZXZCLDhCQUE4QiJ9