UNPKG

react-live-chat-loader

Version:

Implement live chat in your react app without taking a performance hit.

128 lines (127 loc) 23 kB
"use strict"; function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _useChat3 = _interopRequireDefault(require("../../hooks/useChat")); var _types = require("../../types"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); } function _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."); } function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } function _arrayWithHoles(r) { if (Array.isArray(r)) return r; } var styles = { wrapper: { position: 'fixed', // z-index is 1 more than Front's actual launcher as when the real widget loads zIndex: 100000000, bottom: '20px', right: '20px', border: 'none', outline: 'none', width: '64px', height: '64px' }, button: { maxWidth: '64px', width: '64px', maxHeight: '64px', height: '64px', borderRadius: '64px', cursor: 'pointer', border: 'none' }, iconWrapper: { position: 'relative', width: '100%', height: '100%' }, icon: { position: 'absolute', top: '50%', marginTop: '-21px', left: '50%', marginLeft: '-22px' } }; var Front = function Front(_ref) { var _ref$color = _ref.color, color = _ref$color === void 0 ? '#5151E1' : _ref$color, _ref$containerClass = _ref.containerClass, containerClass = _ref$containerClass === void 0 ? _types.ClassNames.container : _ref$containerClass; var _useChat = (0, _useChat3.default)({ loadWhenIdle: true }), _useChat2 = _slicedToArray(_useChat, 2), state = _useChat2[0], loadChat = _useChat2[1]; if (state === 'complete') { return null; } return /*#__PURE__*/_react.default.createElement("div", { style: _objectSpread({}, styles.wrapper), className: containerClass }, /*#__PURE__*/_react.default.createElement("button", { onClick: function onClick() { return loadChat({ open: true }); }, onMouseEnter: function onMouseEnter() { return loadChat({ open: false }); }, style: _objectSpread(_objectSpread({}, styles.button), {}, { backgroundColor: color }) }, /*#__PURE__*/_react.default.createElement("div", { style: _objectSpread({}, styles.iconWrapper) }, /*#__PURE__*/_react.default.createElement("svg", { width: "40", height: "40", role: "button", style: _objectSpread({}, styles.icon) }, /*#__PURE__*/_react.default.createElement("title", null, "Launch Front Chat"), /*#__PURE__*/_react.default.createElement("defs", null, /*#__PURE__*/_react.default.createElement("filter", { id: "chat-logo-a", "data-testid": "chat-logo-shadow", width: "127.8%", height: "127.8%", x: "-13.9%", y: "-11.1%", filterUnits: "objectBoundingBox" }, /*#__PURE__*/_react.default.createElement("feOffset", { dy: "1", in: "SourceAlpha", result: "shadowOffsetOuter1" }), /*#__PURE__*/_react.default.createElement("feGaussianBlur", { in: "shadowOffsetOuter1", result: "shadowBlurOuter1", stdDeviation: "1.5" }), /*#__PURE__*/_react.default.createElement("feColorMatrix", { in: "shadowBlurOuter1", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" }))), /*#__PURE__*/_react.default.createElement("g", { fill: "none", transform: "translate(-11 -12)" }, /*#__PURE__*/_react.default.createElement("use", { "data-testid": "chat-logo-svg-shadow", fill: "#000", filter: "url(#chat-logo-a)", href: "#chat-logo-b" }), /*#__PURE__*/_react.default.createElement("path", { fill: "#FFF", d: "M32,18 C24.2680135,18 18,24.2680135 18,32 C18,39.7319865 24.2680135,46 32,46 L45.6,46 C45.8209139,46 46,45.8209139 46,45.6 L46,32 C46,24.2680135 39.7319865,18 32,18 Z M32,14 C41.9411255,14 50,22.0588745 50,32 L50,45.6 C50,48.0300529 48.0300529,50 45.6,50 L32,50 C22.0588745,50 14,41.9411255 14,32 C14,22.0588745 22.0588745,14 32,14 Z M25.9634146,31.5853659 L37.9634146,31.5853659 C39.0679841,31.5853659 39.9634146,30.6899354 39.9634146,29.5853659 C39.9634146,28.4807964 39.0679841,27.5853659 37.9634146,27.5853659 L25.9634146,27.5853659 C24.8588451,27.5853659 23.9634146,28.4807964 23.9634146,29.5853659 C23.9634146,30.6899354 24.8588451,31.5853659 25.9634146,31.5853659 Z M31.195122,38.8292683 L37.195122,38.8292683 C38.2996915,38.8292683 39.195122,37.9338378 39.195122,36.8292683 C39.195122,35.7246988 38.2996915,34.8292683 37.195122,34.8292683 L31.195122,34.8292683 C30.0905525,34.8292683 29.195122,35.7246988 29.195122,36.8292683 C29.195122,37.9338378 30.0905525,38.8292683 31.195122,38.8292683 Z" })))))); }; var _default = exports.default = Front; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl91c2VDaGF0MyIsIl90eXBlcyIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIm93bktleXMiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl90b1Byb3BlcnR5S2V5IiwidmFsdWUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJfdHlwZW9mIiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJjYWxsIiwiVHlwZUVycm9yIiwiU3RyaW5nIiwiTnVtYmVyIiwiX3NsaWNlZFRvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwiYSIsIl9hcnJheUxpa2VUb0FycmF5IiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJuIiwibCIsIml0ZXJhdG9yIiwidSIsImYiLCJuZXh0IiwiZG9uZSIsInJldHVybiIsImlzQXJyYXkiLCJzdHlsZXMiLCJ3cmFwcGVyIiwicG9zaXRpb24iLCJ6SW5kZXgiLCJib3R0b20iLCJyaWdodCIsImJvcmRlciIsIm91dGxpbmUiLCJ3aWR0aCIsImhlaWdodCIsImJ1dHRvbiIsIm1heFdpZHRoIiwibWF4SGVpZ2h0IiwiYm9yZGVyUmFkaXVzIiwiY3Vyc29yIiwiaWNvbldyYXBwZXIiLCJpY29uIiwidG9wIiwibWFyZ2luVG9wIiwibGVmdCIsIm1hcmdpbkxlZnQiLCJGcm9udCIsIl9yZWYiLCJfcmVmJGNvbG9yIiwiY29sb3IiLCJfcmVmJGNvbnRhaW5lckNsYXNzIiwiY29udGFpbmVyQ2xhc3MiLCJDbGFzc05hbWVzIiwiY29udGFpbmVyIiwiX3VzZUNoYXQiLCJ1c2VDaGF0IiwibG9hZFdoZW5JZGxlIiwiX3VzZUNoYXQyIiwic3RhdGUiLCJsb2FkQ2hhdCIsImNyZWF0ZUVsZW1lbnQiLCJzdHlsZSIsImNsYXNzTmFtZSIsIm9uQ2xpY2siLCJvcGVuIiwib25Nb3VzZUVudGVyIiwiYmFja2dyb3VuZENvbG9yIiwicm9sZSIsImlkIiwieCIsInkiLCJmaWx0ZXJVbml0cyIsImR5IiwiaW4iLCJyZXN1bHQiLCJzdGREZXZpYXRpb24iLCJ2YWx1ZXMiLCJmaWxsIiwidHJhbnNmb3JtIiwiaHJlZiIsImQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9Gcm9udC9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB1c2VDaGF0IGZyb20gJy4uLy4uL2hvb2tzL3VzZUNoYXQnXG5pbXBvcnQgeyBDbGFzc05hbWVzLCBQcm92aWRlclByb3BzIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmNvbnN0IHN0eWxlczoge1xuICBidXR0b246IENTU1Byb3BlcnRpZXNcbiAgd3JhcHBlcjogQ1NTUHJvcGVydGllc1xuICBpY29uV3JhcHBlcjogQ1NTUHJvcGVydGllc1xuICBpY29uOiBDU1NQcm9wZXJ0aWVzXG59ID0ge1xuICB3cmFwcGVyOiB7XG4gICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgLy8gei1pbmRleCBpcyAxIG1vcmUgdGhhbiBGcm9udCdzIGFjdHVhbCBsYXVuY2hlciBhcyB3aGVuIHRoZSByZWFsIHdpZGdldCBsb2Fkc1xuICAgIHpJbmRleDogMTAwMDAwMDAwLFxuICAgIGJvdHRvbTogJzIwcHgnLFxuICAgIHJpZ2h0OiAnMjBweCcsXG4gICAgYm9yZGVyOiAnbm9uZScsXG4gICAgb3V0bGluZTogJ25vbmUnLFxuICAgIHdpZHRoOiAnNjRweCcsXG4gICAgaGVpZ2h0OiAnNjRweCdcbiAgfSxcbiAgYnV0dG9uOiB7XG4gICAgbWF4V2lkdGg6ICc2NHB4JyxcbiAgICB3aWR0aDogJzY0cHgnLFxuICAgIG1heEhlaWdodDogJzY0cHgnLFxuICAgIGhlaWdodDogJzY0cHgnLFxuICAgIGJvcmRlclJhZGl1czogJzY0cHgnLFxuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgIGJvcmRlcjogJ25vbmUnXG4gIH0sXG4gIGljb25XcmFwcGVyOiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgd2lkdGg6ICcxMDAlJyxcbiAgICBoZWlnaHQ6ICcxMDAlJ1xuICB9LFxuICBpY29uOiB7XG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAnNTAlJyxcbiAgICBtYXJnaW5Ub3A6ICctMjFweCcsXG4gICAgbGVmdDogJzUwJScsXG4gICAgbWFyZ2luTGVmdDogJy0yMnB4J1xuICB9XG59XG5cbmludGVyZmFjZSBQcm9wcyBleHRlbmRzIFByb3ZpZGVyUHJvcHMge1xuICBjb2xvcj86IHN0cmluZ1xufVxuXG5jb25zdCBGcm9udCA9ICh7XG4gIGNvbG9yID0gJyM1MTUxRTEnLFxuICBjb250YWluZXJDbGFzcyA9IENsYXNzTmFtZXMuY29udGFpbmVyXG59OiBQcm9wcykgPT4ge1xuICBjb25zdCBbc3RhdGUsIGxvYWRDaGF0XSA9IHVzZUNoYXQoeyBsb2FkV2hlbklkbGU6IHRydWUgfSlcblxuICBpZiAoc3RhdGUgPT09ICdjb21wbGV0ZScpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHN0eWxlPXt7IC4uLnN0eWxlcy53cmFwcGVyIH19IGNsYXNzTmFtZT17Y29udGFpbmVyQ2xhc3N9PlxuICAgICAgPGJ1dHRvblxuICAgICAgICBvbkNsaWNrPXsoKSA9PiBsb2FkQ2hhdCh7IG9wZW46IHRydWUgfSl9XG4gICAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4gbG9hZENoYXQoeyBvcGVuOiBmYWxzZSB9KX1cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAuLi5zdHlsZXMuYnV0dG9uLFxuICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogY29sb3JcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGRpdiBzdHlsZT17eyAuLi5zdHlsZXMuaWNvbldyYXBwZXIgfX0+XG4gICAgICAgICAgPHN2ZyB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiByb2xlPVwiYnV0dG9uXCIgc3R5bGU9e3sgLi4uc3R5bGVzLmljb24gfX0+XG4gICAgICAgICAgICA8dGl0bGU+TGF1bmNoIEZyb250IENoYXQ8L3RpdGxlPlxuICAgICAgICAgICAgPGRlZnM+XG4gICAgICAgICAgICAgIDxmaWx0ZXJcbiAgICAgICAgICAgICAgICBpZD1cImNoYXQtbG9nby1hXCJcbiAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cImNoYXQtbG9nby1zaGFkb3dcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiMTI3LjglXCJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxMjcuOCVcIlxuICAgICAgICAgICAgICAgIHg9XCItMTMuOSVcIlxuICAgICAgICAgICAgICAgIHk9XCItMTEuMSVcIlxuICAgICAgICAgICAgICAgIGZpbHRlclVuaXRzPVwib2JqZWN0Qm91bmRpbmdCb3hcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGZlT2Zmc2V0XG4gICAgICAgICAgICAgICAgICBkeT1cIjFcIlxuICAgICAgICAgICAgICAgICAgaW49XCJTb3VyY2VBbHBoYVwiXG4gICAgICAgICAgICAgICAgICByZXN1bHQ9XCJzaGFkb3dPZmZzZXRPdXRlcjFcIlxuICAgICAgICAgICAgICAgID48L2ZlT2Zmc2V0PlxuICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1clxuICAgICAgICAgICAgICAgICAgaW49XCJzaGFkb3dPZmZzZXRPdXRlcjFcIlxuICAgICAgICAgICAgICAgICAgcmVzdWx0PVwic2hhZG93Qmx1ck91dGVyMVwiXG4gICAgICAgICAgICAgICAgICBzdGREZXZpYXRpb249XCIxLjVcIlxuICAgICAgICAgICAgICAgID48L2ZlR2F1c3NpYW5CbHVyPlxuICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4XG4gICAgICAgICAgICAgICAgICBpbj1cInNoYWRvd0JsdXJPdXRlcjFcIlxuICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwICAgMCAwIDAgMCAwICAgMCAwIDAgMCAwICAwIDAgMCAwLjEgMFwiXG4gICAgICAgICAgICAgICAgPjwvZmVDb2xvck1hdHJpeD5cbiAgICAgICAgICAgICAgPC9maWx0ZXI+XG4gICAgICAgICAgICA8L2RlZnM+XG4gICAgICAgICAgICA8ZyBmaWxsPVwibm9uZVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtMTEgLTEyKVwiPlxuICAgICAgICAgICAgICA8dXNlXG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjaGF0LWxvZ28tc3ZnLXNoYWRvd1wiXG4gICAgICAgICAgICAgICAgZmlsbD1cIiMwMDBcIlxuICAgICAgICAgICAgICAgIGZpbHRlcj1cInVybCgjY2hhdC1sb2dvLWEpXCJcbiAgICAgICAgICAgICAgICBocmVmPVwiI2NoYXQtbG9nby1iXCJcbiAgICAgICAgICAgICAgPjwvdXNlPlxuICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgIGZpbGw9XCIjRkZGXCJcbiAgICAgICAgICAgICAgICBkPVwiTTMyLDE4IEMyNC4yNjgwMTM1LDE4IDE4LDI0LjI2ODAxMzUgMTgsMzIgQzE4LDM5LjczMTk4NjUgMjQuMjY4MDEzNSw0NiAzMiw0NiBMNDUuNiw0NiBDNDUuODIwOTEzOSw0NiA0Niw0NS44MjA5MTM5IDQ2LDQ1LjYgTDQ2LDMyIEM0NiwyNC4yNjgwMTM1IDM5LjczMTk4NjUsMTggMzIsMTggWiBNMzIsMTQgQzQxLjk0MTEyNTUsMTQgNTAsMjIuMDU4ODc0NSA1MCwzMiBMNTAsNDUuNiBDNTAsNDguMDMwMDUyOSA0OC4wMzAwNTI5LDUwIDQ1LjYsNTAgTDMyLDUwIEMyMi4wNTg4NzQ1LDUwIDE0LDQxLjk0MTEyNTUgMTQsMzIgQzE0LDIyLjA1ODg3NDUgMjIuMDU4ODc0NSwxNCAzMiwxNCBaIE0yNS45NjM0MTQ2LDMxLjU4NTM2NTkgTDM3Ljk2MzQxNDYsMzEuNTg1MzY1OSBDMzkuMDY3OTg0MSwzMS41ODUzNjU5IDM5Ljk2MzQxNDYsMzAuNjg5OTM1NCAzOS45NjM0MTQ2LDI5LjU4NTM2NTkgQzM5Ljk2MzQxNDYsMjguNDgwNzk2NCAzOS4wNjc5ODQxLDI3LjU4NTM2NTkgMzcuOTYzNDE0NiwyNy41ODUzNjU5IEwyNS45NjM0MTQ2LDI3LjU4NTM2NTkgQzI0Ljg1ODg0NTEsMjcuNTg1MzY1OSAyMy45NjM0MTQ2LDI4LjQ4MDc5NjQgMjMuOTYzNDE0NiwyOS41ODUzNjU5IEMyMy45NjM0MTQ2LDMwLjY4OTkzNTQgMjQuODU4ODQ1MSwzMS41ODUzNjU5IDI1Ljk2MzQxNDYsMzEuNTg1MzY1OSBaIE0zMS4xOTUxMjIsMzguODI5MjY4MyBMMzcuMTk1MTIyLDM4LjgyOTI2ODMgQzM4LjI5OTY5MTUsMzguODI5MjY4MyAzOS4xOTUxMjIsMzcuOTMzODM3OCAzOS4xOTUxMjIsMzYuODI5MjY4MyBDMzkuMTk1MTIyLDM1LjcyNDY5ODggMzguMjk5NjkxNSwzNC44MjkyNjgzIDM3LjE5NTEyMiwzNC44MjkyNjgzIEwzMS4xOTUxMjIsMzQuODI5MjY4MyBDMzAuMDkwNTUyNSwzNC44MjkyNjgzIDI5LjE5NTEyMiwzNS43MjQ2OTg4IDI5LjE5NTEyMiwzNi44MjkyNjgzIEMyOS4xOTUxMjIsMzcuOTMzODM3OCAzMC4wOTA1NTI1LDM4LjgyOTI2ODMgMzEuMTk1MTIyLDM4LjgyOTI2ODMgWlwiXG4gICAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgICA8L2c+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIClcbn1cblxuZXhwb3J0IGRlZmF1bHQgRnJvbnRcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFNBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQUF1RCxTQUFBRCx1QkFBQUksQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUFBLFNBQUFHLFFBQUFILENBQUEsRUFBQUksQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBUCxDQUFBLE9BQUFNLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFSLENBQUEsR0FBQUksQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVgsQ0FBQSxFQUFBSSxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBZixDQUFBLGFBQUFJLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRCxPQUFBLENBQUFHLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdBQUFkLENB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