⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.45
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
works.probilgiegitim.com
/
public
/
dist
/
js
/
View File Name :
288a95e839264e3508d0.js
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[209],{ /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js": /*!*********************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js ***! \*********************************************************************************************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var vform__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vform */ \"./node_modules/vform/dist/vform.es.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\");\n/* harmony import */ var vue_barcode__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vue-barcode */ \"./node_modules/vue-barcode/index.js\");\n/* harmony import */ var vue_barcode__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(vue_barcode__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _audio_beep_wav__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../audio/beep.wav */ \"./resources/js/audio/beep.wav\");\n/* harmony import */ var _audio_beep_wav__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_audio_beep_wav__WEBPACK_IMPORTED_MODULE_4__);\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = \"function\" == typeof Symbol ? Symbol : {}, a = i.iterator || \"@@iterator\", c = i.asyncIterator || \"@@asyncIterator\", u = i.toStringTag || \"@@toStringTag\"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, \"\"); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, \"_invoke\", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: \"normal\", arg: t.call(e, r) }; } catch (t) { return { type: \"throw\", arg: t }; } } e.wrap = wrap; var h = \"suspendedStart\", l = \"suspendedYield\", f = \"executing\", s = \"completed\", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { [\"next\", \"throw\", \"return\"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if (\"throw\" !== c.type) { var u = c.arg, h = u.value; return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) { invoke(\"next\", t, i, a); }, function (t) { invoke(\"throw\", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke(\"throw\", t, i, a); }); } a(c.arg); } var r; o(this, \"_invoke\", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error(\"Generator is already running\"); if (o === s) { if (\"throw\" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else \"return\" === n.method && n.abrupt(\"return\", n.arg); o = f; var p = tryCatch(e, r, n); if (\"normal\" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y; var i = tryCatch(o, e.iterator, r.arg); if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = \"normal\", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: \"root\" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || \"\" === e) { var r = e[a]; if (r) return r.call(e); if (\"function\" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + \" is not iterable\"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) { var e = \"function\" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () { return this; }), define(g, \"toString\", function () { return \"[object Generator]\"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if (\"throw\" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if (\"root\" === i.tryLoc) return handle(\"end\"); if (i.tryLoc <= this.prev) { var c = n.call(i, \"catchLoc\"), u = n.call(i, \"finallyLoc\"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error(\"try statement without catch or finally\"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) { var i = o; break; } } i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if (\"throw\" === t.type) throw t.arg; return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, \"catch\": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if (\"throw\" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, \"next\" === this.method && (this.arg = t), y; } }, e; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n middleware: [\"auth\"],\n metaInfo: function metaInfo() {\n return {\n title: this.$t(\"pos.page_title\")\n };\n },\n components: {\n barcode: vue_barcode__WEBPACK_IMPORTED_MODULE_3___default.a\n },\n data: function data() {\n return {\n breadcrumbsCurrent: \"pos.breadcrumbs_current\",\n breadcrumbs: [{\n name: \"pos.breadcrumbs_first\",\n url: \"home\"\n }, {\n name: \"pos.breadcrumbs_second\",\n url: \"invoices.index\"\n }, {\n name: \"pos.breadcrumbs_active\",\n url: \"\"\n }],\n form: new vform__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n invoiceNo: \"\",\n client: \"\",\n reference: \"\",\n selectedProducts: [],\n subTotal: 0,\n netTotal: 0,\n discountType: 0,\n discount: \"\",\n totalDiscount: \"\",\n transportCost: \"\",\n orderTax: \"\",\n totalTax: 0,\n productTotalTax: 0,\n account: \"\",\n totalPaid: \"\",\n dueAmount: \"\",\n poReference: \"\",\n paymentTerms: \"\",\n deliveryPlace: \"\",\n addPayment: \"\",\n chequeNo: \"\",\n receiptNo: \"\",\n date: new Date().toISOString().slice(0, 10),\n note: \"\",\n status: 1,\n category: \"\",\n invoice_id: null,\n invoice_slug: null\n }),\n taxes: [],\n audio: \"\",\n products: \"\",\n accounts: \"\",\n categories: [],\n subCategories: [],\n productPrefix: \"\",\n invoicePrefix: \"\",\n showModal: false,\n allData: {},\n showSmallInvoiceModal: false,\n printMe: false,\n perPage: 10,\n pagination: \"\",\n query: \"\",\n generateOrder: false,\n clickCount: 0,\n clients: []\n };\n },\n computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_2__[\"mapGetters\"])(\"operations\", [\"items\", \"appInfo\"])),\n mounted: function mounted() {\n var _this = this;\n window.addEventListener(\"keypress\", function (e) {\n if (_this.form.netTotal > 0 && _this.showModal == false && _this.generateOrder == false) {\n if (e.key === \"Enter\") {\n _this.generateOrder = true;\n _this.completeOrderAndAddPayment();\n }\n }\n if (_this.form.netTotal > 0 && _this.form.paidAmount > 0 && _this.generateOrder == true) {\n if (e.key === \"Enter\") {\n _this.clickCount++;\n _this.showModal = false;\n console.log(\"from second click\", _this.clickCount);\n if (_this.clickCount == 1) {\n _this.addPayment();\n } else {\n _this.printInvoice();\n }\n }\n }\n });\n },\n created: function created() {\n this.getClients();\n this.getProducts();\n this.getAccounts();\n this.getTaxes();\n this.getCategories();\n this.getSubCategories();\n this.audio = new Audio(_audio_beep_wav__WEBPACK_IMPORTED_MODULE_4___default.a);\n this.productPrefix = this.appInfo.productPrefix;\n this.invoicePrefix = this.appInfo.invoicePrefix;\n document.body.classList.add(\"sidebar-collapse\");\n },\n watch: {\n // watch search data\n query: function query(newQ, oldQ) {\n if (newQ == \"\") {\n this.getProducts();\n } else {\n this.searchProducts();\n }\n }\n },\n methods: {\n doThis: function doThis() {\n console.log(\"do this\");\n },\n // get all clients\n getClients: function getClients() {\n var _this2 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(\"/api/all-clients\").then(function (_ref) {\n var data = _ref.data;\n _this2.clients = data.data;\n // assign default client\n if (_this2.clients && _this2.clients.length > 0) {\n var defaultClientSlug = _this2.appInfo.defaultClientSlug;\n _this2.form.client = _this2.clients.find(function (item) {\n return item.slug === defaultClientSlug;\n });\n }\n })[\"catch\"](function (error) {\n return console.log(error);\n });\n case 2:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n },\n // get accounts\n getAccounts: function getAccounts() {\n var _this3 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n var _yield$axios$get, data, defaultAccountSlug;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-accounts\");\n case 2:\n _yield$axios$get = _context2.sent;\n data = _yield$axios$get.data;\n _this3.accounts = data.data;\n\n // assign default account\n if (_this3.accounts && _this3.accounts.length > 0) {\n defaultAccountSlug = _this3.appInfo.defaultAccountSlug;\n _this3.form.account = _this3.accounts.find(function (account) {\n return account.slug == defaultAccountSlug;\n });\n }\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n // get taxes\n getTaxes: function getTaxes() {\n var _this4 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var _yield$axios$get2, data, defaultVatRateSlug;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-vat-rates\");\n case 2:\n _yield$axios$get2 = _context3.sent;\n data = _yield$axios$get2.data;\n _this4.taxes = data.data;\n\n // assign default\n if (_this4.taxes && _this4.taxes.length > 0) {\n defaultVatRateSlug = _this4.appInfo.defaultVatRateSlug;\n _this4.form.orderTax = _this4.taxes.find(function (item) {\n return item.slug === defaultVatRateSlug;\n });\n }\n case 6:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3);\n }))();\n },\n // get categories\n getCategories: function getCategories() {\n var _this5 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n var _yield$axios$get3, data;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-product-categories\");\n case 2:\n _yield$axios$get3 = _context4.sent;\n data = _yield$axios$get3.data;\n _this5.categories = data.data;\n case 5:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\n }))();\n },\n // get sub categories\n getSubCategories: function getSubCategories() {\n var _this6 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n var _yield$axios$get4, data;\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-product-sub-categories\");\n case 2:\n _yield$axios$get4 = _context5.sent;\n data = _yield$axios$get4.data;\n _this6.subCategories = data.data;\n case 5:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5);\n }))();\n },\n // get the invoice info by invoice slug\n getInvoice: function getInvoice(invoice_slug) {\n var _this7 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n var _yield$axios$get5, data;\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n _this7.loading = true;\n _context6.next = 3;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/invoices/\" + invoice_slug);\n case 3:\n _yield$axios$get5 = _context6.sent;\n data = _yield$axios$get5.data;\n _this7.allData = data.data;\n _this7.invoiceProducts = _this7.allData.invoiceProducts;\n _this7.invoiceProducts.sort(_this7.sortProducts);\n _this7.loading = false;\n case 9:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6);\n }))();\n },\n // get products\n getProducts: function getProducts() {\n var _this8 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {\n var currentPage, _yield$axios$get6, data;\n return _regeneratorRuntime().wrap(function _callee7$(_context7) {\n while (1) switch (_context7.prev = _context7.next) {\n case 0:\n currentPage = _this8.pagination ? _this8.pagination.current_page : 1;\n _context7.next = 3;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-products-paginated?page=\" + currentPage);\n case 3:\n _yield$axios$get6 = _context7.sent;\n data = _yield$axios$get6.data;\n _this8.products = data.data;\n _this8.products.sort(_this8.sortProducts);\n _this8.pagination = data.meta;\n case 8:\n case \"end\":\n return _context7.stop();\n }\n }, _callee7);\n }))();\n },\n // sort products\n sortProducts: function sortProducts(a, b) {\n if (Number(a.code) < Number(b.code)) {\n return -1;\n }\n if (Number(a.code) > Number(b.code)) {\n return 1;\n }\n return 0;\n },\n // get sub categories for a category\n getSubCategoriesByCategory: function getSubCategoriesByCategory() {\n var _this9 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {\n var _this9$form$category;\n var currentPage, slug, _yield$axios$get7, data;\n return _regeneratorRuntime().wrap(function _callee8$(_context8) {\n while (1) switch (_context8.prev = _context8.next) {\n case 0:\n currentPage = _this9.pagination ? _this9.pagination.current_page : 1;\n _this9.subCategories = [];\n _this9.form.subCategory = \"\";\n slug = (_this9$form$category = _this9.form.category) === null || _this9$form$category === void 0 ? void 0 : _this9$form$category.slug;\n if (!slug) {\n _context8.next = 13;\n break;\n }\n _context8.next = 7;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-pro-sub-categories-by-category/\" + slug + \"?page=\" + currentPage);\n case 7:\n _yield$axios$get7 = _context8.sent;\n data = _yield$axios$get7.data;\n _this9.subCategories = data.cats;\n _this9.products = data.products;\n _context8.next = 17;\n break;\n case 13:\n _context8.next = 15;\n return _this9.getSubCategories();\n case 15:\n _context8.next = 17;\n return _this9.getProducts();\n case 17:\n case \"end\":\n return _context8.stop();\n }\n }, _callee8);\n }))();\n },\n // get products for a sub category\n getProductsBySubCategory: function getProductsBySubCategory() {\n var _this10 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {\n var _this10$form$category, _this10$form$subCateg;\n var currentPage, catSlug, subCatSlug, _yield$axios$get8, data;\n return _regeneratorRuntime().wrap(function _callee9$(_context9) {\n while (1) switch (_context9.prev = _context9.next) {\n case 0:\n currentPage = _this10.pagination ? _this10.pagination.current_page : 1;\n _this10.products = [];\n _this10.form.itemName = \"\";\n catSlug = (_this10$form$category = _this10.form.category) === null || _this10$form$category === void 0 ? void 0 : _this10$form$category.slug;\n subCatSlug = (_this10$form$subCateg = _this10.form.subCategory) === null || _this10$form$subCateg === void 0 ? void 0 : _this10$form$subCateg.slug;\n if (!(catSlug && subCatSlug)) {\n _context9.next = 14;\n break;\n }\n _context9.next = 8;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/all-products-by-sub-categories/\" + catSlug + \"/\" + subCatSlug + \"?page=\" + currentPage);\n case 8:\n _yield$axios$get8 = _context9.sent;\n data = _yield$axios$get8.data;\n _this10.products = data.data;\n _this10.pagination = data.meta;\n _context9.next = 16;\n break;\n case 14:\n _context9.next = 16;\n return _this10.getProducts();\n case 16:\n case \"end\":\n return _context9.stop();\n }\n }, _callee9);\n }))();\n },\n // pagination\n paginate: function paginate() {\n var _this11 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {\n var _this11$form$category, _this11$form$subCateg;\n var catSlug, subCatSlug;\n return _regeneratorRuntime().wrap(function _callee10$(_context10) {\n while (1) switch (_context10.prev = _context10.next) {\n case 0:\n catSlug = (_this11$form$category = _this11.form.category) === null || _this11$form$category === void 0 ? void 0 : _this11$form$category.slug;\n subCatSlug = (_this11$form$subCateg = _this11.form.subCategory) === null || _this11$form$subCateg === void 0 ? void 0 : _this11$form$subCateg.slug;\n if (!(_this11.query === \"\")) {\n _context10.next = 17;\n break;\n }\n if (!catSlug) {\n _context10.next = 8;\n break;\n }\n _context10.next = 6;\n return _this11.getSubCategoriesByCategory();\n case 6:\n _context10.next = 15;\n break;\n case 8:\n if (!(catSlug && subCatSlug)) {\n _context10.next = 13;\n break;\n }\n _context10.next = 11;\n return _this11.getProductsBySubCategory();\n case 11:\n _context10.next = 15;\n break;\n case 13:\n _context10.next = 15;\n return _this11.getProducts();\n case 15:\n _context10.next = 19;\n break;\n case 17:\n _context10.next = 19;\n return _this11.searchProducts();\n case 19:\n case \"end\":\n return _context10.stop();\n }\n }, _callee10);\n }))();\n },\n // Reset pagination\n resetPagination: function resetPagination() {\n var _this12 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {\n return _regeneratorRuntime().wrap(function _callee11$(_context11) {\n while (1) switch (_context11.prev = _context11.next) {\n case 0:\n _this12.pagination ? _this12.pagination.current_page = 1 : \"\";\n _context11.next = 3;\n return _this12.searchProducts();\n case 3:\n case \"end\":\n return _context11.stop();\n }\n }, _callee11);\n }))();\n },\n // search data\n searchProducts: function searchProducts() {\n var _this13 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {\n var catSlug, subCatSlug, currentPage, _yield$axios$get9, data;\n return _regeneratorRuntime().wrap(function _callee12$(_context12) {\n while (1) switch (_context12.prev = _context12.next) {\n case 0:\n catSlug = _this13.form.category ? _this13.form.category.slug : \"\";\n subCatSlug = _this13.form.subCategory ? _this13.form.subCategory.slug : \"\";\n _this13.$store.state.operations.loading = true;\n currentPage = _this13.pagination ? _this13.pagination.current_page : 1;\n _context12.next = 6;\n return axios__WEBPACK_IMPORTED_MODULE_1___default.a.get(window.location.origin + \"/api/products/search-from-pos\" + \"?term=\" + _this13.query + \"&page=\" + currentPage + \"&perPage=\" + _this13.perPage + \"&catSlug=\" + catSlug + \"&SubCatSlug=\" + subCatSlug);\n case 6:\n _yield$axios$get9 = _context12.sent;\n data = _yield$axios$get9.data;\n _this13.products = data.data;\n _this13.products.sort(_this13.sortProducts);\n _this13.pagination = data.meta;\n console.log(_this13.pagination);\n case 12:\n case \"end\":\n return _context12.stop();\n }\n }, _callee12);\n }))();\n },\n // Reload after search\n reload: function reload() {\n var _this14 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {\n return _regeneratorRuntime().wrap(function _callee13$(_context13) {\n while (1) switch (_context13.prev = _context13.next) {\n case 0:\n _this14.query = \"\";\n _context13.next = 3;\n return _this14.searchProducts();\n case 3:\n case \"end\":\n return _context13.stop();\n }\n }, _callee13);\n }))();\n },\n // store item in array\n storeProduct: function storeProduct(product) {\n var index = this.form.selectedProducts.findIndex(function (x) {\n return x.id == product.id;\n });\n var quantity = 1;\n if (product.inventoryCount >= quantity) {\n if (index === -1) {\n var productTax = product.taxType == \"Exclusive\" ? product.priceWithDiscount * (product.taxRate / 100) : product.priceWithDiscount - product.priceWithDiscount / (1 + product.taxRate / 100);\n var totalTax = productTax * quantity;\n this.form.selectedProducts.unshift({\n id: product.id,\n slug: product.slug,\n name: product.name,\n code: product.code,\n taxType: product.taxType,\n taxRate: product.taxRate,\n qty: quantity,\n inventoryCount: product.inventoryCount,\n avgPurchasePrice: product.avgPurchasePrice,\n unitPrice: product.priceWithDiscount,\n unitCost: product.taxType == \"Exclusive\" ? product.priceWithDiscount + productTax : product.priceWithDiscount,\n totalPrice: product.taxType == \"Exclusive\" ? 1 * (product.priceWithDiscount + totalTax) : 1 * product.priceWithDiscount,\n productTax: product.productTax > 0 ? product.productTax : 0,\n totalTax: totalTax\n });\n // play sound if added\n this.audio.play();\n } else {\n quantity = this.form.selectedProducts[index].qty;\n // play sound if added\n this.audio.play();\n this.generateItemTotal(quantity, \"qty\", index, \"increment\");\n var unitPrice = this.form.selectedProducts[index].unitPrice;\n this.generateItemTotal(unitPrice, \"price\", index, \"increment\");\n return;\n }\n } else {\n toast.fire({\n type: \"error\",\n title: this.$t(\"common.insufficient_stock\")\n });\n }\n this.generateItemTotal(quantity, \"qty\", index, \"\");\n return;\n },\n // update array\n generateItemTotal: function generateItemTotal(value, type, index, action) {\n var item = this.form.selectedProducts[index];\n if (item) {\n if (type == \"qty\") {\n item.qty = value;\n if (item.inventoryCount >= value) {\n if (action == \"increment\") {\n item.qty = Number(item.qty) + 1;\n } else if (action == \"decrement\") {\n item.qty = Number(item.qty) - 1;\n }\n } else {\n item.qty = 1;\n toast.fire({\n type: \"error\",\n title: this.$t(\"pos.not_enough_items\")\n });\n }\n } else {\n item.unitPrice = value;\n if (action == \"increment\") {\n item.unitPrice = Number(item.unitPrice);\n } else if (action == \"decrement\") {\n if (item.unitPrice > 0) {\n item.unitPrice = Number(item.unitPrice);\n }\n }\n }\n item.productTax = item.taxType == \"Exclusive\" ? item.unitPrice * (item.taxRate / 100) : item.unitPrice - item.unitPrice / (1 + item.taxRate / 100);\n item.totalTax = item.productTax * item.qty;\n item.totalPrice = item.taxType == \"Exclusive\" ? item.qty * item.unitPrice + item.totalTax : item.qty * item.unitPrice;\n item.unitCost = item.taxType == \"Exclusive\" ? Number(item.unitPrice) + Number(item.productTax) : item.unitPrice;\n this.form.selectedProducts[index] = item;\n }\n this.calculateSum();\n return;\n },\n // remove item from array\n removeItem: function removeItem(item) {\n var index = this.form.selectedProducts.indexOf(item);\n if (index > -1) {\n this.form.selectedProducts.splice(index, 1);\n }\n this.calculateSum();\n return;\n },\n // calculate sum\n calculateSum: function calculateSum() {\n // calculate subtotal\n this.form.subTotal = this.form.selectedProducts.reduce(function (prev, cur) {\n return Number((prev + cur.totalPrice).toFixed(2));\n }, 0);\n\n // calculate product tax\n this.form.productTotalTax = this.form.selectedProducts.reduce(function (prev, cur) {\n return Number((prev + cur.totalTax).toFixed(2));\n }, 0);\n this.form.netTotal = this.form.subTotal;\n\n // calculate invoice tax\n this.form.totalTax = 0;\n if (this.form.orderTax) {\n this.form.totalTax = this.form.orderTax.rate / 100 * this.form.subTotal;\n }\n\n // calculate discount and total\n if (this.form.subTotal > 0) {\n var discount = Number(this.form.discount);\n if (this.form.discountType == 1) {\n discount = discount / 100 * this.form.subTotal;\n this.form.totalDiscount = Number(discount.toFixed(2));\n } else {\n discount = Number(this.form.discount);\n }\n this.form.netTotal = this.form.subTotal + Number(this.form.transportCost) - discount + this.form.totalTax;\n }\n return;\n },\n // save invoice\n saveInvoice: function saveInvoice() {\n var _arguments = arguments,\n _this15 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {\n var isDirect;\n return _regeneratorRuntime().wrap(function _callee14$(_context14) {\n while (1) switch (_context14.prev = _context14.next) {\n case 0:\n isDirect = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : true;\n _context14.next = 3;\n return _this15.form.post(window.location.origin + \"/api/invoices\").then(function (_ref2) {\n var data = _ref2.data;\n _this15.form.invoice_id = data.data.invoice_id;\n _this15.form.invoice_slug = data.data.invoice_slug;\n if (isDirect) {\n _this15.showInvoiceAndPrint();\n }\n })[\"catch\"](function () {\n toast.fire({\n type: \"error\",\n title: _this15.$t(\"common.error_msg\")\n });\n });\n case 3:\n case \"end\":\n return _context14.stop();\n }\n }, _callee14);\n }))();\n },\n // save payment\n addPayment: function addPayment() {\n var _this16 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16() {\n return _regeneratorRuntime().wrap(function _callee16$(_context16) {\n while (1) switch (_context16.prev = _context16.next) {\n case 0:\n if (!(_this16.form.invoice_id != null)) {\n _context16.next = 5;\n break;\n }\n _context16.next = 3;\n return _this16.form.post(window.location.origin + \"/api/invoices-pay\").then( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {\n return _regeneratorRuntime().wrap(function _callee15$(_context15) {\n while (1) switch (_context15.prev = _context15.next) {\n case 0:\n _this16.showModal = false;\n _context15.next = 3;\n return _this16.showInvoiceAndPrint();\n case 3:\n _this16.form.reset();\n _this16.againDefaultSettings();\n case 5:\n case \"end\":\n return _context15.stop();\n }\n }, _callee15);\n })))[\"catch\"](function () {\n toast.fire({\n type: \"error\",\n title: _this16.$t(\"common.error_msg\")\n });\n });\n case 3:\n _context16.next = 7;\n break;\n case 5:\n _context16.next = 7;\n return toast.fire({\n type: \"error\",\n title: _this16.$t(\"common.error_msg\")\n });\n case 7:\n case \"end\":\n return _context16.stop();\n }\n }, _callee16);\n }))();\n },\n // close add payment modal and clear form data\n closeModalAndClearFormData: function closeModalAndClearFormData() {\n this.showModal = false;\n this.generateOrder = false;\n this.form.reset();\n this.againDefaultSettings();\n },\n // close receipt modal\n closeReceiptModal: function closeReceiptModal() {\n this.showSmallInvoiceModal = false;\n this.form.reset();\n this.againDefaultSettings();\n this.clickCount = 0; // reset click count\n console.log(\"from close\" + this.clickCount);\n },\n // complete order and add payment\n completeOrderAndAddPayment: function completeOrderAndAddPayment() {\n var _this17 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {\n return _regeneratorRuntime().wrap(function _callee17$(_context17) {\n while (1) switch (_context17.prev = _context17.next) {\n case 0:\n _context17.next = 2;\n return _this17.saveInvoice(false);\n case 2:\n if (_this17.form.invoice_id != null) {\n _this17.showModal = true;\n _this17.form.paidAmount = _this17.form.netTotal.toFixed(2);\n _this17.$nextTick(function () {\n return _this17.$refs.paidAmountInput.focus();\n });\n }\n case 3:\n case \"end\":\n return _context17.stop();\n }\n }, _callee17);\n }))();\n },\n // show invoice and print\n showInvoiceAndPrint: function showInvoiceAndPrint() {\n var _this18 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {\n return _regeneratorRuntime().wrap(function _callee18$(_context18) {\n while (1) switch (_context18.prev = _context18.next) {\n case 0:\n _context18.next = 2;\n return _this18.getInvoice(_this18.form.invoice_slug);\n case 2:\n _this18.form.reset();\n _this18.againDefaultSettings();\n _this18.showSmallInvoiceModal = true;\n setTimeout(function () {\n return _this18.printInvoice();\n }, 500);\n case 6:\n case \"end\":\n return _context18.stop();\n }\n }, _callee18);\n }))();\n },\n // print invoice\n printInvoice: function printInvoice() {\n var divContents = document.getElementById(\"invoice-POS\").innerHTML;\n var a = window.open(\"\", \"\", \"height=500, width=500\");\n a.document.write('<link rel=\"stylesheet\" href=\"/css/pos_print.css\"><html>');\n a.document.write(\"<body >\");\n a.document.write(divContents);\n a.document.write(\"</body></html>\");\n a.document.close();\n a.print();\n },\n // again default settings\n againDefaultSettings: function againDefaultSettings() {\n this.getAccounts();\n this.getClients();\n this.getTaxes();\n this.showModal = false;\n this.generateOrder = false;\n }\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL3Bvcy9jcmVhdGUudnVlPzRmNDQiXSwibmFtZXMiOlsiX3JlZ2VuZXJhdG9yUnVudGltZSIsImUiLCJ0IiwiciIsIk9iamVjdCIsInByb3RvdHlwZSIsIm4iLCJoYXNPd25Qcm9wZXJ0eSIsIm8iLCJkZWZpbmVQcm9wZXJ0eSIsInZhbHVlIiwiaSIsIlN5bWJvbCIsImEiLCJpdGVyYXRvciIsImMiLCJhc3luY0l0ZXJhdG9yIiwidSIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwid3JhcCIsIkdlbmVyYXRvciIsImNyZWF0ZSIsIkNvbnRleHQiLCJtYWtlSW52b2tlTWV0aG9kIiwidHJ5Q2F0Y2giLCJ0eXBlIiwiYXJnIiwiY2FsbCIsImgiLCJsIiwiZiIsInMiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsIl90eXBlb2YiLCJyZXNvbHZlIiwiX19hd2FpdCIsInRoZW4iLCJjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyIsIkVycm9yIiwiZG9uZSIsIm1ldGhvZCIsImRlbGVnYXRlIiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiVHlwZUVycm9yIiwicmVzdWx0TmFtZSIsIm5leHQiLCJuZXh0TG9jIiwicHVzaFRyeUVudHJ5IiwidHJ5TG9jIiwiY2F0Y2hMb2MiLCJmaW5hbGx5TG9jIiwiYWZ0ZXJMb2MiLCJ0cnlFbnRyaWVzIiwicHVzaCIsInJlc2V0VHJ5RW50cnkiLCJjb21wbGV0aW9uIiwicmVzZXQiLCJpc05hTiIsImxlbmd0aCIsImRpc3BsYXlOYW1lIiwiaXNHZW5lcmF0b3JGdW5jdGlvbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsIm1hcmsiLCJzZXRQcm90b3R5cGVPZiIsIl9fcHJvdG9fXyIsImF3cmFwIiwiYXN5bmMiLCJQcm9taXNlIiwia2V5cyIsInJldmVyc2UiLCJwb3AiLCJwcmV2IiwiY2hhckF0Iiwic2xpY2UiLCJzdG9wIiwicnZhbCIsImhhbmRsZSIsImNvbXBsZXRlIiwiZmluaXNoIiwiX2NhdGNoIiwiZGVsZWdhdGVZaWVsZCIsImFzeW5jR2VuZXJhdG9yU3RlcCIsImdlbiIsInJlamVjdCIsIl9uZXh0IiwiX3Rocm93Iiwia2V5IiwiaW5mbyIsImVycm9yIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJmbiIsInNlbGYiLCJhcmdzIiwiYXJndW1lbnRzIiwiYXBwbHkiLCJlcnIiLCJ1bmRlZmluZWQiLCJvd25LZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiX29iamVjdFNwcmVhZCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwib2JqIiwiX3RvUHJvcGVydHlLZXkiLCJfdG9QcmltaXRpdmUiLCJTdHJpbmciLCJpbnB1dCIsImhpbnQiLCJwcmltIiwidG9QcmltaXRpdmUiLCJyZXMiLCJOdW1iZXIiLCJtaWRkbGV3YXJlIiwibWV0YUluZm8iLCJ0aXRsZSIsIiR0IiwiY29tcG9uZW50cyIsImJhcmNvZGUiLCJWdWVCYXJjb2RlIiwiZGF0YSIsImJyZWFkY3J1bWJzQ3VycmVudCIsImJyZWFkY3J1bWJzIiwidXJsIiwiZm9ybSIsIkZvcm0iLCJpbnZvaWNlTm8iLCJjbGllbnQiLCJyZWZlcmVuY2UiLCJzZWxlY3RlZFByb2R1Y3RzIiwic3ViVG90YWwiLCJuZXRUb3RhbCIsImRpc2NvdW50VHlwZSIsImRpc2NvdW50IiwidG90YWxEaXNjb3VudCIsInRyYW5zcG9ydENvc3QiLCJvcmRlclRheCIsInRvdGFsVGF4IiwicHJvZHVjdFRvdGFsVGF4IiwiYWNjb3VudCIsInRvdGFsUGFpZCIsImR1ZUFtb3VudCIsInBvUmVmZXJlbmNlIiwicGF5bWVudFRlcm1zIiwiZGVsaXZlcnlQbGFjZSIsImFkZFBheW1lbnQiLCJjaGVxdWVObyIsInJlY2VpcHRObyIsImRhdGUiLCJEYXRlIiwidG9JU09TdHJpbmciLCJub3RlIiwic3RhdHVzIiwiY2F0ZWdvcnkiLCJpbnZvaWNlX2lkIiwiaW52b2ljZV9zbHVnIiwidGF4ZXMiLCJhdWRpbyIsInByb2R1Y3RzIiwiYWNjb3VudHMiLCJjYXRlZ29yaWVzIiwic3ViQ2F0ZWdvcmllcyIsInByb2R1Y3RQcmVmaXgiLCJpbnZvaWNlUHJlZml4Iiwic2hvd01vZGFsIiwiYWxsRGF0YSIsInNob3dTbWFsbEludm9pY2VNb2RhbCIsInByaW50TWUiLCJwZXJQYWdlIiwicGFnaW5hdGlvbiIsInF1ZXJ5IiwiZ2VuZXJhdGVPcmRlciIsImNsaWNrQ291bnQiLCJjbGllbnRzIiwiY29tcHV0ZWQiLCJtYXBHZXR0ZXJzIiwibW91bnRlZCIsIl90aGlzIiwid2luZG93IiwiYWRkRXZlbnRMaXN0ZW5lciIsImNvbXBsZXRlT3JkZXJBbmRBZGRQYXltZW50IiwicGFpZEFtb3VudCIsImNvbnNvbGUiLCJsb2ciLCJwcmludEludm9pY2UiLCJjcmVhdGVkIiwiZ2V0Q2xpZW50cyIsImdldFByb2R1Y3RzIiwiZ2V0QWNjb3VudHMiLCJnZXRUYXhlcyIsImdldENhdGVnb3JpZXMiLCJnZXRTdWJDYXRlZ29yaWVzIiwiQXVkaW8iLCJzb3VuZCIsImFwcEluZm8iLCJkb2N1bWVudCIsImJvZHkiLCJjbGFzc0xpc3QiLCJhZGQiLCJ3YXRjaCIsIm5ld1EiLCJvbGRRIiwic2VhcmNoUHJvZHVjdHMiLCJtZXRob2RzIiwiZG9UaGlzIiwiX3RoaXMyIiwiX2NhbGxlZSIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJheGlvcyIsImdldCIsIl9yZWYiLCJkZWZhdWx0Q2xpZW50U2x1ZyIsImZpbmQiLCJpdGVtIiwic2x1ZyIsIl90aGlzMyIsIl9jYWxsZWUyIiwiX3lpZWxkJGF4aW9zJGdldCIsImRlZmF1bHRBY2NvdW50U2x1ZyIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImxvY2F0aW9uIiwib3JpZ2luIiwiX3RoaXM0IiwiX2NhbGxlZTMiLCJfeWllbGQkYXhpb3MkZ2V0MiIsImRlZmF1bHRWYXRSYXRlU2x1ZyIsIl9jYWxsZWUzJCIsIl9jb250ZXh0MyIsIl90aGlzNSIsIl9jYWxsZWU0IiwiX3lpZWxkJGF4aW9zJGdldDMiLCJfY2FsbGVlNCQiLCJfY29udGV4dDQiLCJfdGhpczYiLCJfY2FsbGVlNSIsIl95aWVsZCRheGlvcyRnZXQ0IiwiX2NhbGxlZTUkIiwiX2NvbnRleHQ1IiwiZ2V0SW52b2ljZSIsIl90aGlzNyIsIl9jYWxsZWU2IiwiX3lpZWxkJGF4aW9zJGdldDUiLCJfY2FsbGVlNiQiLCJfY29udGV4dDYiLCJsb2FkaW5nIiwiaW52b2ljZVByb2R1Y3RzIiwic29ydCIsInNvcnRQcm9kdWN0cyIsIl90aGlzOCIsIl9jYWxsZWU3IiwiY3VycmVudFBhZ2UiLCJfeWllbGQkYXhpb3MkZ2V0NiIsIl9jYWxsZWU3JCIsIl9jb250ZXh0NyIsImN1cnJlbnRfcGFnZSIsIm1ldGEiLCJiIiwiY29kZSIsImdldFN1YkNhdGVnb3JpZXNCeUNhdGVnb3J5IiwiX3RoaXM5IiwiX2NhbGxlZTgiLCJfdGhpczkkZm9ybSRjYXRlZ29yeSIsIl95aWVsZCRheGlvcyRnZXQ3IiwiX2NhbGxlZTgkIiwiX2NvbnRleHQ4Iiwic3ViQ2F0ZWdvcnkiLCJjYXRzIiwiZ2V0UHJvZHVjdHNCeVN1YkNhdGVnb3J5IiwiX3RoaXMxMCIsIl9jYWxsZWU5IiwiX3RoaXMxMCRmb3JtJGNhdGVnb3J5IiwiX3RoaXMxMCRmb3JtJHN1YkNhdGVnIiwiY2F0U2x1ZyIsInN1YkNhdFNsdWciLCJfeWllbGQkYXhpb3MkZ2V0OCIsIl9jYWxsZWU5JCIsIl9jb250ZXh0OSIsIml0ZW1OYW1lIiwicGFnaW5hdGUiLCJfdGhpczExIiwiX2NhbGxlZTEwIiwiX3RoaXMxMSRmb3JtJGNhdGVnb3J5IiwiX3RoaXMxMSRmb3JtJHN1YkNhdGVnIiwiX2NhbGxlZTEwJCIsIl9jb250ZXh0MTAiLCJyZXNldFBhZ2luYXRpb24iLCJfdGhpczEyIiwiX2NhbGxlZTExIiwiX2NhbGxlZTExJCIsIl9jb250ZXh0MTEiLCJfdGhpczEzIiwiX2NhbGxlZTEyIiwiX3lpZWxkJGF4aW9zJGdldDkiLCJfY2FsbGVlMTIkIiwiX2NvbnRleHQxMiIsIiRzdG9yZSIsInN0YXRlIiwib3BlcmF0aW9ucyIsInJlbG9hZCIsIl90aGlzMTQiLCJfY2FsbGVlMTMiLCJfY2FsbGVlMTMkIiwiX2NvbnRleHQxMyIsInN0b3JlUHJvZHVjdCIsInByb2R1Y3QiLCJpbmRleCIsImZpbmRJbmRleCIsIngiLCJpZCIsInF1YW50aXR5IiwiaW52ZW50b3J5Q291bnQiLCJwcm9kdWN0VGF4IiwidGF4VHlwZSIsInByaWNlV2l0aERpc2NvdW50IiwidGF4UmF0ZSIsInVuc2hpZnQiLCJxdHkiLCJhdmdQdXJjaGFzZVByaWNlIiwidW5pdFByaWNlIiwidW5pdENvc3QiLCJ0b3RhbFByaWNlIiwicGxheSIsImdlbmVyYXRlSXRlbVRvdGFsIiwidG9hc3QiLCJmaXJlIiwiYWN0aW9uIiwiY2FsY3VsYXRlU3VtIiwicmVtb3ZlSXRlbSIsImluZGV4T2YiLCJzcGxpY2UiLCJyZWR1Y2UiLCJjdXIiLCJ0b0ZpeGVkIiwicmF0ZSIsInNhdmVJbnZvaWNlIiwiX2FyZ3VtZW50cyIsIl90aGlzMTUiLCJfY2FsbGVlMTQiLCJpc0RpcmVjdCIsIl9jYWxsZWUxNCQiLCJfY29udGV4dDE0IiwicG9zdCIsIl9yZWYyIiwic2hvd0ludm9pY2VBbmRQcmludCIsIl90aGlzMTYiLCJfY2FsbGVlMTYiLCJfY2FsbGVlMTYkIiwiX2NvbnRleHQxNiIsIl9jYWxsZWUxNSIsIl9jYWxsZWUxNSQiLCJfY29udGV4dDE1IiwiYWdhaW5EZWZhdWx0U2V0dGluZ3MiLCJjbG9zZU1vZGFsQW5kQ2xlYXJGb3JtRGF0YSIsImNsb3NlUmVjZWlwdE1vZGFsIiwiX3RoaXMxNyIsIl9jYWxsZWUxNyIsIl9jYWxsZWUxNyQiLCJfY29udGV4dDE3IiwiJG5leHRUaWNrIiwiJHJlZnMiLCJwYWlkQW1vdW50SW5wdXQiLCJmb2N1cyIsIl90aGlzMTgiLCJfY2FsbGVlMTgiLCJfY2FsbGVlMTgkIiwiX2NvbnRleHQxOCIsInNldFRpbWVvdXQiLCJkaXZDb250ZW50cyIsImdldEVsZW1lbnRCeUlkIiwiaW5uZXJIVE1MIiwib3BlbiIsIndyaXRlIiwiY2xvc2UiLCJwcmludCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OzsrQ0FtZEEscUpBQUFBLG1CQUFBLFlBQUFBLG9CQUFBLFdBQUFDLENBQUEsU0FBQUMsQ0FBQSxFQUFBRCxDQUFBLE9BQUFFLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxTQUFBLEVBQUFDLENBQUEsR0FBQUgsQ0FBQSxDQUFBSSxjQUFBLEVBQUFDLENBQUEsR0FBQUosTUFBQSxDQUFBSyxjQUFBLGNBQUFQLENBQUEsRUFBQUQsQ0FBQSxFQUFBRSxDQUFBLElBQUFELENBQUEsQ0FBQUQsQ0FBQSxJQUFBRSxDQUFBLENBQUFPLEtBQUEsS0FBQUMsQ0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLENBQUEsR0FBQUYsQ0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFKLENBQUEsQ0FBQUssYUFBQSx1QkFBQUMsQ0FBQSxHQUFBTixDQUFBLENBQUFPLFdBQUEsOEJBQUFDLE9BQUFqQixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBQyxNQUFBLENBQUFLLGNBQUEsQ0FBQVAsQ0FBQSxFQUFBRCxDQUFBLElBQUFTLEtBQUEsRUFBQVAsQ0FBQSxFQUFBaUIsVUFBQSxNQUFBQyxZQUFBLE1BQUFDLFFBQUEsU0FBQXBCLENBQUEsQ0FBQUQsQ0FBQSxXQUFBa0IsTUFBQSxtQkFBQWpCLENBQUEsSUFBQWlCLE1BQUEsWUFBQUEsT0FBQWpC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QTtjQUNBaU4sT0FBQSxDQUFBaFAsSUFBQSxDQUFBdkUsS0FBQTtjQUNBdVQsT0FBQSxDQUFBWCxvQkFBQTtjQUVBVyxPQUFBLENBQUF0TSxxQkFBQTtjQUNBME0sVUFBQTtnQkFBQSxPQUFBSixPQUFBLENBQUFwTCxZQUFBO2NBQUE7WUFBQTtZQUFBO2NBQUEsT0FBQXVMLFVBQUEsQ0FBQXZTLElBQUE7VUFBQTtRQUFBLEdBQUFxUyxTQUFBO01BQUE7SUFDQTtJQUVBO0lBQ0FyTCxZQUFBLFdBQUFBLGFBQUE7TUFDQSxJQUFBeUwsV0FBQSxHQUFBOUssUUFBQSxDQUFBK0ssY0FBQSxnQkFBQUMsU0FBQTtNQUNBLElBQUE5WCxDQUFBLEdBQUE2TCxNQUFBLENBQUFrTSxJQUFBO01BQ0EvWCxDQUFBLENBQUE4TSxRQUFBLENBQUFrTCxLQUFBLENBQ0EseURBQ0E7TUFDQWhZLENBQUEsQ0FBQThNLFFBQUEsQ0FBQWtMLEtBQUE7TUFDQWhZLENBQUEsQ0FBQThNLFFBQUEsQ0FBQWtMLEtBQUEsQ0FBQUosV0FBQTtNQUNBNVgsQ0FBQSxDQUFBOE0sUUFBQSxDQUFBa0wsS0FBQTtNQUNBaFksQ0FBQSxDQUFBOE0sUUFBQSxDQUFBbUwsS0FBQTtNQUNBalksQ0FBQSxDQUFBa1ksS0FBQTtJQUNBO0lBQ0E7SUFDQXRCLG9CQUFBLFdBQUFBLHFCQUFBO01BQ0EsS0FBQXJLLFdBQUE7TUFDQSxLQUFBRixVQUFBO01BQ0EsS0FBQUcsUUFBQTtNQUNBLEtBQUF6QixTQUFBO01BQ0EsS0FBQU8sYUFBQTtJQUNBO0VBQ0E7QUFDQSxDQUFDIiwiZmlsZSI6Ii4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9wb3MvY3JlYXRlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcy5qcyIsInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBpZD1cInBvc1wiPlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgU3RhcnQgLS0+XG4gICAgPGJyZWFkY3J1bWJzIDppdGVtcz1cImJyZWFkY3J1bWJzXCIgOmN1cnJlbnQ9XCJicmVhZGNydW1ic0N1cnJlbnRcIiAvPlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgZW5kIC0tPlxuXG4gICAgPGRpdiBjbGFzcz1cInJvdyBzbS1jb2wtcmV2ZXJzZVwiPlxuICAgICAgPCEtLSBwb3MgbGVmdCBhcmVhIHN0YXJ0IC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtNVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHktbCBwLTBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHBsLTMgcHQtMyBwci0zXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggdy0xMDBcIj5cbiAgICAgICAgICAgICAgICA8di1zZWxlY3QgY2xhc3M9XCJmbGV4LWdyb3ctMVwiIHYtbW9kZWw9XCJmb3JtLmNsaWVudFwiIDpvcHRpb25zPVwiY2xpZW50c1wiIGxhYmVsPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdjbGllbnQnKSB9XCIgbmFtZT1cImNsaWVudFwiXG4gICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLmNsaWVudF9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICA8Q2xpZW50Q3JlYXRlTW9kYWwgQHJlbG9hZENsaWVudHM9XCJnZXRDbGllbnRzXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNvbGlkIGZhLXBsdXMtY2lyY2xlXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9DbGllbnRDcmVhdGVNb2RhbD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJjbGllbnRcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlIHRhYmxlLXdyYXBcIj5cbiAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgdGFibGUtc3RyaXBlZFwiPlxuICAgICAgICAgICAgICAgIDx0aGVhZD5cbiAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+e3sgJHQoXCJjb21tb24ucHJvZHVjdFwiKSB9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiPnt7ICR0KFwiY29tbW9uLnByaWNlXCIpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7ICR0KFwiY29tbW9uLnF1YW50aXR5XCIpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDx0aCBzY29wZT1cImNvbFwiIGNsYXNzPVwidGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7eyAkdChcImNvbW1vbi5zdWJ0b3RhbFwiKSB9fVxuICAgICAgICAgICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIiBjbGFzcz1cInRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAge3sgJHQoXCJjb21tb24uYWN0aW9uXCIpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgPHRib2R5IHYtaWY9XCJmb3JtLnNlbGVjdGVkUHJvZHVjdHMgJiYgZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgIFwiPlxuICAgICAgICAgICAgICAgICAgPHRyIHYtZm9yPVwiKHByb2R1Y3QsIGkpIGluIGZvcm0uc2VsZWN0ZWRQcm9kdWN0c1wiIDprZXk9XCJpXCI+XG4gICAgICAgICAgICAgICAgICAgIDx0ZD57eyBwcm9kdWN0Lm5hbWUgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICA8dGQ+e3sgcHJvZHVjdC51bml0UHJpY2UgfCB3aXRoQ3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjdXN0b20tcXR5LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiLVwiIGNsYXNzPVwiYnV0dG9uLW1pbnVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tZGFuZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1maWVsZD1cInF1YW50aXR5XCIgQGNsaWNrPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0LnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdxdHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZWNyZW1lbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiA6aWQ9XCJgUXR5LSR7aX1gXCIgOnZhbHVlPVwicHJvZHVjdC5xdHlcIiBuYW1lPVwicXVhbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInF1YW50aXR5LWZpZWxkIGJvcmRlci0wIGluY3JlbWVudG9yXCIgcmVxdWlyZWQgbWluPVwiMVwiIDptYXg9XCJwcm9kdWN0LmludmVudG9yeUNvdW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGNoYW5nZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlSXRlbVRvdGFsKCRldmVudC50YXJnZXQudmFsdWUsICdxdHknLCBpLCAnJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiBAa2V5dXA9XCJnZW5lcmF0ZUl0ZW1Ub3RhbCgkZXZlbnQudGFyZ2V0LnZhbHVlLCAncXR5JywgaSwgJycpXCIgcGxhY2Vob2xkZXI9XCJRdWFudGl0eVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiK1wiIGNsYXNzPVwiYnV0dG9uLXBsdXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1maWVsZD1cInF1YW50aXR5XCIgQGNsaWNrPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0LnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdxdHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbmNyZW1lbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgIDx0ZD57eyBwcm9kdWN0LnRvdGFsUHJpY2UgfCB3aXRoQ3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0ZXh0LXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlclwiIEBjbGljaz1cInJlbW92ZUl0ZW0ocHJvZHVjdClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICAgIDx0Ym9keSB2LWVsc2U+XG4gICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjVcIj57eyAkdChcIm5vX2RhdGFfZm91bmRcIikgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3MtY2FyZC1mb290ZXIgYmctd2hpdGVcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBwdC0zIHBsLTMgcHItM1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNiBjb2wtbGctNlwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkaXNjb3VudFR5cGVcIj57e1xuICAgICAgICAgICAgICAgICAgJHQoXCJjb21tb24uZGlzY291bnRfdHlwZVwiKVxuICAgICAgICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8c2VsZWN0IGlkPVwiZGlzY291bnRUeXBlXCIgdi1tb2RlbD1cImZvcm0uZGlzY291bnRUeXBlXCIgc3RlcD1cImFueVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2Rpc2NvdW50VHlwZScpIH1cIiBuYW1lPVwiZGlzY291bnRUeXBlXCIgQGNoYW5nZT1cImNhbGN1bGF0ZVN1bVwiXG4gICAgICAgICAgICAgICAgICBAa2V5dXA9XCJjYWxjdWxhdGVTdW1cIj5cbiAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIwXCI+e3sgJHQoXCJjb21tb24uZml4ZWRcIikgfX08L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoXCJjb21tb24ucGVyY2VudGFnZVwiKSB9fSglKTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJkaXNjb3VudFR5cGVcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGlzY291bnRcIj57eyAkdChcImNvbW1vbi5kaXNjb3VudFwiKSB9fVxuICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImZvcm0uZGlzY291bnRUeXBlID09IDFcIj4oJSk8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cImRpc2NvdW50XCIgdi1tb2RlbD1cImZvcm0uZGlzY291bnRcIiB0eXBlPVwibnVtYmVyXCIgc3RlcD1cImFueVwiIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgICAgICA6bWF4PVwiZm9ybS5kaXNjb3VudFR5cGUgPT0gMSA/IDEwMCA6IGZvcm0uc3ViVG90YWxcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2Rpc2NvdW50JykgfVwiIG5hbWU9XCJkaXNjb3VudFwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uZGlzY291bnRfcGxhY2Vob2xkZXInKVwiIEBjaGFuZ2U9XCJjYWxjdWxhdGVTdW1cIiBAa2V5dXA9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiZm9ybS5kaXNjb3VudFR5cGUgPT0gMVwiIGNsYXNzPVwiaW5wdXQtZ3JvdXAtYXBwZW5kXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dFwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgZm9ybS50b3RhbERpc2NvdW50IHwgd2l0aEN1cnJlbmN5XG4gICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImRpc2NvdW50XCIgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02IGNvbC1sZy02XCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRyYW5zcG9ydENvc3RcIj57e1xuICAgICAgICAgICAgICAgICAgJHQoXCJjb21tb24udHJhbnNwb3J0X2Nvc3RcIilcbiAgICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwidHJhbnNwb3J0Q29zdFwiIHYtbW9kZWw9XCJmb3JtLnRyYW5zcG9ydENvc3RcIiB0eXBlPVwibnVtYmVyXCIgc3RlcD1cImFueVwiIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCd0cmFuc3BvcnRDb3N0JykgfVwiIG5hbWU9XCJ0cmFuc3BvcnRDb3N0XCJcbiAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24udHJhbnNwb3J0X2Nvc3RfcGxhY2Vob2xkZXInKVwiIEBjaGFuZ2U9XCJjYWxjdWxhdGVTdW1cIiBAa2V5dXA9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJ0cmFuc3BvcnRDb3N0XCIgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgPGRpdiB2LWlmPVwidGF4ZXNcIiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTYgY29sLWxnLTZcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwib3JkZXJUYXhcIj57eyAkdChcImNvbW1vbi5pbnZvaWNlX3RheFwiKSB9fSA8L2xhYmVsPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cCBzZWxlY3QtaW5wdXQtZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgIDx2LXNlbGVjdCBjbGFzcz1cInctODVcIiB2LW1vZGVsPVwiZm9ybS5vcmRlclRheFwiIDpvcHRpb25zPVwidGF4ZXNcIiBsYWJlbD1cImNvZGVcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdvcmRlclRheCcpIH1cIiBuYW1lPVwib3JkZXJUYXhcIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnc2FsZXMuY29tbW9uLmludm9pY2VfdGF4X3BsYWNlaG9sZGVyJylcIiBAaW5wdXQ9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLXByZXBlbmQgaW5wdXQtYy1tYXJnaW5cIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLXRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiB2LWlmPVwiZm9ybS5vcmRlclRheFwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtLnRvdGFsVGF4IHwgd2l0aEN1cnJlbmN5XG4gICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1lbHNlPnt7IDAgfCB3aXRoQ3VycmVuY3kgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3MtbmV0LXRvdGFsIG5vaS1wcmludFwiPlxuICAgICAgICAgICAgICB7eyAkdChcImNvbW1vbi5uZXRfdG90YWxcIikgfX06IHt7IGZvcm0ubmV0VG90YWwgfCB3aXRoQ3VycmVuY3kgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG5vLXByaW50XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbGctNSBtYi0xXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiIEBjbGljaz1cInNhdmVJbnZvaWNlXCIgQGtleWRvd249XCJmb3JtLm9uS2V5ZG93bigkZXZlbnQpXCI+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNhdmVcIiAvPiB7eyAkdChcInBvcy5jb21wbGV0ZV9vcmRlclwiKSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBjb2wtbGctNSBtYi0xXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiIEBjbGljaz1cImNvbXBsZXRlT3JkZXJBbmRBZGRQYXltZW50XCI+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWNyZWRpdC1jYXJkXCIgLz5cbiAgICAgICAgICAgICAge3sgJHQoXCJwb3MuY29tcGxldGVfb3JkZXJfYW5kX2FkZF9wYXltZW50XCIpIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1sZy0yXCI+XG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJyZXNldFwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgZmxvYXQtcmlnaHQgYnRuLWJsb2NrXCIgQGNsaWNrPVwiZm9ybS5yZXNldCgpXCI+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBvd2VyLW9mZlwiIC8+IHt7ICR0KFwiY29tbW9uLnJlc2V0XCIpIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gcG9zIGxlZnQgYXJlYSBlbmQgLS0+XG5cbiAgICAgIDwhLS0gUE9TIFJpZ2h0IGFyZWEgc3RhcnQgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC03XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkIGJnLXRyYW5zcGFyZW50XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBvcy1yLWhlYWQgYmctd2hpdGVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiY2F0ZWdvcmllc1wiIGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICAgIDx2LXNlbGVjdCB2LW1vZGVsPVwiZm9ybS5jYXRlZ29yeVwiIDpvcHRpb25zPVwiY2F0ZWdvcmllc1wiIGxhYmVsPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdjYXRlZ29yeScpIH1cIiBuYW1lPVwiY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5jYXRlZ29yeV9uYW1lX3BsYWNlaG9sZGVyJylcIiBAaW5wdXQ9XCJnZXRTdWJDYXRlZ29yaWVzQnlDYXRlZ29yeVwiIC8+XG4gICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImNhdGVnb3J5XCIgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgdi1pZj1cInN1YkNhdGVnb3JpZXNcIiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTZcIj5cbiAgICAgICAgICAgICAgICA8di1zZWxlY3Qgdi1tb2RlbD1cImZvcm0uc3ViQ2F0ZWdvcnlcIiA6b3B0aW9ucz1cInN1YkNhdGVnb3JpZXNcIiBsYWJlbD1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnc3ViQ2F0ZWdvcnknKSB9XCIgbmFtZT1cInN1YkNhdGVnb3J5XCJcbiAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uY2F0ZWdvcnlfbmFtZV9wbGFjZWhvbGRlcicpXCIgQGlucHV0PVwiZ2V0UHJvZHVjdHNCeVN1YkNhdGVnb3J5XCIgLz5cbiAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwic3ViQ2F0ZWdvcnlcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiB2LWlmPVwicHJvZHVjdHNcIiBjbGFzcz1cImNvbC1tZC0xMiBmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCB3LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgPHNlYXJjaCBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgOmlzUG9zU2VhcmNoPVwidHJ1ZVwiIHYtbW9kZWw9XCJxdWVyeVwiIEByZXNldC1wYWdpbmF0aW9uPVwicmVzZXRQYWdpbmF0aW9uKClcIlxuICAgICAgICAgICAgICAgICAgICBAcmVsb2FkPVwicmVsb2FkXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxQcm9kdWN0Q3JlYXRlTW9kYWwgQHJlbG9hZFByb2R1Y3RzPVwiZ2V0UHJvZHVjdHNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLXRleHQgY3JlYXRlLWJ0bi0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc29saWQgZmEtcGx1cy1jaXJjbGVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9Qcm9kdWN0Q3JlYXRlTW9kYWw+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInNlbGVjdGVkUHJvZHVjdHNcIiAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBiZy13aGl0ZSBtdC0zIHBvcy1ib2R5XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zLWl0ZW0tZ3JpZFwiPlxuICAgICAgICAgICAgICA8ZGl2IHYtZm9yPVwicHJvZHVjdCBpbiBwcm9kdWN0c1wiIDprZXk9XCJwcm9kdWN0LmlkXCIgQGNsaWNrPVwic3RvcmVQcm9kdWN0KHByb2R1Y3QpXCIgOmNsYXNzPVwiTnVtYmVyKHByb2R1Y3QuaW52ZW50b3J5Q291bnQpIDwgMSA/ICdwb3MtaXRlbS1ncmlkLXJlZCcgOiAnJ1xuICAgICAgICAgICAgICAgIFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3MtYm94XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcy1ib3gtaW1nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiB2LWlmPVwicHJvZHVjdC5pbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cInBvcy1ib3gtaWNvblwiIDpzcmM9XCJwcm9kdWN0LmltYWdlXCIgYWx0PVwicHJvZHVjdCBpbWFnZVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiB2LWVsc2U+e3sgJHQoXCJjb21tb24ubm9fcHJldmlld1wiKSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJib3gtcXR5XCIgOmNsYXNzPVwiTnVtYmVyKHByb2R1Y3QuaW52ZW50b3J5Q291bnQpIDwgMSA/ICdxdHktcmVkJyA6ICcnXG4gICAgICAgICAgICAgICAgICAgICAgXCI+e3sgcHJvZHVjdC5pbnZlbnRvcnlDb3VudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcy1ib3gtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBwcm9kdWN0LmNvZGUgfCB3aXRoUHJlZml4KHByb2R1Y3RQcmVmaXgpIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInBvcy1ib3gtdGV4dFwiPnt7IHByb2R1Y3QubmFtZSB9fTwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8IS0tIHBhZ2luYXRpb24tc3RhcnQgLS0+XG4gICAgICAgICAgICAgICAgPHBhZ2luYXRpb24gdi1pZj1cInBhZ2luYXRpb24gJiYgcGFnaW5hdGlvbi5sYXN0X3BhZ2UgPiAxXCIgOnBhZ2luYXRpb249XCJwYWdpbmF0aW9uXCIgOm9mZnNldD1cIjVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJqdXN0aWZ5LWZsZXgtZW5kIG10LTNcIiBAcGFnaW5hdGU9XCJwYWdpbmF0ZVwiIC8+XG4gICAgICAgICAgICAgICAgPCEtLSBwYWdpbmF0aW9uLWVuZCAtLT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gUE9TIFJpZ2h0IGFyZWEgZW5kIC0tPlxuICAgIDwvZGl2PlxuXG4gICAgPCEtLSB1c2UgdGhlIG1vZGFsIGNvbXBvbmVudCwgcGFzcyBpbiB0aGUgcHJvcCAtLT5cbiAgICA8TW9kYWwgY2xhc3M9XCJwYXktbW9kYWxcIiB2LWlmPVwic2hvd01vZGFsXCIgOmZvcm09XCJmb3JtXCI+XG4gICAgICA8aDUgc2xvdD1cImhlYWRlclwiPnt7ICR0KFwicG9zLmFkZF9wYXltZW50XCIpIH19PC9oNT5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMFwiIHNsb3Q9XCJib2R5XCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiIHYtaWY9XCJhY2NvdW50cyAmJlxuICAgICAgICAgICAgZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmXG4gICAgICAgICAgICBmb3JtLnNlbGVjdGVkUHJvZHVjdHMubGVuZ3RoID4gMFxuICAgICAgICAgICAgXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtOFwiPlxuICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiYWNjb3VudFwiPnt7ICR0KFwiY29tbW9uLmFjY291bnRcIikgfX1cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICA8di1zZWxlY3Qgdi1tb2RlbD1cImZvcm0uYWNjb3VudFwiIDpvcHRpb25zPVwiYWNjb3VudHNcIiBsYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdhY2NvdW50JykgfVwiIG5hbWU9XCJhY2NvdW50XCJcbiAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLmFjY291bnRfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJhY2NvdW50XCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhaWRBbW91bnRcIj57eyAkdChcImNvbW1vbi5hbW91bnRcIikgfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgcmVmPVwicGFpZEFtb3VudElucHV0XCIgaWQ9XCJwYWlkQW1vdW50XCIgdi1tb2RlbD1cImZvcm0ucGFpZEFtb3VudFwiIHR5cGU9XCJudW1iZXJcIiBzdGVwPVwiYW55XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3BhaWRBbW91bnQnKSB9XCIgbmFtZT1cInBhaWRBbW91bnRcIiBtaW49XCIxXCJcbiAgICAgICAgICAgICAgICA6bWF4PVwiZm9ybS5uZXRUb3RhbFwiIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ucGFpZF9hbW91bnRfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJwYWlkQW1vdW50XCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJjaGVxdWVOb1wiPnt7ICR0KFwiY29tbW9uLmNoZXF1ZV9ub1wiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBpZD1cImNoZXF1ZU5vXCIgdi1tb2RlbD1cImZvcm0uY2hlcXVlTm9cIiB0eXBlPVwidGV4dFwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnY2hlcXVlTm8nKSB9XCIgbmFtZT1cImNoZXF1ZU5vXCJcbiAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLmNoZXF1ZV9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImNoZXF1ZU5vXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTZcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInJlY2VpcHROb1wiPnt7ICR0KFwiY29tbW9uLnJlY2VpcHRfbm9cIikgfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJyZWNlaXB0Tm9cIiB2LW1vZGVsPVwiZm9ybS5yZWNlaXB0Tm9cIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdyZWNlaXB0Tm8nKSB9XCIgbmFtZT1cInJlY2VpcHROb1wiXG4gICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5yZWNlaXB0X25vX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwicmVjZWlwdE5vXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwb1JlZmVyZW5jZVwiPnt7ICR0KFwiY29tbW9uLnBvX3JlZmVyZW5jZVwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBpZD1cInBvUmVmZXJlbmNlXCIgdi1tb2RlbD1cImZvcm0ucG9SZWZlcmVuY2VcIiB0eXBlPVwidGV4dFwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygncG9SZWZlcmVuY2UnKSB9XCIgbmFtZT1cInBvUmVmZXJlbmNlXCJcbiAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnBvX3JlZmVyZW5jZV9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInBvUmVmZXJlbmNlXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTZcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBheW1lbnRUZXJtc1wiPnt7ICR0KFwiY29tbW9uLnBheW1lbnRfdGVybXNcIikgfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwYXltZW50VGVybXNcIiB2LW1vZGVsPVwiZm9ybS5wYXltZW50VGVybXNcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdwYXltZW50VGVybXMnKSB9XCIgbmFtZT1cInBheW1lbnRUZXJtc1wiXG4gICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5wYXltZW50X3Rlcm1zX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwicGF5bWVudFRlcm1zXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJyZWZlcmVuY2VcIj57eyAkdChcImNvbW1vbi5yZWZlcmVuY2VcIikgfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJyZWZlcmVuY2VcIiB2LW1vZGVsPVwiZm9ybS5yZWZlcmVuY2VcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdyZWZlcmVuY2UnKSB9XCIgbmFtZT1cInJlZmVyZW5jZVwiXG4gICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5yZWZlcmVuY2VfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJyZWZlcmVuY2VcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGVsaXZlcnlQbGFjZVwiPnt7XG4gICAgICAgICAgICAgICAgJHQoXCJzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VcIilcbiAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJkZWxpdmVyeVBsYWNlXCIgdi1tb2RlbD1cImZvcm0uZGVsaXZlcnlQbGFjZVwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2RlbGl2ZXJ5UGxhY2UnKSB9XCIgbmFtZT1cImRlbGl2ZXJ5UGxhY2VcIlxuICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJkZWxpdmVyeVBsYWNlXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkYXRlXCI+e3sgJHQoXCJjb21tb24uZGF0ZVwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBpZD1cImRhdGVcIiB2LW1vZGVsPVwiZm9ybS5kYXRlXCIgdHlwZT1cImRhdGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGF0ZScpIH1cIiBuYW1lPVwiZGF0ZVwiIC8+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJkYXRlXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTZcIj5cbiAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInN0YXR1c1wiPnt7ICR0KFwiY29tbW9uLnN0YXR1c1wiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgIDxzZWxlY3QgaWQ9XCJzdGF0dXNcIiB2LW1vZGVsPVwiZm9ybS5zdGF0dXNcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnc3RhdHVzJykgfVwiPlxuICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoXCJjb21tb24uYWN0aXZlXCIpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIjBcIj57eyAkdChcImNvbW1vbi5pbl9hY3RpdmVcIikgfX08L29wdGlvbj5cbiAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJzdGF0dXNcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJub3RlXCI+e3sgJHQoXCJjb21tb24ubm90ZVwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICA8dGV4dGFyZWEgaWQ9XCJub3RlXCIgdi1tb2RlbD1cImZvcm0ubm90ZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnbm90ZScpIH1cIiA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLm5vdGVfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwibm90ZVwiIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicGF5bWVudC1tb2RhbC1mb290ZXJcIiBzbG90PVwibW9kYWwtZm9vdGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwb3MtbW9kYWwtZm9vdGVyIG5vLXByaW50XCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIEBjbGljaz1cImFkZFBheW1lbnRcIiBAa2V5ZG93bj1cImZvcm0ub25LZXlkb3duKCRldmVudClcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNhdmVcIiAvPiB7eyAkdChcImNvbW1vbi5zYXZlXCIpIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm1vZGFsLWRlZmF1bHQtYnV0dG9uIGJ0biBidG4tZGFuZ2VyXCIgQGNsaWNrPVwiY2xvc2VNb2RhbEFuZENsZWFyRm9ybURhdGFcIj5cbiAgICAgICAgICAgIHt7ICR0KFwiY29tbW9uLmNsb3NlXCIpIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9Nb2RhbD5cblxuICAgIDxNb2RhbCB2LWlmPVwic2hvd1NtYWxsSW52b2ljZU1vZGFsXCIgOmFsbERhdGE9XCJhbGxEYXRhXCI+XG4gICAgICA8aDUgc2xvdD1cImhlYWRlclwiIGNsYXNzPVwibm8tcHJpbnRcIj57eyAkdChcInBvcy5pbnZvaWNlX3JlY2VpcHRcIikgfX08L2g1PlxuICAgICAgPGRpdiBjbGFzcz1cInctMTAwXCIgc2xvdD1cImJvZHlcIj5cbiAgICAgICAgPGRpdiBpZD1cImludm9pY2UtUE9TXCI+XG4gICAgICAgICAgPGRpdiBzdHlsZT1cIm1heC13aWR0aDogNDAwcHg7IG1hcmdpbjogMHB4IGF1dG9cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvXCI+XG4gICAgICAgICAgICAgIDxkaXYgdi1pZj1cImFwcEluZm8uYmxhY2tMb2dvXCIgY2xhc3M9XCJwb3MtbG9nb1wiPlxuICAgICAgICAgICAgICAgIDxpbWcgOnNyYz1cImFwcEluZm8uYmxhY2tMb2dvXCIgd2lkdGg9XCIxMDBweFwiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aDIgdi1lbHNlIGNsYXNzPVwidGV4dC1jZW50ZXJcIj57eyBhcHBJbmZvLmNvbXBhbnlOYW1lIH19PC9oMj5cbiAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3sgJHQoXCJjb21tb24uZGF0ZVwiKSB9fSA6IHt7IGFsbERhdGEuaW52b2ljZURhdGUgfX0gPGJyIC8+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIHYtc2hvdz1cImFwcEluZm8uYWRkcmVzc1wiPnt7ICR0KFwiY29tbW9uLmFkZHJlc3NcIikgfX0gOiB7eyBhcHBJbmZvLmFkZHJlc3MgfX0gPGJyIC8+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIHYtc2hvdz1cImFwcEluZm8uZW1haWxcIj57eyAkdChcImNvbW1vbi5lbWFpbFwiKSB9fSA6IHt7IGFwcEluZm8uZW1haWwgfX0gPGJyIC8+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIHYtc2hvdz1cImFwcEluZm8ucGhvbmVcIj57eyAkdChcImNvbW1vbi5waG9uZVwiKSB9fSA6IHt7IGFwcEluZm8ucGhvbmUgfX0gPGJyIC8+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIHYtc2hvdz1cImFsbERhdGEuY2xpZW50Lm5hbWVcIj57eyAkdChcImNvbW1vbi5jbGllbnRcIikgfX0gOiB7eyBhbGxEYXRhLmNsaWVudC5uYW1lIH19IDxiciAvPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiB2LXNob3c9XCJhbGxEYXRhLmNyZWF0ZWRCeVwiPnt7ICR0KFwiY29tbW9uLnNvbGRfYnlcIikgfX0gOiB7eyBhbGxEYXRhLmNyZWF0ZWRCeSB9fSA8YnIgLz48L3NwYW4+XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZV9kYXRhXCI+XG4gICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICA8dHIgdi1mb3I9XCIoZGF0YSwgaSkgaW4gaW52b2ljZVByb2R1Y3RzXCIgOmtleT1cImlcIj5cbiAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiM1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICB7eyBkYXRhLnByb2R1Y3ROYW1lIH19PGJyIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwcXR5XCI+e3sgZGF0YS5xdWFudGl0eSB9fSB7eyBkYXRhLnByb2R1Y3RVbml0IH19IHhcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRhdGEudW5pdENvc3QgfCB3aXRoQ3VycmVuY3kgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodDsgdmVydGljYWwtYWxpZ246IGJvdHRvbVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAoZGF0YS51bml0Q29zdCAqIGRhdGEucXVhbnRpdHkpIHwgd2l0aEN1cnJlbmN5IH19XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG5cbiAgICAgICAgICAgICAgICA8dHIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4XCI+XG4gICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjNcIiBjbGFzcz1cInRvdGFsXCI+e3sgJHQoXCJjb21tb24uc3VidG90YWxcIikgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIiBjbGFzcz1cInRvdGFsXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGFsbERhdGEuc3ViVG90YWwgfCB3aXRoQ3VycmVuY3kgfX1cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8dHIgdi1pZj1cImFsbERhdGEuZGlzY291bnRcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHhcIj5cbiAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiM1wiIGNsYXNzPVwidG90YWxcIj57eyAkdChcImNvbW1vbi5kaXNjb3VudFwiKSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodFwiIGNsYXNzPVwidG90YWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYWxsRGF0YS5kaXNjb3VudCB8IHdpdGhDdXJyZW5jeSB9fVxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDx0ciB2LWlmPVwiYWxsRGF0YS50YXhcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHhcIj5cbiAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiM1wiIGNsYXNzPVwidG90YWxcIj57eyAkdChcImNvbW1vbi50YXhcIikgfX0oJSk8L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIiBjbGFzcz1cInRvdGFsXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGFsbERhdGEudGF4IHwgd2l0aEN1cnJlbmN5IH19XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPHRyIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweFwiPlxuICAgICAgICAgICAgICAgICAgPHRkIGNvbHNwYW49XCIzXCIgY2xhc3M9XCJ0b3RhbFwiPnt7ICR0KFwiY29tbW9uLnRvdGFsXCIpIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cInRleHQtYWxpZ246IHJpZ2h0XCIgY2xhc3M9XCJ0b3RhbFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgIChhbGxEYXRhLnN1YlRvdGFsIC1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFsbERhdGEudG90YWxJbnZvaWNlUmV0dXJuIC1cbiAgICAgICAgICAgICAgICAgICAgICAgIGFsbERhdGEuZGlzY291bnQgK1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxsRGF0YS50cmFuc3BvcnQgK1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxsRGF0YS50YXgpXG4gICAgICAgICAgICAgICAgICAgICAgfCB3aXRoQ3VycmVuY3lcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjNcIiBjbGFzcz1cInRvdGFsXCI+e3sgJHQoXCJjb21tb24ucGFpZFwiKSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodFwiIGNsYXNzPVwidG90YWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgYWxsRGF0YS50b3RhbFBhaWQgfCB3aXRoQ3VycmVuY3kgfX1cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjNcIiBjbGFzcz1cInRvdGFsXCI+e3sgJHQoXCJjb21tb24uZHVlXCIpIH19PC90ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cInRleHQtYWxpZ246IHJpZ2h0XCIgY2xhc3M9XCJ0b3RhbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBhbGxEYXRhLmR1ZSB8IHdpdGhDdXJyZW5jeSB9fVxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgIDxkaXYgaWQ9XCJsZWdhbGNvcHlcIiBjbGFzcz1cIm1sLTIgbWItNFwiPlxuICAgICAgICAgICAgICA8cCBjbGFzcz1cImxlZ2FsXCI+XG4gICAgICAgICAgICAgICAgPHN0cm9uZz57eyAkdChcInBvcy5yZWNlaXB0X3RleHRcIikgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICA8ZGl2IGlkPVwiYmFyXCI+XG4gICAgICAgICAgICAgICAgPGJhcmNvZGUgd2lkdGg9XCIyXCIgaGVpZ2h0PVwiMjVcIiBmb250U2l6ZT1cIjE1XCIgOnZhbHVlPVwiYWxsRGF0YS5pbnZvaWNlTm8gfCB3aXRoUHJlZml4KGludm9pY2VQcmVmaXgpXCI+XG4gICAgICAgICAgICAgICAgICB7eyAkdChcImNvbW1vbi5yZW5kZXJpbmdfZmFpbHNcIikgfX1cbiAgICAgICAgICAgICAgICA8L2JhcmNvZGU+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicG9zLW1vZGFsLWZvb3RlciBuby1wcmludFwiIHNsb3Q9XCJtb2RhbC1mb290ZXJcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8YnV0dG9uIEBjbGljaz1cInByaW50SW52b2ljZSgpXCIgY2xhc3M9XCJtb2RhbC1kZWZhdWx0LWJ1dHRvbiBidG4gYnRuLWluZm9cIj5cbiAgICAgICAgICAgIHt7ICR0KFwiY29tbW9uLnByaW50XCIpIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwibW9kYWwtZGVmYXVsdC1idXR0b24gYnRuIGJ0bi1kYW5nZXJcIiBAY2xpY2s9XCJjbG9zZVJlY2VpcHRNb2RhbFwiPlxuICAgICAgICAgIHt7ICR0KFwiY29tbW9uLmNsb3NlXCIpIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9Nb2RhbD5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IEZvcm0gZnJvbSBcInZmb3JtXCI7XG5pbXBvcnQgYXhpb3MgZnJvbSBcImF4aW9zXCI7XG5pbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSBcInZ1ZXhcIjtcbmltcG9ydCBWdWVCYXJjb2RlIGZyb20gXCJ2dWUtYmFyY29kZVwiO1xuaW1wb3J0IHNvdW5kIGZyb20gXCIuLi8uLi8uLi9hdWRpby9iZWVwLndhdlwiO1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIG1pZGRsZXdhcmU6IFtcImF1dGhcIl0sXG4gIG1ldGFJbmZvKCkge1xuICAgIHJldHVybiB7IHRpdGxlOiB0aGlzLiR0KFwicG9zLnBhZ2VfdGl0bGVcIikgfTtcbiAgfSxcbiAgY29tcG9uZW50czoge1xuICAgIGJhcmNvZGU6IFZ1ZUJhcmNvZGUsXG4gIH0sXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgYnJlYWRjcnVtYnNDdXJyZW50OiBcInBvcy5icmVhZGNydW1ic19jdXJyZW50XCIsXG4gICAgYnJlYWRjcnVtYnM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogXCJwb3MuYnJlYWRjcnVtYnNfZmlyc3RcIixcbiAgICAgICAgdXJsOiBcImhvbWVcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwicG9zLmJyZWFkY3J1bWJzX3NlY29uZFwiLFxuICAgICAgICB1cmw6IFwiaW52b2ljZXMuaW5kZXhcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwicG9zLmJyZWFkY3J1bWJzX2FjdGl2ZVwiLFxuICAgICAgICB1cmw6IFwiXCIsXG4gICAgICB9LFxuICAgIF0sXG4gICAgZm9ybTogbmV3IEZvcm0oe1xuICAgICAgaW52b2ljZU5vOiBcIlwiLFxuICAgICAgY2xpZW50OiBcIlwiLFxuICAgICAgcmVmZXJlbmNlOiBcIlwiLFxuICAgICAgc2VsZWN0ZWRQcm9kdWN0czogW10sXG4gICAgICBzdWJUb3RhbDogMCxcbiAgICAgIG5ldFRvdGFsOiAwLFxuICAgICAgZGlzY291bnRUeXBlOiAwLFxuICAgICAgZGlzY291bnQ6IFwiXCIsXG4gICAgICB0b3RhbERpc2NvdW50OiBcIlwiLFxuICAgICAgdHJhbnNwb3J0Q29zdDogXCJcIixcbiAgICAgIG9yZGVyVGF4OiBcIlwiLFxuICAgICAgdG90YWxUYXg6IDAsXG4gICAgICBwcm9kdWN0VG90YWxUYXg6IDAsXG4gICAgICBhY2NvdW50OiBcIlwiLFxuICAgICAgdG90YWxQYWlkOiBcIlwiLFxuICAgICAgZHVlQW1vdW50OiBcIlwiLFxuICAgICAgcG9SZWZlcmVuY2U6IFwiXCIsXG4gICAgICBwYXltZW50VGVybXM6IFwiXCIsXG4gICAgICBkZWxpdmVyeVBsYWNlOiBcIlwiLFxuICAgICAgYWRkUGF5bWVudDogXCJcIixcbiAgICAgIGNoZXF1ZU5vOiBcIlwiLFxuICAgICAgcmVjZWlwdE5vOiBcIlwiLFxuICAgICAgZGF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLnNsaWNlKDAsIDEwKSxcbiAgICAgIG5vdGU6IFwiXCIsXG4gICAgICBzdGF0dXM6IDEsXG4gICAgICBjYXRlZ29yeTogXCJcIixcbiAgICAgIGludm9pY2VfaWQ6IG51bGwsXG4gICAgICBpbnZvaWNlX3NsdWc6IG51bGwsXG4gICAgfSksXG4gICAgdGF4ZXM6IFtdLFxuICAgIGF1ZGlvOiBcIlwiLFxuICAgIHByb2R1Y3RzOiBcIlwiLFxuICAgIGFjY291bnRzOiBcIlwiLFxuICAgIGNhdGVnb3JpZXM6IFtdLFxuICAgIHN1YkNhdGVnb3JpZXM6IFtdLFxuICAgIHByb2R1Y3RQcmVmaXg6IFwiXCIsXG4gICAgaW52b2ljZVByZWZpeDogXCJcIixcbiAgICBzaG93TW9kYWw6IGZhbHNlLFxuICAgIGFsbERhdGE6IHt9LFxuICAgIHNob3dTbWFsbEludm9pY2VNb2RhbDogZmFsc2UsXG4gICAgcHJpbnRNZTogZmFsc2UsXG4gICAgcGVyUGFnZTogMTAsXG4gICAgcGFnaW5hdGlvbjogXCJcIixcbiAgICBxdWVyeTogXCJcIixcbiAgICBnZW5lcmF0ZU9yZGVyOiBmYWxzZSxcbiAgICBjbGlja0NvdW50OiAwLFxuICAgIGNsaWVudHM6IFtdLFxuICB9KSxcbiAgY29tcHV0ZWQ6IHtcbiAgICAuLi5tYXBHZXR0ZXJzKFwib3BlcmF0aW9uc1wiLCBbXCJpdGVtc1wiLCBcImFwcEluZm9cIl0pLFxuICB9LFxuICBtb3VudGVkKCkge1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwia2V5cHJlc3NcIiwgKGUpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5mb3JtLm5ldFRvdGFsID4gMCAmJlxuICAgICAgICB0aGlzLnNob3dNb2RhbCA9PSBmYWxzZSAmJlxuICAgICAgICB0aGlzLmdlbmVyYXRlT3JkZXIgPT0gZmFsc2VcbiAgICAgICkge1xuICAgICAgICBpZiAoZS5rZXkgPT09IFwiRW50ZXJcIikge1xuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVPcmRlciA9IHRydWU7XG4gICAgICAgICAgdGhpcy5jb21wbGV0ZU9yZGVyQW5kQWRkUGF5bWVudCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuZm9ybS5uZXRUb3RhbCA+IDAgJiZcbiAgICAgICAgdGhpcy5mb3JtLnBhaWRBbW91bnQgPiAwICYmXG4gICAgICAgIHRoaXMuZ2VuZXJhdGVPcmRlciA9PSB0cnVlXG4gICAgICApIHtcbiAgICAgICAgaWYgKGUua2V5ID09PSBcIkVudGVyXCIpIHtcbiAgICAgICAgICB0aGlzLmNsaWNrQ291bnQrKztcbiAgICAgICAgICB0aGlzLnNob3dNb2RhbCA9IGZhbHNlO1xuICAgICAgICAgIGNvbnNvbGUubG9nKFwiZnJvbSBzZWNvbmQgY2xpY2tcIiwgdGhpcy5jbGlja0NvdW50KTtcbiAgICAgICAgICBpZiAodGhpcy5jbGlja0NvdW50ID09IDEpIHtcbiAgICAgICAgICAgIHRoaXMuYWRkUGF5bWVudCgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnByaW50SW52b2ljZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9LFxuICBjcmVhdGVkKCkge1xuICAgIHRoaXMuZ2V0Q2xpZW50cygpO1xuICAgIHRoaXMuZ2V0UHJvZHVjdHMoKTtcbiAgICB0aGlzLmdldEFjY291bnRzKCk7XG4gICAgdGhpcy5nZXRUYXhlcygpO1xuICAgIHRoaXMuZ2V0Q2F0ZWdvcmllcygpO1xuICAgIHRoaXMuZ2V0U3ViQ2F0ZWdvcmllcygpO1xuICAgIHRoaXMuYXVkaW8gPSBuZXcgQXVkaW8oc291bmQpO1xuICAgIHRoaXMucHJvZHVjdFByZWZpeCA9IHRoaXMuYXBwSW5mby5wcm9kdWN0UHJlZml4O1xuICAgIHRoaXMuaW52b2ljZVByZWZpeCA9IHRoaXMuYXBwSW5mby5pbnZvaWNlUHJlZml4O1xuICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChcInNpZGViYXItY29sbGFwc2VcIik7XG4gIH0sXG4gIHdhdGNoOiB7XG4gICAgLy8gd2F0Y2ggc2VhcmNoIGRhdGFcbiAgICBxdWVyeTogZnVuY3Rpb24gKG5ld1EsIG9sZFEpIHtcbiAgICAgIGlmIChuZXdRID09IFwiXCIpIHtcbiAgICAgICAgdGhpcy5nZXRQcm9kdWN0cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZWFyY2hQcm9kdWN0cygpO1xuICAgICAgfVxuICAgIH0sXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBkb1RoaXMoKSB7XG4gICAgICBjb25zb2xlLmxvZyhcImRvIHRoaXNcIik7XG4gICAgfSxcbiAgICAvLyBnZXQgYWxsIGNsaWVudHNcbiAgICBhc3luYyBnZXRDbGllbnRzKCkge1xuICAgICAgYXdhaXQgYXhpb3NcbiAgICAgICAgLmdldChcIi9hcGkvYWxsLWNsaWVudHNcIilcbiAgICAgICAgLnRoZW4oKHsgZGF0YSB9KSA9PiB7XG4gICAgICAgICAgdGhpcy5jbGllbnRzID0gZGF0YS5kYXRhO1xuICAgICAgICAgIC8vIGFzc2lnbiBkZWZhdWx0IGNsaWVudFxuICAgICAgICAgIGlmICh0aGlzLmNsaWVudHMgJiYgdGhpcy5jbGllbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGxldCBkZWZhdWx0Q2xpZW50U2x1ZyA9IHRoaXMuYXBwSW5mby5kZWZhdWx0Q2xpZW50U2x1ZztcbiAgICAgICAgICAgIHRoaXMuZm9ybS5jbGllbnQgPSB0aGlzLmNsaWVudHMuZmluZChcbiAgICAgICAgICAgICAgKGl0ZW0pID0+IGl0ZW0uc2x1ZyA9PT0gZGVmYXVsdENsaWVudFNsdWdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBjb25zb2xlLmxvZyhlcnJvcikpO1xuICAgIH0sXG5cbiAgICAvLyBnZXQgYWNjb3VudHNcbiAgICBhc3luYyBnZXRBY2NvdW50cygpIHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgXCIvYXBpL2FsbC1hY2NvdW50c1wiXG4gICAgICApO1xuICAgICAgdGhpcy5hY2NvdW50cyA9IGRhdGEuZGF0YTtcblxuICAgICAgLy8gYXNzaWduIGRlZmF1bHQgYWNjb3VudFxuICAgICAgaWYgKHRoaXMuYWNjb3VudHMgJiYgdGhpcy5hY2NvdW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGxldCBkZWZhdWx0QWNjb3VudFNsdWcgPSB0aGlzLmFwcEluZm8uZGVmYXVsdEFjY291bnRTbHVnO1xuICAgICAgICB0aGlzLmZvcm0uYWNjb3VudCA9IHRoaXMuYWNjb3VudHMuZmluZChcbiAgICAgICAgICAoYWNjb3VudCkgPT4gYWNjb3VudC5zbHVnID09IGRlZmF1bHRBY2NvdW50U2x1Z1xuICAgICAgICApO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAvLyBnZXQgdGF4ZXNcbiAgICBhc3luYyBnZXRUYXhlcygpIHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgXCIvYXBpL2FsbC12YXQtcmF0ZXNcIlxuICAgICAgKTtcbiAgICAgIHRoaXMudGF4ZXMgPSBkYXRhLmRhdGE7XG5cbiAgICAgIC8vIGFzc2lnbiBkZWZhdWx0XG4gICAgICBpZiAodGhpcy50YXhlcyAmJiB0aGlzLnRheGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgbGV0IGRlZmF1bHRWYXRSYXRlU2x1ZyA9IHRoaXMuYXBwSW5mby5kZWZhdWx0VmF0UmF0ZVNsdWc7XG4gICAgICAgIHRoaXMuZm9ybS5vcmRlclRheCA9IHRoaXMudGF4ZXMuZmluZChcbiAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5zbHVnID09PSBkZWZhdWx0VmF0UmF0ZVNsdWdcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8gZ2V0IGNhdGVnb3JpZXNcbiAgICBhc3luYyBnZXRDYXRlZ29yaWVzKCkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBheGlvcy5nZXQoXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvYWxsLXByb2R1Y3QtY2F0ZWdvcmllc1wiXG4gICAgICApO1xuICAgICAgdGhpcy5jYXRlZ29yaWVzID0gZGF0YS5kYXRhO1xuICAgIH0sXG5cbiAgICAvLyBnZXQgc3ViIGNhdGVnb3JpZXNcbiAgICBhc3luYyBnZXRTdWJDYXRlZ29yaWVzKCkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBheGlvcy5nZXQoXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvYWxsLXByb2R1Y3Qtc3ViLWNhdGVnb3JpZXNcIlxuICAgICAgKTtcbiAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllcyA9IGRhdGEuZGF0YTtcbiAgICB9LFxuXG4gICAgLy8gZ2V0IHRoZSBpbnZvaWNlIGluZm8gYnkgaW52b2ljZSBzbHVnXG4gICAgYXN5bmMgZ2V0SW52b2ljZShpbnZvaWNlX3NsdWcpIHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIFwiL2FwaS9pbnZvaWNlcy9cIiArIGludm9pY2Vfc2x1Z1xuICAgICAgKTtcbiAgICAgIHRoaXMuYWxsRGF0YSA9IGRhdGEuZGF0YTtcbiAgICAgIHRoaXMuaW52b2ljZVByb2R1Y3RzID0gdGhpcy5hbGxEYXRhLmludm9pY2VQcm9kdWN0cztcbiAgICAgIHRoaXMuaW52b2ljZVByb2R1Y3RzLnNvcnQodGhpcy5zb3J0UHJvZHVjdHMpO1xuICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgfSxcblxuICAgIC8vIGdldCBwcm9kdWN0c1xuICAgIGFzeW5jIGdldFByb2R1Y3RzKCkge1xuICAgICAgbGV0IGN1cnJlbnRQYWdlID0gdGhpcy5wYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uLmN1cnJlbnRfcGFnZSA6IDE7XG4gICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArXG4gICAgICAgIFwiL2FwaS9hbGwtcHJvZHVjdHMtcGFnaW5hdGVkP3BhZ2U9XCIgK1xuICAgICAgICBjdXJyZW50UGFnZVxuICAgICAgKTtcbiAgICAgIHRoaXMucHJvZHVjdHMgPSBkYXRhLmRhdGE7XG4gICAgICB0aGlzLnByb2R1Y3RzLnNvcnQodGhpcy5zb3J0UHJvZHVjdHMpO1xuICAgICAgdGhpcy5wYWdpbmF0aW9uID0gZGF0YS5tZXRhO1xuICAgIH0sXG5cbiAgICAvLyBzb3J0IHByb2R1Y3RzXG4gICAgc29ydFByb2R1Y3RzKGEsIGIpIHtcbiAgICAgIGlmIChOdW1iZXIoYS5jb2RlKSA8IE51bWJlcihiLmNvZGUpKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICAgIH1cbiAgICAgIGlmIChOdW1iZXIoYS5jb2RlKSA+IE51bWJlcihiLmNvZGUpKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfSxcblxuICAgIC8vIGdldCBzdWIgY2F0ZWdvcmllcyBmb3IgYSBjYXRlZ29yeVxuICAgIGFzeW5jIGdldFN1YkNhdGVnb3JpZXNCeUNhdGVnb3J5KCkge1xuICAgICAgbGV0IGN1cnJlbnRQYWdlID0gdGhpcy5wYWdpbmF0aW9uID8gdGhpcy5wYWdpbmF0aW9uLmN1cnJlbnRfcGFnZSA6IDE7XG5cbiAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllcyA9IFtdO1xuICAgICAgdGhpcy5mb3JtLnN1YkNhdGVnb3J5ID0gXCJcIjtcblxuICAgICAgbGV0IHNsdWcgPSB0aGlzLmZvcm0uY2F0ZWdvcnk/LnNsdWc7XG4gICAgICBpZiAoc2x1Zykge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICtcbiAgICAgICAgICBcIi9hcGkvYWxsLXByby1zdWItY2F0ZWdvcmllcy1ieS1jYXRlZ29yeS9cIiArXG4gICAgICAgICAgc2x1ZyArXG4gICAgICAgICAgXCI/cGFnZT1cIiArXG4gICAgICAgICAgY3VycmVudFBhZ2VcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5zdWJDYXRlZ29yaWVzID0gZGF0YS5jYXRzO1xuICAgICAgICB0aGlzLnByb2R1Y3RzID0gZGF0YS5wcm9kdWN0cztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuZ2V0U3ViQ2F0ZWdvcmllcygpO1xuICAgICAgICBhd2FpdCB0aGlzLmdldFByb2R1Y3RzKCk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIC8vIGdldCBwcm9kdWN0cyBmb3IgYSBzdWIgY2F0ZWdvcnlcbiAgICBhc3luYyBnZXRQcm9kdWN0c0J5U3ViQ2F0ZWdvcnkoKSB7XG4gICAgICBsZXQgY3VycmVudFBhZ2UgPSB0aGlzLnBhZ2luYXRpb24gPyB0aGlzLnBhZ2luYXRpb24uY3VycmVudF9wYWdlIDogMTtcbiAgICAgIHRoaXMucHJvZHVjdHMgPSBbXTtcbiAgICAgIHRoaXMuZm9ybS5pdGVtTmFtZSA9IFwiXCI7XG4gICAgICBsZXQgY2F0U2x1ZyA9IHRoaXMuZm9ybS5jYXRlZ29yeT8uc2x1ZztcbiAgICAgIGxldCBzdWJDYXRTbHVnID0gdGhpcy5mb3JtLnN1YkNhdGVnb3J5Py5zbHVnO1xuICAgICAgaWYgKGNhdFNsdWcgJiYgc3ViQ2F0U2x1Zykge1xuICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICtcbiAgICAgICAgICBcIi9hcGkvYWxsLXByb2R1Y3RzLWJ5LXN1Yi1jYXRlZ29yaWVzL1wiICtcbiAgICAgICAgICBjYXRTbHVnICtcbiAgICAgICAgICBcIi9cIiArXG4gICAgICAgICAgc3ViQ2F0U2x1ZyArXG4gICAgICAgICAgXCI/cGFnZT1cIiArXG4gICAgICAgICAgY3VycmVudFBhZ2VcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5wcm9kdWN0cyA9IGRhdGEuZGF0YTtcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uID0gZGF0YS5tZXRhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXdhaXQgdGhpcy5nZXRQcm9kdWN0cygpO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAvLyBwYWdpbmF0aW9uXG4gICAgYXN5bmMgcGFnaW5hdGUoKSB7XG4gICAgICBsZXQgY2F0U2x1ZyA9IHRoaXMuZm9ybS5jYXRlZ29yeT8uc2x1ZztcbiAgICAgIGxldCBzdWJDYXRTbHVnID0gdGhpcy5mb3JtLnN1YkNhdGVnb3J5Py5zbHVnO1xuICAgICAgaWYgKHRoaXMucXVlcnkgPT09IFwiXCIpIHtcbiAgICAgICAgaWYgKGNhdFNsdWcpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLmdldFN1YkNhdGVnb3JpZXNCeUNhdGVnb3J5KCk7XG4gICAgICAgIH0gZWxzZSBpZiAoY2F0U2x1ZyAmJiBzdWJDYXRTbHVnKSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5nZXRQcm9kdWN0c0J5U3ViQ2F0ZWdvcnkoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLmdldFByb2R1Y3RzKCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGF3YWl0IHRoaXMuc2VhcmNoUHJvZHVjdHMoKTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8gUmVzZXQgcGFnaW5hdGlvblxuICAgIGFzeW5jIHJlc2V0UGFnaW5hdGlvbigpIHtcbiAgICAgIHRoaXMucGFnaW5hdGlvbiA/ICh0aGlzLnBhZ2luYXRpb24uY3VycmVudF9wYWdlID0gMSkgOiBcIlwiO1xuICAgICAgYXdhaXQgdGhpcy5zZWFyY2hQcm9kdWN0cygpO1xuICAgIH0sXG5cbiAgICAvLyBzZWFyY2ggZGF0YVxuICAgIGFzeW5jIHNlYXJjaFByb2R1Y3RzKCkge1xuICAgICAgbGV0IGNhdFNsdWcgPSB0aGlzLmZvcm0uY2F0ZWdvcnkgPyB0aGlzLmZvcm0uY2F0ZWdvcnkuc2x1ZyA6IFwiXCI7XG4gICAgICBsZXQgc3ViQ2F0U2x1ZyA9IHRoaXMuZm9ybS5zdWJDYXRlZ29yeSA/IHRoaXMuZm9ybS5zdWJDYXRlZ29yeS5zbHVnIDogXCJcIjtcbiAgICAgIHRoaXMuJHN0b3JlLnN0YXRlLm9wZXJhdGlvbnMubG9hZGluZyA9IHRydWU7XG4gICAgICBsZXQgY3VycmVudFBhZ2UgPSB0aGlzLnBhZ2luYXRpb24gPyB0aGlzLnBhZ2luYXRpb24uY3VycmVudF9wYWdlIDogMTtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICtcbiAgICAgICAgXCIvYXBpL3Byb2R1Y3RzL3NlYXJjaC1mcm9tLXBvc1wiICtcbiAgICAgICAgXCI/dGVybT1cIiArXG4gICAgICAgIHRoaXMucXVlcnkgK1xuICAgICAgICBcIiZwYWdlPVwiICtcbiAgICAgICAgY3VycmVudFBhZ2UgK1xuICAgICAgICBcIiZwZXJQYWdlPVwiICtcbiAgICAgICAgdGhpcy5wZXJQYWdlICtcbiAgICAgICAgXCImY2F0U2x1Zz1cIiArXG4gICAgICAgIGNhdFNsdWcgK1xuICAgICAgICBcIiZTdWJDYXRTbHVnPVwiICtcbiAgICAgICAgc3ViQ2F0U2x1Z1xuICAgICAgKTtcbiAgICAgIHRoaXMucHJvZHVjdHMgPSBkYXRhLmRhdGE7XG4gICAgICB0aGlzLnByb2R1Y3RzLnNvcnQodGhpcy5zb3J0UHJvZHVjdHMpO1xuICAgICAgdGhpcy5wYWdpbmF0aW9uID0gZGF0YS5tZXRhO1xuICAgICAgY29uc29sZS5sb2codGhpcy5wYWdpbmF0aW9uKTtcbiAgICB9LFxuXG4gICAgLy8gUmVsb2FkIGFmdGVyIHNlYXJjaFxuICAgIGFzeW5jIHJlbG9hZCgpIHtcbiAgICAgIHRoaXMucXVlcnkgPSBcIlwiO1xuICAgICAgYXdhaXQgdGhpcy5zZWFyY2hQcm9kdWN0cygpO1xuICAgIH0sXG5cbiAgICAvLyBzdG9yZSBpdGVtIGluIGFycmF5XG4gICAgc3RvcmVQcm9kdWN0KHByb2R1Y3QpIHtcbiAgICAgIHZhciBpbmRleCA9IHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmZpbmRJbmRleChcbiAgICAgICAgKHgpID0+IHguaWQgPT0gcHJvZHVjdC5pZFxuICAgICAgKTtcbiAgICAgIGxldCBxdWFudGl0eSA9IDE7XG4gICAgICBpZiAocHJvZHVjdC5pbnZlbnRvcnlDb3VudCA+PSBxdWFudGl0eSkge1xuICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgbGV0IHByb2R1Y3RUYXggPVxuICAgICAgICAgICAgcHJvZHVjdC50YXhUeXBlID09IFwiRXhjbHVzaXZlXCJcbiAgICAgICAgICAgICAgPyBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50ICogKHByb2R1Y3QudGF4UmF0ZSAvIDEwMClcbiAgICAgICAgICAgICAgOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50IC1cbiAgICAgICAgICAgICAgcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCAvICgxICsgcHJvZHVjdC50YXhSYXRlIC8gMTAwKTtcbiAgICAgICAgICBsZXQgdG90YWxUYXggPSBwcm9kdWN0VGF4ICogcXVhbnRpdHk7XG5cbiAgICAgICAgICB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy51bnNoaWZ0KHtcbiAgICAgICAgICAgIGlkOiBwcm9kdWN0LmlkLFxuICAgICAgICAgICAgc2x1ZzogcHJvZHVjdC5zbHVnLFxuICAgICAgICAgICAgbmFtZTogcHJvZHVjdC5uYW1lLFxuICAgICAgICAgICAgY29kZTogcHJvZHVjdC5jb2RlLFxuICAgICAgICAgICAgdGF4VHlwZTogcHJvZHVjdC50YXhUeXBlLFxuICAgICAgICAgICAgdGF4UmF0ZTogcHJvZHVjdC50YXhSYXRlLFxuICAgICAgICAgICAgcXR5OiBxdWFudGl0eSxcbiAgICAgICAgICAgIGludmVudG9yeUNvdW50OiBwcm9kdWN0LmludmVudG9yeUNvdW50LFxuICAgICAgICAgICAgYXZnUHVyY2hhc2VQcmljZTogcHJvZHVjdC5hdmdQdXJjaGFzZVByaWNlLFxuICAgICAgICAgICAgdW5pdFByaWNlOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgICAgdW5pdENvc3Q6XG4gICAgICAgICAgICAgIHByb2R1Y3QudGF4VHlwZSA9PSBcIkV4Y2x1c2l2ZVwiXG4gICAgICAgICAgICAgICAgPyBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50ICsgcHJvZHVjdFRheFxuICAgICAgICAgICAgICAgIDogcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCxcbiAgICAgICAgICAgIHRvdGFsUHJpY2U6XG4gICAgICAgICAgICAgIHByb2R1Y3QudGF4VHlwZSA9PSBcIkV4Y2x1c2l2ZVwiXG4gICAgICAgICAgICAgICAgPyAxICogKHByb2R1Y3QucHJpY2VXaXRoRGlzY291bnQgKyB0b3RhbFRheClcbiAgICAgICAgICAgICAgICA6IDEgKiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgICAgcHJvZHVjdFRheDogcHJvZHVjdC5wcm9kdWN0VGF4ID4gMCA/IHByb2R1Y3QucHJvZHVjdFRheCA6IDAsXG4gICAgICAgICAgICB0b3RhbFRheDogdG90YWxUYXgsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgLy8gcGxheSBzb3VuZCBpZiBhZGRlZFxuICAgICAgICAgIHRoaXMuYXVkaW8ucGxheSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHF1YW50aXR5ID0gdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHNbaW5kZXhdLnF0eTtcbiAgICAgICAgICAvLyBwbGF5IHNvdW5kIGlmIGFkZGVkXG4gICAgICAgICAgdGhpcy5hdWRpby5wbGF5KCk7XG4gICAgICAgICAgdGhpcy5nZW5lcmF0ZUl0ZW1Ub3RhbChxdWFudGl0eSwgXCJxdHlcIiwgaW5kZXgsIFwiaW5jcmVtZW50XCIpO1xuICAgICAgICAgIGxldCB1bml0UHJpY2UgPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0c1tpbmRleF0udW5pdFByaWNlO1xuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVJdGVtVG90YWwodW5pdFByaWNlLCBcInByaWNlXCIsIGluZGV4LCBcImluY3JlbWVudFwiKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRvYXN0LmZpcmUoe1xuICAgICAgICAgIHR5cGU6IFwiZXJyb3JcIixcbiAgICAgICAgICB0aXRsZTogdGhpcy4kdChcImNvbW1vbi5pbnN1ZmZpY2llbnRfc3RvY2tcIiksXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgdGhpcy5nZW5lcmF0ZUl0ZW1Ub3RhbChxdWFudGl0eSwgXCJxdHlcIiwgaW5kZXgsIFwiXCIpO1xuICAgICAgcmV0dXJuO1xuICAgIH0sXG5cbiAgICAvLyB1cGRhdGUgYXJyYXlcbiAgICBnZW5lcmF0ZUl0ZW1Ub3RhbCh2YWx1ZSwgdHlwZSwgaW5kZXgsIGFjdGlvbikge1xuICAgICAgbGV0IGl0ZW0gPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0c1tpbmRleF07XG4gICAgICBpZiAoaXRlbSkge1xuICAgICAgICBpZiAodHlwZSA9PSBcInF0eVwiKSB7XG4gICAgICAgICAgaXRlbS5xdHkgPSB2YWx1ZTtcbiAgICAgICAgICBpZiAoaXRlbS5pbnZlbnRvcnlDb3VudCA+PSB2YWx1ZSkge1xuICAgICAgICAgICAgaWYgKGFjdGlvbiA9PSBcImluY3JlbWVudFwiKSB7XG4gICAgICAgICAgICAgIGl0ZW0ucXR5ID0gTnVtYmVyKGl0ZW0ucXR5KSArIDE7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PSBcImRlY3JlbWVudFwiKSB7XG4gICAgICAgICAgICAgIGl0ZW0ucXR5ID0gTnVtYmVyKGl0ZW0ucXR5KSAtIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGl0ZW0ucXR5ID0gMTtcbiAgICAgICAgICAgIHRvYXN0LmZpcmUoe1xuICAgICAgICAgICAgICB0eXBlOiBcImVycm9yXCIsXG4gICAgICAgICAgICAgIHRpdGxlOiB0aGlzLiR0KFwicG9zLm5vdF9lbm91Z2hfaXRlbXNcIiksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbS51bml0UHJpY2UgPSB2YWx1ZTtcbiAgICAgICAgICBpZiAoYWN0aW9uID09IFwiaW5jcmVtZW50XCIpIHtcbiAgICAgICAgICAgIGl0ZW0udW5pdFByaWNlID0gTnVtYmVyKGl0ZW0udW5pdFByaWNlKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PSBcImRlY3JlbWVudFwiKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS51bml0UHJpY2UgPiAwKSB7XG4gICAgICAgICAgICAgIGl0ZW0udW5pdFByaWNlID0gTnVtYmVyKGl0ZW0udW5pdFByaWNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXRlbS5wcm9kdWN0VGF4ID1cbiAgICAgICAgICBpdGVtLnRheFR5cGUgPT0gXCJFeGNsdXNpdmVcIlxuICAgICAgICAgICAgPyBpdGVtLnVuaXRQcmljZSAqIChpdGVtLnRheFJhdGUgLyAxMDApXG4gICAgICAgICAgICA6IGl0ZW0udW5pdFByaWNlIC0gaXRlbS51bml0UHJpY2UgLyAoMSArIGl0ZW0udGF4UmF0ZSAvIDEwMCk7XG5cbiAgICAgICAgaXRlbS50b3RhbFRheCA9IGl0ZW0ucHJvZHVjdFRheCAqIGl0ZW0ucXR5O1xuXG4gICAgICAgIGl0ZW0udG90YWxQcmljZSA9XG4gICAgICAgICAgaXRlbS50YXhUeXBlID09IFwiRXhjbHVzaXZlXCJcbiAgICAgICAgICAgID8gaXRlbS5xdHkgKiBpdGVtLnVuaXRQcmljZSArIGl0ZW0udG90YWxUYXhcbiAgICAgICAgICAgIDogaXRlbS5xdHkgKiBpdGVtLnVuaXRQcmljZTtcbiAgICAgICAgaXRlbS51bml0Q29zdCA9XG4gICAgICAgICAgaXRlbS50YXhUeXBlID09IFwiRXhjbHVzaXZlXCJcbiAgICAgICAgICAgID8gTnVtYmVyKGl0ZW0udW5pdFByaWNlKSArIE51bWJlcihpdGVtLnByb2R1Y3RUYXgpXG4gICAgICAgICAgICA6IGl0ZW0udW5pdFByaWNlO1xuICAgICAgICB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0c1tpbmRleF0gPSBpdGVtO1xuICAgICAgfVxuICAgICAgdGhpcy5jYWxjdWxhdGVTdW0oKTtcbiAgICAgIHJldHVybjtcbiAgICB9LFxuXG4gICAgLy8gcmVtb3ZlIGl0ZW0gZnJvbSBhcnJheVxuICAgIHJlbW92ZUl0ZW0oaXRlbSkge1xuICAgICAgbGV0IGluZGV4ID0gdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHMuaW5kZXhPZihpdGVtKTtcbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNhbGN1bGF0ZVN1bSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH0sXG5cbiAgICAvLyBjYWxjdWxhdGUgc3VtXG4gICAgY2FsY3VsYXRlU3VtKCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHN1YnRvdGFsXG4gICAgICB0aGlzLmZvcm0uc3ViVG90YWwgPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5yZWR1Y2UoZnVuY3Rpb24gKFxuICAgICAgICBwcmV2LFxuICAgICAgICBjdXJcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gTnVtYmVyKChwcmV2ICsgY3VyLnRvdGFsUHJpY2UpLnRvRml4ZWQoMikpO1xuICAgICAgfSxcbiAgICAgICAgMCk7XG5cbiAgICAgIC8vIGNhbGN1bGF0ZSBwcm9kdWN0IHRheFxuICAgICAgdGhpcy5mb3JtLnByb2R1Y3RUb3RhbFRheCA9IHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnJlZHVjZShmdW5jdGlvbiAoXG4gICAgICAgIHByZXYsXG4gICAgICAgIGN1clxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBOdW1iZXIoKHByZXYgKyBjdXIudG90YWxUYXgpLnRvRml4ZWQoMikpO1xuICAgICAgfSxcbiAgICAgICAgMCk7XG5cbiAgICAgIHRoaXMuZm9ybS5uZXRUb3RhbCA9IHRoaXMuZm9ybS5zdWJUb3RhbDtcblxuICAgICAgLy8gY2FsY3VsYXRlIGludm9pY2UgdGF4XG4gICAgICB0aGlzLmZvcm0udG90YWxUYXggPSAwO1xuICAgICAgaWYgKHRoaXMuZm9ybS5vcmRlclRheCkge1xuICAgICAgICB0aGlzLmZvcm0udG90YWxUYXggPVxuICAgICAgICAgICh0aGlzLmZvcm0ub3JkZXJUYXgucmF0ZSAvIDEwMCkgKiB0aGlzLmZvcm0uc3ViVG90YWw7XG4gICAgICB9XG5cbiAgICAgIC8vIGNhbGN1bGF0ZSBkaXNjb3VudCBhbmQgdG90YWxcbiAgICAgIGlmICh0aGlzLmZvcm0uc3ViVG90YWwgPiAwKSB7XG4gICAgICAgIGxldCBkaXNjb3VudCA9IE51bWJlcih0aGlzLmZvcm0uZGlzY291bnQpO1xuICAgICAgICBpZiAodGhpcy5mb3JtLmRpc2NvdW50VHlwZSA9PSAxKSB7XG4gICAgICAgICAgZGlzY291bnQgPSAoZGlzY291bnQgLyAxMDApICogdGhpcy5mb3JtLnN1YlRvdGFsO1xuICAgICAgICAgIHRoaXMuZm9ybS50b3RhbERpc2NvdW50ID0gTnVtYmVyKGRpc2NvdW50LnRvRml4ZWQoMikpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRpc2NvdW50ID0gTnVtYmVyKHRoaXMuZm9ybS5kaXNjb3VudCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLm5ldFRvdGFsID1cbiAgICAgICAgICB0aGlzLmZvcm0uc3ViVG90YWwgK1xuICAgICAgICAgIE51bWJlcih0aGlzLmZvcm0udHJhbnNwb3J0Q29zdCkgLVxuICAgICAgICAgIGRpc2NvdW50ICtcbiAgICAgICAgICB0aGlzLmZvcm0udG90YWxUYXg7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfSxcblxuICAgIC8vIHNhdmUgaW52b2ljZVxuICAgIGFzeW5jIHNhdmVJbnZvaWNlKGlzRGlyZWN0ID0gdHJ1ZSkge1xuICAgICAgYXdhaXQgdGhpcy5mb3JtXG4gICAgICAgIC5wb3N0KHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvaW52b2ljZXNcIilcbiAgICAgICAgLnRoZW4oKHsgZGF0YSB9KSA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtLmludm9pY2VfaWQgPSBkYXRhLmRhdGEuaW52b2ljZV9pZDtcbiAgICAgICAgICB0aGlzLmZvcm0uaW52b2ljZV9zbHVnID0gZGF0YS5kYXRhLmludm9pY2Vfc2x1ZztcbiAgICAgICAgICBpZiAoaXNEaXJlY3QpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvd0ludm9pY2VBbmRQcmludCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICB0b2FzdC5maXJlKHsgdHlwZTogXCJlcnJvclwiLCB0aXRsZTogdGhpcy4kdChcImNvbW1vbi5lcnJvcl9tc2dcIikgfSk7XG4gICAgICAgIH0pO1xuICAgIH0sXG5cbiAgICAvLyBzYXZlIHBheW1lbnRcbiAgICBhc3luYyBhZGRQYXltZW50KCkge1xuICAgICAgaWYgKHRoaXMuZm9ybS5pbnZvaWNlX2lkICE9IG51bGwpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5mb3JtXG4gICAgICAgICAgLnBvc3Qod2luZG93LmxvY2F0aW9uLm9yaWdpbiArIFwiL2FwaS9pbnZvaWNlcy1wYXlcIilcbiAgICAgICAgICAudGhlbihhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNob3dNb2RhbCA9IGZhbHNlO1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5zaG93SW52b2ljZUFuZFByaW50KCk7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICAgICAgICAgIHRoaXMuYWdhaW5EZWZhdWx0U2V0dGluZ3MoKTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICB0b2FzdC5maXJlKHsgdHlwZTogXCJlcnJvclwiLCB0aXRsZTogdGhpcy4kdChcImNvbW1vbi5lcnJvcl9tc2dcIikgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhd2FpdCB0b2FzdC5maXJlKHsgdHlwZTogXCJlcnJvclwiLCB0aXRsZTogdGhpcy4kdChcImNvbW1vbi5lcnJvcl9tc2dcIikgfSk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIC8vIGNsb3NlIGFkZCBwYXltZW50IG1vZGFsIGFuZCBjbGVhciBmb3JtIGRhdGFcbiAgICBjbG9zZU1vZGFsQW5kQ2xlYXJGb3JtRGF0YSgpIHtcbiAgICAgIHRoaXMuc2hvd01vZGFsID0gZmFsc2U7XG4gICAgICB0aGlzLmdlbmVyYXRlT3JkZXIgPSBmYWxzZTtcbiAgICAgIHRoaXMuZm9ybS5yZXNldCgpO1xuICAgICAgdGhpcy5hZ2FpbkRlZmF1bHRTZXR0aW5ncygpO1xuICAgIH0sXG5cbiAgICAvLyBjbG9zZSByZWNlaXB0IG1vZGFsXG4gICAgY2xvc2VSZWNlaXB0TW9kYWwoKSB7XG4gICAgICB0aGlzLnNob3dTbWFsbEludm9pY2VNb2RhbCA9IGZhbHNlO1xuICAgICAgdGhpcy5mb3JtLnJlc2V0KCk7XG4gICAgICB0aGlzLmFnYWluRGVmYXVsdFNldHRpbmdzKCk7XG4gICAgICB0aGlzLmNsaWNrQ291bnQgPSAwOyAvLyByZXNldCBjbGljayBjb3VudFxuICAgICAgY29uc29sZS5sb2coXCJmcm9tIGNsb3NlXCIgKyB0aGlzLmNsaWNrQ291bnQpO1xuICAgIH0sXG5cbiAgICAvLyBjb21wbGV0ZSBvcmRlciBhbmQgYWRkIHBheW1lbnRcbiAgICBhc3luYyBjb21wbGV0ZU9yZGVyQW5kQWRkUGF5bWVudCgpIHtcbiAgICAgIGF3YWl0IHRoaXMuc2F2ZUludm9pY2UoZmFsc2UpO1xuICAgICAgaWYgKHRoaXMuZm9ybS5pbnZvaWNlX2lkICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy5zaG93TW9kYWwgPSB0cnVlO1xuICAgICAgICB0aGlzLmZvcm0ucGFpZEFtb3VudCA9IHRoaXMuZm9ybS5uZXRUb3RhbC50b0ZpeGVkKDIpO1xuXG4gICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHRoaXMuJHJlZnMucGFpZEFtb3VudElucHV0LmZvY3VzKCkpO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAvLyBzaG93IGludm9pY2UgYW5kIHByaW50XG4gICAgYXN5bmMgc2hvd0ludm9pY2VBbmRQcmludCgpIHtcbiAgICAgIGF3YWl0IHRoaXMuZ2V0SW52b2ljZSh0aGlzLmZvcm0uaW52b2ljZV9zbHVnKTtcbiAgICAgIHRoaXMuZm9ybS5yZXNldCgpO1xuICAgICAgdGhpcy5hZ2FpbkRlZmF1bHRTZXR0aW5ncygpO1xuXG4gICAgICB0aGlzLnNob3dTbWFsbEludm9pY2VNb2RhbCA9IHRydWU7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucHJpbnRJbnZvaWNlKCksIDUwMCk7XG4gICAgfSxcblxuICAgIC8vIHByaW50IGludm9pY2VcbiAgICBwcmludEludm9pY2UoKSB7XG4gICAgICB2YXIgZGl2Q29udGVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImludm9pY2UtUE9TXCIpLmlubmVySFRNTDtcbiAgICAgIHZhciBhID0gd2luZG93Lm9wZW4oXCJcIiwgXCJcIiwgXCJoZWlnaHQ9NTAwLCB3aWR0aD01MDBcIik7XG4gICAgICBhLmRvY3VtZW50LndyaXRlKFxuICAgICAgICAnPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCIvY3NzL3Bvc19wcmludC5jc3NcIj48aHRtbD4nXG4gICAgICApO1xuICAgICAgYS5kb2N1bWVudC53cml0ZShcIjxib2R5ID5cIik7XG4gICAgICBhLmRvY3VtZW50LndyaXRlKGRpdkNvbnRlbnRzKTtcbiAgICAgIGEuZG9jdW1lbnQud3JpdGUoXCI8L2JvZHk+PC9odG1sPlwiKTtcbiAgICAgIGEuZG9jdW1lbnQuY2xvc2UoKTtcbiAgICAgIGEucHJpbnQoKTtcbiAgICB9LFxuICAgIC8vIGFnYWluIGRlZmF1bHQgc2V0dGluZ3NcbiAgICBhZ2FpbkRlZmF1bHRTZXR0aW5ncygpIHtcbiAgICAgIHRoaXMuZ2V0QWNjb3VudHMoKTtcbiAgICAgIHRoaXMuZ2V0Q2xpZW50cygpO1xuICAgICAgdGhpcy5nZXRUYXhlcygpO1xuICAgICAgdGhpcy5zaG93TW9kYWwgPSBmYWxzZTtcbiAgICAgIHRoaXMuZ2VuZXJhdGVPcmRlciA9IGZhbHNlO1xuICAgIH0sXG4gIH0sXG59O1xuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbi5wb3Mtci1oZWFkIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzcHggIzAwMDM7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmM2YzZjM7XG59XG5cbi5wb3MtbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBvcy1pdGVtLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnIgMWZyO1xuICBncmlkLWdhcDogMTBweDtcbn1cblxuLnBvcy1pdGVtLWdyaWQ+ZGl2IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAyMHB4IDFweCByZ2IoMCAwIDAgLyA2JSksIDAgMXB4IDRweCByZ2IoMCAwIDAgLyA4JSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucG9zLWl0ZW0tZ3JpZD5kaXY6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICM2MzY2ZjE7XG59XG5cbi5wb3MtaXRlbS1ncmlkPmRpdiAuYm94LXF0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICM2MzY2ZjE7XG4gIHRvcDogMDtcbiAgbGVmdDogMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEwcHg7XG59XG5cbi5xdHktcmVkIHtcbiAgYmFja2dyb3VuZDogcmVkICFpbXBvcnRhbnQ7XG59XG5cbi5wb3MtYm9keSB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWluLWhlaWdodDogMjQwcHg7XG59XG5cbi5wb3MtYm94LWltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjFmMTtcbiAgYmFja2dyb3VuZDogI2ViZWJlYjtcbiAgbGluZS1oZWlnaHQ6IDEwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5wb3MtYm94LWltZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5wb3MtYm94LWNvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLnBvcy1ib3gtY29udGVudCBzcGFuIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbi5wb3MtYm94LWNvbnRlbnQge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLnBvcy1pdGVtLWdyaWQtcmVkIHtcbiAgYm9yZGVyLWNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuLmNhcmQtY2xpZW50LXNlYXJjaCB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xufVxuXG4udGFibGUtd3JhcCB7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbi50YWJsZS1yZXNwb25zaXZlLnRhYmxlLXdyYXA+dGFibGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xufVxuXG4udGFibGUtd3JhcCAudGFibGUgdGhlYWQgdHIge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjNjM2NmYxMWYgIWltcG9ydGFudDtcbn1cblxuLnRhYmxlLXdyYXAgLmluY3JlbWVudG9yIHtcbiAgd2lkdGg6IDgwcHg7XG59XG5cbi50YWJsZS13cmFwIC5jdXN0b20tcXR5LWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlY2VjZmRiODtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgLyogYmFja2dyb3VuZDogI2RkZDsgKi9cbn1cblxuLnRhYmxlLXdyYXAgLmJ0bi1kYW5nZXIge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxuLnRhYmxlLXdyYXAgLmljb24tc20ge1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMjNweDtcbn1cblxuLnBvcy1jYXJkLWZvb3RlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBvcy1uZXQtdG90YWwge1xuICBiYWNrZ3JvdW5kOiAjNjM2NmYxMzM7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnByb2R1Y3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLmluZm8tYm94IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlMGUwZTA7XG4gICAgfVxuICB9XG59XG5cbi5kYXJrLW1vZGUgLnBvcy1ib2R5LFxuLmRhcmstbW9kZSAucG9zLXItaGVhZCB7XG4gIGJhY2tncm91bmQ6ICMxMTE4MjcgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xufVxuXG4uZGFyay1tb2RlIC5wb3MtaXRlbS1ncmlkPmRpdiB7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xufVxuXG4uZGFyay1tb2RlIC5wb3MtYm94LWNvbnRlbnQge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5kYXJrLW1vZGUgLnBvcy1pdGVtLWdyaWQ+ZGl2LnBvcy1pdGVtLWdyaWQtcmVkIHtcbiAgYm9yZGVyLWNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuLmRhcmstbW9kZSAuY2FyZC1jbGllbnQtc2VhcmNoIHtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xufVxuXG4uZGFyay1tb2RlIC50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWYyOTM3O1xufVxuXG4uZGFyay1tb2RlIC50YWJsZS1yZXNwb25zaXZlLnRhYmxlLXdyYXA+dGFibGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNmM3NTdkO1xufVxuXG4uZGFyay1tb2RlIC50YWJsZS13cmFwIC5pbmNyZW1lbnRvciB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZGFyay1tb2RlIC5wb3MtY2FyZC1mb290ZXIuYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kOiAjMTExODI3ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcbn1cblxuLmRhcmstbW9kZSAucG9zLWNhcmQtZm9vdGVyIGxhYmVsIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5kYXJrLW1vZGUgLnBvcy1uZXQtdG90YWwge1xuICBiYWNrZ3JvdW5kOiByZ2IoOTkgMTY5IDI0MSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jaW52b2ljZS1QT1MgdGQsXG4jaW52b2ljZS1QT1MgdGgsXG4jaW52b2ljZS1QT1MgdHIsXG4jaW52b2ljZS1QT1MgdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG4jaW52b2ljZS1QT1MgdHIge1xuICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICMwNTA3MGI7XG59XG5cbiNpbnZvaWNlLVBPUyB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jaW52b2ljZS1QT1MgdGZvb3QgdHIgdGg6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4jaW52b2ljZS1QT1MgLmluZm8ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4jaW52b2ljZS1QT1MgLmluZm8+cCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbiNsZWdhbGNvcHkge1xuICBtYXJnaW4tdG9wOiA1bW07XG59XG5cbiNsZWdhbGNvcHkgcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2JhciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRvdGFsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuc3Bhbi5wcXR5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjUwcHgpIHtcbiAgLnBvcy1pdGVtLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnBvcy1pdGVtLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc20tY29sLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIC5wb3MtaXRlbS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgfVxufVxuXG4uY3JlYXRlLWJ0biB7XG4gIHBhZGRpbmc6IDExcHg7XG59XG5cbi5jcmVhdGUtYnRuLTIge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js\n"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true": /*!*******************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true ***! \*******************************************************************************************************************************************************************************************************************************************************/ /*! exports provided: render, staticRenderFns */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n attrs: {\n id: \"pos\"\n }\n }, [_c(\"breadcrumbs\", {\n attrs: {\n items: _vm.breadcrumbs,\n current: _vm.breadcrumbsCurrent\n }\n }), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row sm-col-reverse\"\n }, [_c(\"div\", {\n staticClass: \"col-12 col-md-5\"\n }, [_c(\"div\", {\n staticClass: \"card\"\n }, [_c(\"div\", {\n staticClass: \"card-body-l p-0\"\n }, [_c(\"div\", {\n staticClass: \"form-group pl-3 pt-3 pr-3\"\n }, [_c(\"div\", {\n staticClass: \"d-flex w-100\"\n }, [_c(\"v-select\", {\n staticClass: \"flex-grow-1\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"client\")\n },\n attrs: {\n options: _vm.clients,\n label: \"name\",\n name: \"client\",\n placeholder: _vm.$t(\"common.client_placeholder\")\n },\n model: {\n value: _vm.form.client,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"client\", $$v);\n },\n expression: \"form.client\"\n }\n }), _vm._v(\" \"), _c(\"ClientCreateModal\", {\n on: {\n reloadClients: _vm.getClients\n }\n }, [_c(\"div\", {\n staticClass: \"input-group-text create-btn\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-solid fa-plus-circle\"\n })])])], 1), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"client\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"table-responsive table-wrap\"\n }, [_c(\"table\", {\n staticClass: \"table table-striped\"\n }, [_c(\"thead\", [_c(\"tr\", [_c(\"th\", {\n attrs: {\n scope: \"col\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.product\")))]), _vm._v(\" \"), _c(\"th\", {\n attrs: {\n scope: \"col\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.price\")))]), _vm._v(\" \"), _c(\"th\", {\n staticClass: \"text-center\",\n attrs: {\n scope: \"col\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.quantity\")) + \"\\n \")]), _vm._v(\" \"), _c(\"th\", {\n staticClass: \"text-center\",\n attrs: {\n scope: \"col\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.subtotal\")) + \"\\n \")]), _vm._v(\" \"), _c(\"th\", {\n staticClass: \"text-center\",\n attrs: {\n scope: \"col\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.action\")) + \"\\n \")])])]), _vm._v(\" \"), _vm.form.selectedProducts && _vm.form.selectedProducts.length > 0 ? _c(\"tbody\", _vm._l(_vm.form.selectedProducts, function (product, i) {\n return _c(\"tr\", {\n key: i\n }, [_c(\"td\", [_vm._v(_vm._s(product.name))]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(product.unitPrice)))]), _vm._v(\" \"), _c(\"td\", [_c(\"div\", {\n staticClass: \"d-flex custom-qty-input\"\n }, [_c(\"input\", {\n staticClass: \"button-minus icon-shape icon-sm btn-danger\",\n attrs: {\n type: \"button\",\n value: \"-\",\n \"data-field\": \"quantity\"\n },\n on: {\n click: function click($event) {\n return _vm.generateItemTotal(product.qty, \"qty\", i, \"decrement\");\n }\n }\n }), _vm._v(\" \"), _c(\"input\", {\n staticClass: \"quantity-field border-0 incrementor\",\n attrs: {\n type: \"number\",\n step: \"any\",\n id: \"Qty-\".concat(i),\n name: \"quantity\",\n required: \"\",\n min: \"1\",\n max: product.inventoryCount,\n placeholder: \"Quantity\"\n },\n domProps: {\n value: product.qty\n },\n on: {\n change: function change($event) {\n return _vm.generateItemTotal($event.target.value, \"qty\", i, \"\");\n },\n keyup: function keyup($event) {\n return _vm.generateItemTotal($event.target.value, \"qty\", i, \"\");\n }\n }\n }), _vm._v(\" \"), _c(\"input\", {\n staticClass: \"button-plus icon-shape icon-sm btn-primary\",\n attrs: {\n type: \"button\",\n value: \"+\",\n \"data-field\": \"quantity\"\n },\n on: {\n click: function click($event) {\n return _vm.generateItemTotal(product.qty, \"qty\", i, \"increment\");\n }\n }\n })])]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(product.totalPrice)))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"text-right\"\n }, [_c(\"button\", {\n staticClass: \"btn btn-danger\",\n attrs: {\n type: \"button\"\n },\n on: {\n click: function click($event) {\n return _vm.removeItem(product);\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-times\"\n })])])]);\n }), 0) : _c(\"tbody\", [_c(\"tr\", {\n staticClass: \"text-center\"\n }, [_c(\"td\", {\n attrs: {\n colspan: \"5\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"no_data_found\")))])])])])])])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"pos-card-footer bg-white\"\n }, [_c(\"div\", [_c(\"div\", {\n staticClass: \"row pt-3 pl-3 pr-3\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6 col-lg-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"discountType\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.discount_type\")))]), _vm._v(\" \"), _c(\"select\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.discountType,\n expression: \"form.discountType\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"discountType\")\n },\n attrs: {\n id: \"discountType\",\n step: \"any\",\n name: \"discountType\"\n },\n on: {\n change: [function ($event) {\n var $$selectedVal = Array.prototype.filter.call($event.target.options, function (o) {\n return o.selected;\n }).map(function (o) {\n var val = \"_value\" in o ? o._value : o.value;\n return val;\n });\n _vm.$set(_vm.form, \"discountType\", $event.target.multiple ? $$selectedVal : $$selectedVal[0]);\n }, _vm.calculateSum],\n keyup: _vm.calculateSum\n }\n }, [_c(\"option\", {\n attrs: {\n value: \"0\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.fixed\")))]), _vm._v(\" \"), _c(\"option\", {\n attrs: {\n value: \"1\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.percentage\")) + \"(%)\")])]), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"discountType\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6 col-lg-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"discount\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.discount\")) + \"\\n \"), _vm.form.discountType == 1 ? _c(\"span\", [_vm._v(\"(%)\")]) : _vm._e()]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"input-group\"\n }, [_c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.discount,\n expression: \"form.discount\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"discount\")\n },\n attrs: {\n id: \"discount\",\n type: \"number\",\n step: \"any\",\n min: \"1\",\n max: _vm.form.discountType == 1 ? 100 : _vm.form.subTotal,\n name: \"discount\",\n placeholder: _vm.$t(\"common.discount_placeholder\")\n },\n domProps: {\n value: _vm.form.discount\n },\n on: {\n change: _vm.calculateSum,\n keyup: _vm.calculateSum,\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"discount\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _vm.form.discountType == 1 ? _c(\"div\", {\n staticClass: \"input-group-append\"\n }, [_c(\"span\", {\n staticClass: \"input-group-text\"\n }, [_vm._v(_vm._s(_vm._f(\"withCurrency\")(_vm.form.totalDiscount)))])]) : _vm._e()]), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"discount\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6 col-lg-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"transportCost\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.transport_cost\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.transportCost,\n expression: \"form.transportCost\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"transportCost\")\n },\n attrs: {\n id: \"transportCost\",\n type: \"number\",\n step: \"any\",\n min: \"1\",\n name: \"transportCost\",\n placeholder: _vm.$t(\"common.transport_cost_placeholder\")\n },\n domProps: {\n value: _vm.form.transportCost\n },\n on: {\n change: _vm.calculateSum,\n keyup: _vm.calculateSum,\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"transportCost\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"transportCost\"\n }\n })], 1), _vm._v(\" \"), _vm.taxes ? _c(\"div\", {\n staticClass: \"form-group col-md-6 col-lg-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"orderTax\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.invoice_tax\")) + \" \")]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"input-group select-input-group\"\n }, [_c(\"v-select\", {\n staticClass: \"w-85\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"orderTax\")\n },\n attrs: {\n options: _vm.taxes,\n label: \"code\",\n name: \"orderTax\",\n placeholder: _vm.$t(\"sales.common.invoice_tax_placeholder\")\n },\n on: {\n input: _vm.calculateSum\n },\n model: {\n value: _vm.form.orderTax,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"orderTax\", $$v);\n },\n expression: \"form.orderTax\"\n }\n }), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"input-group-prepend input-c-margin\"\n }, [_c(\"div\", {\n staticClass: \"input-group-text\"\n }, [_vm.form.orderTax ? _c(\"span\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(_vm.form.totalTax)))]) : _c(\"span\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(0)))])])])], 1)]) : _vm._e()]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"pos-net-total noi-print\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.net_total\")) + \": \" + _vm._s(_vm._f(\"withCurrency\")(_vm.form.netTotal)) + \"\\n \")])])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row no-print\"\n }, [_c(\"div\", {\n staticClass: \"col-12 col-lg-5 mb-1\"\n }, [_c(\"button\", {\n staticClass: \"btn btn-primary btn-block\",\n on: {\n click: _vm.saveInvoice,\n keydown: function keydown($event) {\n return _vm.form.onKeydown($event);\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-save\"\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"pos.complete_order\")) + \"\\n \")])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"col-12 col-lg-5 mb-1\"\n }, [_c(\"button\", {\n staticClass: \"btn btn-primary btn-block\",\n on: {\n click: _vm.completeOrderAndAddPayment\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-credit-card\"\n }), _vm._v(\"\\n \" + _vm._s(_vm.$t(\"pos.complete_order_and_add_payment\")) + \"\\n \")])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"col-12 col-lg-2\"\n }, [_c(\"button\", {\n staticClass: \"btn btn-secondary float-right btn-block\",\n attrs: {\n type: \"reset\"\n },\n on: {\n click: function click($event) {\n return _vm.form.reset();\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-power-off\"\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"common.reset\")) + \"\\n \")])])])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"col-12 col-md-7\"\n }, [_c(\"div\", {\n staticClass: \"card bg-transparent\"\n }, [_c(\"div\", {\n staticClass: \"pos-r-head bg-white\"\n }, [_c(\"div\", {\n staticClass: \"row\"\n }, [_vm.categories ? _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"v-select\", {\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"category\")\n },\n attrs: {\n options: _vm.categories,\n label: \"name\",\n name: \"category\",\n placeholder: _vm.$t(\"common.category_name_placeholder\")\n },\n on: {\n input: _vm.getSubCategoriesByCategory\n },\n model: {\n value: _vm.form.category,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"category\", $$v);\n },\n expression: \"form.category\"\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"category\"\n }\n })], 1) : _vm._e(), _vm._v(\" \"), _vm.subCategories ? _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"v-select\", {\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"subCategory\")\n },\n attrs: {\n options: _vm.subCategories,\n label: \"name\",\n name: \"subCategory\",\n placeholder: _vm.$t(\"common.category_name_placeholder\")\n },\n on: {\n input: _vm.getProductsBySubCategory\n },\n model: {\n value: _vm.form.subCategory,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"subCategory\", $$v);\n },\n expression: \"form.subCategory\"\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"subCategory\"\n }\n })], 1) : _vm._e(), _vm._v(\" \"), _vm.products ? _c(\"div\", {\n staticClass: \"col-md-12 form-group\"\n }, [_c(\"div\", {\n staticClass: \"d-flex w-100\"\n }, [_c(\"search\", {\n staticClass: \"flex-grow-1\",\n attrs: {\n isPosSearch: true\n },\n on: {\n \"reset-pagination\": function resetPagination($event) {\n return _vm.resetPagination();\n },\n reload: _vm.reload\n },\n model: {\n value: _vm.query,\n callback: function callback($$v) {\n _vm.query = $$v;\n },\n expression: \"query\"\n }\n }), _vm._v(\" \"), _c(\"ProductCreateModal\", {\n on: {\n reloadProducts: _vm.getProducts\n }\n }, [_c(\"div\", {\n staticClass: \"input-group-text create-btn-2\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-solid fa-plus-circle\"\n })])])], 1), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"selectedProducts\"\n }\n })], 1) : _vm._e()])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"card-body bg-white mt-3 pos-body\"\n }, [_c(\"div\", {\n staticClass: \"pos-item-grid\"\n }, _vm._l(_vm.products, function (product) {\n return _c(\"div\", {\n key: product.id,\n \"class\": Number(product.inventoryCount) < 1 ? \"pos-item-grid-red\" : \"\",\n on: {\n click: function click($event) {\n return _vm.storeProduct(product);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"pos-box\"\n }, [_c(\"div\", {\n staticClass: \"relative\"\n }, [_c(\"div\", {\n staticClass: \"pos-box-img\"\n }, [product.image ? _c(\"div\", [_c(\"img\", {\n staticClass: \"pos-box-icon\",\n attrs: {\n src: product.image,\n alt: \"product image\"\n }\n })]) : _c(\"div\", [_vm._v(_vm._s(_vm.$t(\"common.no_preview\")))])]), _vm._v(\" \"), _c(\"span\", {\n staticClass: \"box-qty\",\n \"class\": Number(product.inventoryCount) < 1 ? \"qty-red\" : \"\"\n }, [_vm._v(_vm._s(product.inventoryCount))])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"pos-box-content\"\n }, [_c(\"span\", [_vm._v(_vm._s(_vm._f(\"withPrefix\")(product.code, _vm.productPrefix)))]), _vm._v(\" \"), _c(\"p\", {\n staticClass: \"pos-box-text\"\n }, [_vm._v(_vm._s(product.name))])])])]);\n }), 0), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"col-12 d-flex justify-content-center\"\n }, [_vm.pagination && _vm.pagination.last_page > 1 ? _c(\"pagination\", {\n staticClass: \"justify-flex-end mt-3\",\n attrs: {\n pagination: _vm.pagination,\n offset: 5\n },\n on: {\n paginate: _vm.paginate\n }\n }) : _vm._e()], 1)])])])])]), _vm._v(\" \"), _vm.showModal ? _c(\"Modal\", {\n staticClass: \"pay-modal\",\n attrs: {\n form: _vm.form\n }\n }, [_c(\"h5\", {\n attrs: {\n slot: \"header\"\n },\n slot: \"header\"\n }, [_vm._v(_vm._s(_vm.$t(\"pos.add_payment\")))]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"w-100\",\n attrs: {\n slot: \"body\"\n },\n slot: \"body\"\n }, [_c(\"div\", [_vm.accounts && _vm.form.selectedProducts && _vm.form.selectedProducts.length > 0 ? _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-8\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"account\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.account\")) + \"\\n \"), _c(\"span\", {\n staticClass: \"required\"\n }, [_vm._v(\"*\")])]), _vm._v(\" \"), _c(\"v-select\", {\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"account\")\n },\n attrs: {\n options: _vm.accounts,\n label: \"label\",\n name: \"account\",\n placeholder: _vm.$t(\"common.account_placeholder\")\n },\n model: {\n value: _vm.form.account,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"account\", $$v);\n },\n expression: \"form.account\"\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"account\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-4\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"paidAmount\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.amount\"))), _c(\"span\", {\n staticClass: \"required\"\n }, [_vm._v(\"*\")])]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.paidAmount,\n expression: \"form.paidAmount\"\n }],\n ref: \"paidAmountInput\",\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"paidAmount\")\n },\n attrs: {\n id: \"paidAmount\",\n type: \"number\",\n step: \"any\",\n name: \"paidAmount\",\n min: \"1\",\n max: _vm.form.netTotal,\n placeholder: _vm.$t(\"common.paid_amount_placeholder\")\n },\n domProps: {\n value: _vm.form.paidAmount\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"paidAmount\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"paidAmount\"\n }\n })], 1)]) : _vm._e(), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"chequeNo\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.cheque_no\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.chequeNo,\n expression: \"form.chequeNo\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"chequeNo\")\n },\n attrs: {\n id: \"chequeNo\",\n type: \"text\",\n step: \"any\",\n name: \"chequeNo\",\n placeholder: _vm.$t(\"common.cheque_placeholder\")\n },\n domProps: {\n value: _vm.form.chequeNo\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"chequeNo\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"chequeNo\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"receiptNo\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.receipt_no\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.receiptNo,\n expression: \"form.receiptNo\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"receiptNo\")\n },\n attrs: {\n id: \"receiptNo\",\n type: \"text\",\n name: \"receiptNo\",\n placeholder: _vm.$t(\"common.receipt_no_placeholder\")\n },\n domProps: {\n value: _vm.form.receiptNo\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"receiptNo\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"receiptNo\"\n }\n })], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"poReference\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.po_reference\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.poReference,\n expression: \"form.poReference\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"poReference\")\n },\n attrs: {\n id: \"poReference\",\n type: \"text\",\n step: \"any\",\n name: \"poReference\",\n placeholder: _vm.$t(\"common.po_reference_placeholder\")\n },\n domProps: {\n value: _vm.form.poReference\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"poReference\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"poReference\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"paymentTerms\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.payment_terms\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.paymentTerms,\n expression: \"form.paymentTerms\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"paymentTerms\")\n },\n attrs: {\n id: \"paymentTerms\",\n type: \"text\",\n name: \"paymentTerms\",\n placeholder: _vm.$t(\"common.payment_terms_placeholder\")\n },\n domProps: {\n value: _vm.form.paymentTerms\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"paymentTerms\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"paymentTerms\"\n }\n })], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"reference\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.reference\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.reference,\n expression: \"form.reference\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"reference\")\n },\n attrs: {\n id: \"reference\",\n type: \"text\",\n name: \"reference\",\n placeholder: _vm.$t(\"common.reference_placeholder\")\n },\n domProps: {\n value: _vm.form.reference\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"reference\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"reference\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"deliveryPlace\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"sales.common.delivery_place\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.deliveryPlace,\n expression: \"form.deliveryPlace\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"deliveryPlace\")\n },\n attrs: {\n id: \"deliveryPlace\",\n type: \"text\",\n name: \"deliveryPlace\",\n placeholder: _vm.$t(\"sales.common.delivery_place_placeholder\")\n },\n domProps: {\n value: _vm.form.deliveryPlace\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"deliveryPlace\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"deliveryPlace\"\n }\n })], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"date\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.date\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.date,\n expression: \"form.date\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"date\")\n },\n attrs: {\n id: \"date\",\n type: \"date\",\n name: \"date\"\n },\n domProps: {\n value: _vm.form.date\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"date\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"date\"\n }\n })], 1), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"status\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.status\")))]), _vm._v(\" \"), _c(\"select\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.status,\n expression: \"form.status\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"status\")\n },\n attrs: {\n id: \"status\"\n },\n on: {\n change: function change($event) {\n var $$selectedVal = Array.prototype.filter.call($event.target.options, function (o) {\n return o.selected;\n }).map(function (o) {\n var val = \"_value\" in o ? o._value : o.value;\n return val;\n });\n _vm.$set(_vm.form, \"status\", $event.target.multiple ? $$selectedVal : $$selectedVal[0]);\n }\n }\n }, [_c(\"option\", {\n attrs: {\n value: \"1\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.active\")))]), _vm._v(\" \"), _c(\"option\", {\n attrs: {\n value: \"0\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.in_active\")))])]), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"status\"\n }\n })], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"note\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.note\")))]), _vm._v(\" \"), _c(\"textarea\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.note,\n expression: \"form.note\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"note\")\n },\n attrs: {\n id: \"note\",\n placeholder: _vm.$t(\"common.note_placeholder\")\n },\n domProps: {\n value: _vm.form.note\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"note\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"note\"\n }\n })], 1)])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"payment-modal-footer\",\n attrs: {\n slot: \"modal-footer\"\n },\n slot: \"modal-footer\"\n }, [_c(\"div\", {\n staticClass: \"pos-modal-footer no-print\"\n }, [_c(\"button\", {\n staticClass: \"btn btn-primary\",\n on: {\n click: _vm.addPayment,\n keydown: function keydown($event) {\n return _vm.form.onKeydown($event);\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-save\"\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"common.save\")) + \"\\n \")]), _vm._v(\" \"), _c(\"button\", {\n staticClass: \"modal-default-button btn btn-danger\",\n on: {\n click: _vm.closeModalAndClearFormData\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.close\")) + \"\\n \")])])])]) : _vm._e(), _vm._v(\" \"), _vm.showSmallInvoiceModal ? _c(\"Modal\", {\n attrs: {\n allData: _vm.allData\n }\n }, [_c(\"h5\", {\n staticClass: \"no-print\",\n attrs: {\n slot: \"header\"\n },\n slot: \"header\"\n }, [_vm._v(_vm._s(_vm.$t(\"pos.invoice_receipt\")))]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"w-100\",\n attrs: {\n slot: \"body\"\n },\n slot: \"body\"\n }, [_c(\"div\", {\n attrs: {\n id: \"invoice-POS\"\n }\n }, [_c(\"div\", {\n staticStyle: {\n \"max-width\": \"400px\",\n margin: \"0px auto\"\n }\n }, [_c(\"div\", {\n staticClass: \"info\"\n }, [_vm.appInfo.blackLogo ? _c(\"div\", {\n staticClass: \"pos-logo\"\n }, [_c(\"img\", {\n attrs: {\n src: _vm.appInfo.blackLogo,\n width: \"100px\"\n }\n })]) : _c(\"h2\", {\n staticClass: \"text-center\"\n }, [_vm._v(_vm._s(_vm.appInfo.companyName))]), _vm._v(\" \"), _c(\"p\", [_c(\"span\", [_vm._v(_vm._s(_vm.$t(\"common.date\")) + \" : \" + _vm._s(_vm.allData.invoiceDate) + \" \"), _c(\"br\")]), _vm._v(\" \"), _c(\"span\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.appInfo.address,\n expression: \"appInfo.address\"\n }]\n }, [_vm._v(_vm._s(_vm.$t(\"common.address\")) + \" : \" + _vm._s(_vm.appInfo.address) + \" \"), _c(\"br\")]), _vm._v(\" \"), _c(\"span\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.appInfo.email,\n expression: \"appInfo.email\"\n }]\n }, [_vm._v(_vm._s(_vm.$t(\"common.email\")) + \" : \" + _vm._s(_vm.appInfo.email) + \" \"), _c(\"br\")]), _vm._v(\" \"), _c(\"span\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.appInfo.phone,\n expression: \"appInfo.phone\"\n }]\n }, [_vm._v(_vm._s(_vm.$t(\"common.phone\")) + \" : \" + _vm._s(_vm.appInfo.phone) + \" \"), _c(\"br\")]), _vm._v(\" \"), _c(\"span\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.allData.client.name,\n expression: \"allData.client.name\"\n }]\n }, [_vm._v(_vm._s(_vm.$t(\"common.client\")) + \" : \" + _vm._s(_vm.allData.client.name) + \" \"), _c(\"br\")]), _vm._v(\" \"), _c(\"span\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.allData.createdBy,\n expression: \"allData.createdBy\"\n }]\n }, [_vm._v(_vm._s(_vm.$t(\"common.sold_by\")) + \" : \" + _vm._s(_vm.allData.createdBy) + \" \"), _c(\"br\")])])]), _vm._v(\" \"), _c(\"table\", {\n staticClass: \"table_data\"\n }, [_c(\"tbody\", [_vm._l(_vm.invoiceProducts, function (data, i) {\n return _c(\"tr\", {\n key: i\n }, [_c(\"td\", {\n attrs: {\n colspan: \"3\"\n }\n }, [_c(\"span\", [_vm._v(\"\\n \" + _vm._s(data.productName)), _c(\"br\"), _vm._v(\" \"), _c(\"span\", {\n staticClass: \"pqty\"\n }, [_vm._v(_vm._s(data.quantity) + \" \" + _vm._s(data.productUnit) + \" x\\n \" + _vm._s(_vm._f(\"withCurrency\")(data.unitCost)))])])]), _vm._v(\" \"), _c(\"td\", {\n staticStyle: {\n \"text-align\": \"right\",\n \"vertical-align\": \"bottom\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(data.unitCost * data.quantity)) + \"\\n \")])]);\n }), _vm._v(\" \"), _c(\"tr\", {\n staticStyle: {\n \"margin-top\": \"10px\"\n }\n }, [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.subtotal\")))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.subTotal)) + \"\\n \")])]), _vm._v(\" \"), _vm.allData.discount ? _c(\"tr\", {\n staticStyle: {\n \"margin-top\": \"10px\"\n }\n }, [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.discount\")))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.discount)) + \"\\n \")])]) : _vm._e(), _vm._v(\" \"), _vm.allData.tax ? _c(\"tr\", {\n staticStyle: {\n \"margin-top\": \"10px\"\n }\n }, [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.tax\")) + \"(%)\")]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.tax)) + \"\\n \")])]) : _vm._e(), _vm._v(\" \"), _c(\"tr\", {\n staticStyle: {\n \"margin-top\": \"10px\"\n }\n }, [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.total\")))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.subTotal - _vm.allData.totalInvoiceReturn - _vm.allData.discount + _vm.allData.transport + _vm.allData.tax)) + \"\\n \")])]), _vm._v(\" \"), _c(\"tr\", [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.paid\")))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.totalPaid)) + \"\\n \")])]), _vm._v(\" \"), _c(\"tr\", [_c(\"td\", {\n staticClass: \"total\",\n attrs: {\n colspan: \"3\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.due\")))]), _vm._v(\" \"), _c(\"td\", {\n staticClass: \"total\",\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm._f(\"withCurrency\")(_vm.allData.due)) + \"\\n \")])])], 2)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"ml-2 mb-4\",\n attrs: {\n id: \"legalcopy\"\n }\n }, [_c(\"p\", {\n staticClass: \"legal\"\n }, [_c(\"strong\", [_vm._v(_vm._s(_vm.$t(\"pos.receipt_text\")))])]), _vm._v(\" \"), _c(\"div\", {\n attrs: {\n id: \"bar\"\n }\n }, [_c(\"barcode\", {\n attrs: {\n width: \"2\",\n height: \"25\",\n fontSize: \"15\",\n value: _vm._f(\"withPrefix\")(_vm.allData.invoiceNo, _vm.invoicePrefix)\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.rendering_fails\")) + \"\\n \")])], 1)])])])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"pos-modal-footer no-print\",\n attrs: {\n slot: \"modal-footer\"\n },\n slot: \"modal-footer\"\n }, [_c(\"div\", [_c(\"button\", {\n staticClass: \"modal-default-button btn btn-info\",\n on: {\n click: function click($event) {\n return _vm.printInvoice();\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.print\")) + \"\\n \")])]), _vm._v(\" \"), _c(\"button\", {\n staticClass: \"modal-default-button btn btn-danger\",\n on: {\n click: _vm.closeReceiptModal\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.close\")) + \"\\n \")])])]) : _vm._e()], 1);\n};\nvar staticRenderFns = [];\nrender._withStripped = true;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/OWI1NyJdLCJuYW1lcyI6WyJyZW5kZXIiLCJfdm0iLCJfYyIsIl9zZWxmIiwiYXR0cnMiLCJpZCIsIml0ZW1zIiwiYnJlYWRjcnVtYnMiLCJjdXJyZW50IiwiYnJlYWRjcnVtYnNDdXJyZW50IiwiX3YiLCJzdGF0aWNDbGFzcyIsImZvcm0iLCJlcnJvcnMiLCJoYXMiLCJvcHRpb25zIiwiY2xpZW50cyIsImxhYmVsIiwibmFtZSIsInBsYWNlaG9sZGVyIiwiJHQiLCJtb2RlbCIsInZhbHVlIiwiY2xpZW50IiwiY2FsbGJhY2siLCIkJHYiLCIkc2V0IiwiZXhwcmVzc2lvbiIsIm9uIiwicmVsb2FkQ2xpZW50cyIsImdldENsaWVudHMiLCJmaWVsZCIsInNjb3BlIiwiX3MiLCJzZWxlY3RlZFByb2R1Y3RzIiwibGVuZ3RoIiwiX2wiLCJwcm9kdWN0IiwiaSIsImtleSIsIl9mIiwidW5pdFByaWNlIiwidHlwZSIsImNsaWNrIiwiJGV2ZW50IiwiZ2VuZXJhdGVJdGVtVG90YWwiLCJxdHkiLCJzdGVwIiwiY29uY2F0IiwicmVxdWlyZWQiLCJtaW4iLCJtYXgiLCJpbnZlbnRvcnlDb3VudCIsImRvbVByb3BzIiwiY2hhbmdlIiwidGFyZ2V0Iiwia2V5dXAiLCJ0b3RhbFByaWNlIiwicmVtb3ZlSXRlbSIsImNvbHNwYW4iLCJkaXJlY3RpdmVzIiwicmF3TmFtZSIsImRpc2NvdW50VHlwZSIsIiQkc2VsZWN0ZWRWYWwiLCJBcnJheSIsInByb3RvdHlwZSIsImZpbHRlciIsImNhbGwiLCJvIiwic2VsZWN0ZWQiLCJtYXAiLCJ2YWwiLCJfdmFsdWUiLCJtdWx0aXBsZSIsImNhbGN1bGF0ZVN1bSIsIl9lIiwiZGlzY291bnQiLCJzdWJUb3RhbCIsImlucHV0IiwiY29tcG9zaW5nIiwidG90YWxEaXNjb3VudCIsInRyYW5zcG9ydENvc3QiLCJ0YXhlcyIsIm9yZGVyVGF4IiwidG90YWxUYXgiLCJuZXRUb3RhbCIsInNhdmVJbnZvaWNlIiwia2V5ZG93biIsIm9uS2V5ZG93biIsImNvbXBsZXRlT3JkZXJBbmRBZGRQYXltZW50IiwicmVzZXQiLCJjYXRlZ29yaWVzIiwiZ2V0U3ViQ2F0ZWdvcmllc0J5Q2F0ZWdvcnkiLCJjYXRlZ29yeSIsInN1YkNhdGVnb3JpZXMiLCJnZXRQcm9kdWN0c0J5U3ViQ2F0ZWdvcnkiLCJzdWJDYXRlZ29yeSIsInByb2R1Y3RzIiwiaXNQb3NTZWFyY2giLCJyZXNldFBhZ2luYXRpb24iLCJyZWxvYWQiLCJxdWVyeSIsInJlbG9hZFByb2R1Y3RzIiwiZ2V0UHJvZHVjdHMiLCJOdW1iZXIiLCJzdG9yZVByb2R1Y3QiLCJpbWFnZSIsInNyYyIsImFsdCIsImNvZGUiLCJwcm9kdWN0UHJlZml4IiwicGFnaW5hdGlvbiIsImxhc3RfcGFnZSIsIm9mZnNldCIsInBhZ2luYXRlIiwic2hvd01vZGFsIiwic2xvdCIsImFjY291bnRzIiwiYWNjb3VudCIsInBhaWRBbW91bnQiLCJyZWYiLCJjaGVxdWVObyIsInJlY2VpcHRObyIsInBvUmVmZXJlbmNlIiwicGF5bWVudFRlcm1zIiwicmVmZXJlbmNlIiwiZGVsaXZlcnlQbGFjZSIsImRhdGUiLCJzdGF0dXMiLCJub3RlIiwiYWRkUGF5bWVudCIsImNsb3NlTW9kYWxBbmRDbGVhckZvcm1EYXRhIiwic2hvd1NtYWxsSW52b2ljZU1vZGFsIiwiYWxsRGF0YSIsInN0YXRpY1N0eWxlIiwibWFyZ2luIiwiYXBwSW5mbyIsImJsYWNrTG9nbyIsIndpZHRoIiwiY29tcGFueU5hbWUiLCJpbnZvaWNlRGF0ZSIsImFkZHJlc3MiLCJlbWFpbCIsInBob25lIiwiY3JlYXRlZEJ5IiwiaW52b2ljZVByb2R1Y3RzIiwiZGF0YSIsInByb2R1Y3ROYW1lIiwicXVhbnRpdHkiLCJwcm9kdWN0VW5pdCIsInVuaXRDb3N0IiwidGF4IiwidG90YWxJbnZvaWNlUmV0dXJuIiwidHJhbnNwb3J0IiwidG90YWxQYWlkIiwiZHVlIiwiaGVpZ2h0IiwiZm9udFNpemUiLCJpbnZvaWNlTm8iLCJpbnZvaWNlUHJlZml4IiwicHJpbnRJbnZvaWNlIiwiY2xvc2VSZWNlaXB0TW9kYWwiLCJzdGF0aWNSZW5kZXJGbnMiLCJfd2l0aFN0cmlwcGVkIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQSxJQUFJQSxNQUFNLEdBQUcsU0FBU0EsTUFBTUEsQ0FBQSxFQUFHO0VBQzdCLElBQUlDLEdBQUcsR0FBRyxJQUFJO0lBQ1pDLEVBQUUsR0FBR0QsR0FBRyxDQUFDRSxLQUFLLENBQUNELEVBQUU7RUFDbkIsT0FBT0EsRUFBRSxDQUNQLEtBQUssRUFDTDtJQUFFRSxLQUFLLEVBQUU7TUFBRUMsRUFBRSxFQUFFO0lBQU07RUFBRSxDQUFDLEVBQ3hCLENBQ0VILEVBQUUsQ0FBQyxhQUFhLEVBQUU7SUFDaEJFLEtBQUssRUFBRTtNQUFFRSxLQUFLLEVBQUVMLEdBQUcsQ0FBQ00sV0FBVztNQUFFQyxPQUFPLEVBQUVQLEdBQUcsQ0FBQ1E7SUFBbUI7RUFDbkUsQ0FBQyxDQUFDLEVBQ0ZSLEdBQUcsQ0FBQ1MsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUNYUixFQUFFLENBQUMsS0FBSyxFQUFFO0lBQUVTLFdBQVcsRUFBRTtFQUFxQixDQUFDLEVBQUUsQ0FDL0NULEVBQUUsQ0FBQyxLQUFLLEVBQUU7SUFBRVMsV0FBVyxFQUFFO0VBQWtCLENBQUMsRUFBRSxDQUM1Q1QsRUFBRSxDQUFDLEtBQUssRUFBRTtJQUFFUyxXQUFXLEVBQUU7RUFBTyxDQUFDLEVBQUUsQ0FDakNULEVBQUUsQ0FBQyxLQUFLLEVBQUU7SUFBRVMsV0FBVyxFQUFFO0VBQWtCLENBQUMsRUFBRSxDQUM1Q1QsRUFBRSxDQUNBLEtBQUssRUFDTDtJQUFFUyxXQUFXLEVBQUU7RUFBNEIsQ0FBQyxFQUM1QyxDQUNFVCxFQUFFLENBQ0EsS0FBSyxFQUNMO0lBQUVTLFdBQVcsRUFBRTtFQUFlLENBQUMsRUFDL0IsQ0FDRVQsRUFBRSxDQUFDLFVBQVUsRUFBRTtJQUNiUyxXQUFXLEVBQUUsYUFB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Q0FBQyxFQUNELENBQ0UvSixHQUFHLENBQUNTLEVBQUUsQ0FDSixjQUFjLEdBQ1pULEdBQUcsQ0FBQ2dDLEVBQUUsQ0FBQ2hDLEdBQUcsQ0FBQ21CLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUM5QixZQUNKLENBQUMsQ0FFTCxDQUFDLENBQ0YsQ0FBQyxFQUNGbkIsR0FBRyxDQUFDUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ1hSLEVBQUUsQ0FDQSxRQUFRLEVBQ1I7SUFDRVMsV0FBVyxFQUFFLHFDQUFxQztJQUNsRGlCLEVBQUUsRUFBRTtNQUFFZSxLQUFLLEVBQUUxQyxHQUFHLENBQUNnSztJQUFrQjtFQUNyQyxDQUFDLEVBQ0QsQ0FDRWhLLEdBQUcsQ0FBQ1MsRUFBRSxDQUNKLFlBQVksR0FBR1QsR0FBRyxDQUFDZ0MsRUFBRSxDQUFDaEMsR0FBRyxDQUFDbUIsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsVUFDbEQsQ0FBQyxDQUVMLENBQUMsQ0FFTCxDQUFDLENBQ0YsQ0FBQyxHQUNGbkIsR0FBRyxDQUFDMEUsRUFBRSxDQUFDLENBQUMsQ0FDYixFQUNELENBQ0YsQ0FBQztBQUNILENBQUM7QUFDRCxJQUFJdUYsZUFBZSxHQUFHLEVBQUU7QUFDeEJsSyxNQUFNLENBQUNtSyxhQUFhLEdBQUcsSUFBSSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3RlbXBsYXRlTG9hZGVyLmpzPyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8hLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NTk1NGJhNjMmc2NvcGVkPXRydWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyKCkge1xuICB2YXIgX3ZtID0gdGhpcyxcbiAgICBfYyA9IF92bS5fc2VsZi5fY1xuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICB7IGF0dHJzOiB7IGlkOiBcInBvc1wiIH0gfSxcbiAgICBbXG4gICAgICBfYyhcImJyZWFkY3J1bWJzXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgaXRlbXM6IF92bS5icmVhZGNydW1icywgY3VycmVudDogX3ZtLmJyZWFkY3J1bWJzQ3VycmVudCB9LFxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3cgc20tY29sLXJldmVyc2VcIiB9LCBbXG4gICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY29sLTEyIGNvbC1tZC01XCIgfSwgW1xuICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZFwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZC1ib2R5LWwgcC0wXCIgfSwgW1xuICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBwbC0zIHB0LTMgcHItM1wiIH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZC1mbGV4IHctMTAwXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFwidi1zZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZmxleC1ncm93LTFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7IFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiY2xpZW50XCIpIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uY2xpZW50cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibmFtZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNsaWVudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFwiY29tbW9uLmNsaWVudF9wbGFjZWhvbGRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uY2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImNsaWVudFwiLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5jbGllbnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiQ2xpZW50Q3JlYXRlTW9kYWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgb246IHsgcmVsb2FkQ2xpZW50czogX3ZtLmdldENsaWVudHMgfSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmYXMgZmEtc29saWQgZmEtcGx1cy1jaXJjbGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImNsaWVudFwiIH0sXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJ0YWJsZS1yZXNwb25zaXZlIHRhYmxlLXdyYXBcIiB9LCBbXG4gICAgICAgICAgICAgICAgX2MoXCJ0YWJsZVwiLCB7IHN0YXRpY0NsYXNzOiBcInRhYmxlIHRhYmxlLXN0cmlwZWRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICBfYyhcInRoZWFkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJ0clwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCB7IGF0dHJzOiB7IHNjb3BlOiBcImNvbFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucHJvZHVjdFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCB7IGF0dHJzOiB7IHNjb3BlOiBcImNvbFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucHJpY2VcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJ0aFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWNlbnRlclwiLCBhdHRyczogeyBzY29wZTogXCJjb2xcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5xdWFudGl0eVwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidGhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1jZW50ZXJcIiwgYXR0cnM6IHsgc2NvcGU6IFwiY29sXCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICAgIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uc3VidG90YWxcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInRoXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInRleHQtY2VudGVyXCIsIGF0dHJzOiB7IHNjb3BlOiBcImNvbFwiIH0gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmFjdGlvblwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cyAmJlxuICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICBcInRib2R5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2woXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLnNlbGVjdGVkUHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChwcm9kdWN0LCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jKFwidHJcIiwgeyBrZXk6IGkgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbX3ZtLl92KF92bS5fcyhwcm9kdWN0Lm5hbWUpKV0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKHByb2R1Y3QudW5pdFByaWNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZC1mbGV4IGN1c3RvbS1xdHktaW5wdXRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvbi1taW51cyBpY29uLXNoYXBlIGljb24tc20gYnRuLWRhbmdlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiLVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGF0YS1maWVsZFwiOiBcInF1YW50aXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QucXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlY3JlbWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF1YW50aXR5LWZpZWxkIGJvcmRlci0wIGluY3JlbWVudG9yXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJudW1iZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgUXR5LSR7aX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicXVhbnRpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heDogcHJvZHVjdC5pbnZlbnRvcnlDb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJRdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogcHJvZHVjdC5xdHkgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvbi1wbHVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tcHJpbWFyeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiK1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGF0YS1maWVsZFwiOiBcInF1YW50aXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QucXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImluY3JlbWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKHByb2R1Y3QudG90YWxQcmljZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1yaWdodFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJidG4gYnRuLWRhbmdlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJidXR0b25cIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLnJlbW92ZUl0ZW0ocHJvZHVjdClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbX2MoXCJpXCIsIHsgc3RhdGljQ2xhc3M6IFwiZmFzIGZhLXRpbWVzXCIgfSldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgMFxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgOiBfYyhcInRib2R5XCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidHJcIiwgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LWNlbnRlclwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCB7IGF0dHJzOiB7IGNvbHNwYW46IFwiNVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwibm9fZGF0YV9mb3VuZFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgIF0pLFxuICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJwb3MtY2FyZC1mb290ZXIgYmctd2hpdGVcIiB9LCBbXG4gICAgICAgICAgICBfYyhcImRpdlwiLCBbXG4gICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93IHB0LTMgcGwtMyBwci0zXCIgfSwgW1xuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNiBjb2wtbGctNlwiIH0sXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGlzY291bnRUeXBlXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZGlzY291bnRfdHlwZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJzZWxlY3RcIixcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRpc2NvdW50VHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uZGlzY291bnRUeXBlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRpc2NvdW50VHlwZVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJkaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgJCRzZWxlY3RlZFZhbCA9IEFycmF5LnByb3RvdHlwZS5maWx0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvLnNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdmFsID0gXCJfdmFsdWVcIiBpbiBvID8gby5fdmFsdWUgOiBvLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpc2NvdW50VHlwZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0Lm11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAkJHNlbGVjdGVkVmFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkJHNlbGVjdGVkVmFsWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZml4ZWRcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wZXJjZW50YWdlXCIpKSArIFwiKCUpXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImRpc2NvdW50VHlwZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02IGNvbC1sZy02XCIgfSxcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJkaXNjb3VudFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uZGlzY291bnRcIikpICsgXCJcXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICA/IF9jKFwic3BhblwiLCBbX3ZtLl92KFwiKCUpXCIpXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImlucHV0LWdyb3VwXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uZGlzY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiZGlzY291bnRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiZGlzY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJudW1iZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiBcIjFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IDEwMFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfdm0uZm9ybS5zdWJUb3RhbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFwiY29tbW9uLmRpc2NvdW50X3BsYWNlaG9sZGVyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImRpc2NvdW50XCIsICRldmVudC50YXJnZXQudmFsdWUpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uZGlzY291bnRUeXBlID09IDFcbiAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJpbnB1dC1ncm91cC1hcHBlbmRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwiaW5wdXQtZ3JvdXAtdGV4dFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShfdm0uZm9ybS50b3RhbERpc2NvdW50KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGlzY291bnRcIiB9LFxuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNiBjb2wtbGctNlwiIH0sXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwidHJhbnNwb3J0Q29zdFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRyYW5zcG9ydF9jb3N0XCIpKSksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS50cmFuc3BvcnRDb3N0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0udHJhbnNwb3J0Q29zdFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInRyYW5zcG9ydENvc3RcIiksXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwidHJhbnNwb3J0Q29zdFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJudW1iZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJ0cmFuc3BvcnRDb3N0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi50cmFuc3BvcnRfY29zdF9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLnRyYW5zcG9ydENvc3QgfSxcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IF92bS5jYWxjdWxhdGVTdW0sXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwidHJhbnNwb3J0Q29zdFwiIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX3ZtLnRheGVzXG4gICAgICAgICAgICAgICAgICA/IF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNiBjb2wtbGctNlwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcIm9yZGVyVGF4XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5pbnZvaWNlX3RheFwiKSkgKyBcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImlucHV0LWdyb3VwIHNlbGVjdC1pbnB1dC1ncm91cFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidi1zZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInctODVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJvcmRlclRheFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0udGF4ZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJjb2RlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm9yZGVyVGF4XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNhbGVzLmNvbW1vbi5pbnZvaWNlX3RheF9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHsgaW5wdXQ6IF92bS5jYWxjdWxhdGVTdW0gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLm9yZGVyVGF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLmZvcm0sIFwib3JkZXJUYXhcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5vcmRlclRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImlucHV0LWdyb3VwLXByZXBlbmQgaW5wdXQtYy1tYXJnaW5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiaW5wdXQtZ3JvdXAtdGV4dFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0ub3JkZXJUYXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IF9jKFwic3BhblwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2YoXCJ3aXRoQ3VycmVuY3lcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLnRvdGFsVGF4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IF9jKFwic3BhblwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKDApKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBvcy1uZXQtdG90YWwgbm9pLXByaW50XCIgfSwgW1xuICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLm5ldF90b3RhbFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICBcIjogXCIgK1xuICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKF92bS5mb3JtLm5ldFRvdGFsKSkgK1xuICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgXSksXG4gICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvdyBuby1wcmludFwiIH0sIFtcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY29sLTEyIGNvbC1sZy01IG1iLTFcIiB9LCBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiLFxuICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgY2xpY2s6IF92bS5zYXZlSW52b2ljZSxcbiAgICAgICAgICAgICAgICAgICAga2V5ZG93bjogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZm9ybS5vbktleWRvd24oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1zYXZlXCIgfSksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgIFwiIFwiICsgX3ZtLl9zKF92bS4kdChcInBvcy5jb21wbGV0ZV9vcmRlclwiKSkgKyBcIlxcbiAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImNvbC0xMiBjb2wtbGctNSBtYi0xXCIgfSwgW1xuICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2tcIixcbiAgICAgICAgICAgICAgICAgIG9uOiB7IGNsaWNrOiBfdm0uY29tcGxldGVPcmRlckFuZEFkZFBheW1lbnQgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1jcmVkaXQtY2FyZFwiIH0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwicG9zLmNvbXBsZXRlX29yZGVyX2FuZF9hZGRfcGF5bWVudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY29sLTEyIGNvbC1sZy0yXCIgfSwgW1xuICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImJ0biBidG4tc2Vjb25kYXJ5IGZsb2F0LXJpZ2h0IGJ0bi1ibG9ja1wiLFxuICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJyZXNldFwiIH0sXG4gICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICBjbGljazogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZm9ybS5yZXNldCgpXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgX2MoXCJpXCIsIHsgc3RhdGljQ2xhc3M6IFwiZmFzIGZhLXBvd2VyLW9mZlwiIH0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiICsgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5yZXNldFwiKSkgKyBcIlxcbiAgICAgICAgICBcIiksXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgXSksXG4gICAgICAgICAgXSksXG4gICAgICAgIF0pLFxuICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImNvbC0xMiBjb2wtbWQtN1wiIH0sIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImNhcmQgYmctdHJhbnNwYXJlbnRcIiB9LCBbXG4gICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBvcy1yLWhlYWQgYmctd2hpdGVcIiB9LCBbXG4gICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgICAgICAgICAgICAgIF92bS5jYXRlZ29yaWVzXG4gICAgICAgICAgICAgICAgICA/IF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcInYtc2VsZWN0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImNhdGVnb3J5XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IF92bS5jYXRlZ29yaWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcIm5hbWVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNhdGVnb3J5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLmNhdGVnb3J5X25hbWVfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7IGlucHV0OiBfdm0uZ2V0U3ViQ2F0ZWdvcmllc0J5Q2F0ZWdvcnkgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uY2F0ZWdvcnksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImNhdGVnb3J5XCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5jYXRlZ29yeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiY2F0ZWdvcnlcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfdm0uc3ViQ2F0ZWdvcmllc1xuICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ2LXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJzdWJDYXRlZ29yeVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uc3ViQ2F0ZWdvcmllcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJuYW1lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzdWJDYXRlZ29yeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5jYXRlZ29yeV9uYW1lX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjogeyBpbnB1dDogX3ZtLmdldFByb2R1Y3RzQnlTdWJDYXRlZ29yeSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5zdWJDYXRlZ29yeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLmZvcm0sIFwic3ViQ2F0ZWdvcnlcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnN1YkNhdGVnb3J5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJzdWJDYXRlZ29yeVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgIF92bS5wcm9kdWN0c1xuICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiY29sLW1kLTEyIGZvcm0tZ3JvdXBcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImQtZmxleCB3LTEwMFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNlYXJjaFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmbGV4LWdyb3ctMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgaXNQb3NTZWFyY2g6IHRydWUgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicmVzZXQtcGFnaW5hdGlvblwiOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5yZXNldFBhZ2luYXRpb24oKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxvYWQ6IF92bS5yZWxvYWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5xdWVyeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucXVlcnkgPSAkJHZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJxdWVyeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJQcm9kdWN0Q3JlYXRlTW9kYWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgb246IHsgcmVsb2FkUHJvZHVjdHM6IF92bS5nZXRQcm9kdWN0cyB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuLTJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZmFzIGZhLXNvbGlkIGZhLXBsdXMtY2lyY2xlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJzZWxlY3RlZFByb2R1Y3RzXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZC1ib2R5IGJnLXdoaXRlIG10LTMgcG9zLWJvZHlcIiB9LCBbXG4gICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJwb3MtaXRlbS1ncmlkXCIgfSxcbiAgICAgICAgICAgICAgICBfdm0uX2woX3ZtLnByb2R1Y3RzLCBmdW5jdGlvbiAocHJvZHVjdCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAga2V5OiBwcm9kdWN0LmlkLFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgTnVtYmVyKHByb2R1Y3QuaW52ZW50b3J5Q291bnQpIDwgMVxuICAgICAgICAgICAgICAgICAgICAgICAgICA/IFwicG9zLWl0ZW0tZ3JpZC1yZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uc3RvcmVQcm9kdWN0KHByb2R1Y3QpXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBvcy1ib3hcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJlbGF0aXZlXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBvcy1ib3gtaW1nXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3QuaW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW1nXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInBvcy1ib3gtaWNvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjOiBwcm9kdWN0LmltYWdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ6IFwicHJvZHVjdCBpbWFnZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLm5vX3ByZXZpZXdcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJib3gtcXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTnVtYmVyKHByb2R1Y3QuaW52ZW50b3J5Q291bnQpIDwgMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gXCJxdHktcmVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhwcm9kdWN0LmludmVudG9yeUNvdW50KSldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInBvcy1ib3gtY29udGVudFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhQcmVmaXhcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjdC5jb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wcm9kdWN0UHJlZml4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJwXCIsIHsgc3RhdGljQ2xhc3M6IFwicG9zLWJveC10ZXh0XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MocHJvZHVjdC5uYW1lKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAwXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiY29sLTEyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCIgfSxcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX3ZtLnBhZ2luYXRpb24gJiYgX3ZtLnBhZ2luYXRpb24ubGFzdF9wYWdlID4gMVxuICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJwYWdpbmF0aW9uXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwianVzdGlmeS1mbGV4LWVuZCBtdC0zXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IHBhZ2luYXRpb246IF92bS5wYWdpbmF0aW9uLCBvZmZzZXQ6IDUgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHsgcGFnaW5hdGU6IF92bS5wYWdpbmF0ZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF0pLFxuICAgICAgICAgIF0pLFxuICAgICAgICBdKSxcbiAgICAgIF0pLFxuICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgIF92bS5zaG93TW9kYWxcbiAgICAgICAgPyBfYyhcIk1vZGFsXCIsIHsgc3RhdGljQ2xhc3M6IFwicGF5LW1vZGFsXCIsIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtIH0gfSwgW1xuICAgICAgICAgICAgX2MoXCJoNVwiLCB7IGF0dHJzOiB7IHNsb3Q6IFwiaGVhZGVyXCIgfSwgc2xvdDogXCJoZWFkZXJcIiB9LCBbXG4gICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwicG9zLmFkZF9wYXltZW50XCIpKSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJ3LTEwMFwiLCBhdHRyczogeyBzbG90OiBcImJvZHlcIiB9LCBzbG90OiBcImJvZHlcIiB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgW1xuICAgICAgICAgICAgICAgICAgX3ZtLmFjY291bnRzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLThcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJhY2NvdW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWNjb3VudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCB7IHN0YXRpY0NsYXNzOiBcInJlcXVpcmVkXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIqXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInYtc2VsZWN0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiYWNjb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uYWNjb3VudHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcImxhYmVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiYWNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLmFjY291bnRfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5hY2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImFjY291bnRcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uYWNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJhY2NvdW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicGFpZEFtb3VudFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYW1vdW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBhaWRBbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY6IFwicGFpZEFtb3VudElucHV0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicGFpZEFtb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYWlkQW1vdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicGFpZEFtb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IF92bS5mb3JtLm5ldFRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnBhaWRfYW1vdW50X3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGFpZEFtb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInBhaWRBbW91bnRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcImNoZXF1ZU5vXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmNoZXF1ZV9ub1wiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5jaGVxdWVObyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5jaGVxdWVOb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiY2hlcXVlTm9cIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY2hlcXVlTm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiY2hlcXVlTm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFwiY29tbW9uLmNoZXF1ZV9wbGFjZWhvbGRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmNoZXF1ZU5vIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY2hlcXVlTm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJjaGVxdWVOb1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicmVjZWlwdE5vXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnJlY2VpcHRfbm9cIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ucmVjZWlwdE5vLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicmVjZWlwdE5vXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicmVjZWlwdE5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnJlY2VpcHRfbm9fcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWNlaXB0Tm8gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWNlaXB0Tm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJyZWNlaXB0Tm9cIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicG9SZWZlcmVuY2VcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucG9fcmVmZXJlbmNlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBvUmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJwb1JlZmVyZW5jZVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wb19yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5wb1JlZmVyZW5jZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicG9SZWZlcmVuY2VcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInBheW1lbnRUZXJtc1wiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wYXltZW50X3Rlcm1zXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBheW1lbnRUZXJtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5wYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInBheW1lbnRUZXJtc1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInBheW1lbnRUZXJtc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wYXltZW50X3Rlcm1zX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGF5bWVudFRlcm1zIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicGF5bWVudFRlcm1zXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicGF5bWVudFRlcm1zXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInJlZmVyZW5jZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5yZWZlcmVuY2VcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ucmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnJlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicmVmZXJlbmNlXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInJlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcImNvbW1vbi5yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWZlcmVuY2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJyZWZlcmVuY2VcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcImRlbGl2ZXJ5UGxhY2VcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uZGVsaXZlcnlQbGFjZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5kZWxpdmVyeVBsYWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJkZWxpdmVyeVBsYWNlXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImRlbGl2ZXJ5UGxhY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImRlbGl2ZXJ5UGxhY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5kZWxpdmVyeVBsYWNlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVsaXZlcnlQbGFjZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImRlbGl2ZXJ5UGxhY2VcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGF0ZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kYXRlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uZGF0ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogeyBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRhdGVcIikgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgaWQ6IFwiZGF0ZVwiLCB0eXBlOiBcImRhdGVcIiwgbmFtZTogXCJkYXRlXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmRhdGUgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImRhdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwic3RhdHVzXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnN0YXR1c1wiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwic2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5zdGF0dXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5zdGF0dXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJzdGF0dXNcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBpZDogXCJzdGF0dXNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyICQkc2VsZWN0ZWRWYWwgPSBBcnJheS5wcm90b3R5cGUuZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8uc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2YWwgPSBcIl92YWx1ZVwiIGluIG8gPyBvLl92YWx1ZSA6IG8udmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInN0YXR1c1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQubXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJCRzZWxlY3RlZFZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkJHNlbGVjdGVkVmFsWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWN0aXZlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmluX2FjdGl2ZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInN0YXR1c1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXBcIiB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJub3RlXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5ub3RlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcInRleHRhcmVhXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ubm90ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ubm90ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHsgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJub3RlXCIpIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJub3RlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXCJjb21tb24ubm90ZV9wbGFjZWhvbGRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ubm90ZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcIm5vdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwibm90ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJwYXltZW50LW1vZGFsLWZvb3RlclwiLFxuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHNsb3Q6IFwibW9kYWwtZm9vdGVyXCIgfSxcbiAgICAgICAgICAgICAgICBzbG90OiBcIm1vZGFsLWZvb3RlclwiLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJwb3MtbW9kYWwtZm9vdGVyIG5vLXByaW50XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJidG4gYnRuLXByaW1hcnlcIixcbiAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IF92bS5hZGRQYXltZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAga2V5ZG93bjogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmZvcm0ub25LZXlkb3duKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1zYXZlXCIgfSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCIgKyBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnNhdmVcIikpICsgXCJcXG4gICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgXCJidXR0b25cIixcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm1vZGFsLWRlZmF1bHQtYnV0dG9uIGJ0biBidG4tZGFuZ2VyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgb246IHsgY2xpY2s6IF92bS5jbG9zZU1vZGFsQW5kQ2xlYXJGb3JtRGF0YSB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmNsb3NlXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgXSlcbiAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICBfdm0uc2hvd1NtYWxsSW52b2ljZU1vZGFsXG4gICAgICAgID8gX2MoXCJNb2RhbFwiLCB7IGF0dHJzOiB7IGFsbERhdGE6IF92bS5hbGxEYXRhIH0gfSwgW1xuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwiaDVcIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcIm5vLXByaW50XCIsXG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgc2xvdDogXCJoZWFkZXJcIiB9LFxuICAgICAgICAgICAgICAgIHNsb3Q6IFwiaGVhZGVyXCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS4kdChcInBvcy5pbnZvaWNlX3JlY2VpcHRcIikpKV1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwidy0xMDBcIiwgYXR0cnM6IHsgc2xvdDogXCJib2R5XCIgfSwgc2xvdDogXCJib2R5XCIgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgYXR0cnM6IHsgaWQ6IFwiaW52b2ljZS1QT1NcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGljU3R5bGU6IHsgXCJtYXgtd2lkdGhcIjogXCI0MDBweFwiLCBtYXJnaW46IFwiMHB4IGF1dG9cIiB9LFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJpbmZvXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFwcEluZm8uYmxhY2tMb2dvXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJwb3MtbG9nb1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW1nXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM6IF92bS5hcHBJbmZvLmJsYWNrTG9nbyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogXCIxMDBweFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfYyhcImgyXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1jZW50ZXJcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS5hcHBJbmZvLmNvbXBhbnlOYW1lKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJwXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmRhdGVcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgOiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uYWxsRGF0YS5pbnZvaWNlRGF0ZSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJiclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwic2hvd1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5hcHBJbmZvLmFkZHJlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJhcHBJbmZvLmFkZHJlc3NcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWRkcmVzc1wiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIDogXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uYXBwSW5mby5hZGRyZXNzKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImJyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmFwcEluZm8uZW1haWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJhcHBJbmZvLmVtYWlsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmVtYWlsXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgOiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS5hcHBJbmZvLmVtYWlsKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImJyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmFwcEluZm8ucGhvbmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJhcHBJbmZvLnBob25lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnBob25lXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgOiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS5hcHBJbmZvLnBob25lKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImJyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJzaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LXNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmFsbERhdGEuY2xpZW50Lm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJhbGxEYXRhLmNsaWVudC5uYW1lXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmNsaWVudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIDogXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uYWxsRGF0YS5jbGllbnQubmFtZSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJiclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwic2hvd1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5hbGxEYXRhLmNyZWF0ZWRCeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImFsbERhdGEuY3JlYXRlZEJ5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnNvbGRfYnlcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiA6IFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLmFsbERhdGEuY3JlYXRlZEJ5KSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImJyXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0YWJsZVwiLCB7IHN0YXRpY0NsYXNzOiBcInRhYmxlX2RhdGFcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0Ym9keVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9sKF92bS5pbnZvaWNlUHJvZHVjdHMsIGZ1bmN0aW9uIChkYXRhLCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2MoXCJ0clwiLCB7IGtleTogaSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgeyBhdHRyczogeyBjb2xzcGFuOiBcIjNcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhkYXRhLnByb2R1Y3ROYW1lKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiYnJcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwicHF0eVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhkYXRhLnF1YW50aXR5KSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoZGF0YS5wcm9kdWN0VW5pdCkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgeFxcbiAgICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLnVuaXRDb3N0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidmVydGljYWwtYWxpZ25cIjogXCJib3R0b21cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS51bml0Q29zdCAqIGRhdGEucXVhbnRpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY1N0eWxlOiB7IFwibWFyZ2luLXRvcFwiOiBcIjEwcHhcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgY29sc3BhbjogXCIzXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5zdWJ0b3RhbFwiKSkpXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwidG90YWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7IFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uYWxsRGF0YS5zdWJUb3RhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEuZGlzY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0clwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljU3R5bGU6IHsgXCJtYXJnaW4tdG9wXCI6IFwiMTBweFwiIH0gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwidG90YWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBjb2xzcGFuOiBcIjNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kaXNjb3VudFwiKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7IFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEuZGlzY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEudGF4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidHJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY1N0eWxlOiB7IFwibWFyZ2luLXRvcFwiOiBcIjEwcHhcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgY29sc3BhbjogXCIzXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24udGF4XCIpKSArIFwiKCUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7IFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEudGF4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0clwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNTdHlsZTogeyBcIm1hcmdpbi10b3BcIjogXCIxMHB4XCIgfSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwidG90YWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGNvbHNwYW46IFwiM1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24udG90YWxcIikpKV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNTdHlsZTogeyBcInRleHQtYWxpZ25cIjogXCJyaWdodFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEuc3ViVG90YWwgLVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5hbGxEYXRhLnRvdGFsSW52b2ljZVJldHVybiAtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEuZGlzY291bnQgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5hbGxEYXRhLnRyYW5zcG9ydCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEudGF4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRyXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGNvbHNwYW46IFwiM1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wYWlkXCIpKSldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7IFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmFsbERhdGEudG90YWxQYWlkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0clwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwidG90YWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBjb2xzcGFuOiBcIjNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZHVlXCIpKSldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0b3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1N0eWxlOiB7IFwidGV4dC1hbGlnblwiOiBcInJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKF92bS5hbGxEYXRhLmR1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMlxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibWwtMiBtYi00XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGlkOiBcImxlZ2FsY29weVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInBcIiwgeyBzdGF0aWNDbGFzczogXCJsZWdhbFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInN0cm9uZ1wiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcInBvcy5yZWNlaXB0X3RleHRcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBhdHRyczogeyBpZDogXCJiYXJcIiB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiYmFyY29kZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBcIjJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogXCIyNVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMTVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uX2YoXCJ3aXRoUHJlZml4XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uYWxsRGF0YS5pbnZvaWNlTm8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5pbnZvaWNlUHJlZml4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24ucmVuZGVyaW5nX2ZhaWxzXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcInBvcy1tb2RhbC1mb290ZXIgbm8tcHJpbnRcIixcbiAgICAgICAgICAgICAgICBhdHRyczogeyBzbG90OiBcIm1vZGFsLWZvb3RlclwiIH0sXG4gICAgICAgICAgICAgICAgc2xvdDogXCJtb2RhbC1mb290ZXJcIixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIFtcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwibW9kYWwtZGVmYXVsdC1idXR0b24gYnRuIGJ0bi1pbmZvXCIsXG4gICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ucHJpbnRJbnZvaWNlKClcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wcmludFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJtb2RhbC1kZWZhdWx0LWJ1dHRvbiBidG4gYnRuLWRhbmdlclwiLFxuICAgICAgICAgICAgICAgICAgICBvbjogeyBjbGljazogX3ZtLmNsb3NlUmVjZWlwdE1vZGFsIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgIFwiICsgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5jbG9zZVwiKSkgKyBcIlxcbiAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICBdKVxuICAgICAgICA6IF92bS5fZSgpLFxuICAgIF0sXG4gICAgMVxuICApXG59XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cbnJlbmRlci5fd2l0aFN0cmlwcGVkID0gdHJ1ZVxuXG5leHBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true\n"); /***/ }), /***/ "./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true": /*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/sass-loader/dist/cjs.js??ref--7-3!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true ***! \********************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/lib/css-base.js */ \"./node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.i, \".pos-r-head[data-v-5954ba63] {\\n box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);\\n padding: 20px;\\n box-sizing: border-box;\\n border-radius: 5px;\\n border-bottom: 1px solid #f3f3f3;\\n}\\n.pos-logo[data-v-5954ba63] {\\n text-align: center;\\n}\\n.pos-item-grid[data-v-5954ba63] {\\n display: grid;\\n grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;\\n grid-gap: 10px;\\n}\\n.pos-item-grid > div[data-v-5954ba63] {\\n border: 0;\\n border-radius: 10px;\\n box-shadow: 0 4px 20px 1px rgba(0, 0, 0, 0.06), 0 1px 4px rgba(0, 0, 0, 0.08);\\n overflow: hidden;\\n cursor: pointer;\\n border: 1px solid #fff;\\n position: relative;\\n}\\n.pos-item-grid > div[data-v-5954ba63]:hover {\\n border-color: #6366f1;\\n}\\n.pos-item-grid > div .box-qty[data-v-5954ba63] {\\n position: absolute;\\n width: 50px;\\n height: 30px;\\n display: block;\\n background: #6366f1;\\n top: 0;\\n left: 0px;\\n text-align: center;\\n line-height: 30px;\\n font-size: 12px;\\n font-weight: bold;\\n color: #fff;\\n border-bottom-right-radius: 10px;\\n}\\n.qty-red[data-v-5954ba63] {\\n background: red !important;\\n}\\n.pos-body[data-v-5954ba63] {\\n border-radius: 5px;\\n min-height: 240px;\\n}\\n.pos-box-img[data-v-5954ba63] {\\n width: 100%;\\n height: 100px;\\n border-bottom: 1px solid #f1f1f1;\\n background: #ebebeb;\\n line-height: 100px;\\n text-align: center;\\n font-size: 13px;\\n font-weight: bold;\\n}\\n.pos-box-img img[data-v-5954ba63] {\\n width: 100%;\\n height: 100px;\\n -o-object-fit: cover;\\n object-fit: cover;\\n}\\n.pos-box-content p[data-v-5954ba63] {\\n font-size: 14px;\\n font-weight: bold;\\n margin-bottom: 0px;\\n}\\n.pos-box-content span[data-v-5954ba63] {\\n font-size: 12px;\\n margin-bottom: 2px;\\n}\\n.pos-box-content[data-v-5954ba63] {\\n padding: 5px 10px;\\n}\\n.pos-item-grid-red[data-v-5954ba63] {\\n border-color: red !important;\\n}\\n.card-client-search[data-v-5954ba63] {\\n padding: 20px;\\n border-bottom: 1px solid #ddd;\\n}\\n.table-wrap[data-v-5954ba63] {\\n padding: 15px;\\n}\\n.table-responsive.table-wrap > table[data-v-5954ba63] {\\n border: 1px solid #ddd;\\n}\\n.table-wrap .table thead tr[data-v-5954ba63] {\\n border-bottom: 0;\\n background: rgba(99, 102, 241, 0.1215686275) !important;\\n}\\n.table-wrap .incrementor[data-v-5954ba63] {\\n width: 80px;\\n}\\n.table-wrap .custom-qty-input[data-v-5954ba63] {\\n display: inline-flex !important;\\n justify-content: center;\\n border: 1px solid rgba(236, 236, 253, 0.7215686275);\\n padding: 0;\\n border-radius: 18px;\\n /* background: #ddd; */\\n}\\n.table-wrap .btn-danger[data-v-5954ba63] {\\n width: 25px;\\n height: 25px;\\n font-size: 10px;\\n padding: 0px;\\n}\\n.table-wrap .icon-sm[data-v-5954ba63] {\\n width: 25px;\\n height: 25px;\\n line-height: 23px;\\n}\\n.pos-card-footer[data-v-5954ba63] {\\n border: 1px solid #ddd;\\n background: #fff;\\n border-radius: 4px;\\n margin-bottom: 15px;\\n}\\n.pos-net-total[data-v-5954ba63] {\\n background: rgba(99, 102, 241, 0.2);\\n width: 100%;\\n padding: 10px 10px;\\n text-align: center;\\n font-size: 22px;\\n font-weight: bold;\\n}\\n.product[data-v-5954ba63] {\\n cursor: pointer;\\n}\\n.product .info-box[data-v-5954ba63]:hover {\\n background: #e0e0e0;\\n}\\n.dark-mode .pos-body[data-v-5954ba63],\\n.dark-mode .pos-r-head[data-v-5954ba63] {\\n background: #111827 !important;\\n border-color: #000;\\n}\\n.dark-mode .pos-item-grid > div[data-v-5954ba63] {\\n border-color: #6c757d !important;\\n}\\n.dark-mode .pos-box-content[data-v-5954ba63] {\\n padding: 5px 10px;\\n color: #fff;\\n}\\n.dark-mode .pos-item-grid > div.pos-item-grid-red[data-v-5954ba63] {\\n border-color: red !important;\\n}\\n.dark-mode .card-client-search[data-v-5954ba63] {\\n border-color: #6c757d;\\n}\\n.dark-mode .table-striped tbody tr[data-v-5954ba63]:nth-of-type(odd) {\\n background-color: #1f2937;\\n}\\n.dark-mode .table-responsive.table-wrap > table[data-v-5954ba63] {\\n border: 1px solid #6c757d;\\n}\\n.dark-mode .table-wrap .incrementor[data-v-5954ba63] {\\n border: none !important;\\n}\\n.dark-mode .pos-card-footer.bg-white[data-v-5954ba63] {\\n background: #111827 !important;\\n border-color: #6c757d;\\n}\\n.dark-mode .pos-card-footer label[data-v-5954ba63] {\\n color: #fff;\\n}\\n.dark-mode .pos-net-total[data-v-5954ba63] {\\n background: rgb(99, 169, 241);\\n color: #fff;\\n}\\n#invoice-POS td[data-v-5954ba63],\\n#invoice-POS th[data-v-5954ba63],\\n#invoice-POS tr[data-v-5954ba63],\\n#invoice-POS table[data-v-5954ba63] {\\n border-collapse: collapse;\\n}\\n#invoice-POS tr[data-v-5954ba63] {\\n border-bottom: 2px dotted #05070b;\\n}\\n#invoice-POS table[data-v-5954ba63] {\\n width: 100%;\\n}\\n#invoice-POS tfoot tr th[data-v-5954ba63]:first-child {\\n text-align: left;\\n}\\n#invoice-POS .info[data-v-5954ba63] {\\n margin-bottom: 20px;\\n}\\n#invoice-POS .info > p[data-v-5954ba63] {\\n margin-top: 20px;\\n}\\n#legalcopy[data-v-5954ba63] {\\n margin-top: 5mm;\\n}\\n#legalcopy p[data-v-5954ba63] {\\n text-align: center;\\n}\\n#bar[data-v-5954ba63] {\\n text-align: center;\\n}\\n.total[data-v-5954ba63] {\\n font-weight: bold;\\n font-size: 12px;\\n}\\nspan.pqty[data-v-5954ba63] {\\n display: block;\\n line-height: 15px;\\n font-size: 12px;\\n font-weight: 500;\\n margin-bottom: 5px;\\n}\\n@media only screen and (max-width: 1250px) {\\n.pos-item-grid[data-v-5954ba63] {\\n grid-template-columns: 1fr 1fr 1fr 1fr;\\n}\\n}\\n@media only screen and (max-width: 991px) {\\n.pos-item-grid[data-v-5954ba63] {\\n grid-template-columns: 1fr 1fr 1fr;\\n}\\n}\\n@media only screen and (max-width: 767px) {\\n.sm-col-reverse[data-v-5954ba63] {\\n flex-direction: column-reverse;\\n}\\n.pos-item-grid[data-v-5954ba63] {\\n grid-template-columns: 1fr 1fr 1fr 1fr;\\n}\\n}\\n.create-btn[data-v-5954ba63] {\\n padding: 11px;\\n}\\n.create-btn-2[data-v-5954ba63] {\\n padding: 10px;\\n}\", \"\"]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/Mjk4ZCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQkFBMkIsbUJBQU8sQ0FBQyx5R0FBd0Q7QUFDM0Y7OztBQUdBO0FBQ0EsY0FBYyxRQUFTLGlDQUFpQywrQ0FBK0Msa0JBQWtCLDJCQUEyQix1QkFBdUIscUNBQXFDLEdBQUcsOEJBQThCLHVCQUF1QixHQUFHLG1DQUFtQyxrQkFBa0IsbURBQW1ELG1CQUFtQixHQUFHLHlDQUF5QyxjQUFjLHdCQUF3QixrRkFBa0YscUJBQXFCLG9CQUFvQiwyQkFBMkIsdUJBQXVCLEdBQUcsK0NBQStDLDBCQUEwQixHQUFHLGtEQUFrRCx1QkFBdUIsZ0JBQWdCLGlCQUFpQixtQkFBbUIsd0JBQXdCLFdBQVcsY0FBYyx1QkFBdUIsc0JBQXNCLG9CQUFvQixzQkFBc0IsZ0JBQWdCLHFDQUFxQyxHQUFHLDZCQUE2QiwrQkFBK0IsR0FBRyw4QkFBOEIsdUJBQXVCLHNCQUFzQixHQUFHLGlDQUFpQyxnQkFBZ0Isa0JBQWtCLHFDQUFxQyx3QkFBd0IsdUJBQXVCLHVCQUF1QixvQkFBb0Isc0JBQXNCLEdBQUcscUNBQXFDLGdCQUFnQixrQkFBa0IseUJBQXlCLHlCQUF5QixHQUFHLHVDQUF1QyxvQkFBb0Isc0JBQXNCLHVCQUF1QixHQUFHLDBDQUEwQyxvQkFBb0IsdUJBQXVCLEdBQUcscUNBQXFDLHNCQUFzQixHQUFHLHVDQUF1QyxpQ0FBaUMsR0FBRyx3Q0FBd0Msa0JBQWtCLGtDQUFrQyxHQUFHLGdDQUFnQyxrQkFBa0IsR0FBRyx5REFBeUQsMkJBQTJCLEdBQUcsZ0RBQWdELHFCQUFxQiw0REFBNEQsR0FBRyw2Q0FBNkMsZ0JBQWdCLEdBQUcsa0RBQWtELG9DQUFvQyw0QkFBNEIsd0RBQXdELGVBQWUsd0JBQXdCLHdCQUF3QixNQUFNLDRDQUE0QyxnQkFBZ0IsaUJBQWlCLG9CQUFvQixpQkFBaUIsR0FBRyx5Q0FBeUMsZ0JBQWdCLGlCQUFpQixzQkFBc0IsR0FBRyxxQ0FBcUMsMkJBQTJCLHFCQUFxQix1QkFBdUIsd0JBQXdCLEdBQUcsbUNBQW1DLHdDQUF3QyxnQkFBZ0IsdUJBQXVCLHVCQUF1QixvQkFBb0Isc0JBQXNCLEdBQUcsNkJBQTZCLG9CQUFvQixHQUFHLDZDQUE2Qyx3QkFBd0IsR0FBRyxtRkFBbUYsbUNBQW1DLHVCQUF1QixHQUFHLG9EQUFvRCxxQ0FBcUMsR0FBRyxnREFBZ0Qsc0JBQXNCLGdCQUFnQixHQUFHLHNFQUFzRSxpQ0FBaUMsR0FBRyxtREFBbUQsMEJBQTBCLEdBQUcsd0VBQXdFLDhCQUE4QixHQUFHLG9FQUFvRSw4QkFBOEIsR0FBRyx3REFBd0QsNEJBQTRCLEdBQUcseURBQXlELG1DQUFtQywwQkFBMEIsR0FBRyxzREFBc0QsZ0JBQWdCLEdBQUcsOENBQThDLGtDQUFrQyxnQkFBZ0IsR0FBRyxnSkFBZ0osOEJBQThCLEdBQUcsb0NBQW9DLHNDQUFzQyxHQUFHLHVDQUF1QyxnQkFBZ0IsR0FBRyx5REFBeUQscUJBQXFCLEdBQUcsdUNBQXVDLHdCQUF3QixHQUFHLDJDQUEyQyxxQkFBcUIsR0FBRywrQkFBK0Isb0JBQW9CLEdBQUcsaUNBQWlDLHVCQUF1QixHQUFHLHlCQUF5Qix1QkFBdUIsR0FBRywyQkFBMkIsc0JBQXNCLG9CQUFvQixHQUFHLDhCQUE4QixtQkFBbUIsc0JBQXNCLG9CQUFvQixxQkFBcUIsdUJBQXVCLEdBQUcsOENBQThDLG1DQUFtQyw2Q0FBNkMsR0FBRyxHQUFHLDZDQUE2QyxtQ0FBbUMseUNBQXlDLEdBQUcsR0FBRyw2Q0FBNkMsb0NBQW9DLHFDQUFxQyxHQUFHLG1DQUFtQyw2Q0FBNkMsR0FBRyxHQUFHLGdDQUFnQyxrQkFBa0IsR0FBRyxrQ0FBa0Msa0JBQWtCLEdBQUc7O0FBRTNuTCIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9wb3MvY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLnBvcy1yLWhlYWRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBib3gtc2hhZG93OiAwcHggMHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XFxuICBwYWRkaW5nOiAyMHB4O1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjNmM2YzO1xcbn1cXG4ucG9zLWxvZ29bZGF0YS12LTU5NTRiYTYzXSB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcbi5wb3MtaXRlbS1ncmlkW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgZGlzcGxheTogZ3JpZDtcXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmciAxZnI7XFxuICBncmlkLWdhcDogMTBweDtcXG59XFxuLnBvcy1pdGVtLWdyaWQgPiBkaXZbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAxMHB4O1xcbiAgYm94LXNoYWRvdzogMCA0cHggMjBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA2KSwgMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuLnBvcy1pdGVtLWdyaWQgPiBkaXZbZGF0YS12LTU5NTRiYTYzXTpob3ZlciB7XFxuICBib3JkZXItY29sb3I6ICM2MzY2ZjE7XFxufVxcbi5wb3MtaXRlbS1ncmlkID4gZGl2IC5ib3gtcXR5W2RhdGEtdi01OTU0YmE2M10ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgd2lkdGg6IDUwcHg7XFxuICBoZWlnaHQ6IDMwcHg7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGJhY2tncm91bmQ6ICM2MzY2ZjE7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwcHg7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBsaW5lLWhlaWdodDogMzBweDtcXG4gIGZvbnQtc2l6ZTogMTJweDtcXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xcbiAgY29sb3I6ICNmZmY7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTBweDtcXG59XFxuLnF0eS1yZWRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBiYWNrZ3JvdW5kOiByZWQgIWltcG9ydGFudDtcXG59XFxuLnBvcy1ib2R5W2RhdGEtdi01OTU0YmE2M10ge1xcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xcbiAgbWluLWhlaWdodDogMjQwcHg7XFxufVxcbi5wb3MtYm94LWltZ1tkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDBweDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xcbiAgYmFja2dyb3VuZDogI2ViZWJlYjtcXG4gIGxpbmUtaGVpZ2h0OiAxMDBweDtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGZvbnQtc2l6ZTogMTNweDtcXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xcbn1cXG4ucG9zLWJveC1pbWcgaW1nW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMHB4O1xcbiAgLW8tb2JqZWN0LWZpdDogY292ZXI7XFxuICAgICBvYmplY3QtZml0OiBjb3ZlcjtcXG59XFxuLnBvcy1ib3gtY29udGVudCBwW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgZm9udC1zaXplOiAxNHB4O1xcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICBtYXJnaW4tYm90dG9tOiAwcHg7XFxufVxcbi5wb3MtYm94LWNvbnRlbnQgc3BhbltkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGZvbnQtc2l6ZTogMTJweDtcXG4gIG1hcmdpbi1ib3R0b206IDJweDtcXG59XFxuLnBvcy1ib3gtY29udGVudFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIHBhZGRpbmc6IDVweCAxMHB4O1xcbn1cXG4ucG9zLWl0ZW0tZ3JpZC1yZWRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBib3JkZXItY29sb3I6IHJlZCAhaW1wb3J0YW50O1xcbn1cXG4uY2FyZC1jbGllbnQtc2VhcmNoW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgcGFkZGluZzogMjBweDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xcbn1cXG4udGFibGUtd3JhcFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIHBhZGRpbmc6IDE1cHg7XFxufVxcbi50YWJsZS1yZXNwb25zaXZlLnRhYmxlLXdyYXAgPiB0YWJsZVtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XFxufVxcbi50YWJsZS13cmFwIC50YWJsZSB0aGVhZCB0cltkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlci1ib3R0b206IDA7XFxuICBiYWNrZ3JvdW5kOiByZ2JhKDk5LCAxMDIsIDI0MSwgMC4xMjE1Njg2Mjc1KSAhaW1wb3J0YW50O1xcbn1cXG4udGFibGUtd3JhcCAuaW5jcmVtZW50b3JbZGF0YS12LTU5NTRiYTYzXSB7XFxuICB3aWR0aDogODBweDtcXG59XFxuLnRhYmxlLXdyYXAgLmN1c3RvbS1xdHktaW5wdXRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzNiwgMjM2LCAyNTMsIDAuNzIxNTY4NjI3NSk7XFxuICBwYWRkaW5nOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMThweDtcXG4gIC8qIGJhY2tncm91bmQ6ICNkZGQ7ICovXFxufVxcbi50YWJsZS13cmFwIC5idG4tZGFuZ2VyW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgd2lkdGg6IDI1cHg7XFxuICBoZWlnaHQ6IDI1cHg7XFxuICBmb250LXNpemU6IDEwcHg7XFxuICBwYWRkaW5nOiAwcHg7XFxufVxcbi50YWJsZS13cmFwIC5pY29uLXNtW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgd2lkdGg6IDI1cHg7XFxuICBoZWlnaHQ6IDI1cHg7XFxuICBsaW5lLWhlaWdodDogMjNweDtcXG59XFxuLnBvcy1jYXJkLWZvb3RlcltkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XFxuICBiYWNrZ3JvdW5kOiAjZmZmO1xcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcXG59XFxuLnBvcy1uZXQtdG90YWxbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBiYWNrZ3JvdW5kOiByZ2JhKDk5LCAxMDIsIDI0MSwgMC4yKTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMTBweCAxMHB4O1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgZm9udC1zaXplOiAyMnB4O1xcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxufVxcbi5wcm9kdWN0W2RhdGEtdi01OTU0YmE2M10ge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4ucHJvZHVjdCAuaW5mby1ib3hbZGF0YS12LTU5NTRiYTYzXTpob3ZlciB7XFxuICBiYWNrZ3JvdW5kOiAjZTBlMGUwO1xcbn1cXG4uZGFyay1tb2RlIC5wb3MtYm9keVtkYXRhLXYtNTk1NGJhNjNdLFxcbi5kYXJrLW1vZGUgLnBvcy1yLWhlYWRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBiYWNrZ3JvdW5kOiAjMTExODI3ICFpbXBvcnRhbnQ7XFxuICBib3JkZXItY29sb3I6ICMwMDA7XFxufVxcbi5kYXJrLW1vZGUgLnBvcy1pdGVtLWdyaWQgPiBkaXZbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuLmRhcmstbW9kZSAucG9zLWJveC1jb250ZW50W2RhdGEtdi01OTU0YmE2M10ge1xcbiAgcGFkZGluZzogNXB4IDEwcHg7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuLmRhcmstbW9kZSAucG9zLWl0ZW0tZ3JpZCA+IGRpdi5wb3MtaXRlbS1ncmlkLXJlZFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlci1jb2xvcjogcmVkICFpbXBvcnRhbnQ7XFxufVxcbi5kYXJrLW1vZGUgLmNhcmQtY2xpZW50LXNlYXJjaFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmRhcmstbW9kZSAudGFibGUtc3RyaXBlZCB0Ym9keSB0cltkYXRhLXYtNTk1NGJhNjNdOm50aC1vZi10eXBlKG9kZCkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmMjkzNztcXG59XFxuLmRhcmstbW9kZSAudGFibGUtcmVzcG9uc2l2ZS50YWJsZS13cmFwID4gdGFibGVbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjNmM3NTdkO1xcbn1cXG4uZGFyay1tb2RlIC50YWJsZS13cmFwIC5pbmNyZW1lbnRvcltkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG4uZGFyay1tb2RlIC5wb3MtY2FyZC1mb290ZXIuYmctd2hpdGVbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBiYWNrZ3JvdW5kOiAjMTExODI3ICFpbXBvcnRhbnQ7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5kYXJrLW1vZGUgLnBvcy1jYXJkLWZvb3RlciBsYWJlbFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG4uZGFyay1tb2RlIC5wb3MtbmV0LXRvdGFsW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgYmFja2dyb3VuZDogcmdiKDk5LCAxNjksIDI0MSk7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuI2ludm9pY2UtUE9TIHRkW2RhdGEtdi01OTU0YmE2M10sXFxuI2ludm9pY2UtUE9TIHRoW2RhdGEtdi01OTU0YmE2M10sXFxuI2ludm9pY2UtUE9TIHRyW2RhdGEtdi01OTU0YmE2M10sXFxuI2ludm9pY2UtUE9TIHRhYmxlW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcXG59XFxuI2ludm9pY2UtUE9TIHRyW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCAjMDUwNzBiO1xcbn1cXG4jaW52b2ljZS1QT1MgdGFibGVbZGF0YS12LTU5NTRiYTYzXSB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuI2ludm9pY2UtUE9TIHRmb290IHRyIHRoW2RhdGEtdi01OTU0YmE2M106Zmlyc3QtY2hpbGQge1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG59XFxuI2ludm9pY2UtUE9TIC5pbmZvW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcXG59XFxuI2ludm9pY2UtUE9TIC5pbmZvID4gcFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIG1hcmdpbi10b3A6IDIwcHg7XFxufVxcbiNsZWdhbGNvcHlbZGF0YS12LTU5NTRiYTYzXSB7XFxuICBtYXJnaW4tdG9wOiA1bW07XFxufVxcbiNsZWdhbGNvcHkgcFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuI2JhcltkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuLnRvdGFsW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XFxuICBmb250LXNpemU6IDEycHg7XFxufVxcbnNwYW4ucHF0eVtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbGluZS1oZWlnaHQ6IDE1cHg7XFxuICBmb250LXNpemU6IDEycHg7XFxuICBmb250LXdlaWdodDogNTAwO1xcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNTBweCkge1xcbi5wb3MtaXRlbS1ncmlkW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcXG4ucG9zLWl0ZW0tZ3JpZFtkYXRhLXYtNTk1NGJhNjNdIHtcXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcXG4uc20tY29sLXJldmVyc2VbZGF0YS12LTU5NTRiYTYzXSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcXG59XFxuLnBvcy1pdGVtLWdyaWRbZGF0YS12LTU5NTRiYTYzXSB7XFxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xcbn1cXG59XFxuLmNyZWF0ZS1idG5bZGF0YS12LTU5NTRiYTYzXSB7XFxuICBwYWRkaW5nOiAxMXB4O1xcbn1cXG4uY3JlYXRlLWJ0bi0yW2RhdGEtdi01OTU0YmE2M10ge1xcbiAgcGFkZGluZzogMTBweDtcXG59XCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\n"); /***/ }), /***/ "./node_modules/style-loader/index.js!./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true": /*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/style-loader!./node_modules/css-loader!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/sass-loader/dist/cjs.js??ref--7-3!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true ***! \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("\nvar content = __webpack_require__(/*! !../../../../../node_modules/css-loader!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src??ref--7-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--7-3!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true */ \"./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\");\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(/*! ../../../../../node_modules/style-loader/lib/addStyles.js */ \"./node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/YzA4MCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsY0FBYyxtQkFBTyxDQUFDLDZxQkFBdVk7O0FBRTdaLDRDQUE0QyxRQUFTOztBQUVyRDtBQUNBOzs7O0FBSUEsZUFBZTs7QUFFZjtBQUNBOztBQUVBLGFBQWEsbUJBQU8sQ0FBQywrR0FBNEQ7O0FBRWpGOztBQUVBLEdBQUcsS0FBVSxFQUFFIiwiZmlsZSI6Ii4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8hLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9wb3MvY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD01OTU0YmE2MyZsYW5nPXNjc3Mmc2NvcGVkPXRydWVcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSB1bmRlZmluZWQ7XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZVwiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZVwiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/style-loader/index.js!./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\n"); /***/ }), /***/ "./resources/js/audio/beep.wav": /*!*************************************!*\ !*** ./resources/js/audio/beep.wav ***! \*************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("module.exports = __webpack_require__.p + \"21527b8a2bd935b6a7a83edec0c5ba4b.wav\";//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYXVkaW8vYmVlcC53YXY/Y2E4MSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUIscUJBQXVCIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL2F1ZGlvL2JlZXAud2F2LmpzIiwic291cmNlc0NvbnRlbnQiOlsibW9kdWxlLmV4cG9ydHMgPSBfX3dlYnBhY2tfcHVibGljX3BhdGhfXyArIFwiMjE1MjdiOGEyYmQ5MzViNmE3YTgzZWRlYzBjNWJhNGIud2F2XCI7Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/audio/beep.wav\n"); /***/ }), /***/ "./resources/js/pages/sales/pos/create.vue": /*!*************************************************!*\ !*** ./resources/js/pages/sales/pos/create.vue ***! \*************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create.vue?vue&type=template&id=5954ba63&scoped=true */ \"./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true\");\n/* harmony import */ var _create_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create.vue?vue&type=script&lang=js */ \"./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true */ \"./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(\n _create_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"5954ba63\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"resources/js/pages/sales/pos/create.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/OTk4NyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQWdHO0FBQ3ZDO0FBQ0w7QUFDc0M7OztBQUcxRjtBQUNtRztBQUNuRyxnQkFBZ0IsMkdBQVU7QUFDMUIsRUFBRSwyRUFBTTtBQUNSLEVBQUUsNEZBQU07QUFDUixFQUFFLHFHQUFlO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSSxLQUFVLEVBQUUsWUFpQmY7QUFDRDtBQUNlLGdGIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL3Bvcy9jcmVhdGUudnVlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tIFwiLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTU5NTRiYTYzJnNjb3BlZD10cnVlXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vY3JlYXRlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qc1wiXG5leHBvcnQgKiBmcm9tIFwiLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzXCJcbmltcG9ydCBzdHlsZTAgZnJvbSBcIi4vY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZVwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCI1OTU0YmE2M1wiLFxuICBudWxsXG4gIFxuKVxuXG4vKiBob3QgcmVsb2FkICovXG5pZiAobW9kdWxlLmhvdCkge1xuICB2YXIgYXBpID0gcmVxdWlyZShcIi92YXIvd3d3L3dvcmtzLnByb2JpbGdpZWdpdGltLmNvbS9ub2RlX21vZHVsZXMvdnVlLWhvdC1yZWxvYWQtYXBpL2Rpc3QvaW5kZXguanNcIilcbiAgYXBpLmluc3RhbGwocmVxdWlyZSgndnVlJykpXG4gIGlmIChhcGkuY29tcGF0aWJsZSkge1xuICAgIG1vZHVsZS5ob3QuYWNjZXB0KClcbiAgICBpZiAoIWFwaS5pc1JlY29yZGVkKCc1OTU0YmE2MycpKSB7XG4gICAgICBhcGkuY3JlYXRlUmVjb3JkKCc1OTU0YmE2MycsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH0gZWxzZSB7XG4gICAgICBhcGkucmVsb2FkKCc1OTU0YmE2MycsIGNvbXBvbmVudC5vcHRpb25zKVxuICAgIH1cbiAgICBtb2R1bGUuaG90LmFjY2VwdChcIi4vY3JlYXRlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD01OTU0YmE2MyZzY29wZWQ9dHJ1ZVwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICBhcGkucmVyZW5kZXIoJzU5NTRiYTYzJywge1xuICAgICAgICByZW5kZXI6IHJlbmRlcixcbiAgICAgICAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnNcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufVxuY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJyZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWVcIlxuZXhwb3J0IGRlZmF1bHQgY29tcG9uZW50LmV4cG9ydHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/pos/create.vue\n"); /***/ }), /***/ "./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js": /*!*************************************************************************!*\ !*** ./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js ***! \*************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js\");\n/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/M2M4MyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUEsd0NBQWlNLENBQWdCLGlQQUFHLEVBQUMiLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2NyZWF0ZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anNcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/pos/create.vue?vue&type=script&lang=js\n"); /***/ }), /***/ "./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true": /*!**********************************************************************************************************!*\ !*** ./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true ***! \**********************************************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_style_loader_index_js_node_modules_css_loader_index_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_sass_loader_dist_cjs_js_ref_7_3_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/style-loader!../../../../../node_modules/css-loader!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src??ref--7-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--7-3!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true */ \"./node_modules/style-loader/index.js!./node_modules/css-loader/index.js!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/sass-loader/dist/cjs.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\");\n/* harmony import */ var _node_modules_style_loader_index_js_node_modules_css_loader_index_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_sass_loader_dist_cjs_js_ref_7_3_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_index_js_node_modules_css_loader_index_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_sass_loader_dist_cjs_js_ref_7_3_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_index_js_node_modules_css_loader_index_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_sass_loader_dist_cjs_js_ref_7_3_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_index_js_node_modules_css_loader_index_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_sass_loader_dist_cjs_js_ref_7_3_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_5954ba63_lang_scss_scoped_true__WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/YTFkOCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQSIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9wb3MvY3JlYXRlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTU5NTRiYTYzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NTk1NGJhNjMmbGFuZz1zY3NzJnNjb3BlZD10cnVlXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/pos/create.vue?vue&type=style&index=0&id=5954ba63&lang=scss&scoped=true\n"); /***/ }), /***/ "./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true": /*!*******************************************************************************************!*\ !*** ./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true ***! \*******************************************************************************************/ /*! exports provided: render, staticRenderFns */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=template&id=5954ba63&scoped=true */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_5954ba63_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/MmVjMSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcG9zL2NyZWF0ZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NTk1NGJhNjMmc2NvcGVkPXRydWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvdGVtcGxhdGVMb2FkZXIuanM/P3JlZi0tNiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2NyZWF0ZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NTk1NGJhNjMmc2NvcGVkPXRydWVcIiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/pos/create.vue?vue&type=template&id=5954ba63&scoped=true\n"); /***/ }) }]);