diff --git a/public/css/theme.css b/public/css/theme.css index c0de397..0aa2aa5 100755 --- a/public/css/theme.css +++ b/public/css/theme.css @@ -11783,3 +11783,48 @@ tr.border-bottom td { color: #2d69eb; text-align: end; } + +/*-768px width*/ +@media (max-width: 768px) { + #card table, #card tbody, #card tr, #card td { + display: block !important; + width: 100%; + } + + th { + display: none; + } + + tr { + border-bottom: 1px solid gray !important; + } + tr td { + padding-right: 20% !important; + position: relative; + border-bottom: 1px solid silver !important; + } + tr td img { + width: 80%; + -o-object-fit: cover; + object-fit: cover; + } + tr td:before { + content: attr(data-before); + position: absolute; + right: 0; + top: 0; + bottom: 0; + width: 18%; + background: rgba(0, 0, 0, 0.1333333333); + display: flex; + justify-content: center; + align-items: center; + } + + tr:last-child td { + padding: 3px !important; + } + tr:last-child td:before { + display: none; + } +} diff --git a/public/js/theme.js b/public/js/theme.js index a03c6e5..d1399f2 100755 --- a/public/js/theme.js +++ b/public/js/theme.js @@ -449,7 +449,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _js_ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! x-mega-menu/dist/x-mega-menu.min */ \"./node_modules/x-mega-menu/dist/x-mega-menu.min.js\");\n/* harmony import */ var x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0__);\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\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\n__webpack_require__(/*! hc-offcanvas-nav/dist/hc-offcanvas-nav */ \"./node_modules/hc-offcanvas-nav/dist/hc-offcanvas-nav.js\"); // import xMegaMenu from 'x-mega-menu/src/x-mega-menu';\n\n\n\nvar xMegaMenu = window.xMegaMenu = (x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0___default().xMegaMenu);\n\nfunction CopyToClipboard(containerid) {\n if (window.getSelection) {\n if (window.getSelection().empty) {\n // Chrome\n window.getSelection().empty();\n } else if (window.getSelection().removeAllRanges) {\n // Firefox\n window.getSelection().removeAllRanges();\n }\n } else if (document.selection) {\n // IE?\n document.selection.empty();\n }\n\n if (document.selection) {\n var range = document.body.createTextRange();\n range.moveToElementText(document.getElementById(containerid));\n range.select().createTextRange();\n document.execCommand(\"copy\");\n } else if (window.getSelection) {\n var range = document.createRange();\n range.selectNode(document.getElementById(containerid));\n window.getSelection().addRange(range);\n document.execCommand(\"copy\");\n }\n\n alertify.success('کپی شد');\n}\n\nfunction commafy(num) {\n var str = num.toString().split('.');\n\n if (str[0].length >= 4) {\n str[0] = str[0].replace(/(\\d)(?=(\\d{3})+$)/g, '$1,');\n }\n\n if (str[1] && str[1].length >= 4) {\n str[1] = str[1].replace(/(\\d{3})/g, '$1,');\n }\n\n return str.join('.');\n}\n\nvar qnn, images, sizes;\njQuery(function ($) {\n try {\n xMegaMenu('#mega-menu', {\n responseWidth: 1124,\n isRtl: true,\n mainTitle: appName,\n blurEffect: true,\n disableLinks: false\n });\n } catch (e) {\n console.log(e.message);\n }\n\n try {\n $(\".xzoom, .xzoom-gallery\").xzoom({\n tint: '#333',\n Xoffset: 15\n });\n } catch (e) {}\n\n $(window).on('load', function () {\n setTimeout(function () {\n $('#preloader').slideUp(700); // let max = 150 ;\n // for( const b of $(\".box\")) {\n // if ($(b).height() > max ){\n // max= $(b).height();\n // }\n // }\n // $('.box').height(max);\n // $(\"#favs .box\").removeAttr('style');\n }, 100);\n });\n setTimeout(function () {\n $('#preloader').slideUp(700);\n }, 100);\n setTimeout(function () {\n $('#preloader').slideUp(700);\n }, 10000);\n $(\"#toggle-side\").bind('click', function () {\n $('aside > div').slideToggle(300);\n });\n $('.owl1').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n // autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n item: 5,\n responsive: {\n 0: {\n nav: false,\n items: 2\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n },\n 1300: {\n items: 5,\n nav: false,\n loop: false\n }\n }\n });\n $('#owl2').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n item: 3,\n responsive: {\n 0: {\n nav: false,\n items: 1\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n }\n }\n });\n $('#thumbs').owlCarousel({\n loop: false,\n margin: 4,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n items: 4 // nav: true,\n\n });\n $('#owlx1').owlCarousel({\n loop: true,\n margin: 15,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n responsive: {\n 0: {\n nav: false,\n items: 1\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n },\n 1300: {\n items: 4,\n nav: false,\n loop: false\n }\n }\n });\n $('#owl3').owlCarousel({\n loop: false,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n items: 1\n });\n $('.owl-sq').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n responsive: {\n 0: {\n items: 2,\n nav: false\n },\n 600: {\n items: 2\n },\n 1000: {\n items: 3\n },\n 1300: {\n items: 6\n }\n }\n });\n $(\"#cp-deteail\").bind('click', function () {\n CopyToClipboard('tab-analyze');\n });\n\n var axiosError = function axiosError(err) {\n if (err.response.status == 401) {\n alertify.error('Authenticnation Error'); // window.location.href = '/#/login';\n } else if (err.response.status == 422) {\n // console.log(err.response.data.errors);\n for (var k in err.response.data.errors) {\n var er = err.response.data.errors[k];\n alertify.error(k + ' : ' + er[0]);\n }\n } else {\n alertify.error('Error' + err.response.status + ': ' + err.response.data.message);\n }\n };\n\n $(\"#filtering .btn\").bind('click', function () {\n $(\"#filtering .btn\").removeClass('active');\n $(this).addClass('active');\n var cls = $(this).data('cat');\n\n if (cls == 'all') {\n $(\"#da-thumbs .item\").slideDown(900);\n } else {\n $(\"#da-thumbs .item\").slideUp(600, function () {\n setTimeout(function () {\n $(\"#da-thumbs .item.\" + cls).slideDown(513);\n }, 100);\n });\n }\n });\n $(\".fav\").bind('click', function () {\n var url = $(\"#fav-toggle\").val() + '/' + $(this).data('id');\n var self = this;\n axios.get(url).then(function (e) {\n if (e.data.OK) {\n alertify.success(e.data.msg);\n\n if (e.data.liked) {\n $(self).addClass('liked');\n } else {\n $(self).removeClass('liked');\n }\n } else {\n alertify.error(e.data.msg);\n }\n });\n });\n $(\"#question-send\").bind('click', function () {\n var data = {};\n\n var _iterator = _createForOfIteratorHelper($(\"#question-form\").serializeArray()),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var d = _step.value;\n data[d.name] = d.value;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n axios.post($(this).data('url'), data).then(function (e) {\n if (e.data.OK) {\n alertify.success(e.data.msg);\n $(\".comment-containerx\").text(e.data.msg);\n }\n })[\"catch\"](function (e) {\n axiosError(e);\n });\n });\n $(\".xsumbmiter\").submit(function () {\n $(this).attr('action', $(\"#smt\").val());\n });\n $(\".comment-reply\").click(function () {\n $('#reply').remove();\n var pid = $(this).data('id');\n $(\"#comment-form-body\").append(\"\"));\n $(\"#comment-message\").focus();\n });\n $(\".add-to-card\").click(function (e) {\n e.preventDefault();\n axios.get($(this).attr('href')).then(function (e) {\n $(\"#card-count\").text(e.data.data);\n window.alertify.message(e.data.msg);\n\n if (e.data.data > 0) {\n $(\"#card-info\").fadeIn(400);\n }\n });\n });\n $(\".add-to-card-q\").click(function (e) {\n e.preventDefault();\n axios.get($(this).attr('href') + '/' + $(\"#qn\").val() + '/' + $(\"#single-count\").val()).then(function (e) {\n $(\"#card-count\").text(e.data.data);\n window.alertify.message(e.data.msg);\n\n if (e.data.data > 0) {\n $(\"#card-info\").fadeIn(400);\n }\n });\n });\n $(\"#addon-wrapping\").bind('click', function () {\n var q = $(\"#searching\").val();\n window.location.href = $(\"#searching\").data('url') + '?q=' + q;\n return true;\n });\n $(\"#searching\").bind('keyup', function (e) {\n var q = $(this).val();\n\n if (e.key === 'Enter') {\n window.location.href = $(this).data('url') + '?q=' + q;\n return true;\n }\n\n if (q.length < 3) {\n return 0;\n }\n\n var offset = $(this).offset();\n offset.width = $(this).width() + 85 + 'px';\n offset.left -= 50;\n offset.top += 45;\n $(\"#search-list\").css(offset).slideDown(100);\n var text = '';\n var self = this;\n $(\"#search-list\").html(text + '
');\n axios.get($(this).data('ajax') + '?q=' + q).then(function (e) {\n if (!e.data.OK) {\n window.alertify.error(e.data.err);\n } else {\n text += '';\n $(\"#search-list\").html(text);\n }\n });\n });\n $(\".xzoom-thumbs a\").bind('click.light', function () {\n $(\"#lightbx\").attr('href', $(this).attr('href'));\n });\n\n try {\n if ($('#qnt').length != 0) {\n sizes = {};\n qnt = JSON.parse($('#qnt').val()); // console.log(qnt);\n\n var txt = '';\n\n var _iterator3 = _createForOfIteratorHelper(qnt),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var q = _step3.value;\n\n if (q.count > 0) {\n var t = JSON.parse(q.data);\n\n if (sizes[t.size] == undefined) {\n sizes[t.size] = [];\n txt += \"
\\n \").concat(t.size, \"\\n
 \");\n }\n\n t.id = q.id;\n sizes[t.size].push(t);\n }\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n $(\"#size-pick\").html(txt);\n setTimeout(function () {\n $(\"#size-pick .size:first-child\").click();\n }, 50);\n $(\"#size-pick .size\").bind('click.select', function () {\n $(\"#size-pick .size\").removeClass('active');\n var colorNames = {};\n\n try {\n colorNames = JSON.parse($(\"#colors\").val());\n } catch (_unused) {}\n\n $(this).addClass('active');\n var colors = sizes[$(this).data('id')];\n var txt = '';\n var cl = '';\n\n var _iterator4 = _createForOfIteratorHelper(colors),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var c = _step4.value;\n cl = colorNames[c.color]; // console.log(c.color,colorNames);\n\n txt += \"
\\n
\\n \").concat(cl, \"\\n
\");\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n $(\".color-pick\").html(txt);\n setTimeout(function () {\n $(\".color-pick .color:first-child\").click();\n }, 50);\n $(\".color-pick .color\").bind('click.sel', function () {\n $('.xzoom-thumbs a').eq($(this).data('image')).click();\n $(\".color-pick .color\").removeClass('active');\n $(this).addClass('active');\n $(\"#qn\").val($(this).data('id'));\n $(\"#last-pricex\").text(commafy($(this).data('price')));\n $(\"#counting\").text($(this).data('count'));\n $(\".product-count\").attr('max', $(this).data('count')).val(1);\n });\n });\n }\n } catch (e) {// console.log('size err',e.message);\n } // prticale\n\n\n try {\n var setParticles = function setParticles(num) {\n for (var i = 0; i < num; i++) {\n var prt = document.createElement('div');\n prt.setAttribute('class', 'particles');\n prt.style.left = 100 * Math.random() + \"%\";\n prt.animate([{\n transform: 'translate(-200px, 0) scale(' + Math.random() * 10 + ')'\n }, {\n transform: 'translate(' + Math.random() * 500 + 'px, 112vh) scale(' + Math.random() * 2 + ')',\n background: '#ff00ff',\n boxShadow: '0 0 4px #ff00ff, 0 0 8px #ff00ff',\n opacity: Math.random() * 1.4\n }], {\n duration: Math.random() * 400 + 8000,\n delay: -i * 100,\n iterations: Infinity\n });\n prtcl.appendChild(prt);\n }\n };\n\n var prtcl = document.getElementById('particle');\n setParticles(100);\n } catch (e) {// console.log(e.message);\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9yZXNvdXJjZXMvdGhlbWUvanMvdGhlbWUuanMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUFBLG1CQUFPLENBQUMsd0dBQUQsQ0FBUCxFQUNBOzs7QUFDQTtBQUVBLElBQUlFLFNBQVMsR0FBR0MsTUFBTSxDQUFDRCxTQUFQLEdBQW1CRCxtRkFBbkM7O0FBRUEsU0FBU0csZUFBVCxDQUF5QkMsV0FBekIsRUFBc0M7RUFDbEMsSUFBSUYsTUFBTSxDQUFDRyxZQUFYLEVBQXlCO0lBQ3JCLElBQUlILE1BQU0sQ0FBQ0csWUFBUCxHQUFzQkMsS0FBMUIsRUFBaUM7TUFBRTtNQUMvQkosTUFBTSxDQUFDRyxZQUFQLEdBQXNCQyxLQUF0QjtJQUNILENBRkQsTUFFTyxJQUFJSixNQUFNLENBQUNHLFlBQVAsR0FBc0JFLGVBQTFCLEVBQTJDO01BQUU7TUFDaERMLE1BQU0sQ0FBQ0csWUFBUCxHQUFzQkUsZUFBdEI7SUFDSDtFQUNKLENBTkQsTUFNTyxJQUFJQyxRQUFRLENBQUNDLFNBQWIsRUFBd0I7SUFBRTtJQUM3QkQsUUFBUSxDQUFDQyxTQUFULENBQW1CSCxLQUFuQjtFQUNIOztFQUVELElBQUlFLFFBQVEsQ0FBQ0MsU0FBYixFQUF3QjtJQUNwQixJQUFJQyxLQUFLLEdBQUdGLFFBQVEsQ0FBQ0csSUFBVCxDQUFjQyxlQUFkLEVBQVo7SUFDQUYsS0FBSyxDQUFDRyxpQkFBTixDQUF3QkwsUUFBUSxDQUFDTSxjQUFULENBQXdCVixXQUF4QixDQUF4QjtJQUNBTSxLQUFLLENBQUNLLE1BQU4sR0FBZUgsZUFBZjtJQUNBSixRQUFRLENBQUNRLFdBQVQsQ0FBcUIsTUFBckI7RUFDSCxDQUxELE1BS08sSUFBSWQsTUFBTSxDQUFDRyxZQUFYLEVBQXlCO0lBQzVCLElBQUlLLEtBQUssR0FBR0YsUUFBUSxDQUFDUyxXQUFULEVBQVo7SUFDQVAsS0FBSyxDQUFDUSxVQUFOLENBQWlCVixRQUFRLENBQUNNLGNBQVQsQ0FBd0JWLFdBQXhCLENBQWpCO0lBQ0FGLE1BQU0sQ0FBQ0csWUFBUCxHQUFzQmMsUUFBdEIsQ0FBK0JULEtBQS9CO0lBQ0FGLFFBQVEsQ0FBQ1EsV0FBVCxDQUFxQixNQUFyQjtFQUNIOztFQUVESSxRQUFRLENBQUNDLE9BQVQsQ0FBaUIsUUFBakI7QUFDSDs7QUFFRCxTQUFTQyxPQUFULENBQWlCQyxHQUFqQixFQUFzQjtFQUNsQixJQUFJQyxHQUFHLEdBQUdELEdBQUcsQ0FBQ0UsUUFBSixHQUFlQyxLQUFmLENBQXFCLEdBQXJCLENBQVY7O0VBQ0EsSUFBSUYsR0FBRyxDQUFDLENBQUQsQ0FBSCxDQUFPRyxNQUFQLElBQWlCLENBQXJCLEVBQXdCO0lBRXBCSCxHQUFHLENBQUMsQ0FBRCxDQUFILEdBQVNBLEdBQUcsQ0FBQyxDQUFELENBQUgsQ0FBT0ksT0FBUCxDQUFlLG9CQUFmLEVBQXFDLEtBQXJDLENBQVQ7RUFDSDs7RUFDRCxJQUFJSixHQUFHLENBQUMsQ0FBRCxDQUFILElBQVVBLEdBQUcsQ0FBQyxDQUFELENBQUgsQ0FBT0csTUFBUCxJQUFpQixDQUEvQixFQUFrQztJQUU5QkgsR0FBRyxDQUFDLENBQUQsQ0FBSCxHQUFTQSxHQUFHLENBQUMsQ0FBRCxDQUFILENBQU9JLE9BQVAsQ0FBZSxVQUFmLEVBQTJCLEtBQTNCLENBQVQ7RUFDSDs7RUFDRCxPQUFPSixHQUFHLENBQUNLLElBQUosQ0FBUyxHQUFULENBQVA7QUFDSDs7QUFFRCxJQUFJQyxHQUFKLEVBQVNDLE1BQVQsRUFBaUJDLEtBQWpCO0FBRUFDLE1BQU0sQ0FBQyxVQUFVQyxDQUFWLEVBQWE7RUFFaEIsSUFBSTtJQUNBakMsU0FBUyxDQUFDLFlBQUQsRUFBZTtNQUNwQmtDLGFBQWEsRUFBRSxJQURLO01BRXBCQyxLQUFLLEVBQUUsSUFGYTtNQUdwQkMsU0FBUyxFQUFFQyxPQUhTO01BSXBCQyxVQUFVLEVBQUUsSUFKUTtNQUtwQkMsWUFBWSxFQUFFO0lBTE0sQ0FBZixDQUFUO0VBT0gsQ0FSRCxDQVFFLE9BQU1DLENBQU4sRUFBUztJQUNQQyxPQUFPLENBQUNDLEdBQVIsQ0FBWUYsQ0FBQyxDQUFDRyxPQUFkO0VBQ0g7O0VBR0YsSUFBSTtJQUNBVixDQUFDLENBQUMsd0JBQUQsQ0FBRCxDQUE0QlcsS0FBNUIsQ0FBa0M7TUFBQ0MsSUFBSSxFQUFFLE1BQVA7TUFBZUMsT0FBTyxFQUFFO0lBQXhCLENBQWxDO0VBQ0gsQ0FGRCxDQUVFLE9BQU1OLENBQU4sRUFBUyxDQUNWOztFQUdBUCxDQUFDLENBQUNoQyxNQUFELENBQUQsQ0FBVThDLEVBQVYsQ0FBYSxNQUFiLEVBQXFCLFlBQVk7SUFDN0JDLFVBQVUsQ0FBQyxZQUFZO01BQ25CZixDQUFDLENBQUMsWUFBRCxDQUFELENBQWdCZ0IsT0FBaEIsQ0FBd0IsR0FBeEIsRUFEbUIsQ0FFbkI7TUFDQTtNQUNBO01BQ0E7TUFDQTtNQUNBO01BQ0E7TUFDQTtJQUVILENBWFMsRUFXUCxHQVhPLENBQVY7RUFZSCxDQWJEO0VBY0FELFVBQVUsQ0FBQyxZQUFZO0lBQ25CZixDQUFDLENBQUMsWUFBRCxDQUFELENBQWdCZ0IsT0FBaEIsQ0FBd0IsR0FBeEI7RUFDSCxDQUZTLEVBRVAsR0FGTyxDQUFWO0VBSUFELFVBQVUsQ0FBQyxZQUFZO0lBQ25CZixDQUFDLENBQUMsWUFBRCxDQUFELENBQWdCZ0IsT0FBaEIsQ0FBd0IsR0FBeEI7RUFDSCxDQUZTLEVBRVAsS0FGTyxDQUFWO0VBR0FoQixDQUFDLENBQUMsY0FBRCxDQUFELENBQWtCaUIsSUFBbEIsQ0FBdUIsT0FBdkIsRUFBZ0MsWUFBWTtJQUN4Q2pCLENBQUMsQ0FBQyxhQUFELENBQUQsQ0FBaUJrQixXQUFqQixDQUE2QixHQUE3QjtFQUNILENBRkQ7RUFJQWxCLENBQUMsQ0FBQyxPQUFELENBQUQsQ0FBV21CLFdBQVgsQ0FBdUI7SUFDbkJDLElBQUksRUFBRSxJQURhO0lBRW5CQyxNQUFNLEVBQUUsQ0FGVztJQUduQkMsZUFBZSxFQUFFLElBSEU7SUFJbkI7SUFDQUMsZUFBZSxFQUFFLElBTEU7SUFNbkJDLGtCQUFrQixFQUFFLElBTkQ7SUFPbkJDLElBQUksRUFBRSxDQVBhO0lBUW5CQyxVQUFVLEVBQUU7TUFDUixHQUFHO1FBQ0NDLEdBQUcsRUFBRSxLQUROO1FBRUNDLEtBQUssRUFBRTtNQUZSLENBREs7TUFLUixLQUFLO1FBQ0RBLEtBQUssRUFBRSxDQUROO1FBRURELEdBQUcsRUFBRSxLQUZKO1FBR0RQLElBQUksRUFBRTtNQUhMLENBTEc7TUFVUixNQUFNO1FBQ0ZRLEtBQUssRUFBRSxDQURMO1FBRUZELEdBQUcsRUFBRSxLQUZIO1FBR0ZQLElBQUksRUFBRTtNQUhKLENBVkU7TUFlUixNQUFNO1FBQ0ZRLEtBQUssRUFBRSxDQURMO1FBRUZELEdBQUcsRUFBRSxLQUZIO1FBR0ZQLElBQUksRUFBRTtNQUhKO0lBZkU7RUFSTyxDQUF2QjtFQThCQXBCLENBQUMsQ0FBQyxPQUFELENBQUQsQ0FBV21CLFdBQVgsQ0FBdUI7SUFDbkJDLElBQUksRUFBRSxJQURhO0lBRW5CQyxNQUFNLEVBQUUsQ0FGVztJQUduQkMsZUFBZSxFQUFFLElBSEU7SUFJbkJPLFFBQVEsRUFBRSxJQUpTO0lBS25CTixlQUFlLEVBQUUsSUFMRTtJQU1uQkMsa0JBQWtCLEVBQUUsSUFORDtJQU9uQkMsSUFBSSxFQUFFLENBUGE7SUFRbkJDLFVBQVUsRUFBRTtNQUNSLEdBQUc7UUFDQ0MsR0FBRyxFQUFFLEtBRE47UUFFQ0MsS0FBSyxFQUFFO01BRlIsQ0FESztNQUtSLEtBQUs7UUFDREEsS0FBSyxFQUFFLENBRE47UUFFREQsR0FBRyxFQUFFLEtBRko7UUFHRFAsSUFBSSxFQUFFO01BSEwsQ0FMRztNQVVSLE1BQU07UUFDRlEsS0FBSyxFQUFFLENBREw7UUFFRkQsR0FBRyxFQUFFLEtBRkg7UUFHRlAsSUFBSSxFQUFFO01BSEo7SUFWRTtFQVJPLENBQXZCO0VBMEJBcEIsQ0FBQyxDQUFDLFNBQUQsQ0FBRCxDQUFhbUIsV0FBYixDQUF5QjtJQUNyQkMsSUFBSSxFQUFFLEtBRGU7SUFFckJDLE1BQU0sRUFBRSxDQUZhO0lBR3JCQyxlQUFlLEVBQUUsSUFISTtJQUlyQk8sUUFBUSxFQUFFLElBSlc7SUFLckJOLGVBQWUsRUFBRSxJQUxJO0lBTXJCQyxrQkFBa0IsRUFBRSxJQU5DO0lBT3JCSSxLQUFLLEVBQUUsQ0FQYyxDQVFyQjs7RUFScUIsQ0FBekI7RUFXQTVCLENBQUMsQ0FBQyxRQUFELENBQUQsQ0FBWW1CLFdBQVosQ0FBd0I7SUFDcEJDLElBQUksRUFBRSxJQURjO0lBRXBCQyxNQUFNLEVBQUUsRUFGWTtJQUdwQkMsZUFBZSxFQUFFLElBSEc7SUFJcEJPLFFBQVEsRUFBRSxJQUpVO0lBS3BCTixlQUFlLEVBQUUsSUFMRztJQU1wQkMsa0JBQWtCLEVBQUUsSUFOQTtJQU9wQkUsVUFBVSxFQUFFO01BQ1IsR0FBRztRQUNDQyxHQUFHLEVBQUUsS0FETjtRQUVDQyxLQUFLLEVBQUU7TUFGUixDQURLO01BS1IsS0FBSztRQUNEQSxLQUFLLEVBQUUsQ0FETjtRQUVERCxHQUFHLEVBQUUsS0FGSjtRQUdEUCxJQUFJLEVBQUU7TUFITCxDQUxHO01BVVIsTUFBTTtRQUNGUSxLQUFLLEVBQUUsQ0FETDtRQUVGRCxHQUFHLEVBQUUsS0FGSDtRQUdGUCxJQUFJLEVBQUU7TUFISixDQVZFO01BZVIsTUFBTTtRQUNGUSxLQUFLLEVBQUUsQ0FETDtRQUVGRCxHQUFHLEVBQUUsS0FGSDtRQUdGUCxJQUFJLEVBQUU7TUFISjtJQWZFO0VBUFEsQ0FBeEI7RUE2QkFwQixDQUFDLENBQUMsT0FBRCxDQUFELENBQVdtQixXQUFYLENBQXVCO0lBQ25CQyxJQUFJLEVBQUUsS0FEYTtJQUVuQkMsTUFBTSxFQUFFLENBRlc7SUFHbkJDLGVBQWUsRUFBRSxJQUhFO0lBSW5CTyxRQUFRLEVBQUUsSUFKUztJQUtuQk4sZUFBZSxFQUFFLElBTEU7SUFNbkJDLGtCQUFrQixFQUFFLElBTkQ7SUFPbkJJLEtBQUssRUFBRTtFQVBZLENBQXZCO0VBU0E1QixDQUFDLENBQUMsU0FBRCxDQUFELENBQWFtQixXQUFiLENBQXlCO0lBQ3JCQyxJQUFJLEVBQUUsSUFEZTtJQUVyQkMsTUFBTSxFQUFFLENBRmE7SUFHckJDLGVBQWUsRUFBRSxJQUhJO0lBSXJCTyxRQUFRLEVBQUUsSUFKVztJQUtyQk4sZUFBZSxFQUFFLElBTEk7SUFNckJHLFVBQVUsRUFBRTtNQUNSLEdBQUc7UUFDQ0UsS0FBSyxFQUFFLENBRFI7UUFFQ0QsR0FBRyxFQUFFO01BRk4sQ0FESztNQUtSLEtBQUs7UUFDREMsS0FBSyxFQUFFO01BRE4sQ0FMRztNQVFSLE1BQU07UUFDRkEsS0FBSyxFQUFFO01BREwsQ0FSRTtNQVdSLE1BQU07UUFDRkEsS0FBSyxFQUFFO01BREw7SUFYRTtFQU5TLENBQXpCO0VBdUJBNUIsQ0FBQyxDQUFDLGFBQUQsQ0FBRCxDQUFpQmlCLElBQWpCLENBQXNCLE9BQXRCLEVBQThCLFlBQVk7SUFDdENoRCxlQUFlLENBQUMsYUFBRCxDQUFmO0VBQ0gsQ0FGRDs7RUFHQSxJQUFJNkQsVUFBVSxHQUFHLFNBQWJBLFVBQWEsQ0FBVUMsR0FBVixFQUFlO0lBQzVCLElBQUlBLEdBQUcsQ0FBQ0MsUUFBSixDQUFhQyxNQUFiLElBQXVCLEdBQTNCLEVBQWdDO01BQzVCL0MsUUFBUSxDQUFDZ0QsS0FBVCxDQUFlLHVCQUFmLEVBRDRCLENBRTVCO0lBQ0gsQ0FIRCxNQUdPLElBQUlILEdBQUcsQ0FBQ0MsUUFBSixDQUFhQyxNQUFiLElBQXVCLEdBQTNCLEVBQWdDO01BQ25DO01BQ0EsS0FBSyxJQUFNRSxDQUFYLElBQWdCSixHQUFHLENBQUNDLFFBQUosQ0FBYUksSUFBYixDQUFrQkMsTUFBbEMsRUFBMEM7UUFDdEMsSUFBSUMsRUFBRSxHQUFHUCxHQUFHLENBQUNDLFFBQUosQ0FBYUksSUFBYixDQUFrQkMsTUFBbEIsQ0FBeUJGLENBQXpCLENBQVQ7UUFDQWpELFFBQVEsQ0FBQ2dELEtBQVQsQ0FBZUMsQ0FBQyxHQUFHLEtBQUosR0FBWUcsRUFBRSxDQUFDLENBQUQsQ0FBN0I7TUFDSDtJQUVKLENBUE0sTUFPQTtNQUNIcEQsUUFBUSxDQUFDZ0QsS0FBVCxDQUFlLFVBQVVILEdBQUcsQ0FBQ0MsUUFBSixDQUFhQyxNQUF2QixHQUFnQyxJQUFoQyxHQUF1Q0YsR0FBRyxDQUFDQyxRQUFKLENBQWFJLElBQWIsQ0FBa0IxQixPQUF4RTtJQUNIO0VBQ0osQ0FkRDs7RUFnQkFWLENBQUMsQ0FBQyxpQkFBRCxDQUFELENBQXFCaUIsSUFBckIsQ0FBMEIsT0FBMUIsRUFBbUMsWUFBWTtJQUMzQ2pCLENBQUMsQ0FBQyxpQkFBRCxDQUFELENBQXFCdUMsV0FBckIsQ0FBaUMsUUFBakM7SUFDQXZDLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUXdDLFFBQVIsQ0FBaUIsUUFBakI7SUFDQSxJQUFJQyxHQUFHLEdBQUd6QyxDQUFDLENBQUMsSUFBRCxDQUFELENBQVFvQyxJQUFSLENBQWEsS0FBYixDQUFWOztJQUNBLElBQUlLLEdBQUcsSUFBSSxLQUFYLEVBQWtCO01BQ2R6QyxDQUFDLENBQUMsa0JBQUQsQ0FBRCxDQUFzQjBDLFNBQXRCLENBQWdDLEdBQWhDO0lBQ0gsQ0FGRCxNQUVPO01BQ0gxQyxDQUFDLENBQUMsa0JBQUQsQ0FBRCxDQUFzQmdCLE9BQXRCLENBQThCLEdBQTlCLEVBQW1DLFlBQVk7UUFDM0NELFVBQVUsQ0FBQyxZQUFZO1VBQ25CZixDQUFDLENBQUMsc0JBQXNCeUMsR0FBdkIsQ0FBRCxDQUE2QkMsU0FBN0IsQ0FBdUMsR0FBdkM7UUFDSCxDQUZTLEVBRVAsR0FGTyxDQUFWO01BR0gsQ0FKRDtJQUtIO0VBQ0osQ0FiRDtFQWVBMUMsQ0FBQyxDQUFDLE1BQUQsQ0FBRCxDQUFVaUIsSUFBVixDQUFlLE9BQWYsRUFBdUIsWUFBWTtJQUNqQyxJQUFJMEIsR0FBRyxHQUFHM0MsQ0FBQyxDQUFDLGFBQUQsQ0FBRCxDQUFpQjRDLEdBQWpCLEtBQXVCLEdBQXZCLEdBQTJCNUMsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRb0MsSUFBUixDQUFhLElBQWIsQ0FBckM7SUFDQSxJQUFJUyxJQUFJLEdBQUcsSUFBWDtJQUNBQyxLQUFLLENBQUNDLEdBQU4sQ0FBVUosR0FBVixFQUFlSyxJQUFmLENBQW9CLFVBQVV6QyxDQUFWLEVBQWE7TUFDL0IsSUFBSUEsQ0FBQyxDQUFDNkIsSUFBRixDQUFPYSxFQUFYLEVBQWM7UUFDVi9ELFFBQVEsQ0FBQ0MsT0FBVCxDQUFpQm9CLENBQUMsQ0FBQzZCLElBQUYsQ0FBT2MsR0FBeEI7O1FBQ0EsSUFBSTNDLENBQUMsQ0FBQzZCLElBQUYsQ0FBT2UsS0FBWCxFQUFpQjtVQUNibkQsQ0FBQyxDQUFDNkMsSUFBRCxDQUFELENBQVFMLFFBQVIsQ0FBaUIsT0FBakI7UUFDSCxDQUZELE1BRUs7VUFDRHhDLENBQUMsQ0FBQzZDLElBQUQsQ0FBRCxDQUFRTixXQUFSLENBQW9CLE9BQXBCO1FBQ0g7TUFDSixDQVBELE1BT0s7UUFDRHJELFFBQVEsQ0FBQ2dELEtBQVQsQ0FBZTNCLENBQUMsQ0FBQzZCLElBQUYsQ0FBT2MsR0FBdEI7TUFDSDtJQUNGLENBWEQ7RUFZRCxDQWZEO0VBaUJBbEQsQ0FBQyxDQUFDLGdCQUFELENBQUQsQ0FBb0JpQixJQUFwQixDQUF5QixPQUF6QixFQUFrQyxZQUFZO0lBQzFDLElBQUltQixJQUFJLEdBQUcsRUFBWDs7SUFEMEMsMkNBRTFCcEMsQ0FBQyxDQUFDLGdCQUFELENBQUQsQ0FBb0JvRCxjQUFwQixFQUYwQjtJQUFBOztJQUFBO01BRTFDLG9EQUFzRDtRQUFBLElBQTNDQyxDQUEyQztRQUNsRGpCLElBQUksQ0FBQ2lCLENBQUMsQ0FBQ0MsSUFBSCxDQUFKLEdBQWVELENBQUMsQ0FBQ0UsS0FBakI7TUFDSDtJQUp5QztNQUFBO0lBQUE7TUFBQTtJQUFBOztJQU0xQ1QsS0FBSyxDQUFDVSxJQUFOLENBQVd4RCxDQUFDLENBQUMsSUFBRCxDQUFELENBQVFvQyxJQUFSLENBQWEsS0FBYixDQUFYLEVBQWdDQSxJQUFoQyxFQUFzQ1ksSUFBdEMsQ0FBMkMsVUFBVXpDLENBQVYsRUFBYTtNQUNwRCxJQUFJQSxDQUFDLENBQUM2QixJQUFGLENBQU9hLEVBQVgsRUFBZTtRQUNYL0QsUUFBUSxDQUFDQyxPQUFULENBQWlCb0IsQ0FBQyxDQUFDNkIsSUFBRixDQUFPYyxHQUF4QjtRQUNBbEQsQ0FBQyxDQUFDLHFCQUFELENBQUQsQ0FBeUJ5RCxJQUF6QixDQUE4QmxELENBQUMsQ0FBQzZCLElBQUYsQ0FBT2MsR0FBckM7TUFDSDtJQUNKLENBTEQsV0FLUyxVQUFVM0MsQ0FBVixFQUFhO01BQ2xCdUIsVUFBVSxDQUFDdkIsQ0FBRCxDQUFWO0lBQ0gsQ0FQRDtFQVFILENBZEQ7RUFnQkFQLENBQUMsQ0FBQyxhQUFELENBQUQsQ0FBaUIwRCxNQUFqQixDQUF3QixZQUFZO0lBQ2hDMUQsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRMkQsSUFBUixDQUFhLFFBQWIsRUFBdUIzRCxDQUFDLENBQUMsTUFBRCxDQUFELENBQVU0QyxHQUFWLEVBQXZCO0VBQ0gsQ0FGRDtFQUdBNUMsQ0FBQyxDQUFDLGdCQUFELENBQUQsQ0FBb0I0RCxLQUFwQixDQUEwQixZQUFZO0lBQ2xDNUQsQ0FBQyxDQUFDLFFBQUQsQ0FBRCxDQUFZNkQsTUFBWjtJQUNBLElBQUlDLEdBQUcsR0FBRzlELENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUW9DLElBQVIsQ0FBYSxJQUFiLENBQVY7SUFDQXBDLENBQUMsQ0FBQyxvQkFBRCxDQUFELENBQXdCK0QsTUFBeEIsQ0FBK0IsK0RBQStEQyxNQUEvRCxDQUFzRUYsR0FBdEUsRUFBMkUsT0FBM0UsQ0FBL0I7SUFDQTlELENBQUMsQ0FBQyxrQkFBRCxDQUFELENBQXNCaUUsS0FBdEI7RUFDSCxDQUxEO0VBT0FqRSxDQUFDLENBQUMsY0FBRCxDQUFELENBQWtCNEQsS0FBbEIsQ0FBd0IsVUFBVXJELENBQVYsRUFBYTtJQUNqQ0EsQ0FBQyxDQUFDMkQsY0FBRjtJQUNBcEIsS0FBSyxDQUFDQyxHQUFOLENBQVUvQyxDQUFDLENBQUMsSUFBRCxDQUFELENBQVEyRCxJQUFSLENBQWEsTUFBYixDQUFWLEVBQWdDWCxJQUFoQyxDQUFxQyxVQUFVekMsQ0FBVixFQUFhO01BQzlDUCxDQUFDLENBQUMsYUFBRCxDQUFELENBQWlCeUQsSUFBakIsQ0FBc0JsRCxDQUFDLENBQUM2QixJQUFGLENBQU9BLElBQTdCO01BQ0FwRSxNQUFNLENBQUNrQixRQUFQLENBQWdCd0IsT0FBaEIsQ0FBd0JILENBQUMsQ0FBQzZCLElBQUYsQ0FBT2MsR0FBL0I7O01BQ0EsSUFBSTNDLENBQUMsQ0FBQzZCLElBQUYsQ0FBT0EsSUFBUCxHQUFjLENBQWxCLEVBQXFCO1FBQ2pCcEMsQ0FBQyxDQUFDLFlBQUQsQ0FBRCxDQUFnQm1FLE1BQWhCLENBQXVCLEdBQXZCO01BQ0g7SUFDSixDQU5EO0VBT0gsQ0FURDtFQVVBbkUsQ0FBQyxDQUFDLGdCQUFELENBQUQsQ0FBb0I0RCxLQUFwQixDQUEwQixVQUFVckQsQ0FBVixFQUFhO0lBQ25DQSxDQUFDLENBQUMyRCxjQUFGO0lBQ0FwQixLQUFLLENBQUNDLEdBQU4sQ0FBVS9DLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUTJELElBQVIsQ0FBYSxNQUFiLElBQXVCLEdBQXZCLEdBQTZCM0QsQ0FBQyxDQUFDLEtBQUQsQ0FBRCxDQUFTNEMsR0FBVCxFQUE3QixHQUE0QyxHQUE1QyxHQUFnRDVDLENBQUMsQ0FBQyxlQUFELENBQUQsQ0FBbUI0QyxHQUFuQixFQUExRCxFQUFvRkksSUFBcEYsQ0FBeUYsVUFBVXpDLENBQVYsRUFBYTtNQUNsR1AsQ0FBQyxDQUFDLGFBQUQsQ0FBRCxDQUFpQnlELElBQWpCLENBQXNCbEQsQ0FBQyxDQUFDNkIsSUFBRixDQUFPQSxJQUE3QjtNQUNBcEUsTUFBTSxDQUFDa0IsUUFBUCxDQUFnQndCLE9BQWhCLENBQXdCSCxDQUFDLENBQUM2QixJQUFGLENBQU9jLEdBQS9COztNQUNBLElBQUkzQyxDQUFDLENBQUM2QixJQUFGLENBQU9BLElBQVAsR0FBYyxDQUFsQixFQUFxQjtRQUNqQnBDLENBQUMsQ0FBQyxZQUFELENBQUQsQ0FBZ0JtRSxNQUFoQixDQUF1QixHQUF2QjtNQUNIO0lBQ0osQ0FORDtFQU9ILENBVEQ7RUFXQW5FLENBQUMsQ0FBQyxpQkFBRCxDQUFELENBQXFCaUIsSUFBckIsQ0FBMEIsT0FBMUIsRUFBbUMsWUFBWTtJQUMzQyxJQUFJbUQsQ0FBQyxHQUFHcEUsQ0FBQyxDQUFDLFlBQUQsQ0FBRCxDQUFnQjRDLEdBQWhCLEVBQVI7SUFDQTVFLE1BQU0sQ0FBQ3FHLFFBQVAsQ0FBZ0JDLElBQWhCLEdBQXVCdEUsQ0FBQyxDQUFDLFlBQUQsQ0FBRCxDQUFnQm9DLElBQWhCLENBQXFCLEtBQXJCLElBQThCLEtBQTlCLEdBQXNDZ0MsQ0FBN0Q7SUFDQSxPQUFPLElBQVA7RUFDSCxDQUpEO0VBS0FwRSxDQUFDLENBQUMsWUFBRCxDQUFELENBQWdCaUIsSUFBaEIsQ0FBcUIsT0FBckIsRUFBOEIsVUFBVVYsQ0FBVixFQUFhO0lBQ3ZDLElBQUk2RCxDQUFDLEdBQUdwRSxDQUFDLENBQUMsSUFBRCxDQUFELENBQVE0QyxHQUFSLEVBQVI7O0lBQ0EsSUFBSXJDLENBQUMsQ0FBQ2dFLEdBQUYsS0FBVSxPQUFkLEVBQXVCO01BQ25CdkcsTUFBTSxDQUFDcUcsUUFBUCxDQUFnQkMsSUFBaEIsR0FBdUJ0RSxDQUFDLENBQUMsSUFBRCxDQUFELENBQVFvQyxJQUFSLENBQWEsS0FBYixJQUFzQixLQUF0QixHQUE4QmdDLENBQXJEO01BQ0EsT0FBTyxJQUFQO0lBQ0g7O0lBQ0QsSUFBSUEsQ0FBQyxDQUFDM0UsTUFBRixHQUFXLENBQWYsRUFBa0I7TUFDZCxPQUFPLENBQVA7SUFDSDs7SUFDRCxJQUFJK0UsTUFBTSxHQUFHeEUsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRd0UsTUFBUixFQUFiO0lBQ0FBLE1BQU0sQ0FBQ0MsS0FBUCxHQUFnQnpFLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUXlFLEtBQVIsS0FBa0IsRUFBbkIsR0FBeUIsSUFBeEM7SUFDQUQsTUFBTSxDQUFDRSxJQUFQLElBQWUsRUFBZjtJQUNBRixNQUFNLENBQUNHLEdBQVAsSUFBYyxFQUFkO0lBQ0EzRSxDQUFDLENBQUMsY0FBRCxDQUFELENBQWtCNEUsR0FBbEIsQ0FBc0JKLE1BQXRCLEVBQThCOUIsU0FBOUIsQ0FBd0MsR0FBeEM7SUFDQSxJQUFJZSxJQUFJLEdBQUcsRUFBWDtJQUNBLElBQUlaLElBQUksR0FBRyxJQUFYO0lBQ0E3QyxDQUFDLENBQUMsY0FBRCxDQUFELENBQWtCNkUsSUFBbEIsQ0FBdUJwQixJQUFJLEdBQUcsMEVBQTlCO0lBQ0FYLEtBQUssQ0FBQ0MsR0FBTixDQUFVL0MsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRb0MsSUFBUixDQUFhLE1BQWIsSUFBdUIsS0FBdkIsR0FBK0JnQyxDQUF6QyxFQUE0Q3BCLElBQTVDLENBQWlELFVBQVV6QyxDQUFWLEVBQWE7TUFDMUQsSUFBSSxDQUFDQSxDQUFDLENBQUM2QixJQUFGLENBQU9hLEVBQVosRUFBZ0I7UUFDWmpGLE1BQU0sQ0FBQ2tCLFFBQVAsQ0FBZ0JnRCxLQUFoQixDQUFzQjNCLENBQUMsQ0FBQzZCLElBQUYsQ0FBT0wsR0FBN0I7TUFDSCxDQUZELE1BRU87UUFDSDBCLElBQUksSUFBSSx5QkFBUjs7UUFERyw0Q0FFYWxELENBQUMsQ0FBQzZCLElBQUYsQ0FBT0EsSUFGcEI7UUFBQTs7UUFBQTtVQUVILHVEQUE2QjtZQUFBLElBQWxCMEMsQ0FBa0I7WUFDekJyQixJQUFJLElBQUksOEJBQVI7WUFDQUEsSUFBSSx3QkFBZ0JxQixDQUFDLENBQUNDLElBQWxCLFFBQUo7WUFDQXRCLElBQUkseUJBQWlCcUIsQ0FBQyxDQUFDRSxLQUFuQiw4QkFBSjtZQUNBdkIsSUFBSSxrQkFBV3FCLENBQUMsQ0FBQ3hCLElBQWIsVUFBSjtZQUNBRyxJQUFJLGtCQUFXcUIsQ0FBQyxDQUFDRyxLQUFiLFVBQUo7WUFDQXhCLElBQUksSUFBSSxNQUFSO1lBQ0FBLElBQUksSUFBSSxPQUFSO1VBQ0g7UUFWRTtVQUFBO1FBQUE7VUFBQTtRQUFBOztRQVdIQSxJQUFJLElBQUksOEJBQVI7UUFDQUEsSUFBSSxJQUFJLGNBQWN6RCxDQUFDLENBQUM2QyxJQUFELENBQUQsQ0FBUVQsSUFBUixDQUFhLEtBQWIsQ0FBZCxHQUFvQyxLQUFwQyxHQUE0Q2dDLENBQTVDLEdBQWdELElBQXhEO1FBQ0FYLElBQUksSUFBSSxxQkFBUjtRQUNBQSxJQUFJLElBQUlXLENBQVI7UUFDQVgsSUFBSSxJQUFJLE1BQVI7UUFDQUEsSUFBSSxJQUFJLE9BQVI7UUFDQUEsSUFBSSxJQUFJLE9BQVI7UUFDQXpELENBQUMsQ0FBQyxjQUFELENBQUQsQ0FBa0I2RSxJQUFsQixDQUF1QnBCLElBQXZCO01BRUg7SUFDSixDQXhCRDtFQXlCSCxDQTFDRDtFQTJDQXpELENBQUMsQ0FBQyxpQkFBRCxDQUFELENBQXFCaUIsSUFBckIsQ0FBMEIsYUFBMUIsRUFBd0MsWUFBWTtJQUNsRGpCLENBQUMsQ0FBQyxVQUFELENBQUQsQ0FBYzJELElBQWQsQ0FBbUIsTUFBbkIsRUFBMEIzRCxDQUFDLENBQUMsSUFBRCxDQUFELENBQVEyRCxJQUFSLENBQWEsTUFBYixDQUExQjtFQUNELENBRkQ7O0VBR0EsSUFBSTtJQUNBLElBQUkzRCxDQUFDLENBQUMsTUFBRCxDQUFELENBQVVQLE1BQVYsSUFBb0IsQ0FBeEIsRUFBMkI7TUFDdkJLLEtBQUssR0FBRyxFQUFSO01BQ0FvRixHQUFHLEdBQUdDLElBQUksQ0FBQ0MsS0FBTCxDQUFXcEYsQ0FBQyxDQUFDLE1BQUQsQ0FBRCxDQUFVNEMsR0FBVixFQUFYLENBQU4sQ0FGdUIsQ0FHdkI7O01BQ0EsSUFBSXlDLEdBQUcsR0FBRyxFQUFWOztNQUp1Qiw0Q0FLUEgsR0FMTztNQUFBOztNQUFBO1FBS3ZCLHVEQUFxQjtVQUFBLElBQVZkLENBQVU7O1VBQ2pCLElBQUlBLENBQUMsQ0FBQ2tCLEtBQUYsR0FBVSxDQUFkLEVBQWdCO1lBQ1osSUFBSUMsQ0FBQyxHQUFHSixJQUFJLENBQUNDLEtBQUwsQ0FBV2hCLENBQUMsQ0FBQ2hDLElBQWIsQ0FBUjs7WUFDQSxJQUFJdEMsS0FBSyxDQUFDeUYsQ0FBQyxDQUFDQyxJQUFILENBQUwsSUFBaUJDLFNBQXJCLEVBQStCO2NBQzNCM0YsS0FBSyxDQUFDeUYsQ0FBQyxDQUFDQyxJQUFILENBQUwsR0FBYyxFQUFkO2NBQ0FILEdBQUcsNkJBQXFCRSxDQUFDLENBQUNDLElBQXZCLG1HQUNzQkQsQ0FBQyxDQUFDQyxJQUR4QixvREFBSDtZQUdIOztZQUNERCxDQUFDLENBQUNHLEVBQUYsR0FBT3RCLENBQUMsQ0FBQ3NCLEVBQVQ7WUFDQTVGLEtBQUssQ0FBQ3lGLENBQUMsQ0FBQ0MsSUFBSCxDQUFMLENBQWNHLElBQWQsQ0FBbUJKLENBQW5CO1VBQ0g7UUFDSjtNQWpCc0I7UUFBQTtNQUFBO1FBQUE7TUFBQTs7TUFrQnZCdkYsQ0FBQyxDQUFDLFlBQUQsQ0FBRCxDQUFnQjZFLElBQWhCLENBQXFCUSxHQUFyQjtNQUNBdEUsVUFBVSxDQUFDLFlBQVk7UUFDbkJmLENBQUMsQ0FBQyw4QkFBRCxDQUFELENBQWtDNEQsS0FBbEM7TUFDSCxDQUZTLEVBRVIsRUFGUSxDQUFWO01BR0E1RCxDQUFDLENBQUMsa0JBQUQsQ0FBRCxDQUFzQmlCLElBQXRCLENBQTJCLGNBQTNCLEVBQTBDLFlBQVk7UUFDbERqQixDQUFDLENBQUMsa0JBQUQsQ0FBRCxDQUFzQnVDLFdBQXRCLENBQWtDLFFBQWxDO1FBQ0EsSUFBSXFELFVBQVUsR0FBSSxFQUFsQjs7UUFDQSxJQUFJO1VBQ0FBLFVBQVUsR0FBR1QsSUFBSSxDQUFDQyxLQUFMLENBQVdwRixDQUFDLENBQUMsU0FBRCxDQUFELENBQWE0QyxHQUFiLEVBQVgsQ0FBYjtRQUNILENBRkQsQ0FFRSxnQkFBTSxDQUNQOztRQUVENUMsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRd0MsUUFBUixDQUFpQixRQUFqQjtRQUNBLElBQUlxRCxNQUFNLEdBQUcvRixLQUFLLENBQUNFLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUW9DLElBQVIsQ0FBYSxJQUFiLENBQUQsQ0FBbEI7UUFDQSxJQUFJaUQsR0FBRyxHQUFHLEVBQVY7UUFDQSxJQUFJUyxFQUFFLEdBQUcsRUFBVDs7UUFYa0QsNENBWWxDRCxNQVprQztRQUFBOztRQUFBO1VBWWxELHVEQUF3QjtZQUFBLElBQWJFLENBQWE7WUFDcEJELEVBQUUsR0FBR0YsVUFBVSxDQUFDRyxDQUFDLENBQUNDLEtBQUgsQ0FBZixDQURvQixDQUVwQjs7WUFDQVgsR0FBRyw2QkFBcUJVLENBQUMsQ0FBQ0wsRUFBdkIsMEVBQ21DSyxDQUFDLENBQUNkLEtBRHJDLHNGQUUrQ2MsQ0FBQyxDQUFDVCxLQUZqRCx1RkFHZ0RTLENBQUMsQ0FBQ2YsS0FIbEQsMkxBS3VFZSxDQUFDLENBQUNDLEtBTHpFLHdGQU0wQ0YsRUFOMUMsNkVBQUg7VUFRSDtRQXZCaUQ7VUFBQTtRQUFBO1VBQUE7UUFBQTs7UUF5QmxEOUYsQ0FBQyxDQUFDLGFBQUQsQ0FBRCxDQUFpQjZFLElBQWpCLENBQXNCUSxHQUF0QjtRQUNBdEUsVUFBVSxDQUFDLFlBQVk7VUFDbkJmLENBQUMsQ0FBQyxnQ0FBRCxDQUFELENBQW9DNEQsS0FBcEM7UUFDSCxDQUZTLEVBRVIsRUFGUSxDQUFWO1FBR0E1RCxDQUFDLENBQUMsb0JBQUQsQ0FBRCxDQUF3QmlCLElBQXhCLENBQTZCLFdBQTdCLEVBQXlDLFlBQVk7VUFDakRqQixDQUFDLENBQUMsaUJBQUQsQ0FBRCxDQUFxQmlHLEVBQXJCLENBQXdCakcsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRb0MsSUFBUixDQUFhLE9BQWIsQ0FBeEIsRUFBK0N3QixLQUEvQztVQUNBNUQsQ0FBQyxDQUFDLG9CQUFELENBQUQsQ0FBd0J1QyxXQUF4QixDQUFvQyxRQUFwQztVQUNBdkMsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRd0MsUUFBUixDQUFpQixRQUFqQjtVQUNBeEMsQ0FBQyxDQUFDLEtBQUQsQ0FBRCxDQUFTNEMsR0FBVCxDQUFhNUMsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRb0MsSUFBUixDQUFhLElBQWIsQ0FBYjtVQUNBcEMsQ0FBQyxDQUFDLGNBQUQsQ0FBRCxDQUFrQnlELElBQWxCLENBQXVCckUsT0FBTyxDQUFDWSxDQUFDLENBQUMsSUFBRCxDQUFELENBQVFvQyxJQUFSLENBQWEsT0FBYixDQUFELENBQTlCO1VBQ0FwQyxDQUFDLENBQUMsV0FBRCxDQUFELENBQWV5RCxJQUFmLENBQW9CekQsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRb0MsSUFBUixDQUFhLE9BQWIsQ0FBcEI7VUFDQXBDLENBQUMsQ0FBQyxnQkFBRCxDQUFELENBQW9CMkQsSUFBcEIsQ0FBeUIsS0FBekIsRUFBK0IzRCxDQUFDLENBQUMsSUFBRCxDQUFELENBQVFvQyxJQUFSLENBQWEsT0FBYixDQUEvQixFQUFzRFEsR0FBdEQsQ0FBMEQsQ0FBMUQ7UUFDSCxDQVJEO01BU0gsQ0F0Q0Q7SUF3Q0g7RUFDSixDQWhFRCxDQWdFRSxPQUFPckMsQ0FBUCxFQUFVLENBQ1I7RUFDSCxDQXJZZSxDQXdZcEI7OztFQUNJLElBQUk7SUFBQSxJQUdTMkYsWUFIVCxHQUdBLFNBQVNBLFlBQVQsQ0FBc0I3RyxHQUF0QixFQUEyQjtNQUN2QixLQUFLLElBQUk4RyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHOUcsR0FBcEIsRUFBeUI4RyxDQUFDLEVBQTFCLEVBQThCO1FBQzFCLElBQUlDLEdBQUcsR0FBRzlILFFBQVEsQ0FBQytILGFBQVQsQ0FBdUIsS0FBdkIsQ0FBVjtRQUNBRCxHQUFHLENBQUNFLFlBQUosQ0FBaUIsT0FBakIsRUFBMEIsV0FBMUI7UUFDQUYsR0FBRyxDQUFDRyxLQUFKLENBQVU3QixJQUFWLEdBQWlCLE1BQU04QixJQUFJLENBQUNDLE1BQUwsRUFBTixHQUFzQixHQUF2QztRQUNBTCxHQUFHLENBQUNNLE9BQUosQ0FBWSxDQUFDO1VBQ1RDLFNBQVMsRUFBRSxnQ0FBZ0NILElBQUksQ0FBQ0MsTUFBTCxLQUFnQixFQUFoRCxHQUFxRDtRQUR2RCxDQUFELEVBRVQ7VUFDQ0UsU0FBUyxFQUFFLGVBQWVILElBQUksQ0FBQ0MsTUFBTCxLQUFnQixHQUEvQixHQUFxQyxtQkFBckMsR0FBMkRELElBQUksQ0FBQ0MsTUFBTCxLQUFnQixDQUEzRSxHQUErRSxHQUQzRjtVQUVDRyxVQUFVLEVBQUUsU0FGYjtVQUdDQyxTQUFTLEVBQUUsa0NBSFo7VUFJQ0MsT0FBTyxFQUFFTixJQUFJLENBQUNDLE1BQUwsS0FBZ0I7UUFKMUIsQ0FGUyxDQUFaLEVBT0k7VUFDQU0sUUFBUSxFQUFFUCxJQUFJLENBQUNDLE1BQUwsS0FBZ0IsR0FBaEIsR0FBc0IsSUFEaEM7VUFFQU8sS0FBSyxFQUFFLENBQUNiLENBQUQsR0FBSyxHQUZaO1VBR0FjLFVBQVUsRUFBRUM7UUFIWixDQVBKO1FBWUFDLEtBQUssQ0FBQ0MsV0FBTixDQUFrQmhCLEdBQWxCO01BQ0g7SUFDSixDQXRCRDs7SUFDQSxJQUFJZSxLQUFLLEdBQUc3SSxRQUFRLENBQUNNLGNBQVQsQ0FBd0IsVUFBeEIsQ0FBWjtJQXVCQXNILFlBQVksQ0FBQyxHQUFELENBQVo7RUFDSCxDQXpCRCxDQXlCRSxPQUFPM0YsQ0FBUCxFQUFVLENBQ1I7RUFDSDtBQUNKLENBcmFLLENBQU4iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvdGhlbWUvanMvdGhlbWUuanM/MGU4MiJdLCJzb3VyY2VzQ29udGVudCI6WyJyZXF1aXJlKCdoYy1vZmZjYW52YXMtbmF2L2Rpc3QvaGMtb2ZmY2FudmFzLW5hdicpO1xuLy8gaW1wb3J0IHhNZWdhTWVudSBmcm9tICd4LW1lZ2EtbWVudS9zcmMveC1tZWdhLW1lbnUnO1xuaW1wb3J0IHhtIGZyb20gJ3gtbWVnYS1tZW51L2Rpc3QveC1tZWdhLW1lbnUubWluJztcblxubGV0IHhNZWdhTWVudSA9IHdpbmRvdy54TWVnYU1lbnUgPSB4bS54TWVnYU1lbnU7XG5cbmZ1bmN0aW9uIENvcHlUb0NsaXBib2FyZChjb250YWluZXJpZCkge1xuICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKSB7XG4gICAgICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZW1wdHkpIHsgLy8gQ2hyb21lXG4gICAgICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZW1wdHkoKTtcbiAgICAgICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKSB7IC8vIEZpcmVmb3hcbiAgICAgICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7IC8vIElFP1xuICAgICAgICBkb2N1bWVudC5zZWxlY3Rpb24uZW1wdHkoKTtcbiAgICB9XG5cbiAgICBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7XG4gICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7XG4gICAgICAgIHJhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNvbnRhaW5lcmlkKSk7XG4gICAgICAgIHJhbmdlLnNlbGVjdCgpLmNyZWF0ZVRleHRSYW5nZSgpO1xuICAgICAgICBkb2N1bWVudC5leGVjQ29tbWFuZChcImNvcHlcIik7XG4gICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKSB7XG4gICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgIHJhbmdlLnNlbGVjdE5vZGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY29udGFpbmVyaWQpKTtcbiAgICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLmFkZFJhbmdlKHJhbmdlKTtcbiAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJjb3B5XCIpO1xuICAgIH1cblxuICAgIGFsZXJ0aWZ5LnN1Y2Nlc3MoJ9qp2b7bjCDYtNivJyk7XG59XG5cbmZ1bmN0aW9uIGNvbW1hZnkobnVtKSB7XG4gICAgdmFyIHN0ciA9IG51bS50b1N0cmluZygpLnNwbGl0KCcuJyk7XG4gICAgaWYgKHN0clswXS5sZW5ndGggPj0gNCkge1xuXG4gICAgICAgIHN0clswXSA9IHN0clswXS5yZXBsYWNlKC8oXFxkKSg/PShcXGR7M30pKyQpL2csICckMSwnKTtcbiAgICB9XG4gICAgaWYgKHN0clsxXSAmJiBzdHJbMV0ubGVuZ3RoID49IDQpIHtcblxuICAgICAgICBzdHJbMV0gPSBzdHJbMV0ucmVwbGFjZSgvKFxcZHszfSkvZywgJyQxLCcpO1xuICAgIH1cbiAgICByZXR1cm4gc3RyLmpvaW4oJy4nKTtcbn1cblxubGV0IHFubiwgaW1hZ2VzLCBzaXplcztcblxualF1ZXJ5KGZ1bmN0aW9uICgkKSB7XG5cbiAgICB0cnkge1xuICAgICAgICB4TWVnYU1lbnUoJyNtZWdhLW1lbnUnLCB7XG4gICAgICAgICAgICByZXNwb25zZVdpZHRoOiAxMTI0LFxuICAgICAgICAgICAgaXNSdGw6IHRydWUsXG4gICAgICAgICAgICBtYWluVGl0bGU6IGFwcE5hbWUsXG4gICAgICAgICAgICBibHVyRWZmZWN0OiB0cnVlLFxuICAgICAgICAgICAgZGlzYWJsZUxpbmtzOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfSBjYXRjaChlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGUubWVzc2FnZSk7XG4gICAgfVxuXG5cbiAgIHRyeSB7XG4gICAgICAgJChcIi54em9vbSwgLnh6b29tLWdhbGxlcnlcIikueHpvb20oe3RpbnQ6ICcjMzMzJywgWG9mZnNldDogMTV9KTtcbiAgIH0gY2F0Y2goZSkge1xuICAgfVxuXG5cbiAgICAkKHdpbmRvdykub24oJ2xvYWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgJCgnI3ByZWxvYWRlcicpLnNsaWRlVXAoNzAwKTtcbiAgICAgICAgICAgIC8vIGxldCBtYXggPSAxNTAgO1xuICAgICAgICAgICAgLy8gZm9yKCBjb25zdCBiIG9mICQoXCIuYm94XCIpKSB7XG4gICAgICAgICAgICAvLyAgICAgaWYgKCQoYikuaGVpZ2h0KCkgPiBtYXggKXtcbiAgICAgICAgICAgIC8vICAgICAgICAgbWF4PSAkKGIpLmhlaWdodCgpO1xuICAgICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIC8vICQoJy5ib3gnKS5oZWlnaHQobWF4KTtcbiAgICAgICAgICAgIC8vICQoXCIjZmF2cyAuYm94XCIpLnJlbW92ZUF0dHIoJ3N0eWxlJyk7XG5cbiAgICAgICAgfSwgMTAwKTtcbiAgICB9KTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgJCgnI3ByZWxvYWRlcicpLnNsaWRlVXAoNzAwKTtcbiAgICB9LCAxMDApO1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoJyNwcmVsb2FkZXInKS5zbGlkZVVwKDcwMCk7XG4gICAgfSwgMTAwMDApO1xuICAgICQoXCIjdG9nZ2xlLXNpZGVcIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoJ2FzaWRlID4gZGl2Jykuc2xpZGVUb2dnbGUoMzAwKTtcbiAgICB9KTtcblxuICAgICQoJy5vd2wxJykub3dsQ2Fyb3VzZWwoe1xuICAgICAgICBsb29wOiB0cnVlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgLy8gYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICBpdGVtOiA1LFxuICAgICAgICByZXNwb25zaXZlOiB7XG4gICAgICAgICAgICAwOiB7XG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxvb3A6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAzLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMzAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDUsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgJCgnI293bDInKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgIG1hcmdpbjogMCxcbiAgICAgICAgcmVzcG9uc2l2ZUNsYXNzOiB0cnVlLFxuICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXlUaW1lb3V0OiA1MDAwLFxuICAgICAgICBhdXRvcGxheUhvdmVyUGF1c2U6IHRydWUsXG4gICAgICAgIGl0ZW06IDMsXG4gICAgICAgIHJlc3BvbnNpdmU6IHtcbiAgICAgICAgICAgIDA6IHtcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiAxLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIDYwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAyLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMDAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDMsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgJCgnI3RodW1icycpLm93bENhcm91c2VsKHtcbiAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgIG1hcmdpbjogNCxcbiAgICAgICAgcmVzcG9uc2l2ZUNsYXNzOiB0cnVlLFxuICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXlUaW1lb3V0OiA1MDAwLFxuICAgICAgICBhdXRvcGxheUhvdmVyUGF1c2U6IHRydWUsXG4gICAgICAgIGl0ZW1zOiA0LFxuICAgICAgICAvLyBuYXY6IHRydWUsXG4gICAgfSk7XG5cbiAgICAkKCcjb3dseDEnKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgIG1hcmdpbjogMTUsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICByZXNwb25zaXZlOiB7XG4gICAgICAgICAgICAwOiB7XG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpdGVtczogMSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxvb3A6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAzLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMzAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDQsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgJCgnI293bDMnKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IGZhbHNlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICBpdGVtczogMSxcbiAgICB9KTtcbiAgICAkKCcub3dsLXNxJykub3dsQ2Fyb3VzZWwoe1xuICAgICAgICBsb29wOiB0cnVlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgcmVzcG9uc2l2ZToge1xuICAgICAgICAgICAgMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAyLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMDAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTMwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiA2LFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAkKFwiI2NwLWRldGVhaWxcIikuYmluZCgnY2xpY2snLGZ1bmN0aW9uICgpIHtcbiAgICAgICAgQ29weVRvQ2xpcGJvYXJkKCd0YWItYW5hbHl6ZScpO1xuICAgIH0pO1xuICAgIHZhciBheGlvc0Vycm9yID0gZnVuY3Rpb24gKGVycikge1xuICAgICAgICBpZiAoZXJyLnJlc3BvbnNlLnN0YXR1cyA9PSA0MDEpIHtcbiAgICAgICAgICAgIGFsZXJ0aWZ5LmVycm9yKCdBdXRoZW50aWNuYXRpb24gRXJyb3InKTtcbiAgICAgICAgICAgIC8vIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy8jL2xvZ2luJztcbiAgICAgICAgfSBlbHNlIGlmIChlcnIucmVzcG9uc2Uuc3RhdHVzID09IDQyMikge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coZXJyLnJlc3BvbnNlLmRhdGEuZXJyb3JzKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBpbiBlcnIucmVzcG9uc2UuZGF0YS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICBsZXQgZXIgPSBlcnIucmVzcG9uc2UuZGF0YS5lcnJvcnNba107XG4gICAgICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3IoayArICcgOiAnICsgZXJbMF0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhbGVydGlmeS5lcnJvcignRXJyb3InICsgZXJyLnJlc3BvbnNlLnN0YXR1cyArICc6ICcgKyBlcnIucmVzcG9uc2UuZGF0YS5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICQoXCIjZmlsdGVyaW5nIC5idG5cIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoXCIjZmlsdGVyaW5nIC5idG5cIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgbGV0IGNscyA9ICQodGhpcykuZGF0YSgnY2F0Jyk7XG4gICAgICAgIGlmIChjbHMgPT0gJ2FsbCcpIHtcbiAgICAgICAgICAgICQoXCIjZGEtdGh1bWJzIC5pdGVtXCIpLnNsaWRlRG93big5MDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgJChcIiNkYS10aHVtYnMgLml0ZW1cIikuc2xpZGVVcCg2MDAsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNkYS10aHVtYnMgLml0ZW0uXCIgKyBjbHMpLnNsaWRlRG93big1MTMpO1xuICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgJChcIi5mYXZcIikuYmluZCgnY2xpY2snLGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCB1cmwgPSAkKFwiI2Zhdi10b2dnbGVcIikudmFsKCkrJy8nKyQodGhpcykuZGF0YSgnaWQnKTtcbiAgICAgIGxldCBzZWxmID0gdGhpcztcbiAgICAgIGF4aW9zLmdldCh1cmwpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgaWYgKGUuZGF0YS5PSyl7XG4gICAgICAgICAgICBhbGVydGlmeS5zdWNjZXNzKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgaWYgKGUuZGF0YS5saWtlZCl7XG4gICAgICAgICAgICAgICAgJChzZWxmKS5hZGRDbGFzcygnbGlrZWQnKTtcbiAgICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgICAgICQoc2VsZikucmVtb3ZlQ2xhc3MoJ2xpa2VkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1lbHNle1xuICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3IoZS5kYXRhLm1zZyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgJChcIiNxdWVzdGlvbi1zZW5kXCIpLmJpbmQoJ2NsaWNrJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBsZXQgZGF0YSA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IGQgb2YgJChcIiNxdWVzdGlvbi1mb3JtXCIpLnNlcmlhbGl6ZUFycmF5KCkpIHtcbiAgICAgICAgICAgIGRhdGFbZC5uYW1lXSA9IGQudmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBheGlvcy5wb3N0KCQodGhpcykuZGF0YSgndXJsJyksIGRhdGEpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgIGlmIChlLmRhdGEuT0spIHtcbiAgICAgICAgICAgICAgICBhbGVydGlmeS5zdWNjZXNzKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgICAgICQoXCIuY29tbWVudC1jb250YWluZXJ4XCIpLnRleHQoZS5kYXRhLm1zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICBheGlvc0Vycm9yKGUpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgICQoXCIueHN1bWJtaXRlclwiKS5zdWJtaXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAkKHRoaXMpLmF0dHIoJ2FjdGlvbicsICQoXCIjc210XCIpLnZhbCgpKTtcbiAgICB9KTtcbiAgICAkKFwiLmNvbW1lbnQtcmVwbHlcIikuY2xpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAkKCcjcmVwbHknKS5yZW1vdmUoKTtcbiAgICAgICAgdmFyIHBpZCA9ICQodGhpcykuZGF0YSgnaWQnKTtcbiAgICAgICAgJChcIiNjb21tZW50LWZvcm0tYm9keVwiKS5hcHBlbmQoXCI8aW5wdXQgdHlwZT1cXFwiaGlkZGVuXFxcIiBpZD1cXFwicmVwbHlcXFwiIG5hbWU9XFxcInBhcmVudFxcXCIgdmFsdWU9XFxcIlwiLmNvbmNhdChwaWQsIFwiXFxcIiAvPlwiKSk7XG4gICAgICAgICQoXCIjY29tbWVudC1tZXNzYWdlXCIpLmZvY3VzKCk7XG4gICAgfSk7XG5cbiAgICAkKFwiLmFkZC10by1jYXJkXCIpLmNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXhpb3MuZ2V0KCQodGhpcykuYXR0cignaHJlZicpKS50aGVuKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAkKFwiI2NhcmQtY291bnRcIikudGV4dChlLmRhdGEuZGF0YSk7XG4gICAgICAgICAgICB3aW5kb3cuYWxlcnRpZnkubWVzc2FnZShlLmRhdGEubXNnKTtcbiAgICAgICAgICAgIGlmIChlLmRhdGEuZGF0YSA+IDApIHtcbiAgICAgICAgICAgICAgICAkKFwiI2NhcmQtaW5mb1wiKS5mYWRlSW4oNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgJChcIi5hZGQtdG8tY2FyZC1xXCIpLmNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXhpb3MuZ2V0KCQodGhpcykuYXR0cignaHJlZicpICsgJy8nICsgJChcIiNxblwiKS52YWwoKSsnLycrJChcIiNzaW5nbGUtY291bnRcIikudmFsKCkpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgICQoXCIjY2FyZC1jb3VudFwiKS50ZXh0KGUuZGF0YS5kYXRhKTtcbiAgICAgICAgICAgIHdpbmRvdy5hbGVydGlmeS5tZXNzYWdlKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgaWYgKGUuZGF0YS5kYXRhID4gMCkge1xuICAgICAgICAgICAgICAgICQoXCIjY2FyZC1pbmZvXCIpLmZhZGVJbig0MDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgICQoXCIjYWRkb24td3JhcHBpbmdcIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGxldCBxID0gJChcIiNzZWFyY2hpbmdcIikudmFsKCk7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJChcIiNzZWFyY2hpbmdcIikuZGF0YSgndXJsJykgKyAnP3E9JyArIHE7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICAgICQoXCIjc2VhcmNoaW5nXCIpLmJpbmQoJ2tleXVwJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgbGV0IHEgPSAkKHRoaXMpLnZhbCgpO1xuICAgICAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJCh0aGlzKS5kYXRhKCd1cmwnKSArICc/cT0nICsgcTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChxLmxlbmd0aCA8IDMpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG4gICAgICAgIGxldCBvZmZzZXQgPSAkKHRoaXMpLm9mZnNldCgpO1xuICAgICAgICBvZmZzZXQud2lkdGggPSAoJCh0aGlzKS53aWR0aCgpICsgODUpICsgJ3B4JztcbiAgICAgICAgb2Zmc2V0LmxlZnQgLT0gNTA7XG4gICAgICAgIG9mZnNldC50b3AgKz0gNDU7XG4gICAgICAgICQoXCIjc2VhcmNoLWxpc3RcIikuY3NzKG9mZnNldCkuc2xpZGVEb3duKDEwMCk7XG4gICAgICAgIGxldCB0ZXh0ID0gJyc7XG4gICAgICAgIGxldCBzZWxmID0gdGhpcztcbiAgICAgICAgJChcIiNzZWFyY2gtbGlzdFwiKS5odG1sKHRleHQgKyAnPGRpdiBjbGFzcz1cInAtNCB0ZXh0LWNlbnRlclwiPjxpIGNsYXNzPVwiZmEgZmEtc3BpbiBmYS1zcGlubmVyXCI+PC9pPjwvZGl2PicpO1xuICAgICAgICBheGlvcy5nZXQoJCh0aGlzKS5kYXRhKCdhamF4JykgKyAnP3E9JyArIHEpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgIGlmICghZS5kYXRhLk9LKSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmFsZXJ0aWZ5LmVycm9yKGUuZGF0YS5lcnIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8dWwgY2xhc3M9XCJsaXN0LWdyb3VwXCI+JztcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgZS5kYXRhLmRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSBgPGEgaHJlZj1cIiR7cC5saW5rfVwiPmA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxpbWcgc3JjPVwiJHtwLmltYWdlfVwiIGFsdD1cInByb2R1Y3QgaW1hZ2VcIj5gXG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxoND4ke3AubmFtZX08L2g0PmBcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSBgPGg1PiR7cC5wcmljZX08L2g1PmBcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPC9hPic7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gJzwvbGk+JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8YSBocmVmPVwiJyArICQoc2VsZikuZGF0YSgndXJsJykgKyAnP3E9JyArIHEgKyAnXCI+JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICfYrNiz2KrYrNmIINmF2YjYp9ix2K8g2KjbjNi02KrYsSA6JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9IHE7XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPC9hPic7XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPC9saT4nO1xuICAgICAgICAgICAgICAgIHRleHQgKz0gJzwvdWw+JztcbiAgICAgICAgICAgICAgICAkKFwiI3NlYXJjaC1saXN0XCIpLmh0bWwodGV4dCk7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgJChcIi54em9vbS10aHVtYnMgYVwiKS5iaW5kKCdjbGljay5saWdodCcsZnVuY3Rpb24gKCkge1xuICAgICAgJChcIiNsaWdodGJ4XCIpLmF0dHIoJ2hyZWYnLCQodGhpcykuYXR0cignaHJlZicpKTtcbiAgICB9KTtcbiAgICB0cnkge1xuICAgICAgICBpZiAoJCgnI3FudCcpLmxlbmd0aCAhPSAwKSB7XG4gICAgICAgICAgICBzaXplcyA9IHt9O1xuICAgICAgICAgICAgcW50ID0gSlNPTi5wYXJzZSgkKCcjcW50JykudmFsKCkpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2cocW50KTtcbiAgICAgICAgICAgIGxldCB0eHQgPSAnJztcbiAgICAgICAgICAgIGZvciggY29uc3QgcSBvZiBxbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAocS5jb3VudCA+IDApe1xuICAgICAgICAgICAgICAgICAgICBsZXQgdCA9IEpTT04ucGFyc2UocS5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNpemVzW3Quc2l6ZV0gPT0gdW5kZWZpbmVkKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemVzW3Quc2l6ZV09W107XG4gICAgICAgICAgICAgICAgICAgICAgICB0eHQgKz0gYDxkaXYgZGF0YS1pZD1cIiR7dC5zaXplfVwiIGNsYXNzPVwiYmFkZ2UgYmctc2Vjb25kYXJ5IHNpemVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHt0LnNpemV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAmbmJzcDtgO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHQuaWQgPSBxLmlkO1xuICAgICAgICAgICAgICAgICAgICBzaXplc1t0LnNpemVdLnB1c2godCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJChcIiNzaXplLXBpY2tcIikuaHRtbCh0eHQpO1xuICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemU6Zmlyc3QtY2hpbGRcIikuY2xpY2soKTtcbiAgICAgICAgICAgIH0sNTApO1xuICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemVcIikuYmluZCgnY2xpY2suc2VsZWN0JyxmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemVcIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAgICAgICAgIGxldCBjb2xvck5hbWVzICA9IHt9O1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yTmFtZXMgPSBKU09OLnBhcnNlKCQoXCIjY29sb3JzXCIpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgICAgICAgICBsZXQgY29sb3JzID0gc2l6ZXNbJCh0aGlzKS5kYXRhKCdpZCcpXTtcbiAgICAgICAgICAgICAgICBsZXQgdHh0ID0gJyc7XG4gICAgICAgICAgICAgICAgbGV0IGNsID0gJyc7XG4gICAgICAgICAgICAgICAgZm9yKCBjb25zdCBjIG9mIGNvbG9ycykge1xuICAgICAgICAgICAgICAgICAgICBjbCA9IGNvbG9yTmFtZXNbYy5jb2xvcl07XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGMuY29sb3IsY29sb3JOYW1lcyk7XG4gICAgICAgICAgICAgICAgICAgIHR4dCArPSBgPGRpdiBkYXRhLWlkPVwiJHtjLmlkfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJpY2U9XCIke2MucHJpY2V9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1jb3VudD1cIiR7Yy5jb3VudH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT1cIiR7Yy5pbWFnZX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2xvclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiAke2MuY29sb3J9XCIgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+JHtjbH08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5gO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGlja1wiKS5odG1sKHR4dCk7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGljayAuY29sb3I6Zmlyc3QtY2hpbGRcIikuY2xpY2soKTtcbiAgICAgICAgICAgICAgICB9LDUwKTtcbiAgICAgICAgICAgICAgICAkKFwiLmNvbG9yLXBpY2sgLmNvbG9yXCIpLmJpbmQoJ2NsaWNrLnNlbCcsZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAkKCcueHpvb20tdGh1bWJzIGEnKS5lcSgkKHRoaXMpLmRhdGEoJ2ltYWdlJykpLmNsaWNrKCk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGljayAuY29sb3JcIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNxblwiKS52YWwoJCh0aGlzKS5kYXRhKCdpZCcpKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNsYXN0LXByaWNleFwiKS50ZXh0KGNvbW1hZnkoJCh0aGlzKS5kYXRhKCdwcmljZScpKSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjY291bnRpbmdcIikudGV4dCgkKHRoaXMpLmRhdGEoJ2NvdW50JykpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiLnByb2R1Y3QtY291bnRcIikuYXR0cignbWF4JywkKHRoaXMpLmRhdGEoJ2NvdW50JykpLnZhbCgxKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdzaXplIGVycicsZS5tZXNzYWdlKTtcbiAgICB9XG5cblxuLy8gcHJ0aWNhbGVcbiAgICB0cnkge1xuICAgICAgICBsZXQgcHJ0Y2wgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFydGljbGUnKVxuXG4gICAgICAgIGZ1bmN0aW9uIHNldFBhcnRpY2xlcyhudW0pIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtOyBpKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgcHJ0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcbiAgICAgICAgICAgICAgICBwcnQuc2V0QXR0cmlidXRlKCdjbGFzcycsICdwYXJ0aWNsZXMnKVxuICAgICAgICAgICAgICAgIHBydC5zdHlsZS5sZWZ0ID0gMTAwICogTWF0aC5yYW5kb20oKSArIFwiJVwiXG4gICAgICAgICAgICAgICAgcHJ0LmFuaW1hdGUoW3tcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKC0yMDBweCwgMCkgc2NhbGUoJyArIE1hdGgucmFuZG9tKCkgKiAxMCArICcpJ1xuICAgICAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKCcgKyBNYXRoLnJhbmRvbSgpICogNTAwICsgJ3B4LCAxMTJ2aCkgc2NhbGUoJyArIE1hdGgucmFuZG9tKCkgKiAyICsgJyknLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAnI2ZmMDBmZicsXG4gICAgICAgICAgICAgICAgICAgIGJveFNoYWRvdzogJzAgMCA0cHggI2ZmMDBmZiwgMCAwIDhweCAjZmYwMGZmJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogTWF0aC5yYW5kb20oKSAqIDEuNFxuICAgICAgICAgICAgICAgIH1dLCB7XG4gICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiBNYXRoLnJhbmRvbSgpICogNDAwICsgODAwMCxcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk6IC1pICogMTAwLFxuICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb25zOiBJbmZpbml0eVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgcHJ0Y2wuYXBwZW5kQ2hpbGQocHJ0KVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2V0UGFydGljbGVzKDEwMClcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGUubWVzc2FnZSk7XG4gICAgfVxufSk7XG5cblxuIl0sIm5hbWVzIjpbInJlcXVpcmUiLCJ4bSIsInhNZWdhTWVudSIsIndpbmRvdyIsIkNvcHlUb0NsaXBib2FyZCIsImNvbnRhaW5lcmlkIiwiZ2V0U2VsZWN0aW9uIiwiZW1wdHkiLCJyZW1vdmVBbGxSYW5nZXMiLCJkb2N1bWVudCIsInNlbGVjdGlvbiIsInJhbmdlIiwiYm9keSIsImNyZWF0ZVRleHRSYW5nZSIsIm1vdmVUb0VsZW1lbnRUZXh0IiwiZ2V0RWxlbWVudEJ5SWQiLCJzZWxlY3QiLCJleGVjQ29tbWFuZCIsImNyZWF0ZVJhbmdlIiwic2VsZWN0Tm9kZSIsImFkZFJhbmdlIiwiYWxlcnRpZnkiLCJzdWNjZXNzIiwiY29tbWFmeSIsIm51bSIsInN0ciIsInRvU3RyaW5nIiwic3BsaXQiLCJsZW5ndGgiLCJyZXBsYWNlIiwiam9pbiIsInFubiIsImltYWdlcyIsInNpemVzIiwialF1ZXJ5IiwiJCIsInJlc3BvbnNlV2lkdGgiLCJpc1J0bCIsIm1haW5UaXRsZSIsImFwcE5hbWUiLCJibHVyRWZmZWN0IiwiZGlzYWJsZUxpbmtzIiwiZSIsImNvbnNvbGUiLCJsb2ciLCJtZXNzYWdlIiwieHpvb20iLCJ0aW50IiwiWG9mZnNldCIsIm9uIiwic2V0VGltZW91dCIsInNsaWRlVXAiLCJiaW5kIiwic2xpZGVUb2dnbGUiLCJvd2xDYXJvdXNlbCIsImxvb3AiLCJtYXJnaW4iLCJyZXNwb25zaXZlQ2xhc3MiLCJhdXRvcGxheVRpbWVvdXQiLCJhdXRvcGxheUhvdmVyUGF1c2UiLCJpdGVtIiwicmVzcG9uc2l2ZSIsIm5hdiIsIml0ZW1zIiwiYXV0b3BsYXkiLCJheGlvc0Vycm9yIiwiZXJyIiwicmVzcG9uc2UiLCJzdGF0dXMiLCJlcnJvciIsImsiLCJkYXRhIiwiZXJyb3JzIiwiZXIiLCJyZW1vdmVDbGFzcyIsImFkZENsYXNzIiwiY2xzIiwic2xpZGVEb3duIiwidXJsIiwidmFsIiwic2VsZiIsImF4aW9zIiwiZ2V0IiwidGhlbiIsIk9LIiwibXNnIiwibGlrZWQiLCJzZXJpYWxpemVBcnJheSIsImQiLCJuYW1lIiwidmFsdWUiLCJwb3N0IiwidGV4dCIsInN1Ym1pdCIsImF0dHIiLCJjbGljayIsInJlbW92ZSIsInBpZCIsImFwcGVuZCIsImNvbmNhdCIsImZvY3VzIiwicHJldmVudERlZmF1bHQiLCJmYWRlSW4iLCJxIiwibG9jYXRpb24iLCJocmVmIiwia2V5Iiwib2Zmc2V0Iiwid2lkdGgiLCJsZWZ0IiwidG9wIiwiY3NzIiwiaHRtbCIsInAiLCJsaW5rIiwiaW1hZ2UiLCJwcmljZSIsInFudCIsIkpTT04iLCJwYXJzZSIsInR4dCIsImNvdW50IiwidCIsInNpemUiLCJ1bmRlZmluZWQiLCJpZCIsInB1c2giLCJjb2xvck5hbWVzIiwiY29sb3JzIiwiY2wiLCJjIiwiY29sb3IiLCJlcSIsInNldFBhcnRpY2xlcyIsImkiLCJwcnQiLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwic3R5bGUiLCJNYXRoIiwicmFuZG9tIiwiYW5pbWF0ZSIsInRyYW5zZm9ybSIsImJhY2tncm91bmQiLCJib3hTaGFkb3ciLCJvcGFjaXR5IiwiZHVyYXRpb24iLCJkZWxheSIsIml0ZXJhdGlvbnMiLCJJbmZpbml0eSIsInBydGNsIiwiYXBwZW5kQ2hpbGQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/theme/js/theme.js\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! x-mega-menu/dist/x-mega-menu.min */ \"./node_modules/x-mega-menu/dist/x-mega-menu.min.js\");\n/* harmony import */ var x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0__);\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\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\n__webpack_require__(/*! hc-offcanvas-nav/dist/hc-offcanvas-nav */ \"./node_modules/hc-offcanvas-nav/dist/hc-offcanvas-nav.js\"); // import xMegaMenu from 'x-mega-menu/src/x-mega-menu';\n\n\n\nvar xMegaMenu = window.xMegaMenu = (x_mega_menu_dist_x_mega_menu_min__WEBPACK_IMPORTED_MODULE_0___default().xMegaMenu);\n\nfunction CopyToClipboard(containerid) {\n if (window.getSelection) {\n if (window.getSelection().empty) {\n // Chrome\n window.getSelection().empty();\n } else if (window.getSelection().removeAllRanges) {\n // Firefox\n window.getSelection().removeAllRanges();\n }\n } else if (document.selection) {\n // IE?\n document.selection.empty();\n }\n\n if (document.selection) {\n var range = document.body.createTextRange();\n range.moveToElementText(document.getElementById(containerid));\n range.select().createTextRange();\n document.execCommand(\"copy\");\n } else if (window.getSelection) {\n var range = document.createRange();\n range.selectNode(document.getElementById(containerid));\n window.getSelection().addRange(range);\n document.execCommand(\"copy\");\n }\n\n alertify.success('کپی شد');\n}\n\nfunction commafy(num) {\n var str = num.toString().split('.');\n\n if (str[0].length >= 4) {\n str[0] = str[0].replace(/(\\d)(?=(\\d{3})+$)/g, '$1,');\n }\n\n if (str[1] && str[1].length >= 4) {\n str[1] = str[1].replace(/(\\d{3})/g, '$1,');\n }\n\n return str.join('.');\n}\n\nvar qnn, images, sizes;\njQuery(function ($) {\n try {\n xMegaMenu('#mega-menu', {\n responseWidth: 1124,\n isRtl: true,\n mainTitle: appName,\n blurEffect: true,\n disableLinks: false\n });\n } catch (e) {\n console.log(e.message);\n }\n\n try {\n $(\".xzoom, .xzoom-gallery\").xzoom({\n tint: '#333',\n Xoffset: 15\n });\n } catch (e) {}\n\n $(window).on('load', function () {\n setTimeout(function () {\n $('#preloader').slideUp(700); // let max = 150 ;\n // for( const b of $(\".box\")) {\n // if ($(b).height() > max ){\n // max= $(b).height();\n // }\n // }\n // $('.box').height(max);\n // $(\"#favs .box\").removeAttr('style');\n }, 100);\n });\n setTimeout(function () {\n $('#preloader').slideUp(700);\n }, 100);\n setTimeout(function () {\n $('#preloader').slideUp(700);\n }, 10000);\n $(\"#toggle-side\").bind('click', function () {\n $('aside > div').slideToggle(300);\n });\n $('.owl1').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n // autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n item: 5,\n responsive: {\n 0: {\n nav: false,\n items: 2\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n },\n 1300: {\n items: 5,\n nav: false,\n loop: false\n }\n }\n });\n $('#owl2').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n item: 3,\n responsive: {\n 0: {\n nav: false,\n items: 1\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n }\n }\n });\n $('#thumbs').owlCarousel({\n loop: false,\n margin: 4,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n items: 4 // nav: true,\n\n });\n $('#owlx1').owlCarousel({\n loop: true,\n margin: 15,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n responsive: {\n 0: {\n nav: false,\n items: 1\n },\n 600: {\n items: 2,\n nav: false,\n loop: false\n },\n 1000: {\n items: 3,\n nav: false,\n loop: false\n },\n 1300: {\n items: 4,\n nav: false,\n loop: false\n }\n }\n });\n $('#owl3').owlCarousel({\n loop: false,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n items: 1\n });\n $('.owl-sq').owlCarousel({\n loop: true,\n margin: 0,\n responsiveClass: true,\n autoplay: true,\n autoplayTimeout: 5000,\n responsive: {\n 0: {\n items: 2,\n nav: false\n },\n 600: {\n items: 2\n },\n 1000: {\n items: 3\n },\n 1300: {\n items: 6\n }\n }\n });\n $(\"#cp-deteail\").bind('click', function () {\n CopyToClipboard('tab-analyze');\n });\n\n var axiosError = function axiosError(err) {\n if (err.response.status == 401) {\n alertify.error('Authenticnation Error'); // window.location.href = '/#/login';\n } else if (err.response.status == 422) {\n // console.log(err.response.data.errors);\n for (var k in err.response.data.errors) {\n var er = err.response.data.errors[k];\n alertify.error(k + ' : ' + er[0]);\n }\n } else {\n alertify.error('Error' + err.response.status + ': ' + err.response.data.message);\n }\n };\n\n $(\"#filtering .btn\").bind('click', function () {\n $(\"#filtering .btn\").removeClass('active');\n $(this).addClass('active');\n var cls = $(this).data('cat');\n\n if (cls == 'all') {\n $(\"#da-thumbs .item\").slideDown(900);\n } else {\n $(\"#da-thumbs .item\").slideUp(600, function () {\n setTimeout(function () {\n $(\"#da-thumbs .item.\" + cls).slideDown(513);\n }, 100);\n });\n }\n });\n $(\".fav\").bind('click', function () {\n var url = $(\"#fav-toggle\").val() + '/' + $(this).data('id');\n var self = this;\n axios.get(url).then(function (e) {\n if (e.data.OK) {\n alertify.success(e.data.msg);\n\n if (e.data.liked) {\n $(self).addClass('liked');\n } else {\n $(self).removeClass('liked');\n }\n } else {\n alertify.error(e.data.msg);\n }\n });\n });\n $(\"#question-send\").bind('click', function () {\n var data = {};\n\n var _iterator = _createForOfIteratorHelper($(\"#question-form\").serializeArray()),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var d = _step.value;\n data[d.name] = d.value;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n axios.post($(this).data('url'), data).then(function (e) {\n if (e.data.OK) {\n alertify.success(e.data.msg);\n $(\".comment-containerx\").text(e.data.msg);\n }\n })[\"catch\"](function (e) {\n axiosError(e);\n });\n });\n $(\".xsumbmiter\").submit(function () {\n $(this).attr('action', $(\"#smt\").val());\n });\n $(\".comment-reply\").click(function () {\n $('#reply').remove();\n var pid = $(this).data('id');\n $(\"#comment-form-body\").append(\"\"));\n $(\"#comment-message\").focus();\n });\n $(\".add-to-card\").click(function (e) {\n e.preventDefault();\n axios.get($(this).attr('href')).then(function (e) {\n $(\"#card-count\").text(e.data.data);\n window.alertify.message(e.data.msg);\n\n if (e.data.data > 0) {\n $(\"#card-info\").fadeIn(400);\n }\n });\n });\n $(\".add-to-card-q\").click(function (e) {\n e.preventDefault();\n axios.get($(this).attr('href') + '/' + $(\"#qn\").val() + '/' + $(\"#single-count\").val()).then(function (e) {\n $(\"#card-count\").text(e.data.data);\n window.alertify.message(e.data.msg);\n\n if (e.data.data > 0) {\n $(\"#card-info\").fadeIn(400);\n }\n });\n });\n $(\"#addon-wrapping\").bind('click', function () {\n var q = $(\"#searching\").val();\n window.location.href = $(\"#searching\").data('url') + '?q=' + q;\n return true;\n });\n $(\"#searching\").bind('keyup', function (e) {\n var q = $(this).val();\n\n if (e.key === 'Enter') {\n window.location.href = $(this).data('url') + '?q=' + q;\n return true;\n }\n\n if (q.length < 3) {\n return 0;\n }\n\n var offset = $(this).offset();\n offset.width = $(this).width() + 85 + 'px';\n offset.left -= 50;\n offset.top += 45;\n $(\"#search-list\").css(offset).slideDown(100);\n var text = '';\n var self = this;\n $(\"#search-list\").html(text + '
');\n axios.get($(this).data('ajax') + '?q=' + q).then(function (e) {\n if (!e.data.OK) {\n window.alertify.error(e.data.err);\n } else {\n text += '';\n $(\"#search-list\").html(text);\n }\n });\n });\n $(\".xzoom-thumbs a\").bind('click.light', function () {\n $(\"#lightbx\").attr('href', $(this).attr('href'));\n });\n\n try {\n if ($('#qnt').length != 0) {\n sizes = {};\n qnt = JSON.parse($('#qnt').val()); // console.log(qnt);\n\n var txt = '';\n\n var _iterator3 = _createForOfIteratorHelper(qnt),\n _step3;\n\n try {\n for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {\n var q = _step3.value;\n\n if (q.count > 0) {\n var t = JSON.parse(q.data);\n\n if (sizes[t.size] == undefined) {\n sizes[t.size] = [];\n txt += \"
\\n \").concat(t.size, \"\\n
 \");\n }\n\n t.id = q.id;\n sizes[t.size].push(t);\n }\n }\n } catch (err) {\n _iterator3.e(err);\n } finally {\n _iterator3.f();\n }\n\n $(\"#size-pick\").html(txt);\n setTimeout(function () {\n $(\"#size-pick .size:first-child\").click();\n }, 50);\n $(\"#size-pick .size\").bind('click.select', function () {\n $(\"#size-pick .size\").removeClass('active');\n var colorNames = {};\n\n try {\n colorNames = JSON.parse($(\"#colors\").val());\n } catch (_unused) {}\n\n $(this).addClass('active');\n var colors = sizes[$(this).data('id')];\n var txt = '';\n var cl = '';\n\n var _iterator4 = _createForOfIteratorHelper(colors),\n _step4;\n\n try {\n for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {\n var c = _step4.value;\n cl = colorNames[c.color]; // console.log(c.color,colorNames);\n\n txt += \"
\\n
\\n \").concat(cl, \"\\n
\");\n }\n } catch (err) {\n _iterator4.e(err);\n } finally {\n _iterator4.f();\n }\n\n $(\".color-pick\").html(txt);\n setTimeout(function () {\n $(\".color-pick .color:first-child\").click();\n }, 50);\n $(\".color-pick .color\").bind('click.sel', function () {\n $('.xzoom-thumbs a').eq($(this).data('image')).click();\n $(\".color-pick .color\").removeClass('active');\n $(this).addClass('active');\n $(\"#qn\").val($(this).data('id'));\n $(\"#last-pricex\").text(commafy($(this).data('price')));\n $(\"#counting\").text($(this).data('count'));\n $(\".product-count\").attr('max', $(this).data('count')).val(1);\n });\n });\n }\n } catch (e) {// console.log('size err',e.message);\n } // prticale\n\n\n try {\n var setParticles = function setParticles(num) {\n for (var i = 0; i < num; i++) {\n var prt = document.createElement('div');\n prt.setAttribute('class', 'particles');\n prt.style.left = 100 * Math.random() + \"%\";\n prt.animate([{\n transform: 'translate(-200px, 0) scale(' + Math.random() * 10 + ')'\n }, {\n transform: 'translate(' + Math.random() * 500 + 'px, 112vh) scale(' + Math.random() * 2 + ')',\n background: '#ff00ff',\n boxShadow: '0 0 4px #ff00ff, 0 0 8px #ff00ff',\n opacity: Math.random() * 1.4\n }], {\n duration: Math.random() * 400 + 8000,\n delay: -i * 100,\n iterations: Infinity\n });\n prtcl.appendChild(prt);\n }\n };\n\n var prtcl = document.getElementById('particle');\n setParticles(100);\n } catch (e) {// console.log(e.message);\n }\n\n setTimeout(function () {\n $(\".x-side-menu #searching\").attr('id', 'sub-search');\n $(\"#sub-search\").keyup(function () {\n var q = $(this).val();\n\n if (q.length < 3) {\n $(\".x-side-menu .list-group-item\").remove();\n return false;\n }\n\n axios.get($(this).data('ajax') + '?q=' + q).then(function (e) {\n if (!e.data.OK) {\n window.alertify.error(e.data.err);\n } else {\n $(\".x-side-menu .list-group-item\").remove(); // text += '';\n\n $(\".x-side-menu\").append(text);\n }\n });\n });\n }, 1000);\n $(\"#card table th\").each(function (k, e) {\n $(\"#card td:nth-child(\" + (k + 1) + \")\").attr('data-before', $(e).text().trim());\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LENBQUtrRCxJQUFMLEdBQVk4RCxJQUFaLEVBQXREO0VBQ0gsQ0FGRDtBQUtILENBamRLLENBQU4iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvdGhlbWUvanMvdGhlbWUuanM/MGU4MiJdLCJzb3VyY2VzQ29udGVudCI6WyJyZXF1aXJlKCdoYy1vZmZjYW52YXMtbmF2L2Rpc3QvaGMtb2ZmY2FudmFzLW5hdicpO1xuLy8gaW1wb3J0IHhNZWdhTWVudSBmcm9tICd4LW1lZ2EtbWVudS9zcmMveC1tZWdhLW1lbnUnO1xuaW1wb3J0IHhtIGZyb20gJ3gtbWVnYS1tZW51L2Rpc3QveC1tZWdhLW1lbnUubWluJztcblxubGV0IHhNZWdhTWVudSA9IHdpbmRvdy54TWVnYU1lbnUgPSB4bS54TWVnYU1lbnU7XG5cbmZ1bmN0aW9uIENvcHlUb0NsaXBib2FyZChjb250YWluZXJpZCkge1xuICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKSB7XG4gICAgICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZW1wdHkpIHsgLy8gQ2hyb21lXG4gICAgICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZW1wdHkoKTtcbiAgICAgICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKSB7IC8vIEZpcmVmb3hcbiAgICAgICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7IC8vIElFP1xuICAgICAgICBkb2N1bWVudC5zZWxlY3Rpb24uZW1wdHkoKTtcbiAgICB9XG5cbiAgICBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7XG4gICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7XG4gICAgICAgIHJhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNvbnRhaW5lcmlkKSk7XG4gICAgICAgIHJhbmdlLnNlbGVjdCgpLmNyZWF0ZVRleHRSYW5nZSgpO1xuICAgICAgICBkb2N1bWVudC5leGVjQ29tbWFuZChcImNvcHlcIik7XG4gICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKSB7XG4gICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7XG4gICAgICAgIHJhbmdlLnNlbGVjdE5vZGUoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY29udGFpbmVyaWQpKTtcbiAgICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLmFkZFJhbmdlKHJhbmdlKTtcbiAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJjb3B5XCIpO1xuICAgIH1cblxuICAgIGFsZXJ0aWZ5LnN1Y2Nlc3MoJ9qp2b7bjCDYtNivJyk7XG59XG5cbmZ1bmN0aW9uIGNvbW1hZnkobnVtKSB7XG4gICAgdmFyIHN0ciA9IG51bS50b1N0cmluZygpLnNwbGl0KCcuJyk7XG4gICAgaWYgKHN0clswXS5sZW5ndGggPj0gNCkge1xuXG4gICAgICAgIHN0clswXSA9IHN0clswXS5yZXBsYWNlKC8oXFxkKSg/PShcXGR7M30pKyQpL2csICckMSwnKTtcbiAgICB9XG4gICAgaWYgKHN0clsxXSAmJiBzdHJbMV0ubGVuZ3RoID49IDQpIHtcblxuICAgICAgICBzdHJbMV0gPSBzdHJbMV0ucmVwbGFjZSgvKFxcZHszfSkvZywgJyQxLCcpO1xuICAgIH1cbiAgICByZXR1cm4gc3RyLmpvaW4oJy4nKTtcbn1cblxubGV0IHFubiwgaW1hZ2VzLCBzaXplcztcblxualF1ZXJ5KGZ1bmN0aW9uICgkKSB7XG5cbiAgICB0cnkge1xuICAgICAgICB4TWVnYU1lbnUoJyNtZWdhLW1lbnUnLCB7XG4gICAgICAgICAgICByZXNwb25zZVdpZHRoOiAxMTI0LFxuICAgICAgICAgICAgaXNSdGw6IHRydWUsXG4gICAgICAgICAgICBtYWluVGl0bGU6IGFwcE5hbWUsXG4gICAgICAgICAgICBibHVyRWZmZWN0OiB0cnVlLFxuICAgICAgICAgICAgZGlzYWJsZUxpbmtzOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfSBjYXRjaChlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGUubWVzc2FnZSk7XG4gICAgfVxuXG5cbiAgIHRyeSB7XG4gICAgICAgJChcIi54em9vbSwgLnh6b29tLWdhbGxlcnlcIikueHpvb20oe3RpbnQ6ICcjMzMzJywgWG9mZnNldDogMTV9KTtcbiAgIH0gY2F0Y2goZSkge1xuICAgfVxuXG5cbiAgICAkKHdpbmRvdykub24oJ2xvYWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgJCgnI3ByZWxvYWRlcicpLnNsaWRlVXAoNzAwKTtcbiAgICAgICAgICAgIC8vIGxldCBtYXggPSAxNTAgO1xuICAgICAgICAgICAgLy8gZm9yKCBjb25zdCBiIG9mICQoXCIuYm94XCIpKSB7XG4gICAgICAgICAgICAvLyAgICAgaWYgKCQoYikuaGVpZ2h0KCkgPiBtYXggKXtcbiAgICAgICAgICAgIC8vICAgICAgICAgbWF4PSAkKGIpLmhlaWdodCgpO1xuICAgICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIC8vICQoJy5ib3gnKS5oZWlnaHQobWF4KTtcbiAgICAgICAgICAgIC8vICQoXCIjZmF2cyAuYm94XCIpLnJlbW92ZUF0dHIoJ3N0eWxlJyk7XG5cbiAgICAgICAgfSwgMTAwKTtcbiAgICB9KTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgJCgnI3ByZWxvYWRlcicpLnNsaWRlVXAoNzAwKTtcbiAgICB9LCAxMDApO1xuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoJyNwcmVsb2FkZXInKS5zbGlkZVVwKDcwMCk7XG4gICAgfSwgMTAwMDApO1xuICAgICQoXCIjdG9nZ2xlLXNpZGVcIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoJ2FzaWRlID4gZGl2Jykuc2xpZGVUb2dnbGUoMzAwKTtcbiAgICB9KTtcblxuICAgICQoJy5vd2wxJykub3dsQ2Fyb3VzZWwoe1xuICAgICAgICBsb29wOiB0cnVlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgLy8gYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICBpdGVtOiA1LFxuICAgICAgICByZXNwb25zaXZlOiB7XG4gICAgICAgICAgICAwOiB7XG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxvb3A6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAzLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMzAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDUsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgJCgnI293bDInKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgIG1hcmdpbjogMCxcbiAgICAgICAgcmVzcG9uc2l2ZUNsYXNzOiB0cnVlLFxuICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXlUaW1lb3V0OiA1MDAwLFxuICAgICAgICBhdXRvcGxheUhvdmVyUGF1c2U6IHRydWUsXG4gICAgICAgIGl0ZW06IDMsXG4gICAgICAgIHJlc3BvbnNpdmU6IHtcbiAgICAgICAgICAgIDA6IHtcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGl0ZW1zOiAxLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIDYwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAyLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMDAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDMsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgJCgnI3RodW1icycpLm93bENhcm91c2VsKHtcbiAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgIG1hcmdpbjogNCxcbiAgICAgICAgcmVzcG9uc2l2ZUNsYXNzOiB0cnVlLFxuICAgICAgICBhdXRvcGxheTogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXlUaW1lb3V0OiA1MDAwLFxuICAgICAgICBhdXRvcGxheUhvdmVyUGF1c2U6IHRydWUsXG4gICAgICAgIGl0ZW1zOiA0LFxuICAgICAgICAvLyBuYXY6IHRydWUsXG4gICAgfSk7XG5cbiAgICAkKCcjb3dseDEnKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgIG1hcmdpbjogMTUsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICByZXNwb25zaXZlOiB7XG4gICAgICAgICAgICAwOiB7XG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpdGVtczogMSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgICAgICBuYXY6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxvb3A6IGZhbHNlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAzLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2UsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMzAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDQsXG4gICAgICAgICAgICAgICAgbmF2OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBsb29wOiBmYWxzZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgJCgnI293bDMnKS5vd2xDYXJvdXNlbCh7XG4gICAgICAgIGxvb3A6IGZhbHNlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgYXV0b3BsYXlIb3ZlclBhdXNlOiB0cnVlLFxuICAgICAgICBpdGVtczogMSxcbiAgICB9KTtcbiAgICAkKCcub3dsLXNxJykub3dsQ2Fyb3VzZWwoe1xuICAgICAgICBsb29wOiB0cnVlLFxuICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgIHJlc3BvbnNpdmVDbGFzczogdHJ1ZSxcbiAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgIGF1dG9wbGF5VGltZW91dDogNTAwMCxcbiAgICAgICAgcmVzcG9uc2l2ZToge1xuICAgICAgICAgICAgMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiAyLFxuICAgICAgICAgICAgICAgIG5hdjogZmFsc2VcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICA2MDA6IHtcbiAgICAgICAgICAgICAgICBpdGVtczogMixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAxMDAwOiB7XG4gICAgICAgICAgICAgICAgaXRlbXM6IDMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTMwMDoge1xuICAgICAgICAgICAgICAgIGl0ZW1zOiA2LFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAkKFwiI2NwLWRldGVhaWxcIikuYmluZCgnY2xpY2snLGZ1bmN0aW9uICgpIHtcbiAgICAgICAgQ29weVRvQ2xpcGJvYXJkKCd0YWItYW5hbHl6ZScpO1xuICAgIH0pO1xuICAgIHZhciBheGlvc0Vycm9yID0gZnVuY3Rpb24gKGVycikge1xuICAgICAgICBpZiAoZXJyLnJlc3BvbnNlLnN0YXR1cyA9PSA0MDEpIHtcbiAgICAgICAgICAgIGFsZXJ0aWZ5LmVycm9yKCdBdXRoZW50aWNuYXRpb24gRXJyb3InKTtcbiAgICAgICAgICAgIC8vIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy8jL2xvZ2luJztcbiAgICAgICAgfSBlbHNlIGlmIChlcnIucmVzcG9uc2Uuc3RhdHVzID09IDQyMikge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coZXJyLnJlc3BvbnNlLmRhdGEuZXJyb3JzKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgayBpbiBlcnIucmVzcG9uc2UuZGF0YS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICBsZXQgZXIgPSBlcnIucmVzcG9uc2UuZGF0YS5lcnJvcnNba107XG4gICAgICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3IoayArICcgOiAnICsgZXJbMF0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhbGVydGlmeS5lcnJvcignRXJyb3InICsgZXJyLnJlc3BvbnNlLnN0YXR1cyArICc6ICcgKyBlcnIucmVzcG9uc2UuZGF0YS5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICQoXCIjZmlsdGVyaW5nIC5idG5cIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoXCIjZmlsdGVyaW5nIC5idG5cIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgbGV0IGNscyA9ICQodGhpcykuZGF0YSgnY2F0Jyk7XG4gICAgICAgIGlmIChjbHMgPT0gJ2FsbCcpIHtcbiAgICAgICAgICAgICQoXCIjZGEtdGh1bWJzIC5pdGVtXCIpLnNsaWRlRG93big5MDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgJChcIiNkYS10aHVtYnMgLml0ZW1cIikuc2xpZGVVcCg2MDAsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNkYS10aHVtYnMgLml0ZW0uXCIgKyBjbHMpLnNsaWRlRG93big1MTMpO1xuICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xuXG4gICAgJChcIi5mYXZcIikuYmluZCgnY2xpY2snLGZ1bmN0aW9uICgpIHtcbiAgICAgIGxldCB1cmwgPSAkKFwiI2Zhdi10b2dnbGVcIikudmFsKCkrJy8nKyQodGhpcykuZGF0YSgnaWQnKTtcbiAgICAgIGxldCBzZWxmID0gdGhpcztcbiAgICAgIGF4aW9zLmdldCh1cmwpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgaWYgKGUuZGF0YS5PSyl7XG4gICAgICAgICAgICBhbGVydGlmeS5zdWNjZXNzKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgaWYgKGUuZGF0YS5saWtlZCl7XG4gICAgICAgICAgICAgICAgJChzZWxmKS5hZGRDbGFzcygnbGlrZWQnKTtcbiAgICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgICAgICQoc2VsZikucmVtb3ZlQ2xhc3MoJ2xpa2VkJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1lbHNle1xuICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3IoZS5kYXRhLm1zZyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgJChcIiNxdWVzdGlvbi1zZW5kXCIpLmJpbmQoJ2NsaWNrJywgZnVuY3Rpb24gKCkge1xuICAgICAgICBsZXQgZGF0YSA9IHt9O1xuICAgICAgICBmb3IgKGNvbnN0IGQgb2YgJChcIiNxdWVzdGlvbi1mb3JtXCIpLnNlcmlhbGl6ZUFycmF5KCkpIHtcbiAgICAgICAgICAgIGRhdGFbZC5uYW1lXSA9IGQudmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICBheGlvcy5wb3N0KCQodGhpcykuZGF0YSgndXJsJyksIGRhdGEpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgIGlmIChlLmRhdGEuT0spIHtcbiAgICAgICAgICAgICAgICBhbGVydGlmeS5zdWNjZXNzKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgICAgICQoXCIuY29tbWVudC1jb250YWluZXJ4XCIpLnRleHQoZS5kYXRhLm1zZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICBheGlvc0Vycm9yKGUpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgICQoXCIueHN1bWJtaXRlclwiKS5zdWJtaXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAkKHRoaXMpLmF0dHIoJ2FjdGlvbicsICQoXCIjc210XCIpLnZhbCgpKTtcbiAgICB9KTtcbiAgICAkKFwiLmNvbW1lbnQtcmVwbHlcIikuY2xpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICAkKCcjcmVwbHknKS5yZW1vdmUoKTtcbiAgICAgICAgdmFyIHBpZCA9ICQodGhpcykuZGF0YSgnaWQnKTtcbiAgICAgICAgJChcIiNjb21tZW50LWZvcm0tYm9keVwiKS5hcHBlbmQoXCI8aW5wdXQgdHlwZT1cXFwiaGlkZGVuXFxcIiBpZD1cXFwicmVwbHlcXFwiIG5hbWU9XFxcInBhcmVudFxcXCIgdmFsdWU9XFxcIlwiLmNvbmNhdChwaWQsIFwiXFxcIiAvPlwiKSk7XG4gICAgICAgICQoXCIjY29tbWVudC1tZXNzYWdlXCIpLmZvY3VzKCk7XG4gICAgfSk7XG5cbiAgICAkKFwiLmFkZC10by1jYXJkXCIpLmNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXhpb3MuZ2V0KCQodGhpcykuYXR0cignaHJlZicpKS50aGVuKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAkKFwiI2NhcmQtY291bnRcIikudGV4dChlLmRhdGEuZGF0YSk7XG4gICAgICAgICAgICB3aW5kb3cuYWxlcnRpZnkubWVzc2FnZShlLmRhdGEubXNnKTtcbiAgICAgICAgICAgIGlmIChlLmRhdGEuZGF0YSA+IDApIHtcbiAgICAgICAgICAgICAgICAkKFwiI2NhcmQtaW5mb1wiKS5mYWRlSW4oNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgJChcIi5hZGQtdG8tY2FyZC1xXCIpLmNsaWNrKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgYXhpb3MuZ2V0KCQodGhpcykuYXR0cignaHJlZicpICsgJy8nICsgJChcIiNxblwiKS52YWwoKSsnLycrJChcIiNzaW5nbGUtY291bnRcIikudmFsKCkpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgICQoXCIjY2FyZC1jb3VudFwiKS50ZXh0KGUuZGF0YS5kYXRhKTtcbiAgICAgICAgICAgIHdpbmRvdy5hbGVydGlmeS5tZXNzYWdlKGUuZGF0YS5tc2cpO1xuICAgICAgICAgICAgaWYgKGUuZGF0YS5kYXRhID4gMCkge1xuICAgICAgICAgICAgICAgICQoXCIjY2FyZC1pbmZvXCIpLmZhZGVJbig0MDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgICQoXCIjYWRkb24td3JhcHBpbmdcIikuYmluZCgnY2xpY2snLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGxldCBxID0gJChcIiNzZWFyY2hpbmdcIikudmFsKCk7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJChcIiNzZWFyY2hpbmdcIikuZGF0YSgndXJsJykgKyAnP3E9JyArIHE7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICAgICQoXCIjc2VhcmNoaW5nXCIpLmJpbmQoJ2tleXVwJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgbGV0IHEgPSAkKHRoaXMpLnZhbCgpO1xuICAgICAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJCh0aGlzKS5kYXRhKCd1cmwnKSArICc/cT0nICsgcTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChxLmxlbmd0aCA8IDMpIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG4gICAgICAgIGxldCBvZmZzZXQgPSAkKHRoaXMpLm9mZnNldCgpO1xuICAgICAgICBvZmZzZXQud2lkdGggPSAoJCh0aGlzKS53aWR0aCgpICsgODUpICsgJ3B4JztcbiAgICAgICAgb2Zmc2V0LmxlZnQgLT0gNTA7XG4gICAgICAgIG9mZnNldC50b3AgKz0gNDU7XG4gICAgICAgICQoXCIjc2VhcmNoLWxpc3RcIikuY3NzKG9mZnNldCkuc2xpZGVEb3duKDEwMCk7XG4gICAgICAgIGxldCB0ZXh0ID0gJyc7XG4gICAgICAgIGxldCBzZWxmID0gdGhpcztcbiAgICAgICAgJChcIiNzZWFyY2gtbGlzdFwiKS5odG1sKHRleHQgKyAnPGRpdiBjbGFzcz1cInAtNCB0ZXh0LWNlbnRlclwiPjxpIGNsYXNzPVwiZmEgZmEtc3BpbiBmYS1zcGlubmVyXCI+PC9pPjwvZGl2PicpO1xuICAgICAgICBheGlvcy5nZXQoJCh0aGlzKS5kYXRhKCdhamF4JykgKyAnP3E9JyArIHEpLnRoZW4oZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgIGlmICghZS5kYXRhLk9LKSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmFsZXJ0aWZ5LmVycm9yKGUuZGF0YS5lcnIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8dWwgY2xhc3M9XCJsaXN0LWdyb3VwXCI+JztcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHAgb2YgZS5kYXRhLmRhdGEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSBgPGEgaHJlZj1cIiR7cC5saW5rfVwiPmA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxpbWcgc3JjPVwiJHtwLmltYWdlfVwiIGFsdD1cInByb2R1Y3QgaW1hZ2VcIj5gXG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxoND4ke3AubmFtZX08L2g0PmBcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSBgPGg1PiR7cC5wcmljZX08L2g1PmBcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPC9hPic7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gJzwvbGk+JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8YSBocmVmPVwiJyArICQoc2VsZikuZGF0YSgndXJsJykgKyAnP3E9JyArIHEgKyAnXCI+JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9ICfYrNiz2KrYrNmIINmF2YjYp9ix2K8g2KjbjNi02KrYsSA6JztcbiAgICAgICAgICAgICAgICB0ZXh0ICs9IHE7XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPC9hPic7XG4gICAgICAgICAgICAgICAgdGV4dCArPSAnPC9saT4nO1xuICAgICAgICAgICAgICAgIHRleHQgKz0gJzwvdWw+JztcbiAgICAgICAgICAgICAgICAkKFwiI3NlYXJjaC1saXN0XCIpLmh0bWwodGV4dCk7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgJChcIi54em9vbS10aHVtYnMgYVwiKS5iaW5kKCdjbGljay5saWdodCcsZnVuY3Rpb24gKCkge1xuICAgICAgJChcIiNsaWdodGJ4XCIpLmF0dHIoJ2hyZWYnLCQodGhpcykuYXR0cignaHJlZicpKTtcbiAgICB9KTtcbiAgICB0cnkge1xuICAgICAgICBpZiAoJCgnI3FudCcpLmxlbmd0aCAhPSAwKSB7XG4gICAgICAgICAgICBzaXplcyA9IHt9O1xuICAgICAgICAgICAgcW50ID0gSlNPTi5wYXJzZSgkKCcjcW50JykudmFsKCkpO1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2cocW50KTtcbiAgICAgICAgICAgIGxldCB0eHQgPSAnJztcbiAgICAgICAgICAgIGZvciggY29uc3QgcSBvZiBxbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAocS5jb3VudCA+IDApe1xuICAgICAgICAgICAgICAgICAgICBsZXQgdCA9IEpTT04ucGFyc2UocS5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHNpemVzW3Quc2l6ZV0gPT0gdW5kZWZpbmVkKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemVzW3Quc2l6ZV09W107XG4gICAgICAgICAgICAgICAgICAgICAgICB0eHQgKz0gYDxkaXYgZGF0YS1pZD1cIiR7dC5zaXplfVwiIGNsYXNzPVwiYmFkZ2UgYmctc2Vjb25kYXJ5IHNpemVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHt0LnNpemV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAmbmJzcDtgO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHQuaWQgPSBxLmlkO1xuICAgICAgICAgICAgICAgICAgICBzaXplc1t0LnNpemVdLnB1c2godCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJChcIiNzaXplLXBpY2tcIikuaHRtbCh0eHQpO1xuICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemU6Zmlyc3QtY2hpbGRcIikuY2xpY2soKTtcbiAgICAgICAgICAgIH0sNTApO1xuICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemVcIikuYmluZCgnY2xpY2suc2VsZWN0JyxmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgJChcIiNzaXplLXBpY2sgLnNpemVcIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAgICAgICAgIGxldCBjb2xvck5hbWVzICA9IHt9O1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yTmFtZXMgPSBKU09OLnBhcnNlKCQoXCIjY29sb3JzXCIpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgICAgICAgICBsZXQgY29sb3JzID0gc2l6ZXNbJCh0aGlzKS5kYXRhKCdpZCcpXTtcbiAgICAgICAgICAgICAgICBsZXQgdHh0ID0gJyc7XG4gICAgICAgICAgICAgICAgbGV0IGNsID0gJyc7XG4gICAgICAgICAgICAgICAgZm9yKCBjb25zdCBjIG9mIGNvbG9ycykge1xuICAgICAgICAgICAgICAgICAgICBjbCA9IGNvbG9yTmFtZXNbYy5jb2xvcl07XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGMuY29sb3IsY29sb3JOYW1lcyk7XG4gICAgICAgICAgICAgICAgICAgIHR4dCArPSBgPGRpdiBkYXRhLWlkPVwiJHtjLmlkfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJpY2U9XCIke2MucHJpY2V9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1jb3VudD1cIiR7Yy5jb3VudH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1pbWFnZT1cIiR7Yy5pbWFnZX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb2xvclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsXCIgc3R5bGU9XCJiYWNrZ3JvdW5kOiAke2MuY29sb3J9XCIgPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+JHtjbH08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5gO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGlja1wiKS5odG1sKHR4dCk7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGljayAuY29sb3I6Zmlyc3QtY2hpbGRcIikuY2xpY2soKTtcbiAgICAgICAgICAgICAgICB9LDUwKTtcbiAgICAgICAgICAgICAgICAkKFwiLmNvbG9yLXBpY2sgLmNvbG9yXCIpLmJpbmQoJ2NsaWNrLnNlbCcsZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAkKCcueHpvb20tdGh1bWJzIGEnKS5lcSgkKHRoaXMpLmRhdGEoJ2ltYWdlJykpLmNsaWNrKCk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIuY29sb3ItcGljayAuY29sb3JcIikucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpO1xuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdhY3RpdmUnKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNxblwiKS52YWwoJCh0aGlzKS5kYXRhKCdpZCcpKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNsYXN0LXByaWNleFwiKS50ZXh0KGNvbW1hZnkoJCh0aGlzKS5kYXRhKCdwcmljZScpKSk7XG4gICAgICAgICAgICAgICAgICAgICQoXCIjY291bnRpbmdcIikudGV4dCgkKHRoaXMpLmRhdGEoJ2NvdW50JykpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiLnByb2R1Y3QtY291bnRcIikuYXR0cignbWF4JywkKHRoaXMpLmRhdGEoJ2NvdW50JykpLnZhbCgxKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdzaXplIGVycicsZS5tZXNzYWdlKTtcbiAgICB9XG5cblxuLy8gcHJ0aWNhbGVcbiAgICB0cnkge1xuICAgICAgICBsZXQgcHJ0Y2wgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFydGljbGUnKVxuXG4gICAgICAgIGZ1bmN0aW9uIHNldFBhcnRpY2xlcyhudW0pIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtOyBpKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgcHJ0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcbiAgICAgICAgICAgICAgICBwcnQuc2V0QXR0cmlidXRlKCdjbGFzcycsICdwYXJ0aWNsZXMnKVxuICAgICAgICAgICAgICAgIHBydC5zdHlsZS5sZWZ0ID0gMTAwICogTWF0aC5yYW5kb20oKSArIFwiJVwiXG4gICAgICAgICAgICAgICAgcHJ0LmFuaW1hdGUoW3tcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKC0yMDBweCwgMCkgc2NhbGUoJyArIE1hdGgucmFuZG9tKCkgKiAxMCArICcpJ1xuICAgICAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlKCcgKyBNYXRoLnJhbmRvbSgpICogNTAwICsgJ3B4LCAxMTJ2aCkgc2NhbGUoJyArIE1hdGgucmFuZG9tKCkgKiAyICsgJyknLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAnI2ZmMDBmZicsXG4gICAgICAgICAgICAgICAgICAgIGJveFNoYWRvdzogJzAgMCA0cHggI2ZmMDBmZiwgMCAwIDhweCAjZmYwMGZmJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogTWF0aC5yYW5kb20oKSAqIDEuNFxuICAgICAgICAgICAgICAgIH1dLCB7XG4gICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiBNYXRoLnJhbmRvbSgpICogNDAwICsgODAwMCxcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk6IC1pICogMTAwLFxuICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb25zOiBJbmZpbml0eVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgcHJ0Y2wuYXBwZW5kQ2hpbGQocHJ0KVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2V0UGFydGljbGVzKDEwMClcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGUubWVzc2FnZSk7XG4gICAgfVxuXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICQoXCIueC1zaWRlLW1lbnUgI3NlYXJjaGluZ1wiKS5hdHRyKCdpZCcsJ3N1Yi1zZWFyY2gnKTtcbiAgICAgICAgJChcIiNzdWItc2VhcmNoXCIpLmtleXVwKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGxldCBxID0gJCh0aGlzKS52YWwoKTtcbiAgICAgICAgICAgIGlmICAocS5sZW5ndGggPCAzKXtcbiAgICAgICAgICAgICAgICAkKFwiLngtc2lkZS1tZW51IC5saXN0LWdyb3VwLWl0ZW1cIikucmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYXhpb3MuZ2V0KCQodGhpcykuZGF0YSgnYWpheCcpICsgJz9xPScgKyBxKS50aGVuKGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFlLmRhdGEuT0spIHtcbiAgICAgICAgICAgICAgICAgICAgd2luZG93LmFsZXJ0aWZ5LmVycm9yKGUuZGF0YS5lcnIpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICQoXCIueC1zaWRlLW1lbnUgLmxpc3QtZ3JvdXAtaXRlbVwiKS5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gdGV4dCArPSAnPHVsIGNsYXNzPVwibGlzdC1ncm91cFwiPic7XG4gICAgICAgICAgICAgICAgICAgIGxldCB0ZXh0ID0gJyc7XG4gICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcCBvZiBlLmRhdGEuZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxhIGhyZWY9XCIke3AubGlua31cIj5gO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCArPSBgPGltZyBzcmM9XCIke3AuaW1hZ2V9XCIgYWx0PVwicHJvZHVjdCBpbWFnZVwiPmBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxzcGFuPiR7cC5uYW1lfTwvc3Bhbj4gPGhyPmBcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQgKz0gYDxiPiR7cC5wcmljZX08L2I+YFxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPC9hPic7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8L2xpPic7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPGxpIGNsYXNzPVwibGlzdC1ncm91cC1pdGVtXCI+JztcbiAgICAgICAgICAgICAgICAgICAgdGV4dCArPSAnPGEgaHJlZj1cIicgKyAkKHNlbGYpLmRhdGEoJ3VybCcpICsgJz9xPScgKyBxICsgJ1wiPic7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gJ9is2LPYqtis2Ygg2YXZiNin2LHYryDYqNuM2LTYqtixIDonO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ICs9IHE7XG4gICAgICAgICAgICAgICAgICAgIHRleHQgKz0gJzwvYT4nO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0ICs9ICc8L2xpPic7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRleHQgKz0gJzwvdWw+JztcbiAgICAgICAgICAgICAgICAgICAgJChcIi54LXNpZGUtbWVudVwiKS5hcHBlbmQodGV4dCk7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfSwxMDAwKTtcblxuICAgICQoXCIjY2FyZCB0YWJsZSB0aFwiKS5lYWNoKGZ1bmN0aW9uIChrLGUpIHtcbiAgICAgICAgJChcIiNjYXJkIHRkOm50aC1jaGlsZChcIisoaysxKStcIilcIikuYXR0cignZGF0YS1iZWZvcmUnLCQoZSkudGV4dCgpLnRyaW0oKSk7XG4gICAgfSlcblxuXG59KTtcblxuXG4iXSwibmFtZXMiOlsicmVxdWlyZSIsInhtIiwieE1lZ2FNZW51Iiwid2luZG93IiwiQ29weVRvQ2xpcGJvYXJkIiwiY29udGFpbmVyaWQiLCJnZXRTZWxlY3Rpb24iLCJlbXB0eSIsInJlbW92ZUFsbFJhbmdlcyIsImRvY3VtZW50Iiwic2VsZWN0aW9uIiwicmFuZ2UiLCJib2R5IiwiY3JlYXRlVGV4dFJhbmdlIiwibW92ZVRvRWxlbWVudFRleHQiLCJnZXRFbGVtZW50QnlJZCIsInNlbGVjdCIsImV4ZWNDb21tYW5kIiwiY3JlYXRlUmFuZ2UiLCJzZWxlY3ROb2RlIiwiYWRkUmFuZ2UiLCJhbGVydGlmeSIsInN1Y2Nlc3MiLCJjb21tYWZ5IiwibnVtIiwic3RyIiwidG9TdHJpbmciLCJzcGxpdCIsImxlbmd0aCIsInJlcGxhY2UiLCJqb2luIiwicW5uIiwiaW1hZ2VzIiwic2l6ZXMiLCJqUXVlcnkiLCIkIiwicmVzcG9uc2VXaWR0aCIsImlzUnRsIiwibWFpblRpdGxlIiwiYXBwTmFtZSIsImJsdXJFZmZlY3QiLCJkaXNhYmxlTGlua3MiLCJlIiwiY29uc29sZSIsImxvZyIsIm1lc3NhZ2UiLCJ4em9vbSIsInRpbnQiLCJYb2Zmc2V0Iiwib24iLCJzZXRUaW1lb3V0Iiwic2xpZGVVcCIsImJpbmQiLCJzbGlkZVRvZ2dsZSIsIm93bENhcm91c2VsIiwibG9vcCIsIm1hcmdpbiIsInJlc3BvbnNpdmVDbGFzcyIsImF1dG9wbGF5VGltZW91dCIsImF1dG9wbGF5SG92ZXJQYXVzZSIsIml0ZW0iLCJyZXNwb25zaXZlIiwibmF2IiwiaXRlbXMiLCJhdXRvcGxheSIsImF4aW9zRXJyb3IiLCJlcnIiLCJyZXNwb25zZSIsInN0YXR1cyIsImVycm9yIiwiayIsImRhdGEiLCJlcnJvcnMiLCJlciIsInJlbW92ZUNsYXNzIiwiYWRkQ2xhc3MiLCJjbHMiLCJzbGlkZURvd24iLCJ1cmwiLCJ2YWwiLCJzZWxmIiwiYXhpb3MiLCJnZXQiLCJ0aGVuIiwiT0siLCJtc2ciLCJsaWtlZCIsInNlcmlhbGl6ZUFycmF5IiwiZCIsIm5hbWUiLCJ2YWx1ZSIsInBvc3QiLCJ0ZXh0Iiwic3VibWl0IiwiYXR0ciIsImNsaWNrIiwicmVtb3ZlIiwicGlkIiwiYXBwZW5kIiwiY29uY2F0IiwiZm9jdXMiLCJwcmV2ZW50RGVmYXVsdCIsImZhZGVJbiIsInEiLCJsb2NhdGlvbiIsImhyZWYiLCJrZXkiLCJvZmZzZXQiLCJ3aWR0aCIsImxlZnQiLCJ0b3AiLCJjc3MiLCJodG1sIiwicCIsImxpbmsiLCJpbWFnZSIsInByaWNlIiwicW50IiwiSlNPTiIsInBhcnNlIiwidHh0IiwiY291bnQiLCJ0Iiwic2l6ZSIsInVuZGVmaW5lZCIsImlkIiwicHVzaCIsImNvbG9yTmFtZXMiLCJjb2xvcnMiLCJjbCIsImMiLCJjb2xvciIsImVxIiwic2V0UGFydGljbGVzIiwiaSIsInBydCIsImNyZWF0ZUVsZW1lbnQiLCJzZXRBdHRyaWJ1dGUiLCJzdHlsZSIsIk1hdGgiLCJyYW5kb20iLCJhbmltYXRlIiwidHJhbnNmb3JtIiwiYmFja2dyb3VuZCIsImJveFNoYWRvdyIsIm9wYWNpdHkiLCJkdXJhdGlvbiIsImRlbGF5IiwiaXRlcmF0aW9ucyIsIkluZmluaXR5IiwicHJ0Y2wiLCJhcHBlbmRDaGlsZCIsImtleXVwIiwiZWFjaCIsInRyaW0iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/theme/js/theme.js\n"); /***/ }), diff --git a/resources/theme/js/theme.js b/resources/theme/js/theme.js index 85d6a35..e8e32d9 100755 --- a/resources/theme/js/theme.js +++ b/resources/theme/js/theme.js @@ -466,6 +466,50 @@ jQuery(function ($) { } catch (e) { // console.log(e.message); } + + setTimeout(function () { + $(".x-side-menu #searching").attr('id','sub-search'); + $("#sub-search").keyup(function () { + let q = $(this).val(); + if (q.length < 3){ + $(".x-side-menu .list-group-item").remove(); + return false; + } + axios.get($(this).data('ajax') + '?q=' + q).then(function (e) { + if (!e.data.OK) { + window.alertify.error(e.data.err); + } else { + $(".x-side-menu .list-group-item").remove(); + // text += ''; + $(".x-side-menu").append(text); + + } + }); + }); + },1000); + + $("#card table th").each(function (k,e) { + $("#card td:nth-child("+(k+1)+")").attr('data-before',$(e).text().trim()); + }) + + }); diff --git a/resources/theme/theme.scss b/resources/theme/theme.scss index 9a5a1e1..707baa9 100755 --- a/resources/theme/theme.scss +++ b/resources/theme/theme.scss @@ -509,3 +509,49 @@ $is-dark: 'false'; color: #2d69eb; text-align: end; } + +/*-768px width*/ +@media (max-width: 768px) { + #card { + table,tbody,tr,td{ + display: block !important; + width: 100%; + } + } + th{ + display: none; + } + tr{ + border-bottom: 1px solid gray !important; + td{ + padding-right: 20% !important; + position: relative; + border-bottom: 1px solid silver !important; + img{ + width: 80%; + object-fit: cover; + } + } + td:before{ + content: attr(data-before); + position: absolute; + right: 0; + top: 0; + bottom: 0; + width: 18%; + background: #00000022; + display: flex; + justify-content: center; + align-items: center; + } + } + tr:last-child{ + td{ + padding: 3px !important; + } + td:before{ + display: none; + } + } + +} diff --git a/resources/views/website/card.blade.php b/resources/views/website/card.blade.php index 5b82d92..9a94869 100755 --- a/resources/views/website/card.blade.php +++ b/resources/views/website/card.blade.php @@ -18,7 +18,7 @@
@csrf
-