⚝
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 :
8298247d930bec2728ec.js
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[144],{ /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/quotations/invoice.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/quotations/invoice.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 vuex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\");\n/* harmony import */ var vform__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vform */ \"./node_modules/vform/dist/vform.es.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);\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/* harmony default export */ __webpack_exports__[\"default\"] = ({\n middleware: ['auth', 'check-permissions'],\n metaInfo: function metaInfo() {\n return {\n title: this.$t('sales.quotations.invoice.page_title')\n };\n },\n data: function data() {\n var _Form;\n return {\n breadcrumbsCurrent: 'sales.quotations.invoice.breadcrumbs_current',\n breadcrumbs: [{\n name: 'sales.quotations.invoice.breadcrumbs_first',\n url: 'home'\n }, {\n name: 'sales.quotations.invoice.breadcrumbs_second',\n url: 'quotations.index'\n }, {\n name: 'sales.quotations.invoice.breadcrumbs_active',\n url: ''\n }],\n form: new vform__WEBPACK_IMPORTED_MODULE_1__[\"default\"]((_Form = {\n client: '',\n reference: '',\n selectedProducts: [],\n subTotal: 0,\n netTotal: 0,\n discountType: 0,\n discount: '',\n totalDiscount: '',\n orderTax: '',\n totalTax: 0,\n productTotalTax: 0,\n transportCost: '',\n date: new Date().toISOString().slice(0, 10),\n poReference: '',\n paymentTerms: '',\n deliveryPlace: '',\n addPayment: 0,\n account: '',\n paidAmount: '',\n receiptNo: ''\n }, _defineProperty(_Form, \"receiptNo\", ''), _defineProperty(_Form, \"note\", ''), _defineProperty(_Form, \"status\", 1), _Form)),\n products: '',\n accounts: '',\n taxes: '',\n prefix: ''\n };\n },\n computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__[\"mapGetters\"])('operations', ['items', 'appInfo'])),\n created: function created() {\n this.getClients();\n this.getProducts();\n this.getTaxes();\n this.getQuotation();\n this.getAccounts();\n this.prefix = this.appInfo.productPrefix;\n },\n methods: {\n // get the quotation\n getQuotation: function getQuotation() {\n var _this = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var _yield$axios$get, data;\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_2___default.a.get(window.location.origin + '/api/quotations/' + _this.$route.params.slug);\n case 2:\n _yield$axios$get = _context.sent;\n data = _yield$axios$get.data;\n _this.form.client = data.data.client;\n _this.form.reference = data.data.reference;\n _this.form.totalTax = data.data.totalTax;\n _this.form.orderTax = data.data.quotationTax;\n _this.form.discount = data.data.discountType == 0 ? data.data.discount : data.data.discountPercentage;\n _this.form.discountPercentage = data.data.discountPercentage;\n _this.form.totalDiscount = data.data.discount;\n _this.form.transportCost = data.data.transport;\n _this.form.subTotal = data.data.subTotal;\n _this.form.deliveryPlace = data.data.deliveryPlace;\n _this.form.note = data.data.note;\n _this.form.status = data.data.status;\n _this.form.selectedProducts = _this.assignProducts(data.data.products);\n case 17:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n },\n // get all clients\n getClients: function getClients() {\n var _this2 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return _this2.$store.dispatch('operations/allData', {\n path: '/api/all-clients'\n });\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n // get products\n getProducts: function getProducts() {\n var _this3 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var _yield$axios$get2, data;\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_2___default.a.get(window.location.origin + '/api/all-products');\n case 2:\n _yield$axios$get2 = _context3.sent;\n data = _yield$axios$get2.data;\n _this3.products = data.data;\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3);\n }))();\n },\n // get taxes\n getTaxes: function getTaxes() {\n var _this4 = 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_2___default.a.get(window.location.origin + '/api/all-vat-rates');\n case 2:\n _yield$axios$get3 = _context4.sent;\n data = _yield$axios$get3.data;\n _this4.taxes = data.data;\n case 5:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\n }))();\n },\n // get accounts\n getAccounts: function getAccounts() {\n var _this5 = 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_2___default.a.get(window.location.origin + '/api/all-accounts');\n case 2:\n _yield$axios$get4 = _context5.sent;\n data = _yield$axios$get4.data;\n _this5.accounts = data.data;\n case 5:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5);\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 (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,\n totalTax: totalTax\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 (action == 'increment') {\n item.qty = Number(item.qty) + 1;\n } else if (action == 'decrement') {\n if (item.qty > 0) {\n item.qty = Number(item.qty) - 1;\n }\n }\n } else {\n item.unitPrice = value;\n if (action == 'increment') {\n item.unitPrice = Number(item.unitPrice) + 1;\n } else if (action == 'decrement') {\n if (item.unitPrice > 0) {\n item.unitPrice = Number(item.unitPrice) - 1;\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 quatation 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 // get quotation products\n assignProducts: function assignProducts(quotationProducts) {\n for (var key in quotationProducts) {\n var quotationProduct = quotationProducts[key];\n this.form.selectedProducts.unshift({\n id: quotationProduct.productID,\n slug: quotationProduct.productSlug,\n name: quotationProduct.productName,\n code: quotationProduct.productCode,\n taxType: quotationProduct.taxType,\n taxRate: quotationProduct.taxRate,\n qty: quotationProduct.quantity,\n inventoryCount: quotationProduct.inventoryCount,\n avgPurchasePrice: quotationProduct.avgPurchasePrice,\n unitPrice: quotationProduct.salePrice,\n unitCost: quotationProduct.unitCost,\n totalPrice: quotationProduct.unitCostTotal,\n productTax: quotationProduct.taxAmount,\n totalTax: quotationProduct.taxAmount * quotationProduct.quantity\n });\n }\n this.calculateSum();\n return this.form.selectedProducts;\n },\n // create invoice\n createInvoice: function createInvoice() {\n var _this6 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return _this6.form.post(window.location.origin + '/api/invoices').then(function (response) {\n toast.fire({\n type: 'success',\n title: _this6.$t('sales.quotations.invoice.success_msg')\n });\n _this6.$router.push({\n name: 'invoices.index'\n });\n })[\"catch\"](function () {\n toast.fire({\n type: 'error',\n title: _this6.$t('common.error_msg')\n });\n });\n case 2:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6);\n }))();\n }\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL3F1b3RhdGlvbnMvaW52b2ljZS52dWU/YjViNyJdLCJuYW1lcyI6WyJfcmVnZW5lcmF0b3JSdW50aW1lIiwiZSIsInQiLCJyIiwiT2JqZWN0IiwicHJvdG90eXBlIiwibiIsImhhc093blByb3BlcnR5IiwibyIsImRlZmluZVByb3BlcnR5IiwidmFsdWUiLCJpIiwiU3ltYm9sIiwiYSIsIml0ZXJhdG9yIiwiYyIsImFzeW5jSXRlcmF0b3IiLCJ1IiwidG9TdHJpbmdUYWciLCJkZWZpbmUiLCJlbnVtZXJhYmxlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJ3cmFwIiwiR2VuZXJhdG9yIiwiY3JlYXRlIiwiQ29udGV4dCIsIm1ha2VJbnZva2VNZXRob2QiLCJ0cnlDYXRjaCIsInR5cGUiLCJhcmciLCJjYWxsIiwiaCIsImwiLCJmIiwicyIsInkiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwicCIsImQiLCJnZXRQcm90b3R5cGVPZiIsInYiLCJ2YWx1ZXMiLCJnIiwiZGVmaW5lSXRlcmF0b3JNZXRob2RzIiwiZm9yRWFjaCIsIl9pbnZva2UiLCJBc3luY0l0ZXJhdG9yIiwiaW52b2tlIiwiX3R5cGVvZiIsInJlc29sdmUiLCJfX2F3YWl0IiwidGhlbiIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwiRXJyb3IiLCJkb25lIiwibWV0aG9kIiwiZGVsZWdhdGUiLCJtYXliZUludm9rZURlbGVnYXRlIiwic2VudCIsIl9zZW50IiwiZGlzcGF0Y2hFeGNlcHRpb24iLCJhYnJ1cHQiLCJUeXBlRXJyb3IiLCJyZXN1bHROYW1lIiwibmV4dCIsIm5leHRMb2MiLCJwdXNoVHJ5RW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImlzTmFOIiwibGVuZ3RoIiwiZGlzcGxheU5hbWUiLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiY29uc3RydWN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiYXdyYXAiLCJhc3luYyIsIlByb21pc2UiLCJrZXlzIiwicmV2ZXJzZSIsInBvcCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJydmFsIiwiaGFuZGxlIiwiY29tcGxldGUiLCJmaW5pc2giLCJfY2F0Y2giLCJkZWxlZ2F0ZVlpZWxkIiwiYXN5bmNHZW5lcmF0b3JTdGVwIiwiZ2VuIiwicmVqZWN0IiwiX25leHQiLCJfdGhyb3ciLCJrZXkiLCJpbmZvIiwiZXJyb3IiLCJfYXN5bmNUb0dlbmVyYXRvciIsImZuIiwic2VsZiIsImFyZ3MiLCJhcmd1bWVudHMiLCJhcHBseSIsImVyciIsInVuZGVmaW5lZCIsIm93bktleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJfb2JqZWN0U3ByZWFkIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJvYmoiLCJfdG9Qcm9wZXJ0eUtleSIsIl90b1ByaW1pdGl2ZSIsIlN0cmluZyIsImlucHV0IiwiaGludCIsInByaW0iLCJ0b1ByaW1pdGl2ZSIsInJlcyIsIk51bWJlciIsIm1pZGRsZXdhcmUiLCJtZXRhSW5mbyIsInRpdGxlIiwiJHQiLCJkYXRhIiwiX0Zvcm0iLCJicmVhZGNydW1ic0N1cnJlbnQiLCJicmVhZGNydW1icyIsInVybCIsImZvcm0iLCJGb3JtIiwiY2xpZW50IiwicmVmZXJlbmNlIiwic2VsZWN0ZWRQcm9kdWN0cyIsInN1YlRvdGFsIiwibmV0VG90YWwiLCJkaXNjb3VudFR5cGUiLCJkaXNjb3VudCIsInRvdGFsRGlzY291bnQiLCJvcmRlclRheCIsInRvdGFsVGF4IiwicHJvZHVjdFRvdGFsVGF4IiwidHJhbnNwb3J0Q29zdCIsImRhdGUiLCJEYXRlIiwidG9JU09TdHJpbmciLCJwb1JlZmVyZW5jZSIsInBheW1lbnRUZXJtcyIsImRlbGl2ZXJ5UGxhY2UiLCJhZGRQYXltZW50IiwiYWNjb3VudCIsInBhaWRBbW91bnQiLCJyZWNlaXB0Tm8iLCJwcm9kdWN0cyIsImFjY291bnRzIiwidGF4ZXMiLCJwcmVmaXgiLCJjb21wdXRlZCIsIm1hcEdldHRlcnMiLCJjcmVhdGVkIiwiZ2V0Q2xpZW50cyIsImdldFByb2R1Y3RzIiwiZ2V0VGF4ZXMiLCJnZXRRdW90YXRpb24iLCJnZXRBY2NvdW50cyIsImFwcEluZm8iLCJwcm9kdWN0UHJlZml4IiwibWV0aG9kcyIsIl90aGlzIiwiX2NhbGxlZSIsIl95aWVsZCRheGlvcyRnZXQiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwiYXhpb3MiLCJnZXQiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsIm9yaWdpbiIsIiRyb3V0ZSIsInBhcmFtcyIsInNsdWciLCJxdW90YXRpb25UYXgiLCJkaXNjb3VudFBlcmNlbnRhZ2UiLCJ0cmFuc3BvcnQiLCJub3RlIiwic3RhdHVzIiwiYXNzaWduUHJvZHVjdHMiLCJfdGhpczIiLCJfY2FsbGVlMiIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsIiRzdG9yZSIsImRpc3BhdGNoIiwicGF0aCIsIl90aGlzMyIsIl9jYWxsZWUzIiwiX3lpZWxkJGF4aW9zJGdldDIiLCJfY2FsbGVlMyQiLCJfY29udGV4dDMiLCJfdGhpczQiLCJfY2FsbGVlNCIsIl95aWVsZCRheGlvcyRnZXQzIiwiX2NhbGxlZTQkIiwiX2NvbnRleHQ0IiwiX3RoaXM1IiwiX2NhbGxlZTUiLCJfeWllbGQkYXhpb3MkZ2V0NCIsIl9jYWxsZWU1JCIsIl9jb250ZXh0NSIsInN0b3JlUHJvZHVjdCIsInByb2R1Y3QiLCJpbmRleCIsImZpbmRJbmRleCIsIngiLCJpZCIsInF1YW50aXR5IiwicHJvZHVjdFRheCIsInRheFR5cGUiLCJwcmljZVdpdGhEaXNjb3VudCIsInRheFJhdGUiLCJ1bnNoaWZ0IiwiY29kZSIsInF0eSIsImludmVudG9yeUNvdW50IiwiYXZnUHVyY2hhc2VQcmljZSIsInVuaXRQcmljZSIsInVuaXRDb3N0IiwidG90YWxQcmljZSIsImdlbmVyYXRlSXRlbVRvdGFsIiwiYWN0aW9uIiwiaXRlbSIsImNhbGN1bGF0ZVN1bSIsInJlbW92ZUl0ZW0iLCJpbmRleE9mIiwic3BsaWNlIiwicmVkdWNlIiwiY3VyIiwidG9GaXhlZCIsInJhdGUiLCJxdW90YXRpb25Qcm9kdWN0cyIsInF1b3RhdGlvblByb2R1Y3QiLCJwcm9kdWN0SUQiLCJwcm9kdWN0U2x1ZyIsInByb2R1Y3ROYW1lIiwicHJvZHVjdENvZGUiLCJzYWxlUHJpY2UiLCJ1bml0Q29zdFRvdGFsIiwidGF4QW1vdW50IiwiY3JlYXRlSW52b2ljZSIsIl90aGlzNiIsIl9jYWxsZWU2IiwiX2NhbGxlZTYkIiwiX2NvbnRleHQ2IiwicG9zdCIsInJlc3BvbnNlIiwidG9hc3QiLCJmaXJlIiwiJHJvdXRlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OytDQTRUQSxxSkFBQUEsbUJBQUEsWUFBQUEsb0JBQUEsV0FBQUMsQ0FBQSxTQUFBQyxDQUFBLEVBQUFELENBQUEsT0FBQUUsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLFNBQUEsRUFBQUMsQ0FBQSxHQUFBSCxDQUFBLENBQUFJLGNBQUEsRUFBQUMsQ0FBQSxHQUFBSixNQUFBLENBQUFLLGNBQUEsY0FBQVAsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsSUFBQUQsQ0FBQSxDQUFBRCxDQUFBLElBQUFFLENBQUEsQ0FBQU8sS0FBQSxLQUFBQyxDQUFBLHdCQUFBQyxNQUFBLEdBQUFBLE1BQUEsT0FBQUMsQ0FBQSxHQUFBRixDQUFBLENBQUFHLFFBQUEsa0JBQUFDLENBQUEsR0FBQUosQ0FBQSxDQUFBSyxhQUFBLHVCQUFBQyxDQUFBLEdBQUFOLENBQUEsQ0FBQU8sV0FBQSw4QkFBQUMsT0FBQWpCLENBQUEsRUFBQUQsQ0FBQSxFQUFBRSxDQUFBLFdBQUFDLE1BQUEsQ0FBQUssY0FBQSxDQUFBUCxDQUFBLEVBQUFELENBQUEsSUFBQVMsS0FBQSxFQUFBUCxDQUFBLEVBQUFpQixVQUFBLE1BQUFDLFlBQUEsTUFBQUMsUUFBQSxTQUFBcEIsQ0FBQSxDQUFBRCxDQUFBLFdBQUFrQixNQUFBLG1CQUFBakIsQ0FBQSxJQUFBaUIsTUFBQSxZQUFBQSxPQUFBakIsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsV0FBQUQsQ0FBQSxDQUFBRCxDQUFBLElBQUFFLENBQUEsZ0JBQUFvQixLQUFBckIsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsRUFBQUcsQ0FBQSxRQUFBSyxDQUFBLEdBQUFWLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxTQUFBLFlBQUFtQixTQUFBLEdBQUF2QixDQUFBLEdBQUF1QixTQUFBLEVBQUFYLENBQUEsR0FBQVQsTUFBQSxDQUFBcUIsTUFBQSxDQUFBZCxDQUFBLENBQUFOLFNBQUEsR0FBQVUsQ0FBQSxPQUFBVyxPQUFBLENBQUFwQixDQUFBLGdCQUFBRSxDQUFBLENBQUFLLENBQUEsZUFBQUgsS0FBQSxFQUFBaUIsZ0JBQUEsQ0FBQXpCLENBQUEsRUFBQUMsQ0FBQSxFQUFBWSxDQUFBLE1BQUFGLENBQUEsYUFBQWUsU0FBQTFCLENBQUEsRUFBQUQsQ0FBQSxFQUFBRSxDQUFBLG1CQUFBMEIsSUFBQSxZQUFBQyxHQUFBLEVBQUE1QixDQUFBLENBQUE2QixJQUFBLENBQUE5QixDQUFBLEVBQUFFLENBQUEsY0FBQUQsQ0FBQSxhQUFBMkIsSUFBQSxXQUFBQyxHQUFBLEVBQUE1QixDQUFBLFFBQUFELENBQUEsQ0FBQXNCLElBQUEsR0FBQUEsSUFBQSxNQUFBUyxDQUFBLHFCQUFBQyxDQUFBLHFCQUFBQyxDQUFBLGdCQUFBQyxDQUFBLGdCQUFBQyxDQUFBLGdCQUFBWixVQUFBLGNBQUFhLGtCQUFBLGNBQUFDLDJCQUFBLFNBQUFDLENBQUEsT0FBQXBCLE1BQUEsQ0FBQW9CLENBQUEsRUFBQTFCLENBQUEscUNBQUEyQixDQUFBLEdBQUFwQyxNQUFBLENBQUFxQyxjQUFBLEVBQUFDLENBQUEsR0FBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFBLENBQUEsQ0FBQUcsTUFBQSxRQUFBRCxDQUFBLElBQUFBLENBQUEsS0FBQXZDLENBQUEsSUFBQUcsQ0FBQSxDQUFBeUIsSUFBQSxDQUFBVyxDQUFBLEVBQUE3QixDQUFBLE1BQUEwQixDQUFBLEdBQUFHLENBQUEsT0FBQUUsQ0FBQSxHQUFBTiwwQkFBQSxDQUFBakMsU0FBQSxHQUFBbUIsU0FBQSxDQUFBbkIsU0FBQSxHQUFBRCxNQUFBLENBQUFxQixNQUFBLENBQUFjLENBQUEsWUFBQU0sc0JBQUEzQyxDQUFBLGdDQUFBNEMsT0FBQSxXQUFBN0MsQ0FBQSxJQUFBa0IsTUFBQSxDQUFBakIsQ0FBQSxFQUFBRCxDQUFBLFlBQUFDLENBQUEsZ0JBQUE2QyxPQUFBLENBQUE5QyxDQUFBLEVBQUFDLENBQUEsc0JBQUE4QyxjQUFBOUMsQ0FBQSxFQUFBRCxDQUFBLGFBQUFnRCxPQUFBOUMsQ0FBQSxFQUFBSyxDQUFBLEVBQUFHLENBQUEsRUFBQUUsQ0FBQSxRQUFBRSxDQUFBLEdBQUFhLFFBQUEsQ0FBQTFCLENBQUEsQ0FBQUMsQ0FBQSxHQUFBRCxDQUFBLEVBQUFNLENBQUEsbUJBQUFPLENBQUEsQ0FBQWMsSUFBQSxRQUFBWixDQUFBLEdBQUFGLENBQUEsQ0FBQWUsR0FBQSxFQUFBRSxDQUFBLEdBQUFmLENBQUEsQ0FBQVAsS0FBQSxTQUFBc0IsQ0FBQSxnQkFBQWtCLE9BQUEsQ0FBQWxCLENBQUEsS0FBQTFCLENBQUEsQ0FBQXlCLElBQUEsQ0FBQUMsQ0FBQSxlQUFBL0IsQ0FBQSxDQUFBa0QsT0FBQSxDQUFBbkIsQ0FBQSxDQUFBb0IsT0FBQSxFQUFBQyxJQUFBLFdBQUFuRCxDQUFBLElBQUErQyxNQUFBLFNBQUEvQyxDQUFBLEVBQUFTLENBQUEsRUFBQUUsQ0FBQSxnQkFBQVgsQ0FBQSxJQUFBK0MsTUFBQSxVQUFBL0MsQ0FBQSxFQUFBUyxDQUFBLEVBQUFFLENBQUEsUUFBQVosQ0FBQSxDQUFBa0QsT0FBQSxDQUFBbkIsQ0FBQSxFQUFBcUIsSUFBQSxXQUFBbkQsQ0FBQSxJQUFBZSxDQUFBLENBQUFQLEtBQUEsR0FBQVIsQ0FBQSxFQUFBUyxDQUFBLENBQUFNLENBQUEsZ0JBQUFmLENBQUEsV0FBQStDLE1BQUEsVUFBQS9DLENBQUEsRUFBQVMsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsQ0FBQUUsQ0FBQSxDQUFBZSxHQUFBLFNBQUEzQixDQUFBLEVBQUFLLENBQUEsb0JBQUFFLEtBQUEsV0FBQUEsTUFBQVIsQ0FBQSxFQUFBSSxDQUFBLGFBQUFnRCwyQkFBQSxlQUFBckQsQ0FBQSxXQUFBQSxDQUFBLEVBQUFFLENBQUEsSUFBQThDLE1BQUEsQ0FBQS9DLENBQUEsRUFBQUksQ0FBQSxFQUFBTCxDQUFBLEVBQUFFLENBQUEsZ0JBQUFBLENBQUEsR0FBQUEsQ0FBQSxHQUFBQSxDQUFBLENBQUFrRCxJQUFBLENBQUFDLDBCQUFBLEVBQUFBLDBCQUFBLElBQUFBLDBCQUFBLHFCQUFBM0IsaUJBQUExQixDQUFBLEVBQUFFLENBQUEsRUFBQUcsQ0FBQSxRQUFBRSxDQUFBLEdBQUF3QixDQUFBLG1CQUFBckIsQ0FBQSxFQUFBRSxDQUFBLFFBQUFMLENBQUEsS0FBQTBCLENBQUEsWUFBQXFCLEtBQUEsc0NBQUEvQyxDQUFBLEtBQUEyQixDQUFBLG9CQUFBeEIsQ0FBQSxRQUFBRSxDQUFBLFdBQUFILEtBQUEsRUFBQVIsQ0FBQSxFQUFBc0QsSUFBQSxlQUFBbEQsQ0FBQSxDQUFBbUQsTUFBQSxHQUFBOUMsQ0FBQSxFQUFBTCxDQUFBLENBQUF3QixHQUFBLEdBQUFqQixDQUFBLFVBQUFFLENBQUEsR0FBQVQsQ0FBQSxDQUFBb0QsUUFBQSxNQUFBM0MsQ0FBQSxRQUFBRSxDQUFBLEdBQUEwQyxtQkFBQSxDQUFBNUMsQ0FBQSxFQUFBVCxDQUFBLE9BQUFXLENBQUEsUUFBQUEsQ0FBQSxLQUFBbUIsQ0FBQSxtQkFBQW5CLENBQUEscUJBQUFYLENBQUEsQ0FBQW1ELE1BQUEsRUFBQW5ELENBQUEsQ0FBQXNELElBQUEsR0FBQXRELENBQUEsQ0FBQXVELEtBQUEsR0FBQXZELENBQUEsQ0FBQXdCLEdBQUEsc0JBQUF4QixDQUFBLENBQUFtRCxNQUFBLFFBQUFqRCxDQUFBLEtBQUF3QixDQUFBLFFBQUF4QixDQUFBLEdBQUEyQixDQUFBLEVBQUE3QixDQUFBLENBQUF3QixHQUFBLEVBQUF4QixDQUFBLENBQUF3RCxpQkFBQSxDQUFBeEQsQ0FBQSxDQUFBd0IsR0FBQSx1QkFBQXhCLENBQUEsQ0FBQW1ELE1BQUEsSUFBQW5ELENBQUEsQ0FBQXlELE1BQUEsV0FBQXpELENBQUEsQ0FBQXdCLEdBQUEsR0FBQXRCLENBQUEsR0FBQTBCLENBQUEsTUFBQUssQ0FBQSxHQUFBWCxRQUFBLENBQUEzQixDQUFBLEVBQUFFLENBQUEsRUFBQUcsQ0FBQSxvQkFBQWlDLENBQUEsQ0FBQVYsSUFBQSxRQUFBckIsQ0FBQSxHQUFBRixDQUFBLENBQUFrRCxJQUFBLEdBQUFyQixDQUFBLEdBQUFGLENBQUEsRUFBQU0sQ0FBQSxDQUFBVCxHQUFBLEtBQUFNLENBQUEscUJBQUExQixLQUFBLEVBQUE2QixDQUFBLENBQUFULEdBQUEsRUFBQTBCLElBQUEsRUFBQWxELENBQUEsQ0FBQWtELElBQUEsa0JBQUFqQixDQUFBLENBQUFWLElBQUEsS0FBQXJCLENBQUEsR0FBQTJCLENBQUEsRUFBQTdCLENBQUEsQ0FBQW1ELE1BQUEsWUFBQW5ELENBQUEsQ0FBQXdCLEdBQUEsR0FBQVMsQ0FBQSxDQUFBVCxHQUFBLG1CQUFBNkIsb0JBQUExRCxDQUFBLEVBQUFFLENBQUEsUUFBQUcsQ0FBQSxHQUFBSCxDQUFBLENBQUFzRCxNQUFBLEVBQUFqRCxDQUFBLEdBQUFQLENBQUEsQ0FBQWEsUUFBQSxDQUFBUixDQUFBLE9BQUFFLENBQUEsS0FBQU4sQ0FBQSxTQUFBQyxDQUFBLENBQUF1RCxRQUFBLHFCQUFBcEQsQ0FBQSxJQUFBTCxDQUFBLENBQUFhLFFBQUEsZUFBQVgsQ0FBQSxDQUFBc0QsTUFBQSxhQUFBdEQsQ0FBQSxDQUFBMkIsR0FBQSxHQUFBNUIsQ0FBQSxFQUFBeUQsbUJBQUEsQ0FBQTFELENBQUEsRUFBQUUsQ0FBQSxlQUFBQSxDQUFBLENBQUFzRCxNQUFBLGtCQUFBbkQsQ0FBQSxLQUFBSCxDQUFBLENBQUFzRCxNQUFBLFlBQUF0RCxDQUFBLENBQUEyQixHQUFBLE9BQUFrQyxTQUFBLHVDQUFBMUQsQ0FBQSxpQkFBQThCLENBQUEsTUFBQXpCLENBQUEsR0FBQWlCLFFBQUEsQ0FBQXBCLENBQUEsRUFBQVAsQ0FBQSxDQUFBYSxRQUFBLEVBQUFYLENBQUEsQ0FBQTJCLEdBQUEsbUJBQUFuQixDQUFBLENBQUFrQixJQUFBLFNBQUExQixDQUFBLENBQUFzRCxNQUFBLFlBQUF0RCxDQUFBLENBQUEyQixHQUFBLEdBQUFuQixDQUFBLENBQUFtQixHQUFBLEVBQUEzQixDQUFBLENBQUF1RCxRQUFBLFNBQUF0QixDQUFBLE1BQUF2QixDQUFBLEdBQUFGLENBQUEsQ0FBQW1CLEdBQUEsU0FBQWpCLENBQUEsR0FBQUEsQ0FBQSxDQUFBMkMsSUFBQSxJQUFBckQsQ0FBQSxDQUFBRixDQUFBLENBQUFnRSxVQUFBLElBQUFwRCxDQUFBLENBQUFILEtBQUEsRUFBQVAsQ0FBQSxDQUFBK0QsSUFBQSxHQUFBakUsQ0FBQSxDQUFBa0UsT0FBQSxlQUFBaEUsQ0FBQSxDQUFBc0QsTUFBQSxLQUFBdEQsQ0FBQSxDQUFBc0QsTUFBQSxXQUFBdEQsQ0FBQSxDQUFBMkIsR0FBQSxHQUFBNUIsQ0FBQSxHQUFBQyxDQUFBLENBQUF1RCxRQUFBLFNBQUF0QixDQUFBLElBQUF2QixDQUFBLElBQUFWLENBQUEsQ0FBQXNELE1BQUEsWUFBQXRELENBQUEsQ0FBQTJCLEdBQUEsT0FBQWtDLFNBQUEsc0NBQUE3RCxDQUFBLENBQUF1RCxRQUFBLFNBQUF0QixDQUFBLGNBQUFnQyxhQUFBbEUsQ0FBQSxRQUFBRCxDQUFBLEtBQUFvRSxNQUFBLEVBQUFuRSxDQUFBLFlBQUFBLENBQUEsS0FBQUQsQ0FBQSxDQUFBcUUsUUFBQSxHQUFBcEUsQ0FBQSxXQUFBQSxDQUFBLEtBQUFELENBQUEsQ0FBQXNFLFVBQUEsR0FBQXJFLENBQUEsS0FBQUQsQ0FBQSxDQUFBdUUsUUFBQSxHQUFBdEUsQ0FBQSxXQUFBdUUsVUFBQSxDQUFBQyxJQUFBLENBQUF6RSxDQUFBLGNBQUEwRSxjQUFBekUsQ0FBQSxRQUFBRCxDQUFBLEdBQUFDLENBQUEsQ0FBQTBFLFVBQUEsUUFBQTNFLENBQUEsQ0FBQTRCLElBQUEsb0JBQUE1QixDQUFBLENBQUE2QixHQUFBLEVBQUE1QixDQUFBLENBQUEwRSxVQUFBLEdBQUEzRSxDQUFBLGFBQUF5QixRQUFBeEIsQ0FBQSxTQUFBdUUsVUFBQSxNQUFBSixNQUFBLGFBQUFuRSxDQUFBLENBQUE0QyxPQUFBLENBQUFzQixZQUFBLGNBQUFTLEtBQUEsaUJBQUFsQyxPQUFBMUMsQ0FBQSxRQUFBQSxDQUFBLFdBQUFBLENBQUEsUUFBQUUsQ0FBQSxHQUFBRixDQUFBLENBQUFZLENBQUEsT0FBQVYsQ0FBQSxTQUFBQSxDQUFBLENBQUE0QixJQUFBLENBQUE5QixDQUFBLDRCQUFBQSxDQUFBLENBQUFpRSxJQUFBLFNBQUFqRSxDQUFBLE9BQUE2RSxLQUFBLENBQUE3RSxDQUFBLENBQUE4RSxNQUFBLFNBQUF2RSxDQUFBLE9BQUFHLENBQUEsWUFBQXVELEtBQUEsYUFBQTFELENBQUEsR0FBQVAsQ0FBQSxDQUFBOEUsTUFBQSxPQUFBekUsQ0FBQSxDQUFBeUIsSUFBQSxDQUFBOUIsQ0FBQSxFQUFBTyxDQUFBLFVBQUEwRCxJQUFBLENBQUF4RCxLQUFBLEdBQUFULENBQUEsQ0FBQU8sQ0FBQSxHQUFBMEQsSUFBQSxDQUFBVixJQUFBLE9BQUFVLElBQUEsU0FBQUEsSUFBQSxDQUFBeEQsS0FBQSxHQUFBUixDQUFBLEVBQUFnRSxJQUFBLENBQUFWLElBQUEsT0FBQVUsSUFBQSxZQUFBdkQsQ0FBQSxDQUFBdUQsSUFBQSxHQUFBdkQsQ0FBQSxnQkFBQXFELFNBQUEsQ0FBQWQsT0FBQSxDQUFBakQsQ0FBQSxrQ0FBQW9DLGlCQUFBLENBQUFoQyxTQUFBLEdBQUFpQywwQkFBQSxFQUFBOUIsQ0FBQSxDQUFBb0MsQ0FBQSxtQkFBQWxDLEtBQUEsRUFBQTRCLDBCQUFBLEVBQUFqQixZQUFBLFNBQUFiLENBQUEsQ0FBQThCLDBCQUFBLG1CQUFBNUIsS0FBQSxFQUFBMkIsaUJBQUEsRUFBQWhCLFlBQUEsU0FBQWdCLGlCQUFBLENBQUEyQyxXQUFBLEdBQUE3RCxNQUFBLENBQUFtQiwwQkFBQSxFQUFBckIsQ0FBQSx3QkFBQWhCLENBQUEsQ0FBQWdGLG1CQUFBLGFBQUEvRSxDQUFBLFFBQUFELENBQUEsd0JBQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBZ0YsV0FBQSxXQUFBakYsQ0FBQSxLQUFBQSxDQUFBLEtBQUFvQyxpQkFBQSw2QkFBQXBDLENBQUEsQ0FBQStFLFdBQUEsSUFBQS9FLENBQUEsQ0FBQWtGLElBQUEsT0FBQWxGLENBQUEsQ0FBQW1GLElBQUEsYUFBQWxGLENBQUEsV0FBQUUsTUFBQSxDQUFBaUYsY0FBQSxHQUFBakYsTUFBQSxDQUFBaUYsY0FBQSxDQUFBbkYsQ0FBQSxFQUFBb0MsMEJBQUEsS0FBQXBDLENBQUEsQ0FBQW9GLFNBQUEsR0FBQWhELDBCQUFBLEVBQUFuQixNQUFBLENBQUFqQixDQUFBLEVBQUFlLENBQUEseUJBQUFmLENBQUEsQ0FBQUcsU0FBQSxHQUFBRCxNQUFBLENBQUFxQixNQUFBLENBQUFtQixDQUFBLEdBQUExQyxDQUFBLEtBQUFELENBQUEsQ0FBQXNGLEtBQUEsYUFBQXJGLENBQUEsYUFBQWtELE9BQUEsRUFBQWxELENBQUEsT0FBQTJDLHFCQUFBLENBQUFHLGFBQUEsQ0FBQTNDLFNBQUEsR0FBQWMsTUFBQSxDQUFBNkIsYUFBQSxDQUFBM0MsU0FBQSxFQUFBVSxDQUFBLGlDQUFBZCxDQUFBLENBQUErQyxhQUFBLEdBQUFBLGFBQUEsRUFBQS9DLENBQUEsQ0FBQXVGLEtBQUEsYUFBQXRGLENBQUEsRUFBQUMsQ0FBQSxFQUFBRyxDQUFBLEVBQUFFLENBQUEsRUFBQUcsQ0FBQSxlQUFBQSxDQUFBLEtBQUFBLENBQUEsR0FBQThFLE9BQUEsT0FBQTVFLENBQUEsT0FBQW1DLGFBQUEsQ0FBQXpCLElBQUEsQ0FBQXJCLENBQUEsRUFBQUMsQ0FBQSxFQUFBRyxDQUFBLEVBQUFFLENBQUEsR0FBQUcsQ0FBQSxVQUFBVixDQUFBLENBQUFnRixtQkFBQSxDQUFBOUUsQ0FBQSxJQUFBVSxDQUFBLEdBQUFBLENBQUEsQ0FBQXFELElBQUEsR0FBQWIsSUFBQSxXQUFBbkQsQ0FBQSxXQUFBQSxDQUFBLENBQUFzRCxJQUFBLEdBQUF0RCxDQUFBLENBQUFRLEtBQUEsR0FBQUcsQ0FBQSxDQUFBcUQsSUFBQSxXQUFBckIscUJBQUEsQ0FBQUQsQ0FBQSxHQUFBekIsTUFBQSxDQUFBeUIsQ0FBQSxFQUFBM0IsQ0FBQSxnQkFBQUUsTUFBQSxDQUFBeUIsQ0FBQSxFQUFBL0IsQ0FBQSxpQ0FBQU0sTUFBQSxDQUFBeUIsQ0FBQSw2REFBQTNDLENBQUEsQ0FBQXlGLElBQUEsYUFBQXhGLENBQUEsUUFBQUQsQ0FBQSxHQUFBRyxNQUFBLENBQUFGLENBQUEsR0FBQUMsQ0FBQSxnQkFBQUcsQ0FBQSxJQUFBTCxDQUFBLEVBQUFFLENBQUEsQ0FBQXVFLElBQUEsQ0FBQXBFLENBQUEsVUFBQUgsQ0FBQSxDQUFBd0YsT0FBQSxhQUFBekIsS0FBQSxXQUFBL0QsQ0FBQSxDQUFBNEUsTUFBQSxTQUFBN0UsQ0FBQSxHQUFBQyxDQUFBLENBQUF5RixHQUFBLFFBQUExRixDQUFBLElBQUFELENBQUEsU0FBQWlFLElBQUEsQ0FBQXhELEtBQUEsR0FBQVIsQ0FBQSxFQUFBZ0UsSUFBQSxDQUFBVixJQUFBLE9BQUFVLElBQUEsV0FBQUEsSUFBQSxDQUFBVixJQUFBLE9BQUFVLElBQUEsUUFBQWpFLENBQUEsQ0FBQTBDLE1BQUEsR0FBQUEsTUFBQSxFQUFBakIsT0FBQSxDQUFBckIsU0FBQSxLQUFBNkUsV0FBQSxFQUFBeEQsT0FBQSxFQUFBbUQsS0FBQSxXQUFBQSxNQUFBNUUsQ0FBQSxhQUFBNEYsSUFBQSxXQUFBM0IsSUFBQSxXQUFBTixJQUFBLFFBQUFDLEtBQUEsR0FBQTNELENBQUEsT0FBQXNELElBQUEsWUFBQUUsUUFBQSxjQUFBRCxNQUFBLGdCQUFBM0IsR0FBQSxHQUFBNUIsQ0FBQSxPQUFBdUUsVUFBQSxDQUFBM0IsT0FBQSxDQUFBNkIsYUFBQSxJQUFBMUUsQ0FBQSxXQUFBRSxDQUFBLGtCQUFBQSxDQUFBLENBQUEyRixNQUFBLE9BQUF4RixDQUFBLENBQUF5QixJQUFBLE9BQUE1QixDQUFBLE1BQUEyRSxLQUFBLEVBQUEzRSxDQUFBLENBQUE0RixLQUFBLGNBQUE1RixDQUFBLElBQUFELENBQUEsTUFBQThGLElBQUEsV0FBQUEsS0FBQSxTQUFBeEMsSUFBQSxXQUFBdEQsQ0FBQSxRQUFBdUUsVUFBQSxJQUFBRyxVQUFBLGtCQUFBMUUsQ0FBQSxDQUFBMkIsSUFBQSxRQUFBM0IsQ0FBQSxDQUFBNEIsR0FBQSxjQUFBbUUsSUFBQSxLQUFBbkMsaUJBQUEsV0FBQUEsa0JBQUE3RCxDQUFBLGFBQUF1RCxJQUFBLFFBQUF2RCxDQUFBLE1BQUFFLENBQUEsa0JBQUErRixPQUFBNUYsQ0FBQSxFQUFBRSxDQUFBLFdBQUFLLENBQUEsQ0FBQWdCLElBQUEsWUFBQWhCLENBQUEsQ0FBQWlCLEdBQUEsR0FBQTdCLENBQUEsRUFBQUUsQ0FBQSxDQUFBK0QsSUFBQSxHQUFBNUQsQ0FBQSxFQUFBRSxDQUFBLEtBQUFMLENBQUEsQ0FBQXNELE1BQUEsV0FBQXRELENBQUEsQ0FBQTJCLEdBQUEsR0FBQTVCLENBQUEsS0FBQU0sQ0FBQSxhQUFBQSxDQUFBLFFBQUFpRSxVQUFBLENBQUFNLE1BQUEsTUFBQXZFLENBQUEsU0FBQUEsQ0FBQSxRQUFBRyxDQUFBLFFBQUE4RCxVQUFBLENBQUFqRSxDQUFBLEdBQUFLLENBQUEsR0FBQUYsQ0FBQSxDQUFBaUUsVUFBQSxpQkFBQWpFLENBQUEsQ0FBQTBELE1BQUEsU0FBQTZCLE1BQUEsYUFBQXZGLENBQUEsQ0FBQTBELE1BQUEsU0FBQXdCLElBQUEsUUFBQTlFLENBQUEsR0FBQVQsQ0FBQSxDQUFBeUIsSUFBQSxDQUFBcEIsQ0FBQSxlQUFBTSxDQUFBLEdBQUFYLENBQUEsQ0FBQXlCLElBQUEsQ0FBQXBCLENBQUEscUJBQUFJLENBQUEsSUFBQUUsQ0FBQSxhQUFBNEUsSUFBQSxHQUFBbEYsQ0FBQSxDQUFBMkQsUUFBQSxTQUFBNEIsTUFBQSxDQUFBdkYsQ0FBQSxDQUFBMkQsUUFBQSxnQkFBQXVCLElBQUEsR0FBQWxGLENBQUEsQ0FBQTRELFVBQUEsU0FBQTJCLE1BQUEsQ0FBQXZGLENBQUEsQ0FBQTRELFVBQUEsY0FBQXhELENBQUEsYUFBQThFLElBQUEsR0FBQWxGLENBQUEsQ0FBQTJELFFBQUEsU0FBQTRCLE1BQUEsQ0FBQXZGLENBQUEsQ0FBQTJELFFBQUEscUJBQUFyRCxDQUFBLFlBQUFzQyxLQUFBLHFEQUFBc0MsSUFBQSxHQUFBbEYsQ0FBQSxDQUFBNEQsVUFBQSxTQUFBMkIsTUFBQSxDQUFBdkYsQ0FBQSxDQUFBNEQsVUFBQSxZQUFBUixNQUFBLFdBQUFBLE9BQUE3RCxDQUFBLEVBQUFELENBQUEsYUFBQUUsQ0FBQSxRQUFBc0UsVUFBQSxDQUFBTSxNQUFBLE1BQUE1RSxDQUFBLFNBQUFBLENBQUEsUUFBQUssQ0FBQSxRQUFBaUUsVUFBQSxDQUFBdEUsQ0FBQSxPQUFBSyxDQUFBLENBQUE2RCxNQUFBLFNBQUF3QixJQUFBLElBQUF2RixDQUFBLENBQUF5QixJQUFBLENBQUF2QixDQUFBLHdCQUFBcUYsSUFBQSxHQUFBckYsQ0FBQSxDQUFBK0QsVUFBQSxRQUFBNUQsQ0FBQSxHQUFBSCxDQUFBLGFBQUFHLENBQUEsaUJBQUFULENBQUEsbUJBQUFBLENBQUEsS0FBQVMsQ0FBQSxDQUFBMEQsTUFBQSxJQUFBcEUsQ0FBQSxJQUFBQSxDQUFBLElBQUFVLENBQUEsQ0FBQTRELFVBQUEsS0FBQTVELENBQUEsY0FBQUUsQ0FBQSxHQUFBRixDQUFBLEdBQUFBLENBQUEsQ0FBQWlFLFVBQUEsY0FBQS9ELENBQUEsQ0FBQWdCLElBQUEsR0FBQTNCLENBQUEsRUFBQVcsQ0FBQSxDQUFBaUIsR0FBQSxHQUFBN0IsQ0FBQSxFQUFBVSxDQUFBLFNBQUE4QyxNQUFBLGdCQUFBUyxJQUFBLEdBQUF2RCxDQUFBLENBQUE0RCxVQUFBLEVBQUFuQyxDQUFBLFNBQUErRCxRQUFBLENBQUF0RixDQUFBLE1BQUFzRixRQUFBLFdBQUFBLFNBQUFqRyxDQUFBLEVBQUFELENBQUEsb0JBQUFDLENBQUEsQ0FBQTJCLElBQUEsUUFBQTNCLENBQUEsQ0FBQTRCLEdBQUEscUJBQUE1QixDQUFBLENBQUEyQixJQUFBLG1CQUFBM0IsQ0FBQSxDQUFBMkIsSUFBQSxRQUFBcUMsSUFBQSxHQUFBaEUsQ0FBQSxDQUFBNEIsR0FBQSxnQkFBQTVCLENBQUEsQ0FBQTJCLElBQUEsU0FBQW9FLElBQUEsUUFBQW5FLEdBQUEsR0FBQTVCLENBQUEsQ0FBQTRCLEdBQUEsT0FBQTJCLE1BQUEsa0JBQUFTLElBQUEseUJBQUFoRSxDQUFBLENBQUEyQixJQUFBLElBQUE1QixDQUFBLFVBQUFpRSxJQUFBLEdBQUFqRSxDQUFBLEdBQUFtQyxDQUFBLEtBQUFnRSxNQUFBLFdBQUFBLE9BQUFsRyxDQUFBLGFBQUFELENBQUEsUUFBQXdFLFVBQUEsQ0FBQU0sTUFBQSxNQUFBOUUsQ0FBQSxTQUFBQSxDQUFBLFFBQUFFLENBQUEsUUFBQXNFLFVBQUEsQ0FBQXhFLENBQUEsT0FBQUUsQ0FBQSxDQUFBb0UsVUFBQSxLQUFBckUsQ0FBQSxjQUFBaUcsUUFBQSxDQUFBaEcsQ0FBQSxDQUFBeUUsVUFBQSxFQUFBekUsQ0FBQSxDQUFBcUUsUUFBQSxHQUFBRyxhQUFBLENBQUF4RSxDQUFBLEdBQUFpQyxDQUFBLHlCQUFBaUUsT0FBQW5HLENBQUEsYUFBQUQsQ0FBQSxRQUFBd0UsVUFBQSxDQUFBTSxNQUFBLE1BQUE5RSxDQUFBLFNBQUFBLENBQUEsUUFBQUUsQ0FBQSxRQUFBc0UsVUFBQSxDQUFBeEUsQ0FBQSxPQUFBRSxDQUFBLENBQUFrRSxNQUFBLEtBQUFuRSxDQUFBLFFBQUFJLENBQUEsR0FBQUgsQ0FBQSxDQUFBeUUsVUFBQSxrQkFBQXRFLENBQUEsQ0FBQXVCLElBQUEsUUFBQXJCLENBQUEsR0FBQUYsQ0FBQSxDQUFBd0IsR0FBQSxFQUFBNkMsYUFBQSxDQUFBeEUsQ0FBQSxZQUFBSyxDQUFBLGdCQUFBK0MsS0FBQSw4QkFBQStDLGFBQUEsV0FBQUEsY0FBQXJHLENBQUEsRUFBQUUsQ0FBQSxFQUFBRyxDQUFBLGdCQUFBb0QsUUFBQSxLQUFBNUMsUUFBQSxFQUFBNkIsTUFBQSxDQUFBMUMsQ0FBQSxHQUFBZ0UsVUFBQSxFQUFBOUQsQ0FBQSxFQUFBZ0UsT0FBQSxFQUFBN0QsQ0FBQSxvQkFBQW1ELE1BQUEsVUFBQTNCLEdBQUEsR0FBQTVCLENBQUEsR0FBQWtDLENBQUEsT0FBQW5DLENBQUE7QUFBQSxTQUFBc0csbUJBQUFDLEdBQUEsRUFBQXJELE9BQUEsRUFBQXNELE1BQUEsRUFBQUMsS0FBQSxFQUFBQyxNQUFBLEVBQUFDLEdBQUEsRUFBQTlFLEdBQUEsY0FBQStFLElBQUEsR0FBQUwsR0FBQSxDQUFBSSxHQUFBLEVBQUE5RSxHQUFBLE9BQUFwQixLQUFBLEdBQUFtRyxJQUFBLENBQUFuRyxLQUFBLFdBQUFvRyxLQUFBLElBQUFMLE1BQUEsQ0FBQUssS0FBQSxpQkFBQUQsSUFBQSxDQUFBckQsSUFBQSxJQUFBTCxPQUFBLENBQUF6QyxLQUFBLFlBQUErRSxPQUFBLENBQUF0QyxPQUFBLENBQUF6QyxLQUFBLEVBQUEyQyxJQUFBLENBQUFxRCxLQUFBLEVBQUFDLE1BQUE7QUFBQSxTQUFBSSxrQkFBQUMsRUFBQSw2QkFBQUMsSUFBQSxTQUFBQyxJQUFBLEdBQUFDLFNBQUEsYUFBQTFCLE9BQUEsV0FBQXRDLE9BQUEsRUFBQXNELE1BQUEsUUFBQUQsR0FBQSxHQUFBUSxFQUFBLENBQUFJLEtBQUEsQ0FBQUgsSUFBQSxFQUFBQyxJQUFBLFlBQUFSLE1BQUFoRyxLQUFBLElBQUE2RixrQkFBQSxDQUFBQyxHQUFBLEVBQUFyRCxPQUFBLEVBQUFzRCxNQUFBLEVBQUFDLEtBQUEsRUFBQUMsTUFBQSxVQUFBakcsS0FBQSxjQUFBaUcsT0FBQVUsR0FBQSxJQUFBZCxrQkFBQSxDQUFBQyxHQUFBLEVBQUFyRCxPQUFBLEVBQUFzRCxNQUFBLEVBQUFDLEtBQUEsRUFBQUMsTUFBQSxXQUFBVSxHQUFBLEtBQUFYLEtBQUEsQ0FBQVksU0FBQTtBQUFBLFNBQUFDLFFBQUF0SCxDQUFBLEVBQUFFLENBQUEsUUFBQUQsQ0FBQSxHQUFBRSxNQUFBLENBQUFzRixJQUFBLENBQUF6RixDQUFBLE9BQUFHLE1BQUEsQ0FBQW9ILHFCQUFBLFFBQUFoSCxDQUFBLEdBQUFKLE1BQUEsQ0FBQW9ILHFCQUFBLENBQUF2SCxDQUFBLEdBQUFFLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFpSCxNQUFBLFdBQUF0SCxDQUFBLFdBQUFDLE1BQUEsQ0FBQXNILHdCQUFBLENBQUF6SCxDQUFBLEVBQUFFLENBQUEsRUFBQWlCLFVBQUEsT0FBQWxCLENBQUEsQ0FBQXdFLElBQUEsQ0FBQTBDLEtBQUEsQ0FBQWxILENBQUEsRUFBQU0sQ0FBQSxZQUFBTixDQUFBO0FBQUEsU0FBQXlILGNBQUExSCxDQUFBLGFBQUFFLENBQUEsTUFBQUEsQ0FBQSxHQUFBZ0gsU0FBQSxDQUFBcEMsTUFBQSxFQUFBNUUsQ0FBQSxVQUFBRCxDQUFBLFdBQUFpSCxTQUFBLENBQUFoSCxDQUFBLElBQUFnSCxTQUFBLENBQUFoSCxDQUFBLFFBQUFBLENBQUEsT0FBQW9ILE9BQUEsQ0FBQW5ILE1BQUEsQ0FBQUYsQ0FBQSxPQUFBNEMsT0FBQSxXQUFBM0MsQ0FBQSxJQUFBeUgsZUFBQSxDQUFBM0gsQ0FBQSxFQUFBRSxDQUFBLEVBQUFELENBQUEsQ0FBQUMsQ0FBQSxTQUFBQyxNQUFBLENBQUF5SCx5QkFBQSxHQUFBekgsTUFBQSxDQUFBMEgsZ0JBQUEsQ0FBQTdILENBQUEsRUFBQUcsTUFBQSxDQUFBeUgseUJBQUEsQ0FBQTNILENBQUEsS0FBQXFILE9BQUEsQ0FBQW5ILE1BQUEsQ0FBQUYsQ0FBQSxHQUFBNEMsT0FBQSxXQUFBM0MsQ0FBQSxJQUFBQyxNQUFBLENBQUFLLGNBQUEsQ0FBQVIsQ0FBQSxFQUFBRSxDQUFBLEVBQUFDLE1BQUEsQ0FBQXNILHdCQUFBLENBQUF4SCxDQUFBLEVBQUFDLENBQUEsaUJBQUFGLENBQUE7QUFBQSxTQUFBMkgsZ0JBQUFHLEdBQUEsRUFBQW5CLEdBQUEsRUFBQWxHLEtBQUEsSUFBQWtHLEdBQUEsR0FBQW9CLGNBQUEsQ0FBQXBCLEdBQUEsT0FBQUEsR0FBQSxJQUFBbUIsR0FBQSxJQUFBM0gsTUFBQSxDQUFBSyxjQUFBLENBQUFzSCxHQUFBLEVBQUFuQixHQUFBLElBQUFsRyxLQUFBLEVBQUFBLEtBQUEsRUFBQVUsVUFBQSxRQUFBQyxZQUFBLFFBQUFDLFFBQUEsb0JBQUF5RyxHQUFBLENBQUFuQixHQUFBLElBQUFsRyxLQUFBLFdBQUFxSCxHQUFBO0FBQUEsU0FBQUMsZUFBQWxHLEdBQUEsUUFBQThFLEdBQUEsR0FBQXFCLFlBQUEsQ0FBQW5HLEdBQUEsb0JBQUFvQixPQUFBLENBQUEwRCxHQUFBLGlCQUFBQSxHQUFBLEdBQUFzQixNQUFBLENBQUF0QixHQUFBO0FBQUEsU0FBQXFCLGFBQUFFLEtBQUEsRUFBQUMsSUFBQSxRQUFBbEYsT0FBQSxDQUFBaUYsS0FBQSxrQkFBQUEsS0FBQSxrQkFBQUEsS0FBQSxNQUFBRSxJQUFBLEdBQUFGLEtBQUEsQ0FBQXZILE1BQUEsQ0FBQTBILFdBQUEsT0FBQUQsSUFBQSxLQUFBZixTQUFBLFFBQUFpQixHQUFBLEdBQUFGLElBQUEsQ0FBQXRHLElBQUEsQ0FBQW9HLEtBQUEsRUFBQUMsSUFBQSxvQkFBQWxGLE9BQUEsQ0FBQXFGLEdBQUEsdUJBQUFBLEdBQUEsWUFBQXZFLFNBQUEsNERBQUFvRSxJQUFBLGdCQUFBRixNQUFBLEdBQUFNLE1BQUEsRUFBQUwsS0FBQTtBQUFBO0FBQ0E7QUFDQTtBQUVlO0VBQ2ZNLFVBQUE7RUFDQUMsUUFBQSxXQUFBQSxTQUFBO0lBQ0E7TUFBQUMsS0FBQSxPQUFBQyxFQUFBO0lBQUE7RUFDQTtFQUNBQyxJQUFBLFdBQUFBLEtBQUE7SUFBQSxJQUFBQyxLQUFBO0lBQUE7TUFDQUMsa0JBQUE7TUFDQUMsV0FBQSxHQUNBO1FBQ0E3RCxJQUFBO1FBQ0E4RCxHQUFBO01BQ0EsR0FDQTtRQUNBOUQsSUFBQTtRQUNBOEQsR0FBQTtNQUNBLEdBQ0E7UUFDQTlELElBQUE7UUFDQThELEdBQUE7TUFDQSxFQUNBO01BQ0FDLElBQUEsTUFBQUMsNkNBQUEsRUFBQUwsS0FBQTtRQUNBTSxNQUFBO1FBQ0FDLFNBQUE7UUFDQUMsZ0JBQUE7UUFDQUMsUUFBQTtRQUNBQyxRQUFBO1FBQ0FDLFlBQUE7UUFDQUMsUUFBQTtRQUNBQyxhQUFBO1FBQ0FDLFFBQUE7UUFDQUMsUUFBQTtRQUNBQyxlQUFBO1FBQ0FDLGFBQUE7UUFDQUMsSUFBQSxNQUFBQyxJQUFBLEdBQUFDLFdBQUEsR0FBQW5FLEtBQUE7UUFDQW9FLFdBQUE7UUFDQUMsWUFBQTtRQUNBQyxhQUFBO1FBQ0FDLFVBQUE7UUFDQUMsT0FBQTtRQUNBQyxVQUFBO1FBQ0FDLFNBQUE7TUFBQSxHQUFBN0MsZUFBQSxDQUFBa0IsS0FBQSxlQUNBLEtBQUFsQixlQUFBLENBQUFrQixLQUFBLFVBQ0EsS0FBQWxCLGVBQUEsQ0FBQWtCLEtBQUEsWUFDQSxJQUFBQSxLQUFBLENBQ0E7TUFDQTRCLFFBQUE7TUFDQUMsUUFBQTtNQUNBQyxLQUFBO01BQ0FDLE1BQUE7SUFDQTtFQUFBO0VBQ0FDLFFBQUEsRUFBQW5ELGFBQUEsS0FDQW9ELHVEQUFBLHFDQUNBO0VBQ0FDLE9BQUEsV0FBQUEsUUFBQTtJQUNBLEtBQUFDLFVBQUE7SUFDQSxLQUFBQyxXQUFBO0lBQ0EsS0FBQUMsUUFBQTtJQUNBLEtBQUFDLFlBQUE7SUFDQSxLQUFBQyxXQUFBO0lBQ0EsS0FBQVIsTUFBQSxRQUFBUyxPQUFBLENBQUFDLGFBQUE7RUFDQTtFQUNBQyxPQUFBO0lBQ0E7SUFDQUosWUFBQSxXQUFBQSxhQUFBO01BQUEsSUFBQUssS0FBQTtNQUFBLE9BQUExRSxpQkFBQSxlQUFBL0csbUJBQUEsR0FBQW9GLElBQUEsVUFBQXNHLFFBQUE7UUFBQSxJQUFBQyxnQkFBQSxFQUFBOUMsSUFBQTtRQUFBLE9BQUE3SSxtQkFBQSxHQUFBdUIsSUFBQSxVQUFBcUssU0FBQUMsUUFBQTtVQUFBLGtCQUFBQSxRQUFBLENBQUFoRyxJQUFBLEdBQUFnRyxRQUFBLENBQUEzSCxJQUFBO1lBQUE7Y0FBQTJILFFBQUEsQ0FBQTNILElBQUE7Y0FBQSxPQUNBNEgsNENBQUEsQ0FBQUMsR0FBQSxDQUNBQyxNQUFBLENBQUFDLFFBQUEsQ0FBQUMsTUFBQSx3QkFBQVQsS0FBQSxDQUFBVSxNQUFBLENBQUFDLE1BQUEsQ0FBQUMsSUFDQTtZQUFBO2NBQUFWLGdCQUFBLEdBQUFFLFFBQUEsQ0FBQWpJLElBQUE7Y0FGQWlGLElBQUEsR0FBQThDLGdCQUFBLENBQUE5QyxJQUFBO2NBR0E0QyxLQUFBLENBQUF2QyxJQUFBLENBQUFFLE1BQUEsR0FBQVAsSUFBQSxDQUFBQSxJQUFBLENBQUFPLE1BQUE7Y0FDQXFDLEtBQUEsQ0FBQXZDLElBQUEsQ0FBQUcsU0FBQSxHQUFBUixJQUFBLENBQUFBLElBQUEsQ0FBQVEsU0FBQTtjQUNBb0MsS0FBQSxDQUFBdkMsSUFBQSxDQUFBVyxRQUFBLEdBQUFoQixJQUFBLENBQUFBLElBQUEsQ0FBQWdCLFFBQUE7Y0FDQTRCLEtBQUEsQ0FBQXZDLElBQUEsQ0FBQVUsUUFBQSxHQUFBZixJQUFBLENBQUFBLElBQUEsQ0FBQXlELFlBQUE7Y0FDQWIsS0FBQSxDQUFBdkMsSUFBQSxDQUFBUSxRQUFBLEdBQ0FiLElBQUEsQ0FBQUEsSUFBQSxDQUFBWSxZQUFBLFFBQ0FaLElBQUEsQ0FBQUEsSUFBQSxDQUFBYSxRQUFBLEdBQ0FiLElBQUEsQ0FBQUEsSUFBQSxDQUFBMEQsa0JBQUE7Y0FDQWQsS0FBQSxDQUFBdkMsSUFBQSxDQUFBcUQsa0JBQUEsR0FBQTFELElBQUEsQ0FBQUEsSUFBQSxDQUFBMEQsa0JBQUE7Y0FDQWQsS0FBQSxDQUFBdkMsSUFBQSxDQUFBUyxhQUFBLEdBQUFkLElBQUEsQ0FBQUEsSUFBQSxDQUFBYSxRQUFBO2NBQ0ErQixLQUFBLENBQUF2QyxJQUFBLENBQUFhLGFBQUEsR0FBQWxCLElBQUEsQ0FBQUEsSUFBQSxDQUFBMkQsU0FBQTtjQUNBZixLQUFBLENBQUF2QyxJQUFBLENBQUFLLFFBQUEsR0FBQVYsSUFBQSxDQUFBQSxJQUFBLENBQUFVLFFBQUE7Y0FDQWtDLEtBQUEsQ0FBQXZDLElBQUEsQ0FBQW1CLGFBQUEsR0FBQXhCLElBQUEsQ0FBQUEsSUFBQSxDQUFBd0IsYUFBQTtjQUNBb0IsS0FBQSxDQUFBdkMsSUFBQSxDQUFBdUQsSUFBQSxHQUFBNUQsSUFBQSxDQUFBQSxJQUFBLENBQUE0RCxJQUFBO2NBQ0FoQixLQUFBLENBQUF2QyxJQUFBLENBQUF3RCxNQUFBLEdBQUE3RCxJQUFBLENBQUFBLElBQUEsQ0FBQTZELE1BQUE7Y0FDQWpCLEtBQUEsQ0FBQXZDLElBQUEsQ0FBQUksZ0JBQUEsR0FBQW1DLEtBQUEsQ0FBQWtCLGNBQUEsQ0FBQTlELElBQUEsQ0FBQUEsSUFBQSxDQUFBNkIsUUFBQTtZQUFBO1lBQUE7Y0FBQSxPQUFBbUIsUUFBQSxDQUFBN0YsSUFBQTtVQUFBO1FBQUEsR0FBQTBGLE9BQUE7TUFBQTtJQUNBO0lBQ0E7SUFDQVQsVUFBQSxXQUFBQSxXQUFBO01BQUEsSUFBQTJCLE1BQUE7TUFBQSxPQUFBN0YsaUJBQUEsZUFBQS9HLG1CQUFBLEdBQUFvRixJQUFBLFVBQUF5SCxTQUFBO1FBQUEsT0FBQTdNLG1CQUFBLEdBQUF1QixJQUFBLFVBQUF1TCxVQUFBQyxTQUFBO1VBQUEsa0JBQUFBLFNBQUEsQ0FBQWxILElBQUEsR0FBQWtILFNBQUEsQ0FBQTdJLElBQUE7WUFBQTtjQUFBNkksU0FBQSxDQUFBN0ksSUFBQTtjQUFBLE9BQ0EwSSxNQUFBLENBQUFJLE1BQUEsQ0FBQUMsUUFBQTtnQkFDQUMsSUFBQTtjQUNBO1lBQUE7WUFBQTtjQUFBLE9BQUFILFNBQUEsQ0FBQS9HLElBQUE7VUFBQTtRQUFBLEdBQUE2RyxRQUFBO01BQUE7SUFDQTtJQUVBO0lBQ0EzQixXQUFBLFdBQUFBLFlBQUE7TUFBQSxJQUFBaUMsTUFBQTtNQUFBLE9BQUFwRyxpQkFBQSxlQUFBL0csbUJBQUEsR0FBQW9GLElBQUEsVUFBQWdJLFNBQUE7UUFBQSxJQUFBQyxpQkFBQSxFQUFBeEUsSUFBQTtRQUFBLE9BQUE3SSxtQkFBQSxHQUFBdUIsSUFBQSxVQUFBK0wsVUFBQUMsU0FBQTtVQUFBLGtCQUFBQSxTQUFBLENBQUExSCxJQUFBLEdBQUEwSCxTQUFBLENBQUFySixJQUFBO1lBQUE7Y0FBQXFKLFNBQUEsQ0FBQXJKLElBQUE7Y0FBQSxPQUNBNEgsNENBQUEsQ0FBQUMsR0FBQSxDQUNBQyxNQUFBLENBQUFDLFFBQUEsQ0FBQUMsTUFBQSxzQkFDQTtZQUFBO2NBQUFtQixpQkFBQSxHQUFBRSxTQUFBLENBQUEzSixJQUFBO2NBRkFpRixJQUFBLEdBQUF3RSxpQkFBQSxDQUFBeEUsSUFBQTtjQUdBc0UsTUFBQSxDQUFBekMsUUFBQSxHQUFBN0IsSUFBQSxDQUFBQSxJQUFBO1lBQUE7WUFBQTtjQUFBLE9BQUEwRSxTQUFBLENBQUF2SCxJQUFBO1VBQUE7UUFBQSxHQUFBb0gsUUFBQTtNQUFBO0lBQ0E7SUFFQTtJQUNBakMsUUFBQSxXQUFBQSxTQUFBO01BQUEsSUFBQXFDLE1BQUE7TUFBQSxPQUFBekcsaUJBQUEsZUFBQS9HLG1CQUFBLEdBQUFvRixJQUFBLFVBQUFxSSxTQUFBO1FBQUEsSUFBQUMsaUJBQUEsRUFBQTdFLElBQUE7UUFBQSxPQUFBN0ksbUJBQUEsR0FBQXVCLElBQUEsVUFBQW9NLFVBQUFDLFNBQUE7VUFBQSxrQkFBQUEsU0FBQSxDQUFBL0gsSUFBQSxHQUFBK0gsU0FBQSxDQUFBMUosSUFBQTtZQUFBO2NBQUEwSixTQUFBLENBQUExSixJQUFBO2NBQUEsT0FDQTRILDRDQUFBLENBQUFDLEdBQUEsQ0FDQUMsTUFBQSxDQUFBQyxRQUFBLENBQUFDLE1BQUEsdUJBQ0E7WUFBQTtjQUFBd0IsaUJBQUEsR0FBQUUsU0FBQSxDQUFBaEssSUFBQTtjQUZBaUYsSUFBQSxHQUFBNkUsaUJBQUEsQ0FBQTdFLElBQUE7Y0FHQTJFLE1BQUEsQ0FBQTVDLEtBQUEsR0FBQS9CLElBQUEsQ0FBQUEsSUFBQTtZQUFBO1lBQUE7Y0FBQSxPQUFBK0UsU0FBQSxDQUFBNUgsSUFBQTtVQUFBO1FBQUEsR0FBQXlILFFBQUE7TUFBQTtJQUNBO0lBRUE7SUFDQXBDLFdBQUEsV0FBQUEsWUFBQTtNQUFBLElBQUF3QyxNQUFBO01BQUEsT0FBQTlHLGlCQUFBLGVBQUEvRyxtQkFBQSxHQUFBb0YsSUFBQSxVQUFBMEksU0FBQTtRQUFBLElBQUFDLGlCQUFBLEVBQUFsRixJQUFBO1FBQUEsT0FBQTdJLG1CQUFBLEdBQUF1QixJQUFBLFVBQUF5TSxVQUFBQyxTQUFBO1VBQUEsa0JBQUFBLFNBQUEsQ0FBQXBJLElBQUEsR0FBQW9JLFNBQUEsQ0FBQS9KLElBQUE7WUFBQTtjQUFBK0osU0FBQSxDQUFBL0osSUFBQTtjQUFBLE9BQ0E0SCw0Q0FBQSxDQUFBQyxHQUFBLENBQ0FDLE1BQUEsQ0FBQUMsUUFBQSxDQUFBQyxNQUFBLHNCQUNBO1lBQUE7Y0FBQTZCLGlCQUFBLEdBQUFFLFNBQUEsQ0FBQXJLLElBQUE7Y0FGQWlGLElBQUEsR0FBQWtGLGlCQUFBLENBQUFsRixJQUFBO2NBR0FnRixNQUFBLENBQUFsRCxRQUFBLEdBQUE5QixJQUFBLENBQUFBLElBQUE7WUFBQTtZQUFBO2NBQUEsT0FBQW9GLFNBQUEsQ0FBQWpJLElBQUE7VUFBQTtRQUFBLEdBQUE4SCxRQUFBO01BQUE7SUFDQTtJQUVBO0lBQ0FJLFlBQUEsV0FBQUEsYUFBQUMsT0FBQTtNQUNBLElBQUFDLEtBQUEsUUFBQWxGLElBQUEsQ0FBQUksZ0JBQUEsQ0FBQStFLFNBQUEsQ0FDQSxVQUFBQyxDQUFBO1FBQUEsT0FBQUEsQ0FBQSxDQUFBQyxFQUFBLElBQUFKLE9BQUEsQ0FBQUksRUFBQTtNQUFBLENBQ0E7TUFDQSxJQUFBQyxRQUFBO01BQ0EsSUFBQUosS0FBQTtRQUNBLElBQUFLLFVBQUEsR0FDQU4sT0FBQSxDQUFBTyxPQUFBLGtCQUNBUCxPQUFBLENBQUFRLGlCQUFBLElBQUFSLE9BQUEsQ0FBQVMsT0FBQSxVQUNBVCxPQUFBLENBQUFRLGlCQUFBLEdBQ0FSLE9BQUEsQ0FBQVEsaUJBQUEsUUFBQVIsT0FBQSxDQUFBUyxPQUFBO1FBQ0EsSUFBQS9FLFFBQUEsR0FBQTRFLFVBQUEsR0FBQUQsUUFBQTtRQUVBLEtBQUF0RixJQUFBLENBQUFJLGdCQUFBLENBQUF1RixPQUFBO1VBQ0FOLEVBQUEsRUFBQUosT0FBQSxDQUFBSSxFQUFBO1VBQ0FsQyxJQUFBLEVBQUE4QixPQUFBLENBQUE5QixJQUFBO1VBQ0FsSCxJQUFBLEVBQUFnSixPQUFBLENBQUFoSixJQUFBO1VBQ0EySixJQUFBLEVBQUFYLE9BQUEsQ0FBQVcsSUFBQTtVQUNBSixPQUFBLEVBQUFQLE9BQUEsQ0FBQU8sT0FBQTtVQUNBRSxPQUFBLEVBQUFULE9BQUEsQ0FBQVMsT0FBQTtVQUNBRyxHQUFBLEVBQUFQLFFBQUE7VUFDQVEsY0FBQSxFQUFBYixPQUFBLENBQUFhLGNBQUE7VUFDQUMsZ0JBQUEsRUFBQWQsT0FBQSxDQUFBYyxnQkFBQTtVQUNBQyxTQUFBLEVBQUFmLE9BQUEsQ0FBQVEsaUJBQUE7VUFDQVEsUUFBQSxFQUNBaEIsT0FBQSxDQUFBTyxPQUFBLGtCQUNBUCxPQUFBLENBQUFRLGlCQUFBLEdBQUFGLFVBQUEsR0FDQU4sT0FBQSxDQUFBUSxpQkFBQTtVQUNBUyxVQUFBLEVBQ0FqQixPQUFBLENBQUFPLE9BQUEsa0JBQ0EsS0FBQVAsT0FBQSxDQUFBUSxpQkFBQSxHQUFBOUUsUUFBQSxJQUNBLElBQUFzRSxPQUFBLENBQUFRLGlCQUFBO1VBQ0FGLFVBQUEsRUFBQU4sT0FBQSxDQUFBTSxVQUFBO1VBQ0E1RSxRQUFBLEVBQUFBO1FBQ0E7TUFDQTtNQUNBLEtBQUF3RixpQkFBQSxDQUFBYixRQUFBLFNBQUFKLEtBQUE7TUFDQTtJQUNBO0lBRUE7SUFDQWlCLGlCQUFBLFdBQUFBLGtCQUFBM08sS0FBQSxFQUFBbUIsSUFBQSxFQUFBdU0sS0FBQSxFQUFBa0IsTUFBQTtNQUNBLElBQUFDLElBQUEsUUFBQXJHLElBQUEsQ0FBQUksZ0JBQUEsQ0FBQThFLEtBQUE7TUFDQSxJQUFBbUIsSUFBQTtRQUNBLElBQUExTixJQUFBO1VBQ0EwTixJQUFBLENBQUFSLEdBQUEsR0FBQXJPLEtBQUE7VUFDQSxJQUFBNE8sTUFBQTtZQUNBQyxJQUFBLENBQUFSLEdBQUEsR0FBQXZHLE1BQUEsQ0FBQStHLElBQUEsQ0FBQVIsR0FBQTtVQUNBLFdBQUFPLE1BQUE7WUFDQSxJQUFBQyxJQUFBLENBQUFSLEdBQUE7Y0FDQVEsSUFBQSxDQUFBUixHQUFBLEdBQUF2RyxNQUFBLENBQUErRyxJQUFBLENBQUFSLEdBQUE7WUFDQTtVQUNBO1FBQ0E7VUFDQVEsSUFBQSxDQUFBTCxTQUFBLEdBQUF4TyxLQUFBO1VBQ0EsSUFBQTRPLE1BQUE7WUFDQUMsSUFBQSxDQUFBTCxTQUFBLEdBQUExRyxNQUFBLENBQUErRyxJQUFBLENBQUFMLFNBQUE7VUFDQSxXQUFBSSxNQUFBO1lBQ0EsSUFBQUMsSUFBQSxDQUFBTCxTQUFBO2NBQ0FLLElBQUEsQ0FBQUwsU0FBQSxHQUFBMUcsTUFBQSxDQUFBK0csSUFBQSxDQUFBTCxTQUFBO1lBQ0E7VUFDQTtRQUNBO1FBQ0FLLElBQUEsQ0FBQWQsVUFBQSxHQUNBYyxJQUFBLENBQUFiLE9BQUEsa0JBQ0FhLElBQUEsQ0FBQUwsU0FBQSxJQUFBSyxJQUFBLENBQUFYLE9BQUEsVUFDQVcsSUFBQSxDQUFBTCxTQUFBLEdBQUFLLElBQUEsQ0FBQUwsU0FBQSxRQUFBSyxJQUFBLENBQUFYLE9BQUE7UUFFQVcsSUFBQSxDQUFBMUYsUUFBQSxHQUFBMEYsSUFBQSxDQUFBZCxVQUFBLEdBQUFjLElBQUEsQ0FBQVIsR0FBQTtRQUVBUSxJQUFBLENBQUFILFVBQUEsR0FDQUcsSUFBQSxDQUFBYixPQUFBLGtCQUNBYSxJQUFBLENBQUFSLEdBQUEsR0FBQVEsSUFBQSxDQUFBTCxTQUFBLEdBQUFLLElBQUEsQ0FBQTFGLFFBQUEsR0FDQTBGLElBQUEsQ0FBQVIsR0FBQSxHQUFBUSxJQUFBLENBQUFMLFNBQUE7UUFDQUssSUFBQSxDQUFBSixRQUFBLEdBQ0FJLElBQUEsQ0FBQWIsT0FBQSxrQkFDQWxHLE1BQUEsQ0FBQStHLElBQUEsQ0FBQUwsU0FBQSxJQUFBMUcsTUFBQSxDQUFBK0csSUFBQSxDQUFBZCxVQUFBLElBQ0FjLElBQUEsQ0FBQUwsU0FBQTtRQUNBLEtBQUFoRyxJQUFBLENBQUFJLGdCQUFBLENBQUE4RSxLQUFBLElBQUFtQixJQUFBO01BQ0E7TUFDQSxLQUFBQyxZQUFBO01BQ0E7SUFDQTtJQUVBO0lBQ0FDLFVBQUEsV0FBQUEsV0FBQUYsSUFBQTtNQUNBLElBQUFuQixLQUFBLFFBQUFsRixJQUFBLENBQUFJLGdCQUFBLENBQUFvRyxPQUFBLENBQUFILElBQUE7TUFDQSxJQUFBbkIsS0FBQTtRQUNBLEtBQUFsRixJQUFBLENBQUFJLGdCQUFBLENBQUFxRyxNQUFBLENBQUF2QixLQUFBO01BQ0E7TUFDQSxLQUFBb0IsWUFBQTtNQUNBO0lBQ0E7SUFFQTtJQUNBQSxZQUFBLFdBQUFBLGFBQUE7TUFDQTtNQUNBLEtBQUF0RyxJQUFBLENBQUFLLFFBQUEsUUFBQUwsSUFBQSxDQUFBSSxnQkFBQSxDQUFBc0csTUFBQSxXQUNBL0osSUFBQSxFQUNBZ0ssR0FBQSxFQUNBO1FBQ0EsT0FBQXJILE1BQUEsRUFBQTNDLElBQUEsR0FBQWdLLEdBQUEsQ0FBQVQsVUFBQSxFQUFBVSxPQUFBO01BQ0EsR0FDQTs7TUFFQTtNQUNBLEtBQUE1RyxJQUFBLENBQUFZLGVBQUEsUUFBQVosSUFBQSxDQUFBSSxnQkFBQSxDQUFBc0csTUFBQSxXQUNBL0osSUFBQSxFQUNBZ0ssR0FBQSxFQUNBO1FBQ0EsT0FBQXJILE1BQUEsRUFBQTNDLElBQUEsR0FBQWdLLEdBQUEsQ0FBQWhHLFFBQUEsRUFBQWlHLE9BQUE7TUFDQSxHQUNBO01BRUEsS0FBQTVHLElBQUEsQ0FBQU0sUUFBQSxRQUFBTixJQUFBLENBQUFLLFFBQUE7O01BRUE7TUFDQSxLQUFBTCxJQUFBLENBQUFXLFFBQUE7TUFDQSxTQUFBWCxJQUFBLENBQUFVLFFBQUE7UUFDQSxLQUFBVixJQUFBLENBQUFXLFFBQUEsR0FDQSxLQUFBWCxJQUFBLENBQUFVLFFBQUEsQ0FBQW1HLElBQUEsY0FBQTdHLElBQUEsQ0FBQUssUUFBQTtNQUNBOztNQUVBO01BQ0EsU0FBQUwsSUFBQSxDQUFBSyxRQUFBO1FBQ0EsSUFBQUcsUUFBQSxHQUFBbEIsTUFBQSxNQUFBVSxJQUFBLENBQUFRLFFBQUE7UUFDQSxTQUFBUixJQUFBLENBQUFPLFlBQUE7VUFDQUMsUUFBQSxHQUFBQSxRQUFBLGNBQUFSLElBQUEsQ0FBQUssUUFBQTtVQUNBLEtBQUFMLElBQUEsQ0FBQVMsYUFBQSxHQUFBbkIsTUFBQSxDQUFBa0IsUUFBQSxDQUFBb0csT0FBQTtRQUNBO1VBQ0FwRyxRQUFBLEdBQUFsQixNQUFBLE1BQUFVLElBQUEsQ0FBQVEsUUFBQTtRQUNBO1FBQ0EsS0FBQVIsSUFBQSxDQUFBTSxRQUFBLEdBQ0EsS0FBQU4sSUFBQSxDQUFBSyxRQUFBLEdBQ0FmLE1BQUEsTUFBQVUsSUFBQSxDQUFBYSxhQUFBLElBQ0FMLFFBQUEsR0FDQSxLQUFBUixJQUFBLENBQUFXLFFBQUE7TUFDQTtNQUNBO0lBQ0E7SUFFQTtJQUNBOEMsY0FBQSxXQUFBQSxlQUFBcUQsaUJBQUE7TUFDQSxTQUFBcEosR0FBQSxJQUFBb0osaUJBQUE7UUFDQSxJQUFBQyxnQkFBQSxHQUFBRCxpQkFBQSxDQUFBcEosR0FBQTtRQUNBLEtBQUFzQyxJQUFBLENBQUFJLGdCQUFBLENBQUF1RixPQUFBO1VBQ0FOLEVBQUEsRUFBQTBCLGdCQUFBLENBQUFDLFNBQUE7VUFDQTdELElBQUEsRUFBQTRELGdCQUFBLENBQUFFLFdBQUE7VUFDQWhMLElBQUEsRUFBQThLLGdCQUFBLENBQUFHLFdBQUE7VUFDQXRCLElBQUEsRUFBQW1CLGdCQUFBLENBQUFJLFdBQUE7VUFDQTNCLE9BQUEsRUFBQXVCLGdCQUFBLENBQUF2QixPQUFBO1VBQ0FFLE9BQUEsRUFBQXFCLGdCQUFBLENBQUFyQixPQUFBO1VBQ0FHLEdBQUEsRUFBQWtCLGdCQUFBLENBQUF6QixRQUFBO1VBQ0FRLGNBQUEsRUFBQWlCLGdCQUFBLENBQUFqQixjQUFBO1VBQ0FDLGdCQUFBLEVBQUFnQixnQkFBQSxDQUFBaEIsZ0JBQUE7VUFDQUMsU0FBQSxFQUFBZSxnQkFBQSxDQUFBSyxTQUFBO1VBQ0FuQixRQUFBLEVBQUFjLGdCQUFBLENBQUFkLFFBQUE7VUFDQUMsVUFBQSxFQUFBYSxnQkFBQSxDQUFBTSxhQUFBO1VBQ0E5QixVQUFBLEVBQUF3QixnQkFBQSxDQUFBTyxTQUFBO1VBQ0EzRyxRQUFBLEVBQUFvRyxnQkFBQSxDQUFBTyxTQUFBLEdBQUFQLGdCQUFBLENBQUF6QjtRQUNBO01BQ0E7TUFDQSxLQUFBZ0IsWUFBQTtNQUNBLFlBQUF0RyxJQUFBLENBQUFJLGdCQUFBO0lBQ0E7SUFFQTtJQUNBbUgsYUFBQSxXQUFBQSxjQUFBO01BQUEsSUFBQUMsTUFBQTtNQUFBLE9BQUEzSixpQkFBQSxlQUFBL0csbUJBQUEsR0FBQW9GLElBQUEsVUFBQXVMLFNBQUE7UUFBQSxPQUFBM1EsbUJBQUEsR0FBQXVCLElBQUEsVUFBQXFQLFVBQUFDLFNBQUE7VUFBQSxrQkFBQUEsU0FBQSxDQUFBaEwsSUFBQSxHQUFBZ0wsU0FBQSxDQUFBM00sSUFBQTtZQUFBO2NBQUEyTSxTQUFBLENBQUEzTSxJQUFBO2NBQUEsT0FDQXdNLE1BQUEsQ0FBQXhILElBQUEsQ0FDQTRILElBQUEsQ0FBQTlFLE1BQUEsQ0FBQUMsUUFBQSxDQUFBQyxNQUFBLG9CQUNBN0ksSUFBQSxXQUFBME4sUUFBQTtnQkFDQUMsS0FBQSxDQUFBQyxJQUFBO2tCQUNBcFAsSUFBQTtrQkFDQThHLEtBQUEsRUFBQStILE1BQUEsQ0FBQTlILEVBQUE7Z0JBQ0E7Z0JBQ0E4SCxNQUFBLENBQUFRLE9BQUEsQ0FBQXhNLElBQUE7a0JBQUFTLElBQUE7Z0JBQUE7Y0FDQSxXQUNBO2dCQUNBNkwsS0FBQSxDQUFBQyxJQUFBO2tCQUNBcFAsSUFBQTtrQkFDQThHLEtBQUEsRUFBQStILE1BQUEsQ0FBQTlILEVBQUE7Z0JBQ0E7Y0FDQTtZQUFBO1lBQUE7Y0FBQSxPQUFBaUksU0FBQSxDQUFBN0ssSUFBQTtVQUFBO1FBQUEsR0FBQTJLLFFBQUE7TUFBQTtJQUNBO0VBQ0E7QUFDQSxDQUFDIiwiZmlsZSI6Ii4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9xdW90YXRpb25zL2ludm9pY2UudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuICA8ZGl2PlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgU3RhcnQgLS0+XG4gICAgPGJyZWFkY3J1bWJzIDppdGVtcz1cImJyZWFkY3J1bWJzXCIgOmN1cnJlbnQ9XCJicmVhZGNydW1ic0N1cnJlbnRcIiAvPlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgZW5kIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgY29sLXhsLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCI+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+XG4gICAgICAgICAgICAgIHt7ICR0KCdzYWxlcy5xdW90YXRpb25zLmludm9pY2UuZm9ybV90aXRsZScpIH19XG4gICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgPHJvdXRlci1saW5rIDp0bz1cInsgbmFtZTogJ3F1b3RhdGlvbnMuaW5kZXgnIH1cIiBjbGFzcz1cImJ0biBidG4tZGFyayBmbG9hdC1yaWdodFwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1sb25nLWFycm93LWFsdC1sZWZ0XCIgLz4ge3sgJHQoJ2NvbW1vbi5iYWNrJykgfX1cbiAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPCEtLSAvLmNhcmQtaGVhZGVyIC0tPlxuICAgICAgICAgIDwhLS0gZm9ybSBzdGFydCAtLT5cbiAgICAgICAgICA8Zm9ybSByb2xlPVwiZm9ybVwiIEBzdWJtaXQucHJldmVudD1cImNyZWF0ZUludm9pY2VcIiBAa2V5ZG93bj1cImZvcm0ub25LZXlkb3duKCRldmVudClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiIHYtaWY9XCJpdGVtc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY2xpZW50XCI+e3sgJHQoJ2NvbW1vbi5jbGllbnQnKSB9fVxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHYtc2VsZWN0IHYtbW9kZWw9XCJmb3JtLmNsaWVudFwiIDpvcHRpb25zPVwiaXRlbXNcIiBsYWJlbD1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdjbGllbnQnKSB9XCIgbmFtZT1cImNsaWVudFwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uY2xpZW50X3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImNsaWVudFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTZcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJyZWZlcmVuY2VcIj57eyAkdCgnY29tbW9uLnJlZmVyZW5jZScpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInJlZmVyZW5jZVwiIHYtbW9kZWw9XCJmb3JtLnJlZmVyZW5jZVwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdyZWZlcmVuY2UnKSB9XCIgbmFtZT1cInJlZmVyZW5jZVwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ucmVmZXJlbmNlX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInJlZmVyZW5jZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgdi1pZj1cInByb2R1Y3RzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTEyXCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicHJvZHVjdFwiPnt7ICR0KCdjb21tb24uc2VsZWN0X3Byb2R1Y3RzJykgfX1cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDx2LXNlbGVjdCB2LW1vZGVsPVwiZm9ybS5wcm9kdWN0XCIgOm9wdGlvbnM9XCJwcm9kdWN0c1wiIGxhYmVsPVwibGFiZWxcIiA6Y2xhc3M9XCJ7XG4gICAgICAgICAgICAgICAgICAgICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdzZWxlY3RlZFByb2R1Y3RzJyksXG4gICAgICAgICAgICAgICAgICB9XCIgbmFtZT1cInByb2R1Y3RcIiA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnNlbGVjdF9wcm9kdWN0c19wbGFjZWhvbGRlcicpXCJcbiAgICAgICAgICAgICAgICAgICAgQGlucHV0PVwic3RvcmVQcm9kdWN0KGZvcm0ucHJvZHVjdClcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInNlbGVjdGVkUHJvZHVjdHNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmIGZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5sZW5ndGggPiAwXCIgY2xhc3M9XCJyb3cgbXQtMyBtYi00XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmUgdGFibGUtY3VzdG9tIHctOTUgbS1hdXRvXCI+XG4gICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSB0YWJsZS1ob3ZlciB0YWJsZS1zbVwiPlxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQgY2xhc3M9XCJ0aGVhZC1saWdodFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdCgnY29tbW9uLnNfbm8nKSB9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJHQoJ2NvbW1vbi5jb2RlJykgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KCdjb21tb24ucHJvZHVjdF9uYW1lJykgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KCdjb21tb24ucXVhbnRpdHknKSB9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJHQoJ2NvbW1vbi5wcmljZScpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdCgnY29tbW9uLnVuaXRfY29zdCcpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdCgnY29tbW9uLnRheCcpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdCgnY29tbW9uLnN1YnRvdGFsJykgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwidGV4dC1yaWdodFwiPnt7ICR0KCdjb21tb24uYWN0aW9uJykgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICA8dHIgdi1mb3I9XCIoaXRlbSwgaSkgaW4gZm9ybS5zZWxlY3RlZFByb2R1Y3RzXCIgOmtleT1cImlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyArK2kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IGl0ZW0uY29kZSB8IHdpdGhQcmVmaXgocHJlZml4KSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJOdW1iZXIoaXRlbS5pbnZlbnRvcnlDb3VudCkgPCBOdW1iZXIoaXRlbS5xdHkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgdi10b29sdGlwPVwiJ0luc3VmZmljaWVudCBTdG9jaydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWRhbmdlciBwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1leGNsYW1hdGlvblwiPjwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cm91dGVyLWxpbmsgOnRvPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6ICdwcm9kdWN0cy5zaG93JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHsgc2x1ZzogaXRlbS5zbHVnIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cCBjdXN0b20tcXR5LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJidXR0b25cIiB2YWx1ZT1cIi1cIiBjbGFzcz1cImJ1dHRvbi1taW51cyBpY29uLXNoYXBlIGljb24tc20gYnRuLWRhbmdlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLWZpZWxkPVwicXVhbnRpdHlcIiBAY2xpY2s9XCJnZW5lcmF0ZUl0ZW1Ub3RhbChpdGVtLnF0eSwgJ3F0eScsIGkgLSAxLCAnZGVjcmVtZW50JylcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgc3RlcD1cIjFcIiA6aWQ9XCJgUXR5LSR7aX1gXCIgOnZhbHVlPVwiaXRlbS5xdHlcIiBuYW1lPVwicXVhbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJxdWFudGl0eS1maWVsZCBib3JkZXItMCBpbmNyZW1lbnRvclwiIHJlcXVpcmVkIG1pbj1cIjFcIiA6bWF4PVwiaXRlbS5pbnZlbnRvcnlDb3VudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2hhbmdlPVwiZ2VuZXJhdGVJdGVtVG90YWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ3F0eScsIGkgLSAxLCAnJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGtleXVwPVwiZ2VuZXJhdGVJdGVtVG90YWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ3F0eScsIGkgLSAxLCAnJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5xdWFudGl0eScpXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiK1wiIGNsYXNzPVwiYnV0dG9uLXBsdXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZmllbGQ9XCJxdWFudGl0eVwiIEBjbGljaz1cImdlbmVyYXRlSXRlbVRvdGFsKGl0ZW0ucXR5LCAncXR5JywgaSAtIDEsICdpbmNyZW1lbnQnKVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIGN1c3RvbS1xdHktaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiLVwiIGNsYXNzPVwiYnV0dG9uLW1pbnVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tZGFuZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZmllbGQ9XCJxdWFudGl0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZW5lcmF0ZUl0ZW1Ub3RhbChpdGVtLnVuaXRQcmljZSwgJ3ByaWNlJywgaSAtIDEsICdkZWNyZW1lbnQnKVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBzdGVwPVwiMVwiIDppZD1cImB1bml0UHJpY2UtJHtpfWBcIiA6dmFsdWU9XCJpdGVtLnVuaXRQcmljZVwiIG5hbWU9XCJ1bml0UHJpY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJxdWFudGl0eS1maWVsZCBib3JkZXItMCBpbmNyZW1lbnRvclwiIHJlcXVpcmVkIG1pbj1cIjFcIiBAY2hhbmdlPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlSXRlbVRvdGFsKCRldmVudC50YXJnZXQudmFsdWUsICdwcmljZScsIGkgLSAxLCAnJylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGtleXVwPVwiZ2VuZXJhdGVJdGVtVG90YWwoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ3ByaWNlJywgaSAtIDEsICcnKVwiIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiK1wiIGNsYXNzPVwiYnV0dG9uLXBsdXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZmllbGQ9XCJxdWFudGl0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9XCJnZW5lcmF0ZUl0ZW1Ub3RhbChpdGVtLnVuaXRQcmljZSwgJ3ByaWNlJywgaSAtIDEsICdpbmNyZW1lbnQnKVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyBpdGVtLnVuaXRDb3N0IHwgd2l0aEN1cnJlbmN5IH19PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyBpdGVtLnRvdGFsVGF4IHwgd2l0aEN1cnJlbmN5IH19PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyBpdGVtLnRvdGFsUHJpY2UgfCB3aXRoQ3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyXCIgQGNsaWNrPVwicmVtb3ZlSXRlbShpdGVtKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY29sc3Bhbj1cIjZcIiBjbGFzcz1cInRleHQtcmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz4ge3sgJHQoJ2NvbW1vbi50b3RhbCcpIH19OiA8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtLnByb2R1Y3RUb3RhbFRheCB8IHdpdGhDdXJyZW5jeVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IGZvcm0uc3ViVG90YWwgfCB3aXRoQ3VycmVuY3kgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImRpc2NvdW50VHlwZVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KCdjb21tb24uZGlzY291bnRfdHlwZScpXG4gICAgICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8c2VsZWN0IGlkPVwiZGlzY291bnRUeXBlXCIgdi1tb2RlbD1cImZvcm0uZGlzY291bnRUeXBlXCIgc3RlcD1cImFueVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGlzY291bnRUeXBlJykgfVwiIG5hbWU9XCJkaXNjb3VudFR5cGVcIiBAY2hhbmdlPVwiY2FsY3VsYXRlU3VtXCJcbiAgICAgICAgICAgICAgICAgICAgQGtleXVwPVwiY2FsY3VsYXRlU3VtXCI+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIwXCI+e3sgJHQoJ2NvbW1vbi5maXhlZCcpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoJ2NvbW1vbi5wZXJjZW50YWdlJykgfX0oJSk8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImRpc2NvdW50VHlwZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiA6Y2xhc3M9XCJmb3JtLmRpc2NvdW50VHlwZSA9PSAxID8gJ2NvbC1tZC0yJyA6ICdjb2wtbWQtNCdcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkaXNjb3VudFwiPnt7ICR0KCdjb21tb24uZGlzY291bnQnKSB9fVxuICAgICAgICAgICAgICAgICAgICA8c3BhbiB2LWlmPVwiZm9ybS5kaXNjb3VudFR5cGUgPT0gMVwiPiglKTwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZGlzY291bnRcIiB2LW1vZGVsPVwiZm9ybS5kaXNjb3VudFwiIHR5cGU9XCJudW1iZXJcIiBzdGVwPVwiYW55XCIgbWluPVwiMVwiXG4gICAgICAgICAgICAgICAgICAgIDptYXg9XCJmb3JtLmRpc2NvdW50VHlwZSA9PSAxID8gMTAwIDogZm9ybS5uZXRUb3RhbFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGlzY291bnQnKSB9XCIgbmFtZT1cImRpc2NvdW50XCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5kaXNjb3VudF9wbGFjZWhvbGRlcicpXCIgQGNoYW5nZT1cImNhbGN1bGF0ZVN1bVwiIEBrZXl1cD1cImNhbGN1bGF0ZVN1bVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiZGlzY291bnRcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgdi1pZj1cImZvcm0uZGlzY291bnRUeXBlID09IDFcIiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTJcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJ0b3RhbERpc2NvdW50XCI+e3tcbiAgICAgICAgICAgICAgICAgICAgJHQoJ2NvbW1vbi50b3RhbF9kaXNjb3VudCcpXG4gICAgICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ0b3RhbERpc2NvdW50XCIgdi1tb2RlbD1cImZvcm0udG90YWxEaXNjb3VudFwiIHR5cGU9XCJudW1iZXJcIiBzdGVwPVwiYW55XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCd0b3RhbERpc2NvdW50JykgfVwiIG5hbWU9XCJ0b3RhbERpc2NvdW50XCIgcmVhZG9ubHkgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJ0b3RhbERpc2NvdW50XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRyYW5zcG9ydENvc3RcIj57e1xuICAgICAgICAgICAgICAgICAgICAkdCgnY29tbW9uLnRyYW5zcG9ydF9jb3N0JylcbiAgICAgICAgICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInRyYW5zcG9ydENvc3RcIiB2LW1vZGVsPVwiZm9ybS50cmFuc3BvcnRDb3N0XCIgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiBtaW49XCIxXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCd0cmFuc3BvcnRDb3N0JykgfVwiIG5hbWU9XCJ0cmFuc3BvcnRDb3N0XCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi50cmFuc3BvcnRfY29zdF9wbGFjZWhvbGRlcicpXCIgQGNoYW5nZT1cImNhbGN1bGF0ZVN1bVwiIEBrZXl1cD1cImNhbGN1bGF0ZVN1bVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwidHJhbnNwb3J0Q29zdFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJ0YXhlc1wiIGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm9yZGVyVGF4XCI+e3sgJHQoJ2NvbW1vbi5pbnZvaWNlX3RheCcpIH19XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8di1zZWxlY3Qgdi1tb2RlbD1cImZvcm0ub3JkZXJUYXhcIiA6b3B0aW9ucz1cInRheGVzXCIgbGFiZWw9XCJjb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnb3JkZXJUYXgnKSB9XCIgbmFtZT1cIm9yZGVyVGF4XCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ3NhbGVzLmNvbW1vbi5xdW90YXRpb25fdGF4X3BsYWNlaG9sZGVyJylcIiBAaW5wdXQ9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cIm9yZGVyVGF4XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJ0YXhlc1wiIGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRvdGFsVGF4XCI+e3sgJHQoJ2NvbW1vbi50b3RhbF90YXgnKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ0b3RhbFRheFwiIHYtbW9kZWw9XCJmb3JtLnRvdGFsVGF4XCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3RvdGFsVGF4JykgfVwiIG5hbWU9XCJ0b3RhbFRheFwiIHJlYWRvbmx5IC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwidG90YWxUYXhcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwibmV0VG90YWxcIj57eyAkdCgnY29tbW9uLm5ldF90b3RhbCcpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cIm5ldFRvdGFsXCIgdi1tb2RlbD1cImZvcm0ubmV0VG90YWxcIiB0eXBlPVwibnVtYmVyXCIgc3RlcD1cImFueVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnbmV0VG90YWwnKSB9XCIgbmFtZT1cIm5ldFRvdGFsXCIgcmVhZG9ubHkgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJuZXRUb3RhbFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwb1JlZmVyZW5jZVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KCdjb21tb24ucG9fcmVmZXJlbmNlJylcbiAgICAgICAgICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInBvUmVmZXJlbmNlXCIgdi1tb2RlbD1cImZvcm0ucG9SZWZlcmVuY2VcIiB0eXBlPVwidGV4dFwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3BvUmVmZXJlbmNlJykgfVwiIG5hbWU9XCJwb1JlZmVyZW5jZVwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ucG9fcmVmZXJlbmNlX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInBvUmVmZXJlbmNlXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBheW1lbnRUZXJtc1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KCdjb21tb24ucGF5bWVudF90ZXJtcycpXG4gICAgICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwYXltZW50VGVybXNcIiB2LW1vZGVsPVwiZm9ybS5wYXltZW50VGVybXNcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygncGF5bWVudFRlcm1zJykgfVwiIG5hbWU9XCJwYXltZW50VGVybXNcIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnBheW1lbnRfdGVybXNfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwicGF5bWVudFRlcm1zXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImFkZFBheW1lbnRcIj57eyAkdCgnY29tbW9uLmFkZF9wYXltZW50JykgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHNlbGVjdCBpZD1cImFkZFBheW1lbnRcIiB2LW1vZGVsPVwiZm9ybS5hZGRQYXltZW50XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdhZGRQYXltZW50JykgfVwiIG5hbWU9XCJhZGRQYXltZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIiBzZWxlY3RlZCBkaXNhYmxlZD5cbiAgICAgICAgICAgICAgICAgICAgICB7eyAkdCgnY29tbW9uLmFkZF9wYXltZW50X3BsYWNlaG9sZGVyJykgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoJ2NvbW1vbi55ZXMnKSB9fTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiMFwiPnt7ICR0KCdjb21tb24ubm8nKSB9fTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiYWRkUGF5bWVudFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgdi1pZj1cImZvcm0uYWRkUGF5bWVudCA9PSAxICYmXG4gICAgICAgICAgICAgICAgYWNjb3VudHMgJiZcbiAgICAgICAgICAgICAgICBmb3JtLnNlbGVjdGVkUHJvZHVjdHMgJiZcbiAgICAgICAgICAgICAgICBmb3JtLnNlbGVjdGVkUHJvZHVjdHMubGVuZ3RoID4gMFxuICAgICAgICAgICAgICAgIFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiYWNjb3VudFwiPnt7ICR0KCdjb21tb24uYWNjb3VudCcpIH19XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8di1zZWxlY3Qgdi1tb2RlbD1cImZvcm0uYWNjb3VudFwiIDpvcHRpb25zPVwiYWNjb3VudHNcIiBsYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnYWNjb3VudCcpIH1cIiBuYW1lPVwiYWNjb3VudFwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uYWNjb3VudF9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJhY2NvdW50XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBhaWRBbW91bnRcIj57eyAkdCgnY29tbW9uLnBhaWRfYW1vdW50JylcbiAgICAgICAgICAgICAgICAgIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInBhaWRBbW91bnRcIiB2LW1vZGVsPVwiZm9ybS5wYWlkQW1vdW50XCIgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3BhaWRBbW91bnQnKSB9XCIgbmFtZT1cInBhaWRBbW91bnRcIiBtaW49XCIxXCJcbiAgICAgICAgICAgICAgICAgICAgOm1heD1cImZvcm0ubmV0VG90YWxcIiA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnBhaWRfYW1vdW50X3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInBhaWRBbW91bnRcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY2hlcXVlTm9cIj57eyAkdCgnY29tbW9uLmNoZXF1ZV9ubycpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cImNoZXF1ZU5vXCIgdi1tb2RlbD1cImZvcm0uY2hlcXVlTm9cIiB0eXBlPVwidGV4dFwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2NoZXF1ZU5vJykgfVwiIG5hbWU9XCJjaGVxdWVOb1wiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uY2hlcXVlX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImNoZXF1ZU5vXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInJlY2VpcHROb1wiPnt7ICR0KCdjb21tb24ucmVjZWlwdF9ubycpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInJlY2VpcHROb1wiIHYtbW9kZWw9XCJmb3JtLnJlY2VpcHROb1wiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdyZWNlaXB0Tm8nKSB9XCIgbmFtZT1cInJlY2VpcHROb1wiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ucmVjZWlwdF9ub19wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJyZWNlaXB0Tm9cIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGVsaXZlcnlQbGFjZVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KCdzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2UnKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZGVsaXZlcnlQbGFjZVwiIHYtbW9kZWw9XCJmb3JtLmRlbGl2ZXJ5UGxhY2VcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGVsaXZlcnlQbGFjZScpIH1cIiBuYW1lPVwiZGVsaXZlcnlQbGFjZVwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiZGVsaXZlcnlQbGFjZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkYXRlXCI+e3sgJHQoJ2NvbW1vbi5kYXRlJykgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZGF0ZVwiIHYtbW9kZWw9XCJmb3JtLmRhdGVcIiB0eXBlPVwiZGF0ZVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGF0ZScpIH1cIiBuYW1lPVwiZGF0ZVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiZGF0ZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJzdGF0dXNcIj57eyAkdCgnY29tbW9uLnN0YXR1cycpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgaWQ9XCJzdGF0dXNcIiB2LW1vZGVsPVwiZm9ybS5zdGF0dXNcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3N0YXR1cycpIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIjFcIj57eyAkdCgnY29tbW9uLmFjdGl2ZScpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIwXCI+e3sgJHQoJ2NvbW1vbi5pbl9hY3RpdmUnKSB9fTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwic3RhdHVzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cIm5vdGVcIj57eyAkdCgnY29tbW9uLm5vdGUnKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPHRleHRhcmVhIGlkPVwibm90ZVwiIHYtbW9kZWw9XCJmb3JtLm5vdGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdub3RlJykgfVwiIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ubm90ZV9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwibm90ZVwiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8IS0tIC8uY2FyZC1ib2R5IC0tPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyXCI+XG4gICAgICAgICAgICAgIDx2LWJ1dHRvbiA6bG9hZGluZz1cImZvcm0uYnVzeVwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc2F2ZVwiIC8+IHt7ICR0KCdjb21tb24uc2F2ZScpIH19XG4gICAgICAgICAgICAgIDwvdi1idXR0b24+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInJlc2V0XCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBmbG9hdC1yaWdodFwiIEBjbGljaz1cImZvcm0ucmVzZXQoKVwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBvd2VyLW9mZlwiIC8+IHt7ICR0KCdjb21tb24ucmVzZXQnKSB9fVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG5pbXBvcnQgRm9ybSBmcm9tICd2Zm9ybSdcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcydcblxuZXhwb3J0IGRlZmF1bHQge1xuICBtaWRkbGV3YXJlOiBbJ2F1dGgnLCAnY2hlY2stcGVybWlzc2lvbnMnXSxcbiAgbWV0YUluZm8oKSB7XG4gICAgcmV0dXJuIHsgdGl0bGU6IHRoaXMuJHQoJ3NhbGVzLnF1b3RhdGlvbnMuaW52b2ljZS5wYWdlX3RpdGxlJykgfVxuICB9LFxuICBkYXRhOiAoKSA9PiAoe1xuICAgIGJyZWFkY3J1bWJzQ3VycmVudDogJ3NhbGVzLnF1b3RhdGlvbnMuaW52b2ljZS5icmVhZGNydW1ic19jdXJyZW50JyxcbiAgICBicmVhZGNydW1iczogW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnc2FsZXMucXVvdGF0aW9ucy5pbnZvaWNlLmJyZWFkY3J1bWJzX2ZpcnN0JyxcbiAgICAgICAgdXJsOiAnaG9tZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnc2FsZXMucXVvdGF0aW9ucy5pbnZvaWNlLmJyZWFkY3J1bWJzX3NlY29uZCcsXG4gICAgICAgIHVybDogJ3F1b3RhdGlvbnMuaW5kZXgnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3NhbGVzLnF1b3RhdGlvbnMuaW52b2ljZS5icmVhZGNydW1ic19hY3RpdmUnLFxuICAgICAgICB1cmw6ICcnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIGZvcm06IG5ldyBGb3JtKHtcbiAgICAgIGNsaWVudDogJycsXG4gICAgICByZWZlcmVuY2U6ICcnLFxuICAgICAgc2VsZWN0ZWRQcm9kdWN0czogW10sXG4gICAgICBzdWJUb3RhbDogMCxcbiAgICAgIG5ldFRvdGFsOiAwLFxuICAgICAgZGlzY291bnRUeXBlOiAwLFxuICAgICAgZGlzY291bnQ6ICcnLFxuICAgICAgdG90YWxEaXNjb3VudDogJycsXG4gICAgICBvcmRlclRheDogJycsXG4gICAgICB0b3RhbFRheDogMCxcbiAgICAgIHByb2R1Y3RUb3RhbFRheDogMCxcbiAgICAgIHRyYW5zcG9ydENvc3Q6ICcnLFxuICAgICAgZGF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLnNsaWNlKDAsIDEwKSxcbiAgICAgIHBvUmVmZXJlbmNlOiAnJyxcbiAgICAgIHBheW1lbnRUZXJtczogJycsXG4gICAgICBkZWxpdmVyeVBsYWNlOiAnJyxcbiAgICAgIGFkZFBheW1lbnQ6IDAsXG4gICAgICBhY2NvdW50OiAnJyxcbiAgICAgIHBhaWRBbW91bnQ6ICcnLFxuICAgICAgcmVjZWlwdE5vOiAnJyxcbiAgICAgIHJlY2VpcHRObzogJycsXG4gICAgICBub3RlOiAnJyxcbiAgICAgIHN0YXR1czogMSxcbiAgICB9KSxcbiAgICBwcm9kdWN0czogJycsXG4gICAgYWNjb3VudHM6ICcnLFxuICAgIHRheGVzOiAnJyxcbiAgICBwcmVmaXg6ICcnLFxuICB9KSxcbiAgY29tcHV0ZWQ6IHtcbiAgICAuLi5tYXBHZXR0ZXJzKCdvcGVyYXRpb25zJywgWydpdGVtcycsICdhcHBJbmZvJ10pLFxuICB9LFxuICBjcmVhdGVkKCkge1xuICAgIHRoaXMuZ2V0Q2xpZW50cygpXG4gICAgdGhpcy5nZXRQcm9kdWN0cygpXG4gICAgdGhpcy5nZXRUYXhlcygpXG4gICAgdGhpcy5nZXRRdW90YXRpb24oKVxuICAgIHRoaXMuZ2V0QWNjb3VudHMoKVxuICAgIHRoaXMucHJlZml4ID0gdGhpcy5hcHBJbmZvLnByb2R1Y3RQcmVmaXhcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIC8vIGdldCB0aGUgcXVvdGF0aW9uXG4gICAgYXN5bmMgZ2V0UXVvdGF0aW9uKCkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBheGlvcy5nZXQoXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyAnL2FwaS9xdW90YXRpb25zLycgKyB0aGlzLiRyb3V0ZS5wYXJhbXMuc2x1Z1xuICAgICAgKVxuICAgICAgdGhpcy5mb3JtLmNsaWVudCA9IGRhdGEuZGF0YS5jbGllbnRcbiAgICAgIHRoaXMuZm9ybS5yZWZlcmVuY2UgPSBkYXRhLmRhdGEucmVmZXJlbmNlXG4gICAgICB0aGlzLmZvcm0udG90YWxUYXggPSBkYXRhLmRhdGEudG90YWxUYXhcbiAgICAgIHRoaXMuZm9ybS5vcmRlclRheCA9IGRhdGEuZGF0YS5xdW90YXRpb25UYXhcbiAgICAgIHRoaXMuZm9ybS5kaXNjb3VudCA9XG4gICAgICAgIGRhdGEuZGF0YS5kaXNjb3VudFR5cGUgPT0gMFxuICAgICAgICAgID8gZGF0YS5kYXRhLmRpc2NvdW50XG4gICAgICAgICAgOiBkYXRhLmRhdGEuZGlzY291bnRQZXJjZW50YWdlXG4gICAgICB0aGlzLmZvcm0uZGlzY291bnRQZXJjZW50YWdlID0gZGF0YS5kYXRhLmRpc2NvdW50UGVyY2VudGFnZVxuICAgICAgdGhpcy5mb3JtLnRvdGFsRGlzY291bnQgPSBkYXRhLmRhdGEuZGlzY291bnRcbiAgICAgIHRoaXMuZm9ybS50cmFuc3BvcnRDb3N0ID0gZGF0YS5kYXRhLnRyYW5zcG9ydFxuICAgICAgdGhpcy5mb3JtLnN1YlRvdGFsID0gZGF0YS5kYXRhLnN1YlRvdGFsXG4gICAgICB0aGlzLmZvcm0uZGVsaXZlcnlQbGFjZSA9IGRhdGEuZGF0YS5kZWxpdmVyeVBsYWNlXG4gICAgICB0aGlzLmZvcm0ubm90ZSA9IGRhdGEuZGF0YS5ub3RlXG4gICAgICB0aGlzLmZvcm0uc3RhdHVzID0gZGF0YS5kYXRhLnN0YXR1c1xuICAgICAgdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHMgPSB0aGlzLmFzc2lnblByb2R1Y3RzKGRhdGEuZGF0YS5wcm9kdWN0cylcbiAgICB9LFxuICAgIC8vIGdldCBhbGwgY2xpZW50c1xuICAgIGFzeW5jIGdldENsaWVudHMoKSB7XG4gICAgICBhd2FpdCB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnb3BlcmF0aW9ucy9hbGxEYXRhJywge1xuICAgICAgICBwYXRoOiAnL2FwaS9hbGwtY2xpZW50cycsXG4gICAgICB9KVxuICAgIH0sXG5cbiAgICAvLyBnZXQgcHJvZHVjdHNcbiAgICBhc3luYyBnZXRQcm9kdWN0cygpIHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy9hcGkvYWxsLXByb2R1Y3RzJ1xuICAgICAgKVxuICAgICAgdGhpcy5wcm9kdWN0cyA9IGRhdGEuZGF0YVxuICAgIH0sXG5cbiAgICAvLyBnZXQgdGF4ZXNcbiAgICBhc3luYyBnZXRUYXhlcygpIHtcbiAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy9hcGkvYWxsLXZhdC1yYXRlcydcbiAgICAgIClcbiAgICAgIHRoaXMudGF4ZXMgPSBkYXRhLmRhdGFcbiAgICB9LFxuXG4gICAgLy8gZ2V0IGFjY291bnRzXG4gICAgYXN5bmMgZ2V0QWNjb3VudHMoKSB7XG4gICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvYXBpL2FsbC1hY2NvdW50cydcbiAgICAgIClcbiAgICAgIHRoaXMuYWNjb3VudHMgPSBkYXRhLmRhdGFcbiAgICB9LFxuXG4gICAgLy8gc3RvcmUgaXRlbSBpbiBhcnJheVxuICAgIHN0b3JlUHJvZHVjdChwcm9kdWN0KSB7XG4gICAgICB2YXIgaW5kZXggPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5maW5kSW5kZXgoXG4gICAgICAgICh4KSA9PiB4LmlkID09IHByb2R1Y3QuaWRcbiAgICAgIClcbiAgICAgIGxldCBxdWFudGl0eSA9IDFcbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgbGV0IHByb2R1Y3RUYXggPVxuICAgICAgICAgIHByb2R1Y3QudGF4VHlwZSA9PSAnRXhjbHVzaXZlJ1xuICAgICAgICAgICAgPyBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50ICogKHByb2R1Y3QudGF4UmF0ZSAvIDEwMClcbiAgICAgICAgICAgIDogcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCAtXG4gICAgICAgICAgICBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50IC8gKDEgKyBwcm9kdWN0LnRheFJhdGUgLyAxMDApXG4gICAgICAgIGxldCB0b3RhbFRheCA9IHByb2R1Y3RUYXggKiBxdWFudGl0eVxuXG4gICAgICAgIHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnVuc2hpZnQoe1xuICAgICAgICAgIGlkOiBwcm9kdWN0LmlkLFxuICAgICAgICAgIHNsdWc6IHByb2R1Y3Quc2x1ZyxcbiAgICAgICAgICBuYW1lOiBwcm9kdWN0Lm5hbWUsXG4gICAgICAgICAgY29kZTogcHJvZHVjdC5jb2RlLFxuICAgICAgICAgIHRheFR5cGU6IHByb2R1Y3QudGF4VHlwZSxcbiAgICAgICAgICB0YXhSYXRlOiBwcm9kdWN0LnRheFJhdGUsXG4gICAgICAgICAgcXR5OiBxdWFudGl0eSxcbiAgICAgICAgICBpbnZlbnRvcnlDb3VudDogcHJvZHVjdC5pbnZlbnRvcnlDb3VudCxcbiAgICAgICAgICBhdmdQdXJjaGFzZVByaWNlOiBwcm9kdWN0LmF2Z1B1cmNoYXNlUHJpY2UsXG4gICAgICAgICAgdW5pdFByaWNlOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgIHVuaXRDb3N0OlxuICAgICAgICAgICAgcHJvZHVjdC50YXhUeXBlID09ICdFeGNsdXNpdmUnXG4gICAgICAgICAgICAgID8gcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCArIHByb2R1Y3RUYXhcbiAgICAgICAgICAgICAgOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgIHRvdGFsUHJpY2U6XG4gICAgICAgICAgICBwcm9kdWN0LnRheFR5cGUgPT0gJ0V4Y2x1c2l2ZSdcbiAgICAgICAgICAgICAgPyAxICogKHByb2R1Y3QucHJpY2VXaXRoRGlzY291bnQgKyB0b3RhbFRheClcbiAgICAgICAgICAgICAgOiAxICogcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCxcbiAgICAgICAgICBwcm9kdWN0VGF4OiBwcm9kdWN0LnByb2R1Y3RUYXgsXG4gICAgICAgICAgdG90YWxUYXg6IHRvdGFsVGF4LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhpcy5nZW5lcmF0ZUl0ZW1Ub3RhbChxdWFudGl0eSwgJ3F0eScsIGluZGV4LCAnJylcbiAgICAgIHJldHVyblxuICAgIH0sXG5cbiAgICAvLyB1cGRhdGUgYXJyYXlcbiAgICBnZW5lcmF0ZUl0ZW1Ub3RhbCh2YWx1ZSwgdHlwZSwgaW5kZXgsIGFjdGlvbikge1xuICAgICAgbGV0IGl0ZW0gPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0c1tpbmRleF1cbiAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgIGlmICh0eXBlID09ICdxdHknKSB7XG4gICAgICAgICAgaXRlbS5xdHkgPSB2YWx1ZVxuICAgICAgICAgIGlmIChhY3Rpb24gPT0gJ2luY3JlbWVudCcpIHtcbiAgICAgICAgICAgIGl0ZW0ucXR5ID0gTnVtYmVyKGl0ZW0ucXR5KSArIDFcbiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PSAnZGVjcmVtZW50Jykge1xuICAgICAgICAgICAgaWYgKGl0ZW0ucXR5ID4gMCkge1xuICAgICAgICAgICAgICBpdGVtLnF0eSA9IE51bWJlcihpdGVtLnF0eSkgLSAxXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW0udW5pdFByaWNlID0gdmFsdWVcbiAgICAgICAgICBpZiAoYWN0aW9uID09ICdpbmNyZW1lbnQnKSB7XG4gICAgICAgICAgICBpdGVtLnVuaXRQcmljZSA9IE51bWJlcihpdGVtLnVuaXRQcmljZSkgKyAxXG4gICAgICAgICAgfSBlbHNlIGlmIChhY3Rpb24gPT0gJ2RlY3JlbWVudCcpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLnVuaXRQcmljZSA+IDApIHtcbiAgICAgICAgICAgICAgaXRlbS51bml0UHJpY2UgPSBOdW1iZXIoaXRlbS51bml0UHJpY2UpIC0gMVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpdGVtLnByb2R1Y3RUYXggPVxuICAgICAgICAgIGl0ZW0udGF4VHlwZSA9PSAnRXhjbHVzaXZlJ1xuICAgICAgICAgICAgPyBpdGVtLnVuaXRQcmljZSAqIChpdGVtLnRheFJhdGUgLyAxMDApXG4gICAgICAgICAgICA6IGl0ZW0udW5pdFByaWNlIC0gaXRlbS51bml0UHJpY2UgLyAoMSArIGl0ZW0udGF4UmF0ZSAvIDEwMClcblxuICAgICAgICBpdGVtLnRvdGFsVGF4ID0gaXRlbS5wcm9kdWN0VGF4ICogaXRlbS5xdHlcblxuICAgICAgICBpdGVtLnRvdGFsUHJpY2UgPVxuICAgICAgICAgIGl0ZW0udGF4VHlwZSA9PSAnRXhjbHVzaXZlJ1xuICAgICAgICAgICAgPyBpdGVtLnF0eSAqIGl0ZW0udW5pdFByaWNlICsgaXRlbS50b3RhbFRheFxuICAgICAgICAgICAgOiBpdGVtLnF0eSAqIGl0ZW0udW5pdFByaWNlXG4gICAgICAgIGl0ZW0udW5pdENvc3QgPVxuICAgICAgICAgIGl0ZW0udGF4VHlwZSA9PSAnRXhjbHVzaXZlJ1xuICAgICAgICAgICAgPyBOdW1iZXIoaXRlbS51bml0UHJpY2UpICsgTnVtYmVyKGl0ZW0ucHJvZHVjdFRheClcbiAgICAgICAgICAgIDogaXRlbS51bml0UHJpY2VcbiAgICAgICAgdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHNbaW5kZXhdID0gaXRlbVxuICAgICAgfVxuICAgICAgdGhpcy5jYWxjdWxhdGVTdW0oKVxuICAgICAgcmV0dXJuXG4gICAgfSxcblxuICAgIC8vIHJlbW92ZSBpdGVtIGZyb20gYXJyYXlcbiAgICByZW1vdmVJdGVtKGl0ZW0pIHtcbiAgICAgIGxldCBpbmRleCA9IHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmluZGV4T2YoaXRlbSlcbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnNwbGljZShpbmRleCwgMSlcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FsY3VsYXRlU3VtKClcbiAgICAgIHJldHVyblxuICAgIH0sXG5cbiAgICAvLyBjYWxjdWxhdGUgc3VtXG4gICAgY2FsY3VsYXRlU3VtKCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHN1YnRvdGFsXG4gICAgICB0aGlzLmZvcm0uc3ViVG90YWwgPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5yZWR1Y2UoZnVuY3Rpb24gKFxuICAgICAgICBwcmV2LFxuICAgICAgICBjdXJcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gTnVtYmVyKChwcmV2ICsgY3VyLnRvdGFsUHJpY2UpLnRvRml4ZWQoMikpXG4gICAgICB9LFxuICAgICAgICAwKVxuXG4gICAgICAvLyBjYWxjdWxhdGUgcHJvZHVjdCB0YXhcbiAgICAgIHRoaXMuZm9ybS5wcm9kdWN0VG90YWxUYXggPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5yZWR1Y2UoZnVuY3Rpb24gKFxuICAgICAgICBwcmV2LFxuICAgICAgICBjdXJcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gTnVtYmVyKChwcmV2ICsgY3VyLnRvdGFsVGF4KS50b0ZpeGVkKDIpKVxuICAgICAgfSxcbiAgICAgICAgMClcblxuICAgICAgdGhpcy5mb3JtLm5ldFRvdGFsID0gdGhpcy5mb3JtLnN1YlRvdGFsXG5cbiAgICAgIC8vIGNhbGN1bGF0ZSBxdWF0YXRpb24gdGF4XG4gICAgICB0aGlzLmZvcm0udG90YWxUYXggPSAwXG4gICAgICBpZiAodGhpcy5mb3JtLm9yZGVyVGF4KSB7XG4gICAgICAgIHRoaXMuZm9ybS50b3RhbFRheCA9XG4gICAgICAgICAgKHRoaXMuZm9ybS5vcmRlclRheC5yYXRlIC8gMTAwKSAqIHRoaXMuZm9ybS5zdWJUb3RhbFxuICAgICAgfVxuXG4gICAgICAvLyBjYWxjdWxhdGUgZGlzY291bnQgYW5kIHRvdGFsXG4gICAgICBpZiAodGhpcy5mb3JtLnN1YlRvdGFsID4gMCkge1xuICAgICAgICBsZXQgZGlzY291bnQgPSBOdW1iZXIodGhpcy5mb3JtLmRpc2NvdW50KVxuICAgICAgICBpZiAodGhpcy5mb3JtLmRpc2NvdW50VHlwZSA9PSAxKSB7XG4gICAgICAgICAgZGlzY291bnQgPSAoZGlzY291bnQgLyAxMDApICogdGhpcy5mb3JtLnN1YlRvdGFsXG4gICAgICAgICAgdGhpcy5mb3JtLnRvdGFsRGlzY291bnQgPSBOdW1iZXIoZGlzY291bnQudG9GaXhlZCgyKSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBkaXNjb3VudCA9IE51bWJlcih0aGlzLmZvcm0uZGlzY291bnQpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb3JtLm5ldFRvdGFsID1cbiAgICAgICAgICB0aGlzLmZvcm0uc3ViVG90YWwgK1xuICAgICAgICAgIE51bWJlcih0aGlzLmZvcm0udHJhbnNwb3J0Q29zdCkgLVxuICAgICAgICAgIGRpc2NvdW50ICtcbiAgICAgICAgICB0aGlzLmZvcm0udG90YWxUYXhcbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH0sXG5cbiAgICAvLyBnZXQgcXVvdGF0aW9uIHByb2R1Y3RzXG4gICAgYXNzaWduUHJvZHVjdHMocXVvdGF0aW9uUHJvZHVjdHMpIHtcbiAgICAgIGZvciAodmFyIGtleSBpbiBxdW90YXRpb25Qcm9kdWN0cykge1xuICAgICAgICBsZXQgcXVvdGF0aW9uUHJvZHVjdCA9IHF1b3RhdGlvblByb2R1Y3RzW2tleV1cbiAgICAgICAgdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHMudW5zaGlmdCh7XG4gICAgICAgICAgaWQ6IHF1b3RhdGlvblByb2R1Y3QucHJvZHVjdElELFxuICAgICAgICAgIHNsdWc6IHF1b3RhdGlvblByb2R1Y3QucHJvZHVjdFNsdWcsXG4gICAgICAgICAgbmFtZTogcXVvdGF0aW9uUHJvZHVjdC5wcm9kdWN0TmFtZSxcbiAgICAgICAgICBjb2RlOiBxdW90YXRpb25Qcm9kdWN0LnByb2R1Y3RDb2RlLFxuICAgICAgICAgIHRheFR5cGU6IHF1b3RhdGlvblByb2R1Y3QudGF4VHlwZSxcbiAgICAgICAgICB0YXhSYXRlOiBxdW90YXRpb25Qcm9kdWN0LnRheFJhdGUsXG4gICAgICAgICAgcXR5OiBxdW90YXRpb25Qcm9kdWN0LnF1YW50aXR5LFxuICAgICAgICAgIGludmVudG9yeUNvdW50OiBxdW90YXRpb25Qcm9kdWN0LmludmVudG9yeUNvdW50LFxuICAgICAgICAgIGF2Z1B1cmNoYXNlUHJpY2U6IHF1b3RhdGlvblByb2R1Y3QuYXZnUHVyY2hhc2VQcmljZSxcbiAgICAgICAgICB1bml0UHJpY2U6IHF1b3RhdGlvblByb2R1Y3Quc2FsZVByaWNlLFxuICAgICAgICAgIHVuaXRDb3N0OiBxdW90YXRpb25Qcm9kdWN0LnVuaXRDb3N0LFxuICAgICAgICAgIHRvdGFsUHJpY2U6IHF1b3RhdGlvblByb2R1Y3QudW5pdENvc3RUb3RhbCxcbiAgICAgICAgICBwcm9kdWN0VGF4OiBxdW90YXRpb25Qcm9kdWN0LnRheEFtb3VudCxcbiAgICAgICAgICB0b3RhbFRheDogcXVvdGF0aW9uUHJvZHVjdC50YXhBbW91bnQgKiBxdW90YXRpb25Qcm9kdWN0LnF1YW50aXR5LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhpcy5jYWxjdWxhdGVTdW0oKVxuICAgICAgcmV0dXJuIHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzXG4gICAgfSxcblxuICAgIC8vIGNyZWF0ZSBpbnZvaWNlXG4gICAgYXN5bmMgY3JlYXRlSW52b2ljZSgpIHtcbiAgICAgIGF3YWl0IHRoaXMuZm9ybVxuICAgICAgICAucG9zdCh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy9hcGkvaW52b2ljZXMnKVxuICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0b2FzdC5maXJlKHtcbiAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLiR0KCdzYWxlcy5xdW90YXRpb25zLmludm9pY2Uuc3VjY2Vzc19tc2cnKSxcbiAgICAgICAgICB9KVxuICAgICAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsgbmFtZTogJ2ludm9pY2VzLmluZGV4JyB9KVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHRvYXN0LmZpcmUoe1xuICAgICAgICAgICAgdHlwZTogJ2Vycm9yJyxcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLiR0KCdjb21tb24uZXJyb3JfbXNnJyksXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICB9LFxuICB9LFxufVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD48L3N0eWxlPlxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/quotations/invoice.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/quotations/invoice.vue?vue&type=template&id=64b5485e&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/quotations/invoice.vue?vue&type=template&id=64b5485e&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\", [_c(\"breadcrumbs\", {\n attrs: {\n items: _vm.breadcrumbs,\n current: _vm.breadcrumbsCurrent\n }\n }), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"col-lg-12 col-xl-12\"\n }, [_c(\"div\", {\n staticClass: \"card\"\n }, [_c(\"div\", {\n staticClass: \"card-header\"\n }, [_c(\"h3\", {\n staticClass: \"card-title\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"sales.quotations.invoice.form_title\")) + \"\\n \")]), _vm._v(\" \"), _c(\"router-link\", {\n staticClass: \"btn btn-dark float-right\",\n attrs: {\n to: {\n name: \"quotations.index\"\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-long-arrow-alt-left\"\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"common.back\")) + \"\\n \")])], 1), _vm._v(\" \"), _c(\"form\", {\n attrs: {\n role: \"form\"\n },\n on: {\n submit: function submit($event) {\n $event.preventDefault();\n return _vm.createInvoice.apply(null, arguments);\n },\n keydown: function keydown($event) {\n return _vm.form.onKeydown($event);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"card-body\"\n }, [_vm.items ? _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"client\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.client\")) + \"\\n \"), _c(\"span\", {\n staticClass: \"required\"\n }, [_vm._v(\"*\")])]), _vm._v(\" \"), _c(\"v-select\", {\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"client\")\n },\n attrs: {\n options: _vm.items,\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(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"client\"\n }\n })], 1), _vm._v(\" \"), _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._e(), _vm._v(\" \"), _vm.products ? _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-12\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"product\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.select_products\")) + \"\\n \"), _c(\"span\", {\n staticClass: \"required\"\n }, [_vm._v(\"*\")])]), _vm._v(\" \"), _c(\"v-select\", {\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"selectedProducts\")\n },\n attrs: {\n options: _vm.products,\n label: \"label\",\n name: \"product\",\n placeholder: _vm.$t(\"common.select_products_placeholder\")\n },\n on: {\n input: function input($event) {\n return _vm.storeProduct(_vm.form.product);\n }\n },\n model: {\n value: _vm.form.product,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"product\", $$v);\n },\n expression: \"form.product\"\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"selectedProducts\"\n }\n })], 1)]) : _vm._e(), _vm._v(\" \"), _vm.form.selectedProducts && _vm.form.selectedProducts.length > 0 ? _c(\"div\", {\n staticClass: \"row mt-3 mb-4\"\n }, [_c(\"div\", {\n staticClass: \"table-responsive table-custom w-95 m-auto\"\n }, [_c(\"table\", {\n staticClass: \"table table-hover table-sm\"\n }, [_c(\"thead\", {\n staticClass: \"thead-light\"\n }, [_c(\"tr\", [_c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.s_no\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.code\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.product_name\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.quantity\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.price\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.unit_cost\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.tax\")))]), _vm._v(\" \"), _c(\"th\", [_vm._v(_vm._s(_vm.$t(\"common.subtotal\")))]), _vm._v(\" \"), _c(\"th\", {\n staticClass: \"text-right\"\n }, [_vm._v(_vm._s(_vm.$t(\"common.action\")))])])]), _vm._v(\" \"), _c(\"tbody\", [_vm._l(_vm.form.selectedProducts, function (item, i) {\n return _c(\"tr\", {\n key: i\n }, [_c(\"td\", [_vm._v(_vm._s(++i))]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withPrefix\")(item.code, _vm.prefix)))]), _vm._v(\" \"), _c(\"td\", [Number(item.inventoryCount) < Number(item.qty) ? _c(\"span\", {\n directives: [{\n name: \"tooltip\",\n rawName: \"v-tooltip\",\n value: \"Insufficient Stock\",\n expression: \"'Insufficient Stock'\"\n }],\n staticClass: \"badge badge-danger p-2\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-exclamation\"\n })]) : _vm._e(), _vm._v(\" \"), _c(\"router-link\", {\n attrs: {\n to: {\n name: \"products.show\",\n params: {\n slug: item.slug\n }\n }\n }\n }, [_vm._v(\"\\n \" + _vm._s(item.name) + \"\\n \")])], 1), _vm._v(\" \"), _c(\"td\", [_c(\"div\", {\n staticClass: \"input-group 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(item.qty, \"qty\", i - 1, \"decrement\");\n }\n }\n }), _vm._v(\" \"), _c(\"input\", {\n staticClass: \"quantity-field border-0 incrementor\",\n attrs: {\n type: \"number\",\n step: \"1\",\n id: \"Qty-\".concat(i),\n name: \"quantity\",\n required: \"\",\n min: \"1\",\n max: item.inventoryCount,\n placeholder: _vm.$t(\"common.quantity\")\n },\n domProps: {\n value: item.qty\n },\n on: {\n change: function change($event) {\n return _vm.generateItemTotal($event.target.value, \"qty\", i - 1, \"\");\n },\n keyup: function keyup($event) {\n return _vm.generateItemTotal($event.target.value, \"qty\", i - 1, \"\");\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(item.qty, \"qty\", i - 1, \"increment\");\n }\n }\n })])]), _vm._v(\" \"), _c(\"td\", [_c(\"div\", {\n staticClass: \"input-group 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(item.unitPrice, \"price\", i - 1, \"decrement\");\n }\n }\n }), _vm._v(\" \"), _c(\"input\", {\n staticClass: \"quantity-field border-0 incrementor\",\n attrs: {\n type: \"number\",\n step: \"1\",\n id: \"unitPrice-\".concat(i),\n name: \"unitPrice\",\n required: \"\",\n min: \"1\"\n },\n domProps: {\n value: item.unitPrice\n },\n on: {\n change: function change($event) {\n return _vm.generateItemTotal($event.target.value, \"price\", i - 1, \"\");\n },\n keyup: function keyup($event) {\n return _vm.generateItemTotal($event.target.value, \"price\", i - 1, \"\");\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(item.unitPrice, \"price\", i - 1, \"increment\");\n }\n }\n })])]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(item.unitCost)))]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(item.totalTax)))]), _vm._v(\" \"), _c(\"td\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(item.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(item);\n }\n }\n }, [_c(\"i\", {\n staticClass: \"fas fa-times\"\n })])])]);\n }), _vm._v(\" \"), _c(\"tr\", [_c(\"td\", {\n staticClass: \"text-right\",\n attrs: {\n colspan: \"6\"\n }\n }, [_c(\"strong\", [_vm._v(\" \" + _vm._s(_vm.$t(\"common.total\")) + \": \")])]), _vm._v(\" \"), _c(\"td\", [_c(\"strong\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(_vm.form.productTotalTax)))])]), _vm._v(\" \"), _c(\"td\", {\n attrs: {\n colspan: \"2\"\n }\n }, [_c(\"strong\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(_vm.form.subTotal)))])])])], 2)])])]) : _vm._e(), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-4\"\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\",\n \"class\": _vm.form.discountType == 1 ? \"col-md-2\" : \"col-md-4\"\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(\"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.netTotal,\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(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"discount\"\n }\n })], 1), _vm._v(\" \"), _vm.form.discountType == 1 ? _c(\"div\", {\n staticClass: \"form-group col-md-2\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"totalDiscount\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.total_discount\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.totalDiscount,\n expression: \"form.totalDiscount\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"totalDiscount\")\n },\n attrs: {\n id: \"totalDiscount\",\n type: \"number\",\n step: \"any\",\n name: \"totalDiscount\",\n readonly: \"\"\n },\n domProps: {\n value: _vm.form.totalDiscount\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"totalDiscount\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"totalDiscount\"\n }\n })], 1) : _vm._e(), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-4\"\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(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_vm.taxes ? _c(\"div\", {\n staticClass: \"form-group col-md-4\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"orderTax\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.invoice_tax\")) + \"\\n \"), _c(\"span\", {\n staticClass: \"required\"\n }, [_vm._v(\"*\")])]), _vm._v(\" \"), _c(\"v-select\", {\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.quotation_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(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"orderTax\"\n }\n })], 1) : _vm._e(), _vm._v(\" \"), _vm.taxes ? _c(\"div\", {\n staticClass: \"form-group col-md-4\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"totalTax\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.total_tax\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.totalTax,\n expression: \"form.totalTax\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"totalTax\")\n },\n attrs: {\n id: \"totalTax\",\n type: \"text\",\n name: \"totalTax\",\n readonly: \"\"\n },\n domProps: {\n value: _vm.form.totalTax\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"totalTax\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"totalTax\"\n }\n })], 1) : _vm._e(), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-4\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"netTotal\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.net_total\")))]), _vm._v(\" \"), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.netTotal,\n expression: \"form.netTotal\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"netTotal\")\n },\n attrs: {\n id: \"netTotal\",\n type: \"number\",\n step: \"any\",\n name: \"netTotal\",\n readonly: \"\"\n },\n domProps: {\n value: _vm.form.netTotal\n },\n on: {\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"netTotal\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"netTotal\"\n }\n })], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-4\"\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-4\"\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: \"form-group col-md-4\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"addPayment\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.add_payment\")))]), _vm._v(\" \"), _c(\"select\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.form.addPayment,\n expression: \"form.addPayment\"\n }],\n staticClass: \"form-control\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"addPayment\")\n },\n attrs: {\n id: \"addPayment\",\n name: \"addPayment\"\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, \"addPayment\", $event.target.multiple ? $$selectedVal : $$selectedVal[0]);\n }\n }\n }, [_c(\"option\", {\n attrs: {\n value: \"\",\n selected: \"\",\n disabled: \"\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.add_payment_placeholder\")) + \"\\n \")]), _vm._v(\" \"), _c(\"option\", {\n attrs: {\n value: \"1\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.yes\")))]), _vm._v(\" \"), _c(\"option\", {\n attrs: {\n value: \"0\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.no\")))])]), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"addPayment\"\n }\n })], 1)]), _vm._v(\" \"), _vm.form.addPayment == 1 && _vm.accounts && _vm.form.selectedProducts && _vm.form.selectedProducts.length > 0 ? _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-6\"\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-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"paidAmount\"\n }\n }, [_vm._v(_vm._s(_vm.$t(\"common.paid_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 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._v(\" \"), _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._e(), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"form-group col-md-4\"\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: \"form-group col-md-4\"\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-4\"\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: \"card-footer\"\n }, [_c(\"v-button\", {\n staticClass: \"btn btn-primary\",\n attrs: {\n loading: _vm.form.busy\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: \"btn btn-secondary float-right\",\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 \")])], 1)])])])])], 1);\n};\nvar staticRenderFns = [];\nrender._withStripped = true;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcXVvdGF0aW9ucy9pbnZvaWNlLnZ1ZT84ZmRkIl0sIm5hbWVzIjpbInJlbmRlciIsIl92bSIsIl9jIiwiX3NlbGYiLCJhdHRycyIsIml0ZW1zIiwiYnJlYWRjcnVtYnMiLCJjdXJyZW50IiwiYnJlYWRjcnVtYnNDdXJyZW50IiwiX3YiLCJzdGF0aWNDbGFzcyIsIl9zIiwiJHQiLCJ0byIsIm5hbWUiLCJyb2xlIiwib24iLCJzdWJtaXQiLCIkZXZlbnQiLCJwcmV2ZW50RGVmYXVsdCIsImNyZWF0ZUludm9pY2UiLCJhcHBseSIsImFyZ3VtZW50cyIsImtleWRvd24iLCJmb3JtIiwib25LZXlkb3duIiwiZXJyb3JzIiwiaGFzIiwib3B0aW9ucyIsImxhYmVsIiwicGxhY2Vob2xkZXIiLCJtb2RlbCIsInZhbHVlIiwiY2xpZW50IiwiY2FsbGJhY2siLCIkJHYiLCIkc2V0IiwiZXhwcmVzc2lvbiIsImZpZWxkIiwiZGlyZWN0aXZlcyIsInJhd05hbWUiLCJyZWZlcmVuY2UiLCJpZCIsInR5cGUiLCJkb21Qcm9wcyIsImlucHV0IiwidGFyZ2V0IiwiY29tcG9zaW5nIiwiX2UiLCJwcm9kdWN0cyIsInN0b3JlUHJvZHVjdCIsInByb2R1Y3QiLCJzZWxlY3RlZFByb2R1Y3RzIiwibGVuZ3RoIiwiX2wiLCJpdGVtIiwiaSIsImtleSIsIl9mIiwiY29kZSIsInByZWZpeCIsIk51bWJlciIsImludmVudG9yeUNvdW50IiwicXR5IiwicGFyYW1zIiwic2x1ZyIsImNsaWNrIiwiZ2VuZXJhdGVJdGVtVG90YWwiLCJzdGVwIiwiY29uY2F0IiwicmVxdWlyZWQiLCJtaW4iLCJtYXgiLCJjaGFuZ2UiLCJrZXl1cCIsInVuaXRQcmljZSIsInVuaXRDb3N0IiwidG90YWxUYXgiLCJ0b3RhbFByaWNlIiwicmVtb3ZlSXRlbSIsImNvbHNwYW4iLCJwcm9kdWN0VG90YWxUYXgiLCJzdWJUb3RhbCIsImRpc2NvdW50VHlwZSIsIiQkc2VsZWN0ZWRWYWwiLCJBcnJheSIsInByb3RvdHlwZSIsImZpbHRlciIsImNhbGwiLCJvIiwic2VsZWN0ZWQiLCJtYXAiLCJ2YWwiLCJfdmFsdWUiLCJtdWx0aXBsZSIsImNhbGN1bGF0ZVN1bSIsImRpc2NvdW50IiwibmV0VG90YWwiLCJ0b3RhbERpc2NvdW50IiwicmVhZG9ubHkiLCJ0cmFuc3BvcnRDb3N0IiwidGF4ZXMiLCJvcmRlclRheCIsInBvUmVmZXJlbmNlIiwicGF5bWVudFRlcm1zIiwiYWRkUGF5bWVudCIsImRpc2FibGVkIiwiYWNjb3VudHMiLCJhY2NvdW50IiwicGFpZEFtb3VudCIsImNoZXF1ZU5vIiwicmVjZWlwdE5vIiwiZGVsaXZlcnlQbGFjZSIsImRhdGUiLCJzdGF0dXMiLCJub3RlIiwibG9hZGluZyIsImJ1c3kiLCJyZXNldCIsInN0YXRpY1JlbmRlckZucyIsIl93aXRoU3RyaXBwZWQiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBLElBQUlBLE1BQU0sR0FBRyxTQUFTQSxNQUFNQSxDQUFBLEVBQUc7RUFDN0IsSUFBSUMsR0FBRyxHQUFHLElBQUk7SUFDWkMsRUFBRSxHQUFHRCxHQUFHLENBQUNFLEtBQUssQ0FBQ0QsRUFBRTtFQUNuQixPQUFPQSxFQUFFLENBQ1AsS0FBSyxFQUNMLENBQ0VBLEVBQUUsQ0FBQyxhQUFhLEVBQUU7SUFDaEJFLEtBQUssRUFBRTtNQUFFQyxLQUFLLEVBQUVKLEdBQUcsQ0FBQ0ssV0FBVztNQUFFQyxPQUFPLEVBQUVOLEdBQUcsQ0FBQ087SUFBbUI7RUFDbkUsQ0FBQyxDQUFDLEVBQ0ZQLEdBQUcsQ0FBQ1EsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUNYUCxFQUFFLENBQUMsS0FBSyxFQUFFO0lBQUVRLFdBQVcsRUFBRTtFQUFNLENBQUMsRUFBRSxDQUNoQ1IsRUFBRSxDQUFDLEtBQUssRUFBRTtJQUFFUSxXQUFXLEVBQUU7RUFBc0IsQ0FBQyxFQUFFLENBQ2hEUixFQUFFLENBQUMsS0FBSyxFQUFFO0lBQUVRLFdB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QUM4RixLQUFLLENBQUMsQ0FBQztNQUN6QjtJQUNGO0VBQ0YsQ0FBQyxFQUNELENBQ0VwSCxFQUFFLENBQUMsR0FBRyxFQUFFO0lBQUVRLFdBQVcsRUFBRTtFQUFtQixDQUFDLENBQUMsRUFDNUNULEdBQUcsQ0FBQ1EsRUFBRSxDQUNKLEdBQUcsR0FDRFIsR0FBRyxDQUFDVSxFQUFFLENBQUNWLEdBQUcsQ0FBQ1csRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQzlCLGdCQUNKLENBQUMsQ0FFTCxDQUFDLENBQ0YsRUFDRCxDQUNGLENBQUMsQ0FFTCxDQUFDLENBQ0YsQ0FBQyxDQUNILENBQUMsQ0FDSCxDQUFDLENBQ0gsRUFDRCxDQUNGLENBQUM7QUFDSCxDQUFDO0FBQ0QsSUFBSTJHLGVBQWUsR0FBRyxFQUFFO0FBQ3hCdkgsTUFBTSxDQUFDd0gsYUFBYSxHQUFHLElBQUkiLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy90ZW1wbGF0ZUxvYWRlci5qcz8hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/IS4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL3F1b3RhdGlvbnMvaW52b2ljZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NjRiNTQ4NWUmc2NvcGVkPXRydWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyKCkge1xuICB2YXIgX3ZtID0gdGhpcyxcbiAgICBfYyA9IF92bS5fc2VsZi5fY1xuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICBbXG4gICAgICBfYyhcImJyZWFkY3J1bWJzXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgaXRlbXM6IF92bS5icmVhZGNydW1icywgY3VycmVudDogX3ZtLmJyZWFkY3J1bWJzQ3VycmVudCB9LFxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY29sLWxnLTEyIGNvbC14bC0xMlwiIH0sIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImNhcmRcIiB9LCBbXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJjYXJkLWhlYWRlclwiIH0sXG4gICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICBfYyhcImgzXCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZC10aXRsZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcInNhbGVzLnF1b3RhdGlvbnMuaW52b2ljZS5mb3JtX3RpdGxlXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwicm91dGVyLWxpbmtcIixcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnRuIGJ0bi1kYXJrIGZsb2F0LXJpZ2h0XCIsXG4gICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IHRvOiB7IG5hbWU6IFwicXVvdGF0aW9ucy5pbmRleFwiIH0gfSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1sb25nLWFycm93LWFsdC1sZWZ0XCIgfSksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICBcIiBcIiArIF92bS5fcyhfdm0uJHQoXCJjb21tb24uYmFja1wiKSkgKyBcIlxcbiAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgIFwiZm9ybVwiLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYXR0cnM6IHsgcm9sZTogXCJmb3JtXCIgfSxcbiAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgc3VibWl0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uY3JlYXRlSW52b2ljZS5hcHBseShudWxsLCBhcmd1bWVudHMpXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAga2V5ZG93bjogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmZvcm0ub25LZXlkb3duKCRldmVudClcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZC1ib2R5XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgX3ZtLml0ZW1zXG4gICAgICAgICAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiY2xpZW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uY2xpZW50XCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCB7IHN0YXRpY0NsYXNzOiBcInJlcXVpcmVkXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIqXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInYtc2VsZWN0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiY2xpZW50XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IF92bS5pdGVtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibmFtZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNsaWVudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLmNsaWVudF9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmNsaWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0uZm9ybSwgXCJjbGllbnRcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uY2xpZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImNsaWVudFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInJlZmVyZW5jZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucmVmZXJlbmNlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ucmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5yZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicmVmZXJlbmNlXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInJlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJyZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWZlcmVuY2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInJlZmVyZW5jZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfdm0ucHJvZHVjdHNcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTEyXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicHJvZHVjdFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnNlbGVjdF9wcm9kdWN0c1wiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ2LXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5lcnJvcnMuaGFzKFwic2VsZWN0ZWRQcm9kdWN0c1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0ucHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcImxhYmVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicHJvZHVjdFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnNlbGVjdF9wcm9kdWN0c19wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLnN0b3JlUHJvZHVjdChfdm0uZm9ybS5wcm9kdWN0KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5wcm9kdWN0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcInByb2R1Y3RcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ucHJvZHVjdFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm06IF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZDogXCJzZWxlY3RlZFByb2R1Y3RzXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cyAmJlxuICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgICAgID8gX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3cgbXQtMyBtYi00XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGFibGUtcmVzcG9uc2l2ZSB0YWJsZS1jdXN0b20gdy05NSBtLWF1dG9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0YWJsZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJ0YWJsZSB0YWJsZS1ob3ZlciB0YWJsZS1zbVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhlYWRcIiwgeyBzdGF0aWNDbGFzczogXCJ0aGVhZC1saWdodFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRyXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5zX25vXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uY29kZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnByb2R1Y3RfbmFtZVwiKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5xdWFudGl0eVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnByaWNlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24udW5pdF9jb3N0XCIpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRheFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnN1YnRvdGFsXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1yaWdodFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWN0aW9uXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGJvZHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2woXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLnNlbGVjdGVkUHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChpdGVtLCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jKFwidHJcIiwgeyBrZXk6IGkgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbX3ZtLl92KF92bS5fcygrK2kpKV0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aFByZWZpeFwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5jb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0ucHJlZml4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE51bWJlcihpdGVtLmludmVudG9yeUNvdW50KSA8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTnVtYmVyKGl0ZW0ucXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRvb2x0aXBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtdG9vbHRpcFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJJbnN1ZmZpY2llbnQgU3RvY2tcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCInSW5zdWZmaWNpZW50IFN0b2NrJ1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJhZGdlIGJhZGdlLWRhbmdlciBwLTJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZmFzIGZhLWV4Y2xhbWF0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicm91dGVyLWxpbmtcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bzoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJwcm9kdWN0cy5zaG93XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2x1ZzogaXRlbS5zbHVnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoaXRlbS5uYW1lKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpbnB1dC1ncm91cCBjdXN0b20tcXR5LWlucHV0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b24tbWludXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1kYW5nZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIi1cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGEtZmllbGRcIjogXCJxdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJxdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVjcmVtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicXVhbnRpdHktZmllbGQgYm9yZGVyLTAgaW5jcmVtZW50b3JcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgUXR5LSR7aX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicXVhbnRpdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heDogaXRlbS5pbnZlbnRvcnlDb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kdChcImNvbW1vbi5xdWFudGl0eVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IGl0ZW0ucXR5IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvbi1wbHVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tcHJpbWFyeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiK1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGF0YS1maWVsZFwiOiBcInF1YW50aXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ucXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpbmNyZW1lbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpbnB1dC1ncm91cCBjdXN0b20tcXR5LWlucHV0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b24tbWludXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1kYW5nZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIi1cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGEtZmllbGRcIjogXCJxdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnVuaXRQcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJwcmljZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZWNyZW1lbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJxdWFudGl0eS1maWVsZCBib3JkZXItMCBpbmNyZW1lbnRvclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCIxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGB1bml0UHJpY2UtJHtpfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJ1bml0UHJpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpdGVtLnVuaXRQcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicHJpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvbi1wbHVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tcHJpbWFyeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiK1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGF0YS1maWVsZFwiOiBcInF1YW50aXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udW5pdFByaWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImluY3JlbWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnVuaXRDb3N0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2YoXCJ3aXRoQ3VycmVuY3lcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udG90YWxUYXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS50b3RhbFByaWNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJ0ZXh0LXJpZ2h0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnRuIGJ0bi1kYW5nZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgdHlwZTogXCJidXR0b25cIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLnJlbW92ZUl0ZW0oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmYXMgZmEtdGltZXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidHJcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwidGV4dC1yaWdodFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgY29sc3BhbjogXCI2XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwic3Ryb25nXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24udG90YWxcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiOiBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInN0cm9uZ1wiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2YoXCJ3aXRoQ3VycmVuY3lcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5wcm9kdWN0VG90YWxUYXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIHsgYXR0cnM6IHsgY29sc3BhbjogXCIyXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzdHJvbmdcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc3ViVG90YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJkaXNjb3VudFR5cGVcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZGlzY291bnRfdHlwZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwic2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudFR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5kaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJkaXNjb3VudFR5cGVcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiZGlzY291bnRUeXBlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHNlbGVjdGVkVmFsID0gQXJyYXkucHJvdG90eXBlLmZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gby5zZWxlY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZhbCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJfdmFsdWVcIiBpbiBvID8gby5fdmFsdWUgOiBvLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGlzY291bnRUeXBlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0Lm11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJCRzZWxlY3RlZFZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICQkc2VsZWN0ZWRWYWxbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5jYWxjdWxhdGVTdW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IF92bS5jYWxjdWxhdGVTdW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZml4ZWRcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnBlcmNlbnRhZ2VcIikpICsgXCIoJSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJkaXNjb3VudFR5cGVcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxID8gXCJjb2wtbWQtMlwiIDogXCJjb2wtbWQtNFwiLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJkaXNjb3VudFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kaXNjb3VudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5kaXNjb3VudFR5cGUgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCIoJSlcIildKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmRpc2NvdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJkaXNjb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gMTAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLmZvcm0ubmV0VG90YWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXCJjb21tb24uZGlzY291bnRfcGxhY2Vob2xkZXJcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZTogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImRpc2NvdW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5kaXNjb3VudFR5cGUgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtMlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInRvdGFsRGlzY291bnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRvdGFsX2Rpc2NvdW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0udG90YWxEaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0udG90YWxEaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInRvdGFsRGlzY291bnRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwidG90YWxEaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRvdGFsRGlzY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZG9ubHk6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLnRvdGFsRGlzY291bnQgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b3RhbERpc2NvdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJ0b3RhbERpc2NvdW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInRyYW5zcG9ydENvc3RcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24udHJhbnNwb3J0X2Nvc3RcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0udHJhbnNwb3J0Q29zdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS50cmFuc3BvcnRDb3N0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJ0cmFuc3BvcnRDb3N0XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiBcIjFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjb21tb24udHJhbnNwb3J0X2Nvc3RfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS50cmFuc3BvcnRDb3N0IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJ0cmFuc3BvcnRDb3N0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgIF92bS50YXhlc1xuICAgICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcIm9yZGVyVGF4XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uaW52b2ljZV90YXhcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwicmVxdWlyZWRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIipcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidi1zZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJvcmRlclRheFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0udGF4ZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcImNvZGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJvcmRlclRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwic2FsZXMuY29tbW9uLnF1b3RhdGlvbl90YXhfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7IGlucHV0OiBfdm0uY2FsY3VsYXRlU3VtIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ub3JkZXJUYXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLmZvcm0sIFwib3JkZXJUYXhcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ub3JkZXJUYXhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwib3JkZXJUYXhcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLnRheGVzXG4gICAgICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwidG90YWxUYXhcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRvdGFsX3RheFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnRvdGFsVGF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS50b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJ0b3RhbFRheFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seTogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0udG90YWxUYXggfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwidG90YWxUYXhcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwibmV0VG90YWxcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ubmV0X3RvdGFsXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLm5ldFRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJuZXRUb3RhbFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJuZXRUb3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZG9ubHk6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5uZXRUb3RhbCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwibmV0VG90YWxcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicG9SZWZlcmVuY2VcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucG9fcmVmZXJlbmNlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBvUmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJwb1JlZmVyZW5jZVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wb19yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5wb1JlZmVyZW5jZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicG9SZWZlcmVuY2VcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInBheW1lbnRUZXJtc1wiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wYXltZW50X3Rlcm1zXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBheW1lbnRUZXJtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5wYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInBheW1lbnRUZXJtc1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInBheW1lbnRUZXJtc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wYXltZW50X3Rlcm1zX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGF5bWVudFRlcm1zIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicGF5bWVudFRlcm1zXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicGF5bWVudFRlcm1zXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJhZGRQYXltZW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmFkZF9wYXltZW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzZWxlY3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmFkZFBheW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5hZGRQYXltZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiYWRkUGF5bWVudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGlkOiBcImFkZFBheW1lbnRcIiwgbmFtZTogXCJhZGRQYXltZW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHNlbGVjdGVkVmFsID0gQXJyYXkucHJvdG90eXBlLmZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCRldmVudC50YXJnZXQub3B0aW9ucywgZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvLnNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdmFsID0gXCJfdmFsdWVcIiBpbiBvID8gby5fdmFsdWUgOiBvLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhZGRQYXltZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC5tdWx0aXBsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAkJHNlbGVjdGVkVmFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICQkc2VsZWN0ZWRWYWxbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIm9wdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kdChcImNvbW1vbi5hZGRfcGF5bWVudF9wbGFjZWhvbGRlclwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ueWVzXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLm5vXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiYWRkUGF5bWVudFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmFkZFBheW1lbnQgPT0gMSAmJlxuICAgICAgICAgICAgICAgICAgX3ZtLmFjY291bnRzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJhY2NvdW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWNjb3VudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ2LXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImFjY291bnRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLmFjY291bnRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJsYWJlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImFjY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5hY2NvdW50X3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uYWNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0uZm9ybSwgXCJhY2NvdW50XCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmFjY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiYWNjb3VudFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInBhaWRBbW91bnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnBhaWRfYW1vdW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBhaWRBbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicGFpZEFtb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYWlkQW1vdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicGFpZEFtb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IF92bS5mb3JtLm5ldFRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnBhaWRfYW1vdW50X3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGFpZEFtb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInBhaWRBbW91bnRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJjaGVxdWVOb1wiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uY2hlcXVlX25vXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uY2hlcXVlTm8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImNoZXF1ZU5vXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjb21tb24uY2hlcXVlX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0uY2hlcXVlTm8gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjaGVxdWVOb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiY2hlcXVlTm9cIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJyZWNlaXB0Tm9cIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnJlY2VpcHRfbm9cIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5yZWNlaXB0Tm8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJyZWNlaXB0Tm9cIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwicmVjZWlwdE5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnJlY2VpcHRfbm9fcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWNlaXB0Tm8gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWNlaXB0Tm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInJlY2VpcHROb1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGVsaXZlcnlQbGFjZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcInNhbGVzLmNvbW1vbi5kZWxpdmVyeV9wbGFjZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5kZWxpdmVyeVBsYWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmRlbGl2ZXJ5UGxhY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRlbGl2ZXJ5UGxhY2VcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiZGVsaXZlcnlQbGFjZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiZGVsaXZlcnlQbGFjZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNhbGVzLmNvbW1vbi5kZWxpdmVyeV9wbGFjZV9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmRlbGl2ZXJ5UGxhY2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZWxpdmVyeVBsYWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGVsaXZlcnlQbGFjZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGF0ZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kYXRlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uZGF0ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogeyBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRhdGVcIikgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgaWQ6IFwiZGF0ZVwiLCB0eXBlOiBcImRhdGVcIiwgbmFtZTogXCJkYXRlXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmRhdGUgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImRhdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwic3RhdHVzXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnN0YXR1c1wiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwic2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5zdGF0dXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5zdGF0dXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJzdGF0dXNcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBpZDogXCJzdGF0dXNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyICQkc2VsZWN0ZWRWYWwgPSBBcnJheS5wcm90b3R5cGUuZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8uc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2YWwgPSBcIl92YWx1ZVwiIGluIG8gPyBvLl92YWx1ZSA6IG8udmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInN0YXR1c1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQubXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJCRzZWxlY3RlZFZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkJHNlbGVjdGVkVmFsWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWN0aXZlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmluX2FjdGl2ZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInN0YXR1c1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXBcIiB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJub3RlXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5ub3RlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcInRleHRhcmVhXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ubm90ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ubm90ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHsgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJub3RlXCIpIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJub3RlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXCJjb21tb24ubm90ZV9wbGFjZWhvbGRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ubm90ZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcIm5vdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwibm90ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImNhcmQtZm9vdGVyXCIgfSxcbiAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJ2LWJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImJ0biBidG4tcHJpbWFyeVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgbG9hZGluZzogX3ZtLmZvcm0uYnVzeSB9LFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpXCIsIHsgc3RhdGljQ2xhc3M6IFwiZmFzIGZhLXNhdmVcIiB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCIgKyBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnNhdmVcIikpICsgXCJcXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiYnV0dG9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnRuIGJ0bi1zZWNvbmRhcnkgZmxvYXQtcmlnaHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IHR5cGU6IFwicmVzZXRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmZvcm0ucmVzZXQoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1wb3dlci1vZmZcIiB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24ucmVzZXRcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICBdKSxcbiAgICAgICAgXSksXG4gICAgICBdKSxcbiAgICBdLFxuICAgIDFcbiAgKVxufVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5yZW5kZXIuX3dpdGhTdHJpcHBlZCA9IHRydWVcblxuZXhwb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSJdLCJzb3VyY2VSb290IjoiIn0=\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/quotations/invoice.vue?vue&type=template&id=64b5485e&scoped=true\n"); /***/ }), /***/ "./resources/js/pages/sales/quotations/invoice.vue": /*!*********************************************************!*\ !*** ./resources/js/pages/sales/quotations/invoice.vue ***! \*********************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _invoice_vue_vue_type_template_id_64b5485e_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./invoice.vue?vue&type=template&id=64b5485e&scoped=true */ \"./resources/js/pages/sales/quotations/invoice.vue?vue&type=template&id=64b5485e&scoped=true\");\n/* harmony import */ var _invoice_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./invoice.vue?vue&type=script&lang=js */ \"./resources/js/pages/sales/quotations/invoice.vue?vue&type=script&lang=js\");\n/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _invoice_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _invoice_vue_vue_type_template_id_64b5485e_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _invoice_vue_vue_type_template_id_64b5485e_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"64b5485e\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"resources/js/pages/sales/quotations/invoice.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcXVvdGF0aW9ucy9pbnZvaWNlLnZ1ZT9iYzU5Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQWlHO0FBQ3ZDO0FBQ0w7OztBQUdyRDtBQUNtRztBQUNuRyxnQkFBZ0IsMkdBQVU7QUFDMUIsRUFBRSw0RUFBTTtBQUNSLEVBQUUsNkZBQU07QUFDUixFQUFFLHNHQUFlO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0EsSUFBSSxLQUFVLEVBQUUsWUFpQmY7QUFDRDtBQUNlLGdGIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL3F1b3RhdGlvbnMvaW52b2ljZS52dWUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL2ludm9pY2UudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTY0YjU0ODVlJnNjb3BlZD10cnVlXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vaW52b2ljZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anNcIlxuZXhwb3J0ICogZnJvbSBcIi4vaW52b2ljZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anNcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIFwiNjRiNTQ4NWVcIixcbiAgbnVsbFxuICBcbilcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgdmFyIGFwaSA9IHJlcXVpcmUoXCJDOlxcXFxhY2N1bGFuY2UtdjQuMC4yXFxcXG5vZGVfbW9kdWxlc1xcXFx2dWUtaG90LXJlbG9hZC1hcGlcXFxcZGlzdFxcXFxpbmRleC5qc1wiKVxuICBhcGkuaW5zdGFsbChyZXF1aXJlKCd2dWUnKSlcbiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7XG4gICAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICAgIGlmICghYXBpLmlzUmVjb3JkZWQoJzY0YjU0ODVlJykpIHtcbiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzY0YjU0ODVlJywgY29tcG9uZW50Lm9wdGlvbnMpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFwaS5yZWxvYWQoJzY0YjU0ODVlJywgY29tcG9uZW50Lm9wdGlvbnMpXG4gICAgfVxuICAgIG1vZHVsZS5ob3QuYWNjZXB0KFwiLi9pbnZvaWNlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD02NGI1NDg1ZSZzY29wZWQ9dHJ1ZVwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICBhcGkucmVyZW5kZXIoJzY0YjU0ODVlJywge1xuICAgICAgICByZW5kZXI6IHJlbmRlcixcbiAgICAgICAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnNcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufVxuY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJyZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcXVvdGF0aW9ucy9pbnZvaWNlLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/quotations/invoice.vue\n"); /***/ }), /***/ "./resources/js/pages/sales/quotations/invoice.vue?vue&type=script&lang=js": /*!*********************************************************************************!*\ !*** ./resources/js/pages/sales/quotations/invoice.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_invoice_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!./invoice.vue?vue&type=script&lang=js */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/quotations/invoice.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_invoice_vue_vue_type_script_lang_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcXVvdGF0aW9ucy9pbnZvaWNlLnZ1ZT82NzhkIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQSx3Q0FBa00sQ0FBZ0Isa1BBQUcsRUFBQyIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9xdW90YXRpb25zL2ludm9pY2UudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9pbnZvaWNlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qc1wiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2ludm9pY2UudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/quotations/invoice.vue?vue&type=script&lang=js\n"); /***/ }), /***/ "./resources/js/pages/sales/quotations/invoice.vue?vue&type=template&id=64b5485e&scoped=true": /*!***************************************************************************************************!*\ !*** ./resources/js/pages/sales/quotations/invoice.vue?vue&type=template&id=64b5485e&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_invoice_vue_vue_type_template_id_64b5485e_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!./invoice.vue?vue&type=template&id=64b5485e&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/quotations/invoice.vue?vue&type=template&id=64b5485e&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_invoice_vue_vue_type_template_id_64b5485e_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_invoice_vue_vue_type_template_id_64b5485e_scoped_true__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvcXVvdGF0aW9ucy9pbnZvaWNlLnZ1ZT81NDNmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9xdW90YXRpb25zL2ludm9pY2UudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTY0YjU0ODVlJnNjb3BlZD10cnVlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3RlbXBsYXRlTG9hZGVyLmpzPz9yZWYtLTYhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9pbnZvaWNlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD02NGI1NDg1ZSZzY29wZWQ9dHJ1ZVwiIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/quotations/invoice.vue?vue&type=template&id=64b5485e&scoped=true\n"); /***/ }) }]);