⚝
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 :
d543b7dc3ae05bac2d7f.js
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[55],{ /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&": /*!***************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js& ***! \***************************************************************************************************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var vform__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vform */ \"./node_modules/vform/dist/vform.es.js\");\n/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\");\n/* harmony import */ var vue_js_toggle_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! vue-js-toggle-button */ \"./node_modules/vue-js-toggle-button/dist/index.js\");\n/* harmony import */ var vue_js_toggle_button__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(vue_js_toggle_button__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_3__);\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\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 exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context); if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\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(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n middleware: [\"auth\", \"check-permissions\"],\n metaInfo: function metaInfo() {\n return {\n title: this.$t(\"sales.invoices.create.page_title\")\n };\n },\n components: {\n ToggleButton: vue_js_toggle_button__WEBPACK_IMPORTED_MODULE_2__[\"ToggleButton\"]\n },\n data: function data() {\n return {\n breadcrumbsCurrent: \"sales.invoices.create.breadcrumbs_current\",\n breadcrumbs: [{\n name: \"sales.invoices.create.breadcrumbs_first\",\n url: \"home\"\n }, {\n name: \"sales.invoices.create.breadcrumbs_second\",\n url: \"invoices.index\"\n }, {\n name: \"sales.invoices.create.breadcrumbs_active\",\n url: \"\"\n }],\n form: new vform__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({\n invoiceNo: \"\",\n client: \"\",\n reference: \"\",\n selectedProducts: [],\n subTotal: 0,\n netTotal: 0,\n discountType: 0,\n discount: \"\",\n totalDiscount: \"\",\n transportCost: \"\",\n orderTax: \"\",\n totalTax: 0,\n productTotalTax: 0,\n account: \"\",\n totalPaid: \"\",\n dueAmount: \"\",\n poReference: \"\",\n paymentTerms: \"\",\n deliveryPlace: \"\",\n addPayment: \"\",\n chequeNo: \"\",\n receiptNo: \"\",\n date: new Date().toISOString().slice(0, 10),\n note: \"\",\n status: 1,\n isSendEmail: false,\n isSendSMS: false\n }),\n products: \"\",\n accounts: \"\",\n taxes: \"\",\n prefix: \"\",\n isDemoMode: window.config.isDemoMode\n };\n },\n computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__[\"mapGetters\"])(\"operations\", [\"items\", \"appInfo\"])),\n created: function created() {\n this.getClients();\n this.getProducts();\n this.getAccounts();\n this.getTaxes();\n this.prefix = this.appInfo.productPrefix;\n },\n methods: {\n // get all clients\n getClients: function getClients() {\n var _this = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var defaultClientSlug;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this.$store.dispatch(\"operations/allData\", {\n path: \"/api/all-clients\"\n });\n case 2:\n // assign default client\n if (_this.items && _this.items.length > 0) {\n defaultClientSlug = _this.appInfo.defaultClientSlug;\n _this.form.client = _this.items.find(function (item) {\n return item.slug === defaultClientSlug;\n });\n }\n case 3:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }))();\n },\n // get products\n getProducts: function getProducts() {\n var _this2 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n var _yield$axios$get, data;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return axios__WEBPACK_IMPORTED_MODULE_3___default.a.get(window.location.origin + \"/api/all-products\");\n case 2:\n _yield$axios$get = _context2.sent;\n data = _yield$axios$get.data;\n _this2.products = data.data;\n _this2.products.sort(_this2.sortProducts);\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }))();\n },\n // sort products\n sortProducts: function sortProducts(a, b) {\n if (Number(a.code) < Number(b.code)) {\n return -1;\n }\n if (Number(a.code) > Number(b.code)) {\n return 1;\n }\n return 0;\n },\n // get accounts\n getAccounts: function getAccounts() {\n var _this3 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var _yield$axios$get2, data, defaultAccountSlug;\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_3___default.a.get(window.location.origin + \"/api/all-accounts\");\n case 2:\n _yield$axios$get2 = _context3.sent;\n data = _yield$axios$get2.data;\n _this3.accounts = data.data;\n // assign default account\n if (_this3.accounts && _this3.accounts.length > 0) {\n defaultAccountSlug = _this3.appInfo.defaultAccountSlug;\n _this3.form.account = _this3.accounts.find(function (item) {\n return item.slug === defaultAccountSlug;\n });\n }\n case 6:\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, defaultVatRateSlug;\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_3___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 // assign default vat rate\n if (_this4.taxes && _this4.taxes.length > 0) {\n defaultVatRateSlug = _this4.appInfo.defaultVatRateSlug;\n _this4.form.orderTax = _this4.taxes.find(function (tax) {\n return tax.slug === defaultVatRateSlug;\n });\n }\n _this4.calculateSum();\n case 7:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\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 > 0 ? product.productTax : 0,\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 // vue file upload\n onFileChange: function onFileChange(e) {\n var _this5 = this;\n var file = e.target.files[0];\n var reader = new FileReader();\n if (file.size < 2111775 && (file.type === \"image/jpeg\" || file.type === \"image/png\" || file.type === \"image/gif\")) {\n reader.onloadend = function (file) {\n _this5.formClient.image = reader.result;\n };\n reader.readAsDataURL(file);\n this.url = URL.createObjectURL(file);\n } else {\n Swal.fire(this.$t(\"common.error\"), this.$t(\"common.image_error\"), \"error\");\n }\n },\n // save invoice\n saveInvoice: function saveInvoice() {\n var _this6 = this;\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return _this6.form.post(window.location.origin + \"/api/invoices\").then(function (_ref) {\n var data = _ref.data;\n toast.fire({\n type: \"success\",\n title: _this6.$t(\"sales.invoices.create.success_msg\")\n });\n _this6.$router.push({\n name: \"invoices.show\",\n params: {\n slug: data.data.slug\n }\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 _context5.stop();\n }\n }, _callee5);\n }))();\n },\n // save client\n saveClient: function saveClient() {\n var _this7 = 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 _this7.formClient.post(window.location.origin + \"/api/clients\").then(function () {\n toast.fire({\n type: \"success\",\n title: _this7.$t(\"clients.create.success_msg\")\n });\n _this7.showClientCreateModal = false;\n _this7.getClients();\n _this7.formClient.reset();\n _this7.url = null;\n })[\"catch\"](function () {\n toast.fire({\n type: \"error\",\n title: _this7.$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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL2ludm9pY2VzL2NyZWF0ZS52dWU/MDQxNyJdLCJuYW1lcyI6WyJfcmVnZW5lcmF0b3JSdW50aW1lIiwiZXhwb3J0cyIsIk9wIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duIiwiaGFzT3duUHJvcGVydHkiLCJkZWZpbmVQcm9wZXJ0eSIsIm9iaiIsImtleSIsImRlc2MiLCJ2YWx1ZSIsIiRTeW1ib2wiLCJTeW1ib2wiLCJpdGVyYXRvclN5bWJvbCIsIml0ZXJhdG9yIiwiYXN5bmNJdGVyYXRvclN5bWJvbCIsImFzeW5jSXRlcmF0b3IiLCJ0b1N0cmluZ1RhZ1N5bWJvbCIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiZXJyIiwid3JhcCIsImlubmVyRm4iLCJvdXRlckZuIiwic2VsZiIsInRyeUxvY3NMaXN0IiwicHJvdG9HZW5lcmF0b3IiLCJHZW5lcmF0b3IiLCJnZW5lcmF0b3IiLCJjcmVhdGUiLCJjb250ZXh0IiwiQ29udGV4dCIsIm1ha2VJbnZva2VNZXRob2QiLCJ0cnlDYXRjaCIsImZuIiwiYXJnIiwidHlwZSIsImNhbGwiLCJDb250aW51ZVNlbnRpbmVsIiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsIkl0ZXJhdG9yUHJvdG90eXBlIiwiZ2V0UHJvdG8iLCJnZXRQcm90b3R5cGVPZiIsIk5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlIiwidmFsdWVzIiwiR3AiLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwibWV0aG9kIiwiX2ludm9rZSIsIkFzeW5jSXRlcmF0b3IiLCJQcm9taXNlSW1wbCIsImludm9rZSIsInJlc29sdmUiLCJyZWplY3QiLCJyZWNvcmQiLCJyZXN1bHQiLCJfdHlwZW9mIiwiX19hd2FpdCIsInRoZW4iLCJ1bndyYXBwZWQiLCJlcnJvciIsInByZXZpb3VzUHJvbWlzZSIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwic3RhdGUiLCJFcnJvciIsImRvbmVSZXN1bHQiLCJkZWxlZ2F0ZSIsImRlbGVnYXRlUmVzdWx0IiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiZG9uZSIsIm1ldGhvZE5hbWUiLCJ1bmRlZmluZWQiLCJUeXBlRXJyb3IiLCJpbmZvIiwicmVzdWx0TmFtZSIsIm5leHQiLCJuZXh0TG9jIiwicHVzaFRyeUVudHJ5IiwibG9jcyIsImVudHJ5IiwidHJ5TG9jIiwiY2F0Y2hMb2MiLCJmaW5hbGx5TG9jIiwiYWZ0ZXJMb2MiLCJ0cnlFbnRyaWVzIiwicHVzaCIsInJlc2V0VHJ5RW50cnkiLCJjb21wbGV0aW9uIiwicmVzZXQiLCJpdGVyYWJsZSIsIml0ZXJhdG9yTWV0aG9kIiwiaXNOYU4iLCJsZW5ndGgiLCJpIiwiZGlzcGxheU5hbWUiLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiZ2VuRnVuIiwiY3RvciIsImNvbnN0cnVjdG9yIiwibmFtZSIsIm1hcmsiLCJzZXRQcm90b3R5cGVPZiIsIl9fcHJvdG9fXyIsImF3cmFwIiwiYXN5bmMiLCJQcm9taXNlIiwiaXRlciIsImtleXMiLCJ2YWwiLCJvYmplY3QiLCJyZXZlcnNlIiwicG9wIiwic2tpcFRlbXBSZXNldCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJyb290UmVjb3JkIiwicnZhbCIsImV4Y2VwdGlvbiIsImhhbmRsZSIsImxvYyIsImNhdWdodCIsImhhc0NhdGNoIiwiaGFzRmluYWxseSIsImZpbmFsbHlFbnRyeSIsImNvbXBsZXRlIiwiZmluaXNoIiwiX2NhdGNoIiwidGhyb3duIiwiZGVsZWdhdGVZaWVsZCIsImFzeW5jR2VuZXJhdG9yU3RlcCIsImdlbiIsIl9uZXh0IiwiX3Rocm93IiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJhcmdzIiwiYXJndW1lbnRzIiwiYXBwbHkiLCJvd25LZXlzIiwiZW51bWVyYWJsZU9ubHkiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiX29iamVjdFNwcmVhZCIsInRhcmdldCIsInNvdXJjZSIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX3RvUHJvcGVydHlLZXkiLCJfdG9QcmltaXRpdmUiLCJTdHJpbmciLCJpbnB1dCIsImhpbnQiLCJwcmltIiwidG9QcmltaXRpdmUiLCJyZXMiLCJOdW1iZXIiLCJtaWRkbGV3YXJlIiwibWV0YUluZm8iLCJ0aXRsZSIsIiR0IiwiY29tcG9uZW50cyIsIlRvZ2dsZUJ1dHRvbiIsImRhdGEiLCJicmVhZGNydW1ic0N1cnJlbnQiLCJicmVhZGNydW1icyIsInVybCIsImZvcm0iLCJGb3JtIiwiaW52b2ljZU5vIiwiY2xpZW50IiwicmVmZXJlbmNlIiwic2VsZWN0ZWRQcm9kdWN0cyIsInN1YlRvdGFsIiwibmV0VG90YWwiLCJkaXNjb3VudFR5cGUiLCJkaXNjb3VudCIsInRvdGFsRGlzY291bnQiLCJ0cmFuc3BvcnRDb3N0Iiwib3JkZXJUYXgiLCJ0b3RhbFRheCIsInByb2R1Y3RUb3RhbFRheCIsImFjY291bnQiLCJ0b3RhbFBhaWQiLCJkdWVBbW91bnQiLCJwb1JlZmVyZW5jZSIsInBheW1lbnRUZXJtcyIsImRlbGl2ZXJ5UGxhY2UiLCJhZGRQYXltZW50IiwiY2hlcXVlTm8iLCJyZWNlaXB0Tm8iLCJkYXRlIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwibm90ZSIsInN0YXR1cyIsImlzU2VuZEVtYWlsIiwiaXNTZW5kU01TIiwicHJvZHVjdHMiLCJhY2NvdW50cyIsInRheGVzIiwicHJlZml4IiwiaXNEZW1vTW9kZSIsIndpbmRvdyIsImNvbmZpZyIsImNvbXB1dGVkIiwibWFwR2V0dGVycyIsImNyZWF0ZWQiLCJnZXRDbGllbnRzIiwiZ2V0UHJvZHVjdHMiLCJnZXRBY2NvdW50cyIsImdldFRheGVzIiwiYXBwSW5mbyIsInByb2R1Y3RQcmVmaXgiLCJtZXRob2RzIiwiX3RoaXMiLCJfY2FsbGVlIiwiZGVmYXVsdENsaWVudFNsdWciLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwiJHN0b3JlIiwiZGlzcGF0Y2giLCJwYXRoIiwiaXRlbXMiLCJmaW5kIiwiaXRlbSIsInNsdWciLCJfdGhpczIiLCJfY2FsbGVlMiIsIl95aWVsZCRheGlvcyRnZXQiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJheGlvcyIsImdldCIsImxvY2F0aW9uIiwib3JpZ2luIiwic29ydCIsInNvcnRQcm9kdWN0cyIsImEiLCJiIiwiY29kZSIsIl90aGlzMyIsIl9jYWxsZWUzIiwiX3lpZWxkJGF4aW9zJGdldDIiLCJkZWZhdWx0QWNjb3VudFNsdWciLCJfY2FsbGVlMyQiLCJfY29udGV4dDMiLCJfdGhpczQiLCJfY2FsbGVlNCIsIl95aWVsZCRheGlvcyRnZXQzIiwiZGVmYXVsdFZhdFJhdGVTbHVnIiwiX2NhbGxlZTQkIiwiX2NvbnRleHQ0IiwidGF4IiwiY2FsY3VsYXRlU3VtIiwic3RvcmVQcm9kdWN0IiwicHJvZHVjdCIsImluZGV4IiwiZmluZEluZGV4IiwieCIsImlkIiwicXVhbnRpdHkiLCJwcm9kdWN0VGF4IiwidGF4VHlwZSIsInByaWNlV2l0aERpc2NvdW50IiwidGF4UmF0ZSIsInVuc2hpZnQiLCJxdHkiLCJpbnZlbnRvcnlDb3VudCIsImF2Z1B1cmNoYXNlUHJpY2UiLCJ1bml0UHJpY2UiLCJ1bml0Q29zdCIsInRvdGFsUHJpY2UiLCJnZW5lcmF0ZUl0ZW1Ub3RhbCIsImFjdGlvbiIsInJlbW92ZUl0ZW0iLCJpbmRleE9mIiwic3BsaWNlIiwicmVkdWNlIiwiY3VyIiwidG9GaXhlZCIsInJhdGUiLCJvbkZpbGVDaGFuZ2UiLCJlIiwiX3RoaXM1IiwiZmlsZSIsImZpbGVzIiwicmVhZGVyIiwiRmlsZVJlYWRlciIsInNpemUiLCJvbmxvYWRlbmQiLCJmb3JtQ2xpZW50IiwiaW1hZ2UiLCJyZWFkQXNEYXRhVVJMIiwiVVJMIiwiY3JlYXRlT2JqZWN0VVJMIiwiU3dhbCIsImZpcmUiLCJzYXZlSW52b2ljZSIsIl90aGlzNiIsIl9jYWxsZWU1IiwiX2NhbGxlZTUkIiwiX2NvbnRleHQ1IiwicG9zdCIsIl9yZWYiLCJ0b2FzdCIsIiRyb3V0ZXIiLCJwYXJhbXMiLCJzYXZlQ2xpZW50IiwiX3RoaXM3IiwiX2NhbGxlZTYiLCJfY2FsbGVlNiQiLCJfY29udGV4dDYiLCJzaG93Q2xpZW50Q3JlYXRlTW9kYWwiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OytDQWdaQSxxSkFBQUEsbUJBQUEsWUFBQUEsb0JBQUEsV0FBQUMsT0FBQSxTQUFBQSxPQUFBLE9BQUFDLEVBQUEsR0FBQUMsTUFBQSxDQUFBQyxTQUFBLEVBQUFDLE1BQUEsR0FBQUgsRUFBQSxDQUFBSSxjQUFBLEVBQUFDLGNBQUEsR0FBQUosTUFBQSxDQUFBSSxjQUFBLGNBQUFDLEdBQUEsRUFBQUMsR0FBQSxFQUFBQyxJQUFBLElBQUFGLEdBQUEsQ0FBQUMsR0FBQSxJQUFBQyxJQUFBLENBQUFDLEtBQUEsS0FBQUMsT0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLGNBQUEsR0FBQUYsT0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxtQkFBQSxHQUFBSixPQUFBLENBQUFLLGFBQUEsdUJBQUFDLGlCQUFBLEdBQUFOLE9BQUEsQ0FBQU8sV0FBQSw4QkFBQUMsT0FBQVosR0FBQSxFQUFBQyxHQUFBLEVBQUFFLEtBQUEsV0FBQVIsTUFBQSxDQUFBSSxjQUFBLENBQUFDLEdBQUEsRUFBQUMsR0FBQSxJQUFBRSxLQUFBLEVBQUFBLEtBQUEsRUFBQVUsVUFBQSxNQUFBQyxZQUFBLE1BQUFDLFFBQUEsU0FBQWYsR0FBQSxDQUFBQyxHQUFBLFdBQUFXLE1BQUEsbUJBQUFJLEdBQUEsSUFBQUosTUFBQSxZQUFBQSxPQUFBWixHQUFBLEVBQUFDLEdBQUEsRUFBQUUsS0FBQSxXQUFBSCxHQUFBLENBQUFDLEdBQUEsSUFBQUUs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QTtZQUFBO2NBQUEsT0FBQThJLFNBQUEsQ0FBQTlMLElBQUE7VUFBQTtRQUFBLEdBQUE0TCxRQUFBO01BQUE7SUFDQTtJQUVBO0lBQ0FRLFVBQUEsV0FBQUEsV0FBQTtNQUFBLElBQUFDLE1BQUE7TUFBQSxPQUFBbEwsaUJBQUEsZUFBQWpKLG1CQUFBLEdBQUE4RyxJQUFBLFVBQUFzTixTQUFBO1FBQUEsT0FBQXBVLG1CQUFBLEdBQUF5QixJQUFBLFVBQUE0UyxVQUFBQyxTQUFBO1VBQUEsa0JBQUFBLFNBQUEsQ0FBQTNNLElBQUEsR0FBQTJNLFNBQUEsQ0FBQWpQLElBQUE7WUFBQTtjQUFBaVAsU0FBQSxDQUFBalAsSUFBQTtjQUFBLE9BQ0E4TyxNQUFBLENBQUFsQixVQUFBLENBQ0FZLElBQUEsQ0FBQXBHLE1BQUEsQ0FBQStCLFFBQUEsQ0FBQUMsTUFBQSxtQkFDQXpMLElBQUE7Z0JBQ0ErUCxLQUFBLENBQUFSLElBQUE7a0JBQ0EvUSxJQUFBO2tCQUNBcUksS0FBQSxFQUFBc0osTUFBQSxDQUFBckosRUFBQTtnQkFDQTtnQkFDQXFKLE1BQUEsQ0FBQUkscUJBQUE7Z0JBQ0FKLE1BQUEsQ0FBQXJHLFVBQUE7Z0JBQ0FxRyxNQUFBLENBQUFsQixVQUFBLENBQUEvTSxLQUFBO2dCQUNBaU8sTUFBQSxDQUFBL0ksR0FBQTtjQUNBLFdBQ0E7Z0JBQ0EySSxLQUFBLENBQUFSLElBQUE7a0JBQUEvUSxJQUFBO2tCQUFBcUksS0FBQSxFQUFBc0osTUFBQSxDQUFBckosRUFBQTtnQkFBQTtjQUNBO1lBQUE7WUFBQTtjQUFBLE9BQUF3SixTQUFBLENBQUF4TSxJQUFBO1VBQUE7UUFBQSxHQUFBc00sUUFBQTtNQUFBO0lBQ0E7RUFDQTtBQUNBLENBQUMiLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/IS4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL2ludm9pY2VzL2NyZWF0ZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmLmpzIiwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuICA8ZGl2PlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgU3RhcnQgLS0+XG4gICAgPGJyZWFkY3J1bWJzIDppdGVtcz1cImJyZWFkY3J1bWJzXCIgOmN1cnJlbnQ9XCJicmVhZGNydW1ic0N1cnJlbnRcIiAvPlxuICAgIDwhLS0gYnJlYWRjcnVtYnMgZW5kIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgY29sLXhsLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCI+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlXCI+XG4gICAgICAgICAgICAgIHt7ICR0KFwic2FsZXMuaW52b2ljZXMuY3JlYXRlLmZvcm1fdGl0bGVcIikgfX1cbiAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICA8cm91dGVyLWxpbmsgOnRvPVwieyBuYW1lOiAnaW52b2ljZXMuaW5kZXgnIH1cIiBjbGFzcz1cImJ0biBidG4tZGFyayBmbG9hdC1yaWdodFwiPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1sb25nLWFycm93LWFsdC1sZWZ0XCIgLz4ge3sgJHQoXCJjb21tb24uYmFja1wiKSB9fVxuICAgICAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8IS0tIC8uY2FyZC1oZWFkZXIgLS0+XG4gICAgICAgICAgPCEtLSBmb3JtIHN0YXJ0IC0tPlxuICAgICAgICAgIDxmb3JtIHJvbGU9XCJmb3JtXCIgQHN1Ym1pdC5wcmV2ZW50PVwic2F2ZUludm9pY2VcIiBAa2V5ZG93bj1cImZvcm0ub25LZXlkb3duKCRldmVudClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiIHYtaWY9XCJpdGVtc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC02XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY2xpZW50XCI+e3sgJHQoXCJjb21tb24uY2xpZW50XCIpIH19XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IHctMTAwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8di1zZWxlY3QgY2xhc3M9XCJmbGV4LWdyb3ctMVwiIHYtbW9kZWw9XCJmb3JtLmNsaWVudFwiIDpvcHRpb25zPVwiaXRlbXNcIiBsYWJlbD1cIm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdjbGllbnQnKSB9XCIgbmFtZT1cImNsaWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uY2xpZW50X3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENsaWVudENyZWF0ZU1vZGFsIEByZWxvYWRDbGllbnRzPVwiZ2V0Q2xpZW50c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc29saWQgZmEtcGx1cy1jaXJjbGVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9DbGllbnRDcmVhdGVNb2RhbD5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiY2xpZW50XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNlwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInJlZmVyZW5jZVwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAkdChcImNvbW1vbi5yZWZlcmVuY2VcIikgfX1cbiAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJyZWZlcmVuY2VcIiB2LW1vZGVsPVwiZm9ybS5yZWZlcmVuY2VcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygncmVmZXJlbmNlJykgfVwiIG5hbWU9XCJyZWZlcmVuY2VcIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnJlZmVyZW5jZV9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJyZWZlcmVuY2VcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCIgdi1pZj1cInByb2R1Y3RzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTEyXCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicHJvZHVjdFwiPnt7ICR0KFwiY29tbW9uLnNlbGVjdF9wcm9kdWN0c1wiKSB9fVxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCB3LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHYtc2VsZWN0IGNsYXNzPVwiZmxleC1ncm93LTFcIiB2LW1vZGVsPVwiZm9ybS5wcm9kdWN0XCIgOm9wdGlvbnM9XCJwcm9kdWN0c1wiIGxhYmVsPVwibGFiZWxcIiA6Y2xhc3M9XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdzZWxlY3RlZFByb2R1Y3RzJyksXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCIgbmFtZT1cInByb2R1Y3RcIiA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnNlbGVjdF9wcm9kdWN0c19wbGFjZWhvbGRlcicpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGlucHV0PVwic3RvcmVQcm9kdWN0KGZvcm0ucHJvZHVjdClcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFByb2R1Y3RDcmVhdGVNb2RhbCBAcmVsb2FkUHJvZHVjdHM9XCJnZXRQcm9kdWN0c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc29saWQgZmEtcGx1cy1jaXJjbGVcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Qcm9kdWN0Q3JlYXRlTW9kYWw+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInNlbGVjdGVkUHJvZHVjdHNcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmIGZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5sZW5ndGggPiAwXCIgY2xhc3M9XCJyb3cgbXQtMyBtYi00XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmUgdGFibGUtY3VzdG9tIHctOTUgbS1hdXRvXCI+XG4gICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSB0YWJsZS1ob3ZlciB0YWJsZS1zbSB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KFwiY29tbW9uLnNfbm9cIikgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KFwiY29tbW9uLmNvZGVcIikgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KFwiY29tbW9uLnByb2R1Y3RfbmFtZVwiKSB9fTwvdGg+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+e3sgJHQoXCJjb21tb24ucXVhbnRpdHlcIikgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KFwiY29tbW9uLnByaWNlXCIpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdChcImNvbW1vbi51bml0X3ByaWNlXCIpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57eyAkdChcImNvbW1vbi50YXhcIikgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnt7ICR0KFwiY29tbW9uLnN1YnRvdGFsXCIpIH19PC90aD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInRleHQtcmlnaHRcIj57eyAkdChcImNvbW1vbi5hY3Rpb25cIikgfX08L3RoPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICAgICAgICA8dHIgdi1mb3I9XCIoaXRlbSwgaSkgaW4gZm9ybS5zZWxlY3RlZFByb2R1Y3RzXCIgOmtleT1cImlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57eyArK2kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLmNvZGUgfCB3aXRoUHJlZml4KHByZWZpeCkgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJOdW1iZXIoaXRlbS5pbnZlbnRvcnlDb3VudCkgPCBOdW1iZXIoaXRlbS5xdHkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgdi10b29sdGlwPVwiJHQoJ2NvbW1vbi5pbnN1ZmZpY2llbnRfc3RvY2snKVwiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtZGFuZ2VyIHAtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLWV4Y2xhbWF0aW9uXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxyb3V0ZXItbGluayB2LWlmPVwiJGNhbigncHJvZHVjdC12aWV3JylcIiA6dG89XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ3Byb2R1Y3RzLnNob3cnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtczogeyBzbHVnOiBpdGVtLnNsdWcgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3JvdXRlci1saW5rPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiB2LWVsc2U+e3sgaXRlbS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwIGN1c3RvbS1xdHktaW5wdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImJ1dHRvblwiIHZhbHVlPVwiLVwiIGNsYXNzPVwiYnV0dG9uLW1pbnVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tZGFuZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZmllbGQ9XCJxdWFudGl0eVwiIEBjbGljaz1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncXR5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVjcmVtZW50J1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiA6aWQ9XCJgUXR5LSR7aX1gXCIgOnZhbHVlPVwiaXRlbS5xdHlcIiBuYW1lPVwicXVhbnRpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJxdWFudGl0eS1maWVsZCBib3JkZXItMCBpbmNyZW1lbnRvclwiIHJlcXVpcmVkIG1pbj1cIjFcIiA6bWF4PVwiaXRlbS5pbnZlbnRvcnlDb3VudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2hhbmdlPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3F0eScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiBAa2V5dXA9XCJnZW5lcmF0ZUl0ZW1Ub3RhbCgkZXZlbnQudGFyZ2V0LnZhbHVlLCAncXR5JywgaSAtIDEsICcnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlF1YW50aXR5XCIgLz5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgdmFsdWU9XCIrXCIgY2xhc3M9XCJidXR0b24tcGx1cyBpY29uLXNoYXBlIGljb24tc20gYnRuLXByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1maWVsZD1cInF1YW50aXR5XCIgQGNsaWNrPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ucXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdxdHknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbmNyZW1lbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAgY3VzdG9tLXF0eS1pbnB1dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgdmFsdWU9XCItXCIgY2xhc3M9XCJidXR0b24tbWludXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1kYW5nZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1maWVsZD1cInVuaXRQcmljZVwiIEBjbGljaz1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnVuaXRQcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncHJpY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZWNyZW1lbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInVuaXRQcmljZVwiIHN0ZXA9XCJhbnlcIiA6aWQ9XCJgdW5pdFByaWNlLSR7aX1gXCIgOnZhbHVlPVwiaXRlbS51bml0UHJpY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInVuaXRQcmljZVwiIGNsYXNzPVwicXVhbnRpdHktZmllbGQgYm9yZGVyLTAgaW5jcmVtZW50b3JcIiByZXF1aXJlZCBtaW49XCIwXCIgQGNoYW5nZT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwcmljZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiBAa2V5dXA9XCJnZW5lcmF0ZUl0ZW1Ub3RhbCgkZXZlbnQudGFyZ2V0LnZhbHVlLCAncHJpY2UnLCBpIC0gMSwgJycpXCIgLz5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiYnV0dG9uXCIgdmFsdWU9XCIrXCIgY2xhc3M9XCJidXR0b24tcGx1cyBpY29uLXNoYXBlIGljb24tc20gYnRuLXByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1maWVsZD1cInVuaXRQcmljZVwiIEBjbGljaz1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnVuaXRQcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncHJpY2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbmNyZW1lbnQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IGl0ZW0udW5pdENvc3QgfCB3aXRoQ3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IGl0ZW0udG90YWxUYXggfCB3aXRoQ3VycmVuY3kgfX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7IGl0ZW0udG90YWxQcmljZSB8IHdpdGhDdXJyZW5jeSB9fTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0ZXh0LXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kYW5nZXJcIiBAY2xpY2s9XCJyZW1vdmVJdGVtKGl0ZW0pXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtdGltZXNcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiNlwiIGNsYXNzPVwidGV4dC1yaWdodFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7ICR0KFwiY29tbW9uLnRvdGFsXCIpIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybS5wcm9kdWN0VG90YWxUYXggfCB3aXRoQ3VycmVuY3lcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgZm9ybS5zdWJUb3RhbCB8IHdpdGhDdXJyZW5jeSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxuICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZGlzY291bnRUeXBlXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgJHQoXCJjb21tb24uZGlzY291bnRfdHlwZVwiKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHNlbGVjdCBpZD1cImRpc2NvdW50VHlwZVwiIHYtbW9kZWw9XCJmb3JtLmRpc2NvdW50VHlwZVwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2Rpc2NvdW50VHlwZScpIH1cIiBuYW1lPVwiZGlzY291bnRUeXBlXCIgQGNoYW5nZT1cImNhbGN1bGF0ZVN1bVwiXG4gICAgICAgICAgICAgICAgICAgIEBrZXl1cD1cImNhbGN1bGF0ZVN1bVwiPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiMFwiPnt7ICR0KFwiY29tbW9uLmZpeGVkXCIpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoXCJjb21tb24ucGVyY2VudGFnZVwiKSB9fSglKTwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiZGlzY291bnRUeXBlXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiIDpjbGFzcz1cImZvcm0uZGlzY291bnRUeXBlID09IDEgPyAnY29sLW1kLTInIDogJ2NvbC1tZC00J1wiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImRpc2NvdW50XCI+e3sgJHQoXCJjb21tb24uZGlzY291bnRcIikgfX1cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gdi1pZj1cImZvcm0uZGlzY291bnRUeXBlID09IDFcIj4oJSk8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cImRpc2NvdW50XCIgdi1tb2RlbD1cImZvcm0uZGlzY291bnRcIiB0eXBlPVwibnVtYmVyXCIgc3RlcD1cImFueVwiIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgICAgICA6bWF4PVwiZm9ybS5kaXNjb3VudFR5cGUgPT0gMSA/IDEwMCA6IGZvcm0uc3ViVG90YWxcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2Rpc2NvdW50JykgfVwiIG5hbWU9XCJkaXNjb3VudFwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24uZGlzY291bnRfcGxhY2Vob2xkZXInKVwiIEBjaGFuZ2U9XCJjYWxjdWxhdGVTdW1cIiBAa2V5dXA9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cImRpc2NvdW50XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJmb3JtLmRpc2NvdW50VHlwZSA9PSAxXCIgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC0yXCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwidG90YWxEaXNjb3VudFwiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KFwiY29tbW9uLnRvdGFsX2Rpc2NvdW50XCIpXG4gICAgICAgICAgICAgICAgICB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ0b3RhbERpc2NvdW50XCIgdi1tb2RlbD1cImZvcm0udG90YWxEaXNjb3VudFwiIHR5cGU9XCJudW1iZXJcIiBzdGVwPVwiYW55XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCd0b3RhbERpc2NvdW50JykgfVwiIG5hbWU9XCJ0b3RhbERpc2NvdW50XCIgcmVhZG9ubHkgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJ0b3RhbERpc2NvdW50XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRyYW5zcG9ydENvc3RcIj57e1xuICAgICAgICAgICAgICAgICAgICAkdChcImNvbW1vbi50cmFuc3BvcnRfY29zdFwiKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwidHJhbnNwb3J0Q29zdFwiIHYtbW9kZWw9XCJmb3JtLnRyYW5zcG9ydENvc3RcIiB0eXBlPVwibnVtYmVyXCIgc3RlcD1cImFueVwiIG1pbj1cIjFcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3RyYW5zcG9ydENvc3QnKSB9XCIgbmFtZT1cInRyYW5zcG9ydENvc3RcIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnRyYW5zcG9ydF9jb3N0X3BsYWNlaG9sZGVyJylcIiBAY2hhbmdlPVwiY2FsY3VsYXRlU3VtXCIgQGtleXVwPVwiY2FsY3VsYXRlU3VtXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJ0cmFuc3BvcnRDb3N0XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgdi1pZj1cInRheGVzXCIgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwib3JkZXJUYXhcIj57eyAkdChcImNvbW1vbi5pbnZvaWNlX3RheFwiKSB9fVxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHYtc2VsZWN0IHYtbW9kZWw9XCJmb3JtLm9yZGVyVGF4XCIgOm9wdGlvbnM9XCJ0YXhlc1wiIGxhYmVsPVwiY29kZVwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ29yZGVyVGF4JykgfVwiIG5hbWU9XCJvcmRlclRheFwiIHBsYWNlaG9sZGVyPVwiU2VsZWN0IGEgdGF4IHR5cGVcIlxuICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9XCJjYWxjdWxhdGVTdW1cIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cIm9yZGVyVGF4XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJ0YXhlc1wiIGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInRvdGFsVGF4XCI+e3sgJHQoXCJjb21tb24udG90YWxfdGF4XCIpIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInRvdGFsVGF4XCIgdi1tb2RlbD1cImZvcm0udG90YWxUYXhcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygndG90YWxUYXgnKSB9XCIgbmFtZT1cInRvdGFsVGF4XCIgcmVhZG9ubHkgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJ0b3RhbFRheFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJuZXRUb3RhbFwiPnt7ICR0KFwiY29tbW9uLm5ldF90b3RhbFwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJuZXRUb3RhbFwiIHYtbW9kZWw9XCJmb3JtLm5ldFRvdGFsXCIgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ25ldFRvdGFsJykgfVwiIG5hbWU9XCJuZXRUb3RhbFwiIHJlYWRvbmx5IC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwibmV0VG90YWxcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwb1JlZmVyZW5jZVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICR0KFwiY29tbW9uLnBvX3JlZmVyZW5jZVwiKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicG9SZWZlcmVuY2VcIiB2LW1vZGVsPVwiZm9ybS5wb1JlZmVyZW5jZVwiIHR5cGU9XCJ0ZXh0XCIgc3RlcD1cImFueVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygncG9SZWZlcmVuY2UnKSB9XCIgbmFtZT1cInBvUmVmZXJlbmNlXCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5wb19yZWZlcmVuY2VfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwicG9SZWZlcmVuY2VcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicGF5bWVudFRlcm1zXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgJHQoXCJjb21tb24ucGF5bWVudF90ZXJtc1wiKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicGF5bWVudFRlcm1zXCIgdi1tb2RlbD1cImZvcm0ucGF5bWVudFRlcm1zXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3BheW1lbnRUZXJtcycpIH1cIiBuYW1lPVwicGF5bWVudFRlcm1zXCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5wYXltZW50X3Rlcm1zX3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInBheW1lbnRUZXJtc1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJhZGRQYXltZW50XCI+e3sgJHQoXCJjb21tb24uYWRkX3BheW1lbnRcIikgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHNlbGVjdCBpZD1cImFkZFBheW1lbnRcIiB2LW1vZGVsPVwiZm9ybS5hZGRQYXltZW50XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdhZGRQYXltZW50JykgfVwiIG5hbWU9XCJhZGRQYXltZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIiBzZWxlY3RlZCBkaXNhYmxlZD5cbiAgICAgICAgICAgICAgICAgICAgICB7eyAkdChcImNvbW1vbi5hZGRfcGF5bWVudF9wbGFjZWhvbGRlclwiKSB9fVxuICAgICAgICAgICAgICAgICAgICA8L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiA6ZGlzYWJsZWQ9XCIhZm9ybS5zZWxlY3RlZFByb2R1Y3RzXCIgdmFsdWU9XCIxXCI+XG4gICAgICAgICAgICAgICAgICAgICAge3sgJHQoXCJjb21tb24ueWVzXCIpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPVwiMFwiPnt7ICR0KFwiY29tbW9uLm5vXCIpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJhZGRQYXltZW50XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIiB2LWlmPVwiZm9ybS5hZGRQYXltZW50ID09IDEgJiZcbiAgICAgICAgICAgICAgICBhY2NvdW50cyAmJlxuICAgICAgICAgICAgICAgIGZvcm0uc2VsZWN0ZWRQcm9kdWN0cyAmJlxuICAgICAgICAgICAgICAgIGZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJhY2NvdW50XCI+e3sgJHQoXCJjb21tb24uYWNjb3VudFwiKSB9fVxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPHYtc2VsZWN0IHYtbW9kZWw9XCJmb3JtLmFjY291bnRcIiA6b3B0aW9ucz1cImFjY291bnRzXCIgbGFiZWw9XCJsYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ2FjY291bnQnKSB9XCIgbmFtZT1cImFjY291bnRcIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLmFjY291bnRfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiYWNjb3VudFwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTJcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwYWlkQW1vdW50XCI+e3sgJHQoXCJjb21tb24ucGFpZF9hbW91bnRcIilcbiAgICAgICAgICAgICAgICAgIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInBhaWRBbW91bnRcIiB2LW1vZGVsPVwiZm9ybS5wYWlkQW1vdW50XCIgdHlwZT1cIm51bWJlclwiIHN0ZXA9XCJhbnlcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cInsgJ2lzLWludmFsaWQnOiBmb3JtLmVycm9ycy5oYXMoJ3BhaWRBbW91bnQnKSB9XCIgbmFtZT1cInBhaWRBbW91bnRcIiBtaW49XCIxXCJcbiAgICAgICAgICAgICAgICAgICAgOm1heD1cImZvcm0ubmV0VG90YWxcIiA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnBhaWRfYW1vdW50X3BsYWNlaG9sZGVyJylcIiAvPlxuICAgICAgICAgICAgICAgICAgPGhhcy1lcnJvciA6Zm9ybT1cImZvcm1cIiBmaWVsZD1cInBhaWRBbW91bnRcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC0zXCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY2hlcXVlTm9cIj57eyAkdChcImNvbW1vbi5jaGVxdWVfbm9cIikgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiY2hlcXVlTm9cIiB2LW1vZGVsPVwiZm9ybS5jaGVxdWVOb1wiIHR5cGU9XCJ0ZXh0XCIgc3RlcD1cImFueVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnY2hlcXVlTm8nKSB9XCIgbmFtZT1cImNoZXF1ZU5vXCJcbiAgICAgICAgICAgICAgICAgICAgOnBsYWNlaG9sZGVyPVwiJHQoJ2NvbW1vbi5jaGVxdWVfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiY2hlcXVlTm9cIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC0zXCI+XG4gICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicmVjZWlwdE5vXCI+e3sgJHQoXCJjb21tb24ucmVjZWlwdF9ub1wiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJyZWNlaXB0Tm9cIiB2LW1vZGVsPVwiZm9ybS5yZWNlaXB0Tm9cIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygncmVjZWlwdE5vJykgfVwiIG5hbWU9XCJyZWNlaXB0Tm9cIlxuICAgICAgICAgICAgICAgICAgICA6cGxhY2Vob2xkZXI9XCIkdCgnY29tbW9uLnJlY2VpcHRfbm9fcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwicmVjZWlwdE5vXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImRlbGl2ZXJ5UGxhY2VcIj57e1xuICAgICAgICAgICAgICAgICAgICAkdChcInNhbGVzLmNvbW1vbi5kZWxpdmVyeV9wbGFjZVwiKVxuICAgICAgICAgICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IGlkPVwiZGVsaXZlcnlQbGFjZVwiIHYtbW9kZWw9XCJmb3JtLmRlbGl2ZXJ5UGxhY2VcIiB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnaXMtaW52YWxpZCc6IGZvcm0uZXJyb3JzLmhhcygnZGVsaXZlcnlQbGFjZScpIH1cIiBuYW1lPVwiZGVsaXZlcnlQbGFjZVwiXG4gICAgICAgICAgICAgICAgICAgIDpwbGFjZWhvbGRlcj1cIiR0KCdzYWxlcy5jb21tb24uZGVsaXZlcnlfcGxhY2VfcGxhY2Vob2xkZXInKVwiIC8+XG4gICAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwiZGVsaXZlcnlQbGFjZVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJkYXRlXCI+e3sgJHQoXCJjb21tb24uZGF0ZVwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJkYXRlXCIgdi1tb2RlbD1cImZvcm0uZGF0ZVwiIHR5cGU9XCJkYXRlXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdkYXRlJykgfVwiIG5hbWU9XCJkYXRlXCIgLz5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJkYXRlXCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtNFwiPlxuICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInN0YXR1c1wiPnt7ICR0KFwiY29tbW9uLnN0YXR1c1wiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8c2VsZWN0IGlkPVwic3RhdHVzXCIgdi1tb2RlbD1cImZvcm0uc3RhdHVzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdzdGF0dXMnKSB9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIxXCI+e3sgJHQoXCJjb21tb24uYWN0aXZlXCIpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCIwXCI+e3sgJHQoXCJjb21tb24uaW5fYWN0aXZlXCIpIH19PC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgIDxoYXMtZXJyb3IgOmZvcm09XCJmb3JtXCIgZmllbGQ9XCJzdGF0dXNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJub3RlXCI+e3sgJHQoXCJjb21tb24ubm90ZVwiKSB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPHRleHRhcmVhIGlkPVwibm90ZVwiIHYtbW9kZWw9XCJmb3JtLm5vdGVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiXG4gICAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdpcy1pbnZhbGlkJzogZm9ybS5lcnJvcnMuaGFzKCdub3RlJykgfVwiIDpwbGFjZWhvbGRlcj1cIiR0KCdjb21tb24ubm90ZV9wbGFjZWhvbGRlcicpXCIgLz5cbiAgICAgICAgICAgICAgICA8aGFzLWVycm9yIDpmb3JtPVwiZm9ybVwiIGZpZWxkPVwibm90ZVwiIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC0xMiBkLWZsZXggZmxleC13cmFwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByLTVcIj5cbiAgICAgICAgICAgICAgICAgIDx0b2dnbGUtYnV0dG9uIHYtbW9kZWw9XCJmb3JtLmlzU2VuZEVtYWlsXCIgOmRpc2FibGVkPVwiaXNEZW1vTW9kZVwiIC8+XG4gICAgICAgICAgICAgICAgICB7eyAkdChcIlNlbmQgVG8gRW1haWxcIikgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC0xMiBkLWZsZXggZmxleC13cmFwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByLTVcIj5cbiAgICAgICAgICAgICAgICAgIDx0b2dnbGUtYnV0dG9uIHYtbW9kZWw9XCJmb3JtLmlzU2VuZFNNU1wiIDpkaXNhYmxlZD1cImlzRGVtb01vZGVcIiAvPlxuICAgICAgICAgICAgICAgICAge3sgJHQoXCJTZW5kIFRvIFNNU1wiKSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPCEtLSAvLmNhcmQtYm9keSAtLT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWZvb3RlclwiPlxuICAgICAgICAgICAgICA8di1idXR0b24gOmxvYWRpbmc9XCJmb3JtLmJ1c3lcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXNhdmVcIiAvPiB7eyAkdChcImNvbW1vbi5zYXZlXCIpIH19XG4gICAgICAgICAgICAgIDwvdi1idXR0b24+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInJlc2V0XCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBmbG9hdC1yaWdodFwiIEBjbGljaz1cImZvcm0ucmVzZXQoKVwiPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBvd2VyLW9mZlwiIC8+IHt7ICR0KFwiY29tbW9uLnJlc2V0XCIpIH19XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9mb3JtPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5pbXBvcnQgRm9ybSBmcm9tIFwidmZvcm1cIjtcbmltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tIFwidnVleFwiO1xuaW1wb3J0IHsgVG9nZ2xlQnV0dG9uIH0gZnJvbSBcInZ1ZS1qcy10b2dnbGUtYnV0dG9uXCI7XG5pbXBvcnQgYXhpb3MgZnJvbSBcImF4aW9zXCI7XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgbWlkZGxld2FyZTogW1wiYXV0aFwiLCBcImNoZWNrLXBlcm1pc3Npb25zXCJdLFxuICBtZXRhSW5mbygpIHtcbiAgICByZXR1cm4geyB0aXRsZTogdGhpcy4kdChcInNhbGVzLmludm9pY2VzLmNyZWF0ZS5wYWdlX3RpdGxlXCIpIH07XG4gIH0sXG4gIGNvbXBvbmVudHM6IHtcbiAgICBUb2dnbGVCdXR0b24sXG4gIH0sXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgYnJlYWRjcnVtYnNDdXJyZW50OiBcInNhbGVzLmludm9pY2VzLmNyZWF0ZS5icmVhZGNydW1ic19jdXJyZW50XCIsXG4gICAgYnJlYWRjcnVtYnM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogXCJzYWxlcy5pbnZvaWNlcy5jcmVhdGUuYnJlYWRjcnVtYnNfZmlyc3RcIixcbiAgICAgICAgdXJsOiBcImhvbWVcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwic2FsZXMuaW52b2ljZXMuY3JlYXRlLmJyZWFkY3J1bWJzX3NlY29uZFwiLFxuICAgICAgICB1cmw6IFwiaW52b2ljZXMuaW5kZXhcIixcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwic2FsZXMuaW52b2ljZXMuY3JlYXRlLmJyZWFkY3J1bWJzX2FjdGl2ZVwiLFxuICAgICAgICB1cmw6IFwiXCIsXG4gICAgICB9LFxuICAgIF0sXG4gICAgZm9ybTogbmV3IEZvcm0oe1xuICAgICAgaW52b2ljZU5vOiBcIlwiLFxuICAgICAgY2xpZW50OiBcIlwiLFxuICAgICAgcmVmZXJlbmNlOiBcIlwiLFxuICAgICAgc2VsZWN0ZWRQcm9kdWN0czogW10sXG4gICAgICBzdWJUb3RhbDogMCxcbiAgICAgIG5ldFRvdGFsOiAwLFxuICAgICAgZGlzY291bnRUeXBlOiAwLFxuICAgICAgZGlzY291bnQ6IFwiXCIsXG4gICAgICB0b3RhbERpc2NvdW50OiBcIlwiLFxuICAgICAgdHJhbnNwb3J0Q29zdDogXCJcIixcbiAgICAgIG9yZGVyVGF4OiBcIlwiLFxuICAgICAgdG90YWxUYXg6IDAsXG4gICAgICBwcm9kdWN0VG90YWxUYXg6IDAsXG4gICAgICBhY2NvdW50OiBcIlwiLFxuICAgICAgdG90YWxQYWlkOiBcIlwiLFxuICAgICAgZHVlQW1vdW50OiBcIlwiLFxuICAgICAgcG9SZWZlcmVuY2U6IFwiXCIsXG4gICAgICBwYXltZW50VGVybXM6IFwiXCIsXG4gICAgICBkZWxpdmVyeVBsYWNlOiBcIlwiLFxuICAgICAgYWRkUGF5bWVudDogXCJcIixcbiAgICAgIGNoZXF1ZU5vOiBcIlwiLFxuICAgICAgcmVjZWlwdE5vOiBcIlwiLFxuICAgICAgZGF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLnNsaWNlKDAsIDEwKSxcbiAgICAgIG5vdGU6IFwiXCIsXG4gICAgICBzdGF0dXM6IDEsXG4gICAgICBpc1NlbmRFbWFpbDogZmFsc2UsXG4gICAgICBpc1NlbmRTTVM6IGZhbHNlLFxuICAgIH0pLFxuICAgIHByb2R1Y3RzOiBcIlwiLFxuICAgIGFjY291bnRzOiBcIlwiLFxuICAgIHRheGVzOiBcIlwiLFxuICAgIHByZWZpeDogXCJcIixcbiAgICBpc0RlbW9Nb2RlOiB3aW5kb3cuY29uZmlnLmlzRGVtb01vZGUsXG4gIH0pLFxuICBjb21wdXRlZDoge1xuICAgIC4uLm1hcEdldHRlcnMoXCJvcGVyYXRpb25zXCIsIFtcIml0ZW1zXCIsIFwiYXBwSW5mb1wiXSksXG4gIH0sXG4gIGNyZWF0ZWQoKSB7XG4gICAgdGhpcy5nZXRDbGllbnRzKCk7XG4gICAgdGhpcy5nZXRQcm9kdWN0cygpO1xuICAgIHRoaXMuZ2V0QWNjb3VudHMoKTtcbiAgICB0aGlzLmdldFRheGVzKCk7XG4gICAgdGhpcy5wcmVmaXggPSB0aGlzLmFwcEluZm8ucHJvZHVjdFByZWZpeDtcbiAgfSxcbiAgbWV0aG9kczoge1xuICAgIC8vIGdldCBhbGwgY2xpZW50c1xuICAgIGFzeW5jIGdldENsaWVudHMoKSB7XG4gICAgICBhd2FpdCB0aGlzLiRzdG9yZS5kaXNwYXRjaChcIm9wZXJhdGlvbnMvYWxsRGF0YVwiLCB7XG4gICAgICAgIHBhdGg6IFwiL2FwaS9hbGwtY2xpZW50c1wiLFxuICAgICAgfSk7XG4gICAgICAvLyBhc3NpZ24gZGVmYXVsdCBjbGllbnRcbiAgICAgIGlmICh0aGlzLml0ZW1zICYmIHRoaXMuaXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICBsZXQgZGVmYXVsdENsaWVudFNsdWcgPSB0aGlzLmFwcEluZm8uZGVmYXVsdENsaWVudFNsdWc7XG4gICAgICAgIHRoaXMuZm9ybS5jbGllbnQgPSB0aGlzLml0ZW1zLmZpbmQoXG4gICAgICAgICAgKGl0ZW0pID0+IGl0ZW0uc2x1ZyA9PT0gZGVmYXVsdENsaWVudFNsdWdcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8gZ2V0IHByb2R1Y3RzXG4gICAgYXN5bmMgZ2V0UHJvZHVjdHMoKSB7XG4gICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIFwiL2FwaS9hbGwtcHJvZHVjdHNcIlxuICAgICAgKTtcbiAgICAgIHRoaXMucHJvZHVjdHMgPSBkYXRhLmRhdGE7XG4gICAgICB0aGlzLnByb2R1Y3RzLnNvcnQodGhpcy5zb3J0UHJvZHVjdHMpO1xuICAgIH0sXG5cbiAgICAvLyBzb3J0IHByb2R1Y3RzXG4gICAgc29ydFByb2R1Y3RzKGEsIGIpIHtcbiAgICAgIGlmIChOdW1iZXIoYS5jb2RlKSA8IE51bWJlcihiLmNvZGUpKSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICAgIH1cbiAgICAgIGlmIChOdW1iZXIoYS5jb2RlKSA+IE51bWJlcihiLmNvZGUpKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfSxcblxuICAgIC8vIGdldCBhY2NvdW50c1xuICAgIGFzeW5jIGdldEFjY291bnRzKCkge1xuICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBheGlvcy5nZXQoXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvYWxsLWFjY291bnRzXCJcbiAgICAgICk7XG4gICAgICB0aGlzLmFjY291bnRzID0gZGF0YS5kYXRhO1xuICAgICAgLy8gYXNzaWduIGRlZmF1bHQgYWNjb3VudFxuICAgICAgaWYgKHRoaXMuYWNjb3VudHMgJiYgdGhpcy5hY2NvdW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGxldCBkZWZhdWx0QWNjb3VudFNsdWcgPSB0aGlzLmFwcEluZm8uZGVmYXVsdEFjY291bnRTbHVnO1xuICAgICAgICB0aGlzLmZvcm0uYWNjb3VudCA9IHRoaXMuYWNjb3VudHMuZmluZChcbiAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5zbHVnID09PSBkZWZhdWx0QWNjb3VudFNsdWdcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8gZ2V0IHRheGVzXG4gICAgYXN5bmMgZ2V0VGF4ZXMoKSB7XG4gICAgICBjb25zdCB7IGRhdGEgfSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIFwiL2FwaS9hbGwtdmF0LXJhdGVzXCJcbiAgICAgICk7XG4gICAgICB0aGlzLnRheGVzID0gZGF0YS5kYXRhO1xuICAgICAgLy8gYXNzaWduIGRlZmF1bHQgdmF0IHJhdGVcbiAgICAgIGlmICh0aGlzLnRheGVzICYmIHRoaXMudGF4ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBsZXQgZGVmYXVsdFZhdFJhdGVTbHVnID0gdGhpcy5hcHBJbmZvLmRlZmF1bHRWYXRSYXRlU2x1ZztcbiAgICAgICAgdGhpcy5mb3JtLm9yZGVyVGF4ID0gdGhpcy50YXhlcy5maW5kKFxuICAgICAgICAgICh0YXgpID0+IHRheC5zbHVnID09PSBkZWZhdWx0VmF0UmF0ZVNsdWdcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FsY3VsYXRlU3VtKCk7XG4gICAgfSxcblxuICAgIC8vIHN0b3JlIGl0ZW0gaW4gYXJyYXlcbiAgICBzdG9yZVByb2R1Y3QocHJvZHVjdCkge1xuICAgICAgdmFyIGluZGV4ID0gdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHMuZmluZEluZGV4KFxuICAgICAgICAoeCkgPT4geC5pZCA9PSBwcm9kdWN0LmlkXG4gICAgICApO1xuICAgICAgbGV0IHF1YW50aXR5ID0gMTtcbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgbGV0IHByb2R1Y3RUYXggPVxuICAgICAgICAgIHByb2R1Y3QudGF4VHlwZSA9PSBcIkV4Y2x1c2l2ZVwiXG4gICAgICAgICAgICA/IHByb2R1Y3QucHJpY2VXaXRoRGlzY291bnQgKiAocHJvZHVjdC50YXhSYXRlIC8gMTAwKVxuICAgICAgICAgICAgOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50IC1cbiAgICAgICAgICAgIHByb2R1Y3QucHJpY2VXaXRoRGlzY291bnQgLyAoMSArIHByb2R1Y3QudGF4UmF0ZSAvIDEwMCk7XG4gICAgICAgIGxldCB0b3RhbFRheCA9IHByb2R1Y3RUYXggKiBxdWFudGl0eTtcblxuICAgICAgICB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy51bnNoaWZ0KHtcbiAgICAgICAgICBpZDogcHJvZHVjdC5pZCxcbiAgICAgICAgICBzbHVnOiBwcm9kdWN0LnNsdWcsXG4gICAgICAgICAgbmFtZTogcHJvZHVjdC5uYW1lLFxuICAgICAgICAgIGNvZGU6IHByb2R1Y3QuY29kZSxcbiAgICAgICAgICB0YXhUeXBlOiBwcm9kdWN0LnRheFR5cGUsXG4gICAgICAgICAgdGF4UmF0ZTogcHJvZHVjdC50YXhSYXRlLFxuICAgICAgICAgIHF0eTogcXVhbnRpdHksXG4gICAgICAgICAgaW52ZW50b3J5Q291bnQ6IHByb2R1Y3QuaW52ZW50b3J5Q291bnQsXG4gICAgICAgICAgYXZnUHVyY2hhc2VQcmljZTogcHJvZHVjdC5hdmdQdXJjaGFzZVByaWNlLFxuICAgICAgICAgIHVuaXRQcmljZTogcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCxcbiAgICAgICAgICB1bml0Q29zdDpcbiAgICAgICAgICAgIHByb2R1Y3QudGF4VHlwZSA9PSBcIkV4Y2x1c2l2ZVwiXG4gICAgICAgICAgICAgID8gcHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCArIHByb2R1Y3RUYXhcbiAgICAgICAgICAgICAgOiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgIHRvdGFsUHJpY2U6XG4gICAgICAgICAgICBwcm9kdWN0LnRheFR5cGUgPT0gXCJFeGNsdXNpdmVcIlxuICAgICAgICAgICAgICA/IDEgKiAocHJvZHVjdC5wcmljZVdpdGhEaXNjb3VudCArIHRvdGFsVGF4KVxuICAgICAgICAgICAgICA6IDEgKiBwcm9kdWN0LnByaWNlV2l0aERpc2NvdW50LFxuICAgICAgICAgIHByb2R1Y3RUYXg6IHByb2R1Y3QucHJvZHVjdFRheCA+IDAgPyBwcm9kdWN0LnByb2R1Y3RUYXggOiAwLFxuICAgICAgICAgIHRvdGFsVGF4OiB0b3RhbFRheCxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLmdlbmVyYXRlSXRlbVRvdGFsKHF1YW50aXR5LCBcInF0eVwiLCBpbmRleCwgXCJcIik7XG4gICAgICByZXR1cm47XG4gICAgfSxcblxuICAgIC8vIHVwZGF0ZSBhcnJheVxuICAgIGdlbmVyYXRlSXRlbVRvdGFsKHZhbHVlLCB0eXBlLCBpbmRleCwgYWN0aW9uKSB7XG4gICAgICBsZXQgaXRlbSA9IHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzW2luZGV4XTtcbiAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgIGlmICh0eXBlID09IFwicXR5XCIpIHtcbiAgICAgICAgICBpdGVtLnF0eSA9IHZhbHVlO1xuICAgICAgICAgIGlmIChhY3Rpb24gPT0gXCJpbmNyZW1lbnRcIikge1xuICAgICAgICAgICAgaXRlbS5xdHkgPSBOdW1iZXIoaXRlbS5xdHkpICsgMTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbiA9PSBcImRlY3JlbWVudFwiKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS5xdHkgPiAwKSB7XG4gICAgICAgICAgICAgIGl0ZW0ucXR5ID0gTnVtYmVyKGl0ZW0ucXR5KSAtIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGl0ZW0udW5pdFByaWNlID0gdmFsdWU7XG4gICAgICAgICAgaWYgKGFjdGlvbiA9PSBcImluY3JlbWVudFwiKSB7XG4gICAgICAgICAgICBpdGVtLnVuaXRQcmljZSA9IE51bWJlcihpdGVtLnVuaXRQcmljZSkgKyAxO1xuICAgICAgICAgIH0gZWxzZSBpZiAoYWN0aW9uID09IFwiZGVjcmVtZW50XCIpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLnVuaXRQcmljZSA+IDApIHtcbiAgICAgICAgICAgICAgaXRlbS51bml0UHJpY2UgPSBOdW1iZXIoaXRlbS51bml0UHJpY2UpIC0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaXRlbS5wcm9kdWN0VGF4ID1cbiAgICAgICAgICBpdGVtLnRheFR5cGUgPT0gXCJFeGNsdXNpdmVcIlxuICAgICAgICAgICAgPyBpdGVtLnVuaXRQcmljZSAqIChpdGVtLnRheFJhdGUgLyAxMDApXG4gICAgICAgICAgICA6IGl0ZW0udW5pdFByaWNlIC0gaXRlbS51bml0UHJpY2UgLyAoMSArIGl0ZW0udGF4UmF0ZSAvIDEwMCk7XG5cbiAgICAgICAgaXRlbS50b3RhbFRheCA9IGl0ZW0ucHJvZHVjdFRheCAqIGl0ZW0ucXR5O1xuXG4gICAgICAgIGl0ZW0udG90YWxQcmljZSA9XG4gICAgICAgICAgaXRlbS50YXhUeXBlID09IFwiRXhjbHVzaXZlXCJcbiAgICAgICAgICAgID8gaXRlbS5xdHkgKiBpdGVtLnVuaXRQcmljZSArIGl0ZW0udG90YWxUYXhcbiAgICAgICAgICAgIDogaXRlbS5xdHkgKiBpdGVtLnVuaXRQcmljZTtcbiAgICAgICAgaXRlbS51bml0Q29zdCA9XG4gICAgICAgICAgaXRlbS50YXhUeXBlID09IFwiRXhjbHVzaXZlXCJcbiAgICAgICAgICAgID8gTnVtYmVyKGl0ZW0udW5pdFByaWNlKSArIE51bWJlcihpdGVtLnByb2R1Y3RUYXgpXG4gICAgICAgICAgICA6IGl0ZW0udW5pdFByaWNlO1xuICAgICAgICB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0c1tpbmRleF0gPSBpdGVtO1xuICAgICAgfVxuICAgICAgdGhpcy5jYWxjdWxhdGVTdW0oKTtcbiAgICAgIHJldHVybjtcbiAgICB9LFxuXG4gICAgLy8gcmVtb3ZlIGl0ZW0gZnJvbSBhcnJheVxuICAgIHJlbW92ZUl0ZW0oaXRlbSkge1xuICAgICAgbGV0IGluZGV4ID0gdGhpcy5mb3JtLnNlbGVjdGVkUHJvZHVjdHMuaW5kZXhPZihpdGVtKTtcbiAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgIHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICB9XG4gICAgICB0aGlzLmNhbGN1bGF0ZVN1bSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH0sXG5cbiAgICAvLyBjYWxjdWxhdGUgc3VtXG4gICAgY2FsY3VsYXRlU3VtKCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHN1YnRvdGFsXG4gICAgICB0aGlzLmZvcm0uc3ViVG90YWwgPSB0aGlzLmZvcm0uc2VsZWN0ZWRQcm9kdWN0cy5yZWR1Y2UoZnVuY3Rpb24gKFxuICAgICAgICBwcmV2LFxuICAgICAgICBjdXJcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gTnVtYmVyKChwcmV2ICsgY3VyLnRvdGFsUHJpY2UpLnRvRml4ZWQoMikpO1xuICAgICAgfSxcbiAgICAgICAgMCk7XG5cbiAgICAgIC8vIGNhbGN1bGF0ZSBwcm9kdWN0IHRheFxuICAgICAgdGhpcy5mb3JtLnByb2R1Y3RUb3RhbFRheCA9IHRoaXMuZm9ybS5zZWxlY3RlZFByb2R1Y3RzLnJlZHVjZShmdW5jdGlvbiAoXG4gICAgICAgIHByZXYsXG4gICAgICAgIGN1clxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBOdW1iZXIoKHByZXYgKyBjdXIudG90YWxUYXgpLnRvRml4ZWQoMikpO1xuICAgICAgfSxcbiAgICAgICAgMCk7XG5cbiAgICAgIHRoaXMuZm9ybS5uZXRUb3RhbCA9IHRoaXMuZm9ybS5zdWJUb3RhbDtcblxuICAgICAgLy8gY2FsY3VsYXRlIHF1YXRhdGlvbiB0YXhcbiAgICAgIHRoaXMuZm9ybS50b3RhbFRheCA9IDA7XG4gICAgICBpZiAodGhpcy5mb3JtLm9yZGVyVGF4KSB7XG4gICAgICAgIHRoaXMuZm9ybS50b3RhbFRheCA9XG4gICAgICAgICAgKHRoaXMuZm9ybS5vcmRlclRheC5yYXRlIC8gMTAwKSAqIHRoaXMuZm9ybS5zdWJUb3RhbDtcbiAgICAgIH1cblxuICAgICAgLy8gY2FsY3VsYXRlIGRpc2NvdW50IGFuZCB0b3RhbFxuICAgICAgaWYgKHRoaXMuZm9ybS5zdWJUb3RhbCA+IDApIHtcbiAgICAgICAgbGV0IGRpc2NvdW50ID0gTnVtYmVyKHRoaXMuZm9ybS5kaXNjb3VudCk7XG4gICAgICAgIGlmICh0aGlzLmZvcm0uZGlzY291bnRUeXBlID09IDEpIHtcbiAgICAgICAgICBkaXNjb3VudCA9IChkaXNjb3VudCAvIDEwMCkgKiB0aGlzLmZvcm0uc3ViVG90YWw7XG4gICAgICAgICAgdGhpcy5mb3JtLnRvdGFsRGlzY291bnQgPSBOdW1iZXIoZGlzY291bnQudG9GaXhlZCgyKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZGlzY291bnQgPSBOdW1iZXIodGhpcy5mb3JtLmRpc2NvdW50KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZvcm0ubmV0VG90YWwgPVxuICAgICAgICAgIHRoaXMuZm9ybS5zdWJUb3RhbCArXG4gICAgICAgICAgTnVtYmVyKHRoaXMuZm9ybS50cmFuc3BvcnRDb3N0KSAtXG4gICAgICAgICAgZGlzY291bnQgK1xuICAgICAgICAgIHRoaXMuZm9ybS50b3RhbFRheDtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9LFxuXG4gICAgLy8gdnVlIGZpbGUgdXBsb2FkXG4gICAgb25GaWxlQ2hhbmdlKGUpIHtcbiAgICAgIGNvbnN0IGZpbGUgPSBlLnRhcmdldC5maWxlc1swXTtcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICBpZiAoXG4gICAgICAgIGZpbGUuc2l6ZSA8IDIxMTE3NzUgJiZcbiAgICAgICAgKGZpbGUudHlwZSA9PT0gXCJpbWFnZS9qcGVnXCIgfHxcbiAgICAgICAgICBmaWxlLnR5cGUgPT09IFwiaW1hZ2UvcG5nXCIgfHxcbiAgICAgICAgICBmaWxlLnR5cGUgPT09IFwiaW1hZ2UvZ2lmXCIpXG4gICAgICApIHtcbiAgICAgICAgcmVhZGVyLm9ubG9hZGVuZCA9IChmaWxlKSA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtQ2xpZW50LmltYWdlID0gcmVhZGVyLnJlc3VsdDtcbiAgICAgICAgfTtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XG4gICAgICAgIHRoaXMudXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIFN3YWwuZmlyZShcbiAgICAgICAgICB0aGlzLiR0KFwiY29tbW9uLmVycm9yXCIpLFxuICAgICAgICAgIHRoaXMuJHQoXCJjb21tb24uaW1hZ2VfZXJyb3JcIiksXG4gICAgICAgICAgXCJlcnJvclwiXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIC8vIHNhdmUgaW52b2ljZVxuICAgIGFzeW5jIHNhdmVJbnZvaWNlKCkge1xuICAgICAgYXdhaXQgdGhpcy5mb3JtXG4gICAgICAgIC5wb3N0KHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvaW52b2ljZXNcIilcbiAgICAgICAgLnRoZW4oKHsgZGF0YSB9KSA9PiB7XG4gICAgICAgICAgdG9hc3QuZmlyZSh7XG4gICAgICAgICAgICB0eXBlOiBcInN1Y2Nlc3NcIixcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLiR0KFwic2FsZXMuaW52b2ljZXMuY3JlYXRlLnN1Y2Nlc3NfbXNnXCIpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IFwiaW52b2ljZXMuc2hvd1wiLFxuICAgICAgICAgICAgcGFyYW1zOiB7IHNsdWc6IGRhdGEuZGF0YS5zbHVnIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgdG9hc3QuZmlyZSh7IHR5cGU6IFwiZXJyb3JcIiwgdGl0bGU6IHRoaXMuJHQoXCJjb21tb24uZXJyb3JfbXNnXCIpIH0pO1xuICAgICAgICB9KTtcbiAgICB9LFxuXG4gICAgLy8gc2F2ZSBjbGllbnRcbiAgICBhc3luYyBzYXZlQ2xpZW50KCkge1xuICAgICAgYXdhaXQgdGhpcy5mb3JtQ2xpZW50XG4gICAgICAgIC5wb3N0KHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBcIi9hcGkvY2xpZW50c1wiKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgdG9hc3QuZmlyZSh7XG4gICAgICAgICAgICB0eXBlOiBcInN1Y2Nlc3NcIixcbiAgICAgICAgICAgIHRpdGxlOiB0aGlzLiR0KFwiY2xpZW50cy5jcmVhdGUuc3VjY2Vzc19tc2dcIiksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5zaG93Q2xpZW50Q3JlYXRlTW9kYWwgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmdldENsaWVudHMoKTtcbiAgICAgICAgICB0aGlzLmZvcm1DbGllbnQucmVzZXQoKTtcbiAgICAgICAgICB0aGlzLnVybCA9IG51bGw7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgdG9hc3QuZmlyZSh7IHR5cGU6IFwiZXJyb3JcIiwgdGl0bGU6IHRoaXMuJHQoXCJjb21tb24uZXJyb3JfbXNnXCIpIH0pO1xuICAgICAgICB9KTtcbiAgICB9LFxuICB9LFxufTtcbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuLmNyZWF0ZS1idG4ge1xuICBwYWRkaW5nOiAxMXB4O1xufVxuPC9zdHlsZT5cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&\n"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=template&id=34a196a9&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/invoices/create.vue?vue&type=template&id=34a196a9&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.invoices.create.form_title\")) + \"\\n \")]), _vm._v(\" \"), _c(\"router-link\", {\n staticClass: \"btn btn-dark float-right\",\n attrs: {\n to: {\n name: \"invoices.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.saveInvoice.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(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"col\"\n }, [_c(\"div\", {\n staticClass: \"d-flex w-100\"\n }, [_c(\"v-select\", {\n staticClass: \"flex-grow-1\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"client\")\n },\n attrs: {\n options: _vm.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(\"ClientCreateModal\", {\n on: {\n reloadClients: _vm.getClients\n }\n }, [_c(\"div\", {\n staticClass: \"input-group-text create-btn\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-solid fa-plus-circle\"\n })])])], 1), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"client\"\n }\n })], 1)])]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-md-6\"\n }, [_c(\"label\", {\n attrs: {\n \"for\": \"reference\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.reference\")) + \"\\n \")]), _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(\"div\", {\n staticClass: \"row\"\n }, [_c(\"div\", {\n staticClass: \"col\"\n }, [_c(\"div\", {\n staticClass: \"d-flex w-100\"\n }, [_c(\"v-select\", {\n staticClass: \"flex-grow-1\",\n \"class\": {\n \"is-invalid\": _vm.form.errors.has(\"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(\"ProductCreateModal\", {\n on: {\n reloadProducts: _vm.getProducts\n }\n }, [_c(\"div\", {\n staticClass: \"input-group-text create-btn\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-solid fa-plus-circle\"\n })])])], 1), _vm._v(\" \"), _c(\"has-error\", {\n attrs: {\n form: _vm.form,\n field: \"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 text-center\"\n }, [_c(\"thead\", [_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_price\")))]), _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(\"\\n \" + _vm._s(_vm._f(\"withPrefix\")(item.code, _vm.prefix)) + \"\\n \")]), _vm._v(\" \"), _c(\"td\", [Number(item.inventoryCount) < Number(item.qty) ? _c(\"span\", {\n directives: [{\n name: \"tooltip\",\n rawName: \"v-tooltip\",\n value: _vm.$t(\"common.insufficient_stock\"),\n expression: \"$t('common.insufficient_stock')\"\n }],\n staticClass: \"badge badge-danger p-2\"\n }, [_c(\"i\", {\n staticClass: \"fas fa-exclamation\"\n })]) : _vm._e(), _vm._v(\" \"), _vm.$can(\"product-view\") ? _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 \")]) : _c(\"span\", [_vm._v(_vm._s(item.name))])], 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: \"any\",\n id: \"Qty-\".concat(i),\n name: \"quantity\",\n required: \"\",\n min: \"1\",\n max: item.inventoryCount,\n placeholder: \"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\": \"unitPrice\"\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: \"unitPrice\",\n step: \"any\",\n id: \"unitPrice-\".concat(i),\n name: \"unitPrice\",\n required: \"\",\n min: \"0\"\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\": \"unitPrice\"\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\", [_c(\"strong\", [_vm._v(_vm._s(_vm._f(\"withCurrency\")(_vm.form.subTotal)))])]), _vm._v(\" \"), _c(\"td\")])], 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.subTotal,\n name: \"discount\",\n placeholder: _vm.$t(\"common.discount_placeholder\")\n },\n domProps: {\n value: _vm.form.discount\n },\n on: {\n change: _vm.calculateSum,\n keyup: _vm.calculateSum,\n input: function input($event) {\n if ($event.target.composing) return;\n _vm.$set(_vm.form, \"discount\", $event.target.value);\n }\n }\n }), _vm._v(\" \"), _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: \"Select a tax type\"\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 disabled: !_vm.form.selectedProducts,\n value: \"1\"\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.$t(\"common.yes\")) + \"\\n \")]), _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-4\"\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-2\"\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-3\"\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-3\"\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: \"form-group col-12 d-flex flex-wrap\"\n }, [_c(\"div\", {\n staticClass: \"pr-5\"\n }, [_c(\"toggle-button\", {\n attrs: {\n disabled: _vm.isDemoMode\n },\n model: {\n value: _vm.form.isSendEmail,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"isSendEmail\", $$v);\n },\n expression: \"form.isSendEmail\"\n }\n }), _vm._v(\"\\n \" + _vm._s(_vm.$t(\"Send To Email\")) + \"\\n \")], 1)]), _vm._v(\" \"), _c(\"div\", {\n staticClass: \"form-group col-12 d-flex flex-wrap\"\n }, [_c(\"div\", {\n staticClass: \"pr-5\"\n }, [_c(\"toggle-button\", {\n attrs: {\n disabled: _vm.isDemoMode\n },\n model: {\n value: _vm.form.isSendSMS,\n callback: function callback($$v) {\n _vm.$set(_vm.form, \"isSendSMS\", $$v);\n },\n expression: \"form.isSendSMS\"\n }\n }), _vm._v(\"\\n \" + _vm._s(_vm.$t(\"Send To SMS\")) + \"\\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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT8wOGJmIl0sIm5hbWVzIjpbInJlbmRlciIsIl92bSIsIl9jIiwiX3NlbGYiLCJhdHRycyIsIml0ZW1zIiwiYnJlYWRjcnVtYnMiLCJjdXJyZW50IiwiYnJlYWRjcnVtYnNDdXJyZW50IiwiX3YiLCJzdGF0aWNDbGFzcyIsIl9zIiwiJHQiLCJ0byIsIm5hbWUiLCJyb2xlIiwib24iLCJzdWJtaXQiLCIkZXZlbnQiLCJwcmV2ZW50RGVmYXVsdCIsInNhdmVJbnZvaWNlIiwiYXBwbHkiLCJhcmd1bWVudHMiLCJrZXlkb3duIiwiZm9ybSIsIm9uS2V5ZG93biIsImVycm9ycyIsImhhcyIsIm9wdGlvbnMiLCJsYWJlbCIsInBsYWNlaG9sZGVyIiwibW9kZWwiLCJ2YWx1ZSIsImNsaWVudCIsImNhbGxiYWNrIiwiJCR2IiwiJHNldCIsImV4cHJlc3Npb24iLCJyZWxvYWRDbGllbnRzIiwiZ2V0Q2xpZW50cyIsImZpZWxkIiwiZGlyZWN0aXZlcyIsInJhd05hbWUiLCJyZWZlcmVuY2UiLCJpZCIsInR5cGUiLCJkb21Qcm9wcyIsImlucHV0IiwidGFyZ2V0IiwiY29tcG9zaW5nIiwiX2UiLCJwcm9kdWN0cyIsInN0b3JlUHJvZHVjdCIsInByb2R1Y3QiLCJyZWxvYWRQcm9kdWN0cyIsImdldFByb2R1Y3RzIiwic2VsZWN0ZWRQcm9kdWN0cyIsImxlbmd0aCIsIl9sIiwiaXRlbSIsImkiLCJrZXkiLCJfZiIsImNvZGUiLCJwcmVmaXgiLCJOdW1iZXIiLCJpbnZlbnRvcnlDb3VudCIsInF0eSIsIiRjYW4iLCJwYXJhbXMiLCJzbHVnIiwiY2xpY2siLCJnZW5lcmF0ZUl0ZW1Ub3RhbCIsInN0ZXAiLCJjb25jYXQiLCJyZXF1aXJlZCIsIm1pbiIsIm1heCIsImNoYW5nZSIsImtleXVwIiwidW5pdFByaWNlIiwidW5pdENvc3QiLCJ0b3RhbFRheCIsInRvdGFsUHJpY2UiLCJyZW1vdmVJdGVtIiwiY29sc3BhbiIsInByb2R1Y3RUb3RhbFRheCIsInN1YlRvdGFsIiwiZGlzY291bnRUeXBlIiwiJCRzZWxlY3RlZFZhbCIsIkFycmF5IiwicHJvdG90eXBlIiwiZmlsdGVyIiwiY2FsbCIsIm8iLCJzZWxlY3RlZCIsIm1hcCIsInZhbCIsIl92YWx1ZSIsIm11bHRpcGxlIiwiY2FsY3VsYXRlU3VtIiwiZGlzY291bnQiLCJ0b3RhbERpc2NvdW50IiwicmVhZG9ubHkiLCJ0cmFuc3BvcnRDb3N0IiwidGF4ZXMiLCJvcmRlclRheCIsIm5ldFRvdGFsIiwicG9SZWZlcmVuY2UiLCJwYXltZW50VGVybXMiLCJhZGRQYXltZW50IiwiZGlzYWJsZWQiLCJhY2NvdW50cyIsImFjY291bnQiLCJwYWlkQW1vdW50IiwiY2hlcXVlTm8iLCJyZWNlaXB0Tm8iLCJkZWxpdmVyeVBsYWNlIiwiZGF0ZSIsInN0YXR1cyIsIm5vdGUiLCJpc0RlbW9Nb2RlIiwiaXNTZW5kRW1haWwiLCJpc1NlbmRTTVMiLCJsb2FkaW5nIiwiYnVzeSIsInJlc2V0Iiwic3RhdGljUmVuZGVyRm5zIiwiX3dpdGhTdHJpcHBlZCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUEsSUFBSUEsTUFBTSxHQUFHLFNBQVNBLE1BQU1BLENBQUEsRUFBRztFQUM3QixJQUFJQyxHQUFHLEdBQUcsSUFBSTtJQUNaQyxFQUFFLEdBQUdELEdBQUcsQ0FBQ0UsS0FBSyxDQUFDRCxFQUFFO0VBQ25CLE9BQU9BLEVBQUUsQ0FDUCxLQUFLLEVBQ0wsQ0FDRUEsRUFBRSxDQUFDLGFBQWEsRUFBRTtJQUNoQkUsS0FBSyxFQUFFO01BQUVDLEtBQUssRUFBRUosR0FBRyxDQUFDSyxXQUFXO01BQUVDLE9BQU8sRUFBRU4sR0FBRyxDQUFDTztJQUFtQjtFQUNuRSxDQUFDLENBQUMsRUFDRlAsR0FBRyxDQUFDUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ1hQLEVBQUUsQ0FBQyxLQUFLLEVBQUU7SUFBRVEsV0FBVyxFQUFFO0VBQU0sQ0FB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LENBQUMsSUFBSSxFQUFFLENBQ1BBLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FDUEQsR0FBRyxDQUFDUSxFQUFFLENBQUNSLEdBQUcsQ0FBQ1UsRUFBRSxDQUFDVixHQUFHLENBQUNXLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQ3RDLENBQUMsRUFDRlgsR0FBRyxDQUFDUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ1hQLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FDUEQsR0FBRyxDQUFDUSxFQUFFLENBQUNSLEdBQUcsQ0FBQ1UsRUFBRSxDQUFDVixHQUFHLENBQUNXLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQ3RDLENBQUMsRUFDRlgsR0FBRyxDQUFDUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ1hQLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FDUEQsR0FBRyxDQUFDUSxFQUFFLENBQ0pSLEdBQUcsQ0FBQ1UsRUFBRSxDQUFDVixHQUFHLENBQUNXLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUN0QyxDQUFDLENBQ0YsQ0FBQyxFQUNGWCxHQUFHLENBQUNRLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFDWFAsRUFBRSxDQUFDLElBQUksRUFBRSxDQUNQRCxHQUFHLENBQUNRLEVBQUUsQ0FBQ1IsR0FBRyxDQUFDVSxFQUFFLENBQUNWLEdBQUcsQ0FBQ1csRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUMxQyxDQUFDLEVBQ0ZYLEdBQUcsQ0FBQ1EsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUNYUCxFQUFFLENBQUMsSUFBSSxFQUFFLENBQ1BELEdBQUcsQ0FBQ1EsRUFBRSxDQUFDUixHQUFHLENBQUNVLEVBQUUsQ0FBQ1YsR0FBRyxDQUFDVyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUN2QyxDQUFDLEVBQ0ZYLEdBQUcsQ0FBQ1EsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUNYUCxFQUFFLENBQUMsSUFBSSxFQUFFLENBQ1BELEdBQUcsQ0FBQ1EsRUFBRSxDQUNKUixH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QUFFLENBQ0osR0FBRyxHQUNEUixHQUFHLENBQUNVLEVBQUUsQ0FBQ1YsR0FBRyxDQUFDVyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsR0FDOUIsZ0JBQ0osQ0FBQyxDQUVMLENBQUMsQ0FDRixFQUNELENBQ0YsQ0FBQyxDQUVMLENBQUMsQ0FDRixDQUFDLENBQ0gsQ0FBQyxDQUNILENBQUMsQ0FDSCxFQUNELENBQ0YsQ0FBQztBQUNILENBQUM7QUFDRCxJQUFJbUgsZUFBZSxHQUFHLEVBQUU7QUFDeEIvSCxNQUFNLENBQUNnSSxhQUFhLEdBQUcsSUFBSSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3RlbXBsYXRlTG9hZGVyLmpzPyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8hLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gcmVuZGVyKCkge1xuICB2YXIgX3ZtID0gdGhpcyxcbiAgICBfYyA9IF92bS5fc2VsZi5fY1xuICByZXR1cm4gX2MoXG4gICAgXCJkaXZcIixcbiAgICBbXG4gICAgICBfYyhcImJyZWFkY3J1bWJzXCIsIHtcbiAgICAgICAgYXR0cnM6IHsgaXRlbXM6IF92bS5icmVhZGNydW1icywgY3VycmVudDogX3ZtLmJyZWFkY3J1bWJzQ3VycmVudCB9LFxuICAgICAgfSksXG4gICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiY29sLWxnLTEyIGNvbC14bC0xMlwiIH0sIFtcbiAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcImNhcmRcIiB9LCBbXG4gICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJjYXJkLWhlYWRlclwiIH0sXG4gICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICBfYyhcImgzXCIsIHsgc3RhdGljQ2xhc3M6IFwiY2FyZC10aXRsZVwiIH0sIFtcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcInNhbGVzLmludm9pY2VzLmNyZWF0ZS5mb3JtX3RpdGxlXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgIFwicm91dGVyLWxpbmtcIixcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiYnRuIGJ0bi1kYXJrIGZsb2F0LXJpZ2h0XCIsXG4gICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IHRvOiB7IG5hbWU6IFwiaW52b2ljZXMuaW5kZXhcIiB9IH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcImlcIiwgeyBzdGF0aWNDbGFzczogXCJmYXMgZmEtbG9uZy1hcnJvdy1hbHQtbGVmdFwiIH0pLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgXCIgXCIgKyBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmJhY2tcIikpICsgXCJcXG4gICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAxXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICBcImZvcm1cIixcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGF0dHJzOiB7IHJvbGU6IFwiZm9ybVwiIH0sXG4gICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgIHN1Ym1pdDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLnNhdmVJbnZvaWNlLmFwcGx5KG51bGwsIGFyZ3VtZW50cylcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBrZXlkb3duOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZm9ybS5vbktleWRvd24oJGV2ZW50KVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJjYXJkLWJvZHlcIiB9LCBbXG4gICAgICAgICAgICAgICAgICBfdm0uaXRlbXNcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNlwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJjbGllbnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmNsaWVudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIipcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImNvbFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJkLWZsZXggdy0xMDBcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidi1zZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmbGV4LWdyb3ctMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImNsaWVudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0uaXRlbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibmFtZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiY2xpZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLmNsaWVudF9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWw6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uY2xpZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0uZm9ybSwgXCJjbGllbnRcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmNsaWVudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiQ2xpZW50Q3JlYXRlTW9kYWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBvbjogeyByZWxvYWRDbGllbnRzOiBfdm0uZ2V0Q2xpZW50cyB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaW5wdXQtZ3JvdXAtdGV4dCBjcmVhdGUtYnRuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJmYXMgZmEtc29saWQgZmEtcGx1cy1jaXJjbGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJjbGllbnRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC02XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicmVmZXJlbmNlXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24ucmVmZXJlbmNlXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ucmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5yZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicmVmZXJlbmNlXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInJlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJyZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWZlcmVuY2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWZlcmVuY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInJlZmVyZW5jZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfdm0ucHJvZHVjdHNcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtMTJcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicHJvZHVjdFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uc2VsZWN0X3Byb2R1Y3RzXCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwic3BhblwiLCB7IHN0YXRpY0NsYXNzOiBcInJlcXVpcmVkXCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiY29sXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImQtZmxleCB3LTEwMFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ2LXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZsZXgtZ3Jvdy0xXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5lcnJvcnMuaGFzKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNlbGVjdGVkUHJvZHVjdHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0ucHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IFwibGFiZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInByb2R1Y3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjb21tb24uc2VsZWN0X3Byb2R1Y3RzX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLnN0b3JlUHJvZHVjdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0ucHJvZHVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnByb2R1Y3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcInByb2R1Y3RcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnByb2R1Y3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlByb2R1Y3RDcmVhdGVNb2RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHsgcmVsb2FkUHJvZHVjdHM6IF92bS5nZXRQcm9kdWN0cyB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlucHV0LWdyb3VwLXRleHQgY3JlYXRlLWJ0blwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZmFzIGZhLXNvbGlkIGZhLXBsdXMtY2lyY2xlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybTogX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZDogXCJzZWxlY3RlZFByb2R1Y3RzXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvdyBtdC0zIG1iLTRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0YWJsZS1yZXNwb25zaXZlIHRhYmxlLWN1c3RvbSB3LTk1IG0tYXV0b1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRhYmxlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGFibGUgdGFibGUtaG92ZXIgdGFibGUtc20gdGV4dC1jZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhlYWRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidHJcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnNfbm9cIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5jb2RlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24ucHJvZHVjdF9uYW1lXCIpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnF1YW50aXR5XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucHJpY2VcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGhcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi51bml0X3ByaWNlXCIpKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRheFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0aFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnN1YnRvdGFsXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRoXCIsIHsgc3RhdGljQ2xhc3M6IFwidGV4dC1yaWdodFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWN0aW9uXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGJvZHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2woXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLnNlbGVjdGVkUHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9uIChpdGVtLCBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jKFwidHJcIiwgeyBrZXk6IGkgfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbX3ZtLl92KF92bS5fcygrK2kpKV0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhQcmVmaXhcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5jb2RlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5wcmVmaXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE51bWJlcihpdGVtLmludmVudG9yeUNvdW50KSA8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTnVtYmVyKGl0ZW0ucXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRvb2x0aXBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtdG9vbHRpcFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5pbnN1ZmZpY2llbnRfc3RvY2tcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiJHQoJ2NvbW1vbi5pbnN1ZmZpY2llbnRfc3RvY2snKVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJhZGdlIGJhZGdlLWRhbmdlciBwLTJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZmFzIGZhLWV4Y2xhbWF0aW9uXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJGNhbihcInByb2R1Y3Qtdmlld1wiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJvdXRlci1saW5rXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG86IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInByb2R1Y3RzLnNob3dcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNsdWc6IGl0ZW0uc2x1ZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoaXRlbS5uYW1lKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX2MoXCJzcGFuXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKGl0ZW0ubmFtZSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpbnB1dC1ncm91cCBjdXN0b20tcXR5LWlucHV0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b24tbWludXMgaWNvbi1zaGFwZSBpY29uLXNtIGJ0bi1kYW5nZXJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIi1cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGEtZmllbGRcIjogXCJxdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJxdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGVjcmVtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicXVhbnRpdHktZmllbGQgYm9yZGVyLTAgaW5jcmVtZW50b3JcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGBRdHktJHtpfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJxdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogXCIxXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4OiBpdGVtLmludmVudG9yeUNvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBcIlF1YW50aXR5XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBpdGVtLnF0eSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZTogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5nZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJxdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b24tcGx1cyBpY29uLXNoYXBlIGljb24tc20gYnRuLXByaW1hcnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIitcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGEtZmllbGRcIjogXCJxdWFudGl0eVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnF0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJxdHlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaW5jcmVtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaW5wdXQtZ3JvdXAgY3VzdG9tLXF0eS1pbnB1dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiYnV0dG9uLW1pbnVzIGljb24tc2hhcGUgaWNvbi1zbSBidG4tZGFuZ2VyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJidXR0b25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogXCItXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkYXRhLWZpZWxkXCI6IFwidW5pdFByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0uZ2VuZXJhdGVJdGVtVG90YWwoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udW5pdFByaWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlY3JlbWVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInF1YW50aXR5LWZpZWxkIGJvcmRlci0wIGluY3JlbWVudG9yXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJ1bml0UHJpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgdW5pdFByaWNlLSR7aX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwidW5pdFByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiBcIjBcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogaXRlbS51bml0UHJpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3ZtLmdlbmVyYXRlSXRlbVRvdGFsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInByaWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgLSAxLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5nZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJwcmljZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJidXR0b24tcGx1cyBpY29uLXNoYXBlIGljb24tc20gYnRuLXByaW1hcnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIitcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImRhdGEtZmllbGRcIjogXCJ1bml0UHJpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGljazogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5nZW5lcmF0ZUl0ZW1Ub3RhbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS51bml0UHJpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicHJpY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaW5jcmVtZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX2YoXCJ3aXRoQ3VycmVuY3lcIikoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0udW5pdENvc3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIsIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fZihcIndpdGhDdXJyZW5jeVwiKShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS50b3RhbFRheFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidGRcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnRvdGFsUHJpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0ZFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInRleHQtcmlnaHRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJidG4gYnRuLWRhbmdlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyB0eXBlOiBcImJ1dHRvblwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2s6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfdm0ucmVtb3ZlSXRlbShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZhcyBmYS10aW1lc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0clwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwidGRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJ0ZXh0LXJpZ2h0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBjb2xzcGFuOiBcIjZcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzdHJvbmdcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi50b3RhbFwiKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzdHJvbmdcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0ucHJvZHVjdFRvdGFsVGF4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ0ZFwiLCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzdHJvbmdcIiwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9mKFwid2l0aEN1cnJlbmN5XCIpKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uc3ViVG90YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRkXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICA6IF92bS5fZSgpLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFwiZGl2XCIsIHsgc3RhdGljQ2xhc3M6IFwicm93XCIgfSwgW1xuICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJkaXNjb3VudFR5cGVcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZGlzY291bnRfdHlwZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwic2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudFR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5kaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJkaXNjb3VudFR5cGVcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiZGlzY291bnRUeXBlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFR5cGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHNlbGVjdGVkVmFsID0gQXJyYXkucHJvdG90eXBlLmZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gby5zZWxlY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHZhbCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJfdmFsdWVcIiBpbiBvID8gby5fdmFsdWUgOiBvLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGlzY291bnRUeXBlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0Lm11bHRpcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJCRzZWxlY3RlZFZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICQkc2VsZWN0ZWRWYWxbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5jYWxjdWxhdGVTdW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5dXA6IF92bS5jYWxjdWxhdGVTdW0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uZml4ZWRcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnBlcmNlbnRhZ2VcIikpICsgXCIoJSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJkaXNjb3VudFR5cGVcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxID8gXCJjb2wtbWQtMlwiIDogXCJjb2wtbWQtNFwiLFxuICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJkaXNjb3VudFwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kaXNjb3VudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5kaXNjb3VudFR5cGUgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2MoXCJzcGFuXCIsIFtfdm0uX3YoXCIoJSlcIildKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmRpc2NvdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJkaXNjb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmRpc2NvdW50VHlwZSA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gMTAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLmZvcm0uc3ViVG90YWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXCJjb21tb24uZGlzY291bnRfcGxhY2Vob2xkZXJcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5kaXNjb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZTogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl1cDogX3ZtLmNhbGN1bGF0ZVN1bSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcImRpc2NvdW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybS5kaXNjb3VudFR5cGUgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtMlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInRvdGFsRGlzY291bnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRvdGFsX2Rpc2NvdW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0udG90YWxEaXNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0udG90YWxEaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInRvdGFsRGlzY291bnRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwidG90YWxEaXNjb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRvdGFsRGlzY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZG9ubHk6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLnRvdGFsRGlzY291bnQgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b3RhbERpc2NvdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJ0b3RhbERpc2NvdW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgIDogX3ZtLl9lKCksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInRyYW5zcG9ydENvc3RcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24udHJhbnNwb3J0X2Nvc3RcIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0udHJhbnNwb3J0Q29zdCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS50cmFuc3BvcnRDb3N0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJ0cmFuc3BvcnRDb3N0XCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluOiBcIjFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjb21tb24udHJhbnNwb3J0X2Nvc3RfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS50cmFuc3BvcnRDb3N0IH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXVwOiBfdm0uY2FsY3VsYXRlU3VtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInRyYW5zcG9ydENvc3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGZvcm06IF92bS5mb3JtLCBmaWVsZDogXCJ0cmFuc3BvcnRDb3N0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXCJkaXZcIiwgeyBzdGF0aWNDbGFzczogXCJyb3dcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgIF92bS50YXhlc1xuICAgICAgICAgICAgICAgICAgICAgID8gX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcIm9yZGVyVGF4XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uaW52b2ljZV90YXhcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJzcGFuXCIsIHsgc3RhdGljQ2xhc3M6IFwicmVxdWlyZWRcIiB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIipcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwidi1zZWxlY3RcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJvcmRlclRheFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiBfdm0udGF4ZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBcImNvZGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJvcmRlclRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJTZWxlY3QgYSB0YXggdHlwZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7IGlucHV0OiBfdm0uY2FsY3VsYXRlU3VtIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ub3JkZXJUYXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiBmdW5jdGlvbiAoJCR2KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLmZvcm0sIFwib3JkZXJUYXhcIiwgJCR2KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ub3JkZXJUYXhcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwib3JkZXJUYXhcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLnRheGVzXG4gICAgICAgICAgICAgICAgICAgICAgPyBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwidG90YWxUYXhcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnRvdGFsX3RheFwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnRvdGFsVGF4LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS50b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJ0b3RhbFRheFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFkb25seTogXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0udG90YWxUYXggfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJ0b3RhbFRheFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwidG90YWxUYXhcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwibmV0VG90YWxcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ubmV0X3RvdGFsXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLm5ldFRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJuZXRUb3RhbFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJuZXRUb3RhbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RlcDogXCJhbnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZG9ubHk6IFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5uZXRUb3RhbCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIm5ldFRvdGFsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwibmV0VG90YWxcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwicG9SZWZlcmVuY2VcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24ucG9fcmVmZXJlbmNlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBvUmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJwb1JlZmVyZW5jZVwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJwb1JlZmVyZW5jZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wb19yZWZlcmVuY2VfcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5wb1JlZmVyZW5jZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBvUmVmZXJlbmNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicG9SZWZlcmVuY2VcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJmb3JtLWdyb3VwIGNvbC1tZC00XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInBheW1lbnRUZXJtc1wiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5wYXltZW50X3Rlcm1zXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBheW1lbnRUZXJtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5wYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcInBheW1lbnRUZXJtc1wiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYXltZW50VGVybXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInBheW1lbnRUZXJtc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5wYXltZW50X3Rlcm1zX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGF5bWVudFRlcm1zIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXZlbnQudGFyZ2V0LmNvbXBvc2luZykgcmV0dXJuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwicGF5bWVudFRlcm1zXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwicGF5bWVudFRlcm1zXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtNFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJhZGRQYXltZW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmFkZF9wYXltZW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJzZWxlY3RcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmFkZFBheW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5hZGRQYXltZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwiYWRkUGF5bWVudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGlkOiBcImFkZFBheW1lbnRcIiwgbmFtZTogXCJhZGRQYXltZW50XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciAkJHNlbGVjdGVkVmFsID0gQXJyYXkucHJvdG90eXBlLmZpbHRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxsKCRldmVudC50YXJnZXQub3B0aW9ucywgZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvLnNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKGZ1bmN0aW9uIChvKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdmFsID0gXCJfdmFsdWVcIiBpbiBvID8gby5fdmFsdWUgOiBvLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJhZGRQYXltZW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC5tdWx0aXBsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAkJHNlbGVjdGVkVmFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICQkc2VsZWN0ZWRWYWxbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIm9wdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBcIlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kdChcImNvbW1vbi5hZGRfcGF5bWVudF9wbGFjZWhvbGRlclwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJvcHRpb25cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZDogIV92bS5mb3JtLnNlbGVjdGVkUHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnllc1wiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLm5vXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiYWRkUGF5bWVudFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF92bS5mb3JtLmFkZFBheW1lbnQgPT0gMSAmJlxuICAgICAgICAgICAgICAgICAgX3ZtLmFjY291bnRzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzICYmXG4gICAgICAgICAgICAgICAgICBfdm0uZm9ybS5zZWxlY3RlZFByb2R1Y3RzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgPyBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJhY2NvdW50XCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWNjb3VudFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJ2LXNlbGVjdFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImFjY291bnRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogX3ZtLmFjY291bnRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogXCJsYWJlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImFjY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IF92bS4kdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImNvbW1vbi5hY2NvdW50X3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RlbDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uYWNjb3VudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0uZm9ybSwgXCJhY2NvdW50XCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmFjY291bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiYWNjb3VudFwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtbWQtMlwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImxhYmVsXCIsIHsgYXR0cnM6IHsgZm9yOiBcInBhaWRBbW91bnRcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnBhaWRfYW1vdW50XCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInNwYW5cIiwgeyBzdGF0aWNDbGFzczogXCJyZXF1aXJlZFwiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiKlwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLnBhaWRBbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiaXMtaW52YWxpZFwiOiBfdm0uZm9ybS5lcnJvcnMuaGFzKFwicGFpZEFtb3VudFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJwYWlkQW1vdW50XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwibnVtYmVyXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZXA6IFwiYW55XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwicGFpZEFtb3VudFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW46IFwiMVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IF92bS5mb3JtLm5ldFRvdGFsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnBhaWRfYW1vdW50X3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ucGFpZEFtb3VudCB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLmZvcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInBhaWRBbW91bnRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInBhaWRBbW91bnRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJjaGVxdWVOb1wiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uY2hlcXVlX25vXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uY2hlcXVlTm8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljQ2xhc3M6IFwiZm9ybS1jb250cm9sXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImNoZXF1ZU5vXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGVwOiBcImFueVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcImNoZXF1ZU5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjb21tb24uY2hlcXVlX3BsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0uY2hlcXVlTm8gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJjaGVxdWVOb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGV2ZW50LnRhcmdldC52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiY2hlcXVlTm9cIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJyZWNlaXB0Tm9cIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnJlY2VpcHRfbm9cIikpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaW5wdXRcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5yZWNlaXB0Tm8sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLnJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJyZWNlaXB0Tm9cIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwicmVjZWlwdE5vXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcInJlY2VpcHROb1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogX3ZtLiR0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiY29tbW9uLnJlY2VpcHRfbm9fcGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbVByb3BzOiB7IHZhbHVlOiBfdm0uZm9ybS5yZWNlaXB0Tm8gfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0OiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5mb3JtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyZWNlaXB0Tm9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInJlY2VpcHROb1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgOiBfdm0uX2UoKSxcbiAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICBfYyhcImRpdlwiLCB7IHN0YXRpY0NsYXNzOiBcInJvd1wiIH0sIFtcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGVsaXZlcnlQbGFjZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcInNhbGVzLmNvbW1vbi5kZWxpdmVyeV9wbGFjZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJpbnB1dFwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBcIm1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5kZWxpdmVyeVBsYWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmRlbGl2ZXJ5UGxhY2VcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRlbGl2ZXJ5UGxhY2VcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiZGVsaXZlcnlQbGFjZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IFwidGV4dFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwiZGVsaXZlcnlQbGFjZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInNhbGVzLmNvbW1vbi5kZWxpdmVyeV9wbGFjZV9wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmRlbGl2ZXJ5UGxhY2UgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJkZWxpdmVyeVBsYWNlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGVsaXZlcnlQbGFjZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwiZGF0ZVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5kYXRlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlucHV0XCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhd05hbWU6IFwidi1tb2RlbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IF92bS5mb3JtLmRhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uZGF0ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczogeyBcImlzLWludmFsaWRcIjogX3ZtLmZvcm0uZXJyb3JzLmhhcyhcImRhdGVcIikgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgaWQ6IFwiZGF0ZVwiLCB0eXBlOiBcImRhdGVcIiwgbmFtZTogXCJkYXRlXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZG9tUHJvcHM6IHsgdmFsdWU6IF92bS5mb3JtLmRhdGUgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dDogZnVuY3Rpb24gKCRldmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRldmVudC50YXJnZXQuY29tcG9zaW5nKSByZXR1cm5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcImRhdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXCJoYXMtZXJyb3JcIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwiZGF0ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXAgY29sLW1kLTRcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwibGFiZWxcIiwgeyBhdHRyczogeyBmb3I6IFwic3RhdHVzXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnN0YXR1c1wiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwic2VsZWN0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmF3TmFtZTogXCJ2LW1vZGVsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBfdm0uZm9ybS5zdGF0dXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb246IFwiZm9ybS5zdGF0dXNcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJmb3JtLWNvbnRyb2xcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJzdGF0dXNcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBpZDogXCJzdGF0dXNcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2U6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyICQkc2VsZWN0ZWRWYWwgPSBBcnJheS5wcm90b3R5cGUuZmlsdGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoJGV2ZW50LnRhcmdldC5vcHRpb25zLCBmdW5jdGlvbiAobykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG8uc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZnVuY3Rpb24gKG8pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB2YWwgPSBcIl92YWx1ZVwiIGluIG8gPyBvLl92YWx1ZSA6IG8udmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uZm9ybSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInN0YXR1c1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRldmVudC50YXJnZXQubXVsdGlwbGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJCRzZWxlY3RlZFZhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAkJHNlbGVjdGVkVmFsWzBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwib3B0aW9uXCIsIHsgYXR0cnM6IHsgdmFsdWU6IFwiMVwiIH0gfSwgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KF92bS5fcyhfdm0uJHQoXCJjb21tb24uYWN0aXZlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcIm9wdGlvblwiLCB7IGF0dHJzOiB7IHZhbHVlOiBcIjBcIiB9IH0sIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLmluX2FjdGl2ZVwiKSkpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaGFzLWVycm9yXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXR0cnM6IHsgZm9ybTogX3ZtLmZvcm0sIGZpZWxkOiBcInN0YXR1c1wiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcImZvcm0tZ3JvdXBcIiB9LFxuICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgX2MoXCJsYWJlbFwiLCB7IGF0dHJzOiB7IGZvcjogXCJub3RlXCIgfSB9LCBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoX3ZtLl9zKF92bS4kdChcImNvbW1vbi5ub3RlXCIpKSksXG4gICAgICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcInRleHRhcmVhXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IFwibW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByYXdOYW1lOiBcInYtbW9kZWxcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0ubm90ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0ubm90ZVwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImZvcm0tY29udHJvbFwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M6IHsgXCJpcy1pbnZhbGlkXCI6IF92bS5mb3JtLmVycm9ycy5oYXMoXCJub3RlXCIpIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogXCJub3RlXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBfdm0uJHQoXCJjb21tb24ubm90ZV9wbGFjZWhvbGRlclwiKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkb21Qcm9wczogeyB2YWx1ZTogX3ZtLmZvcm0ubm90ZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IGZ1bmN0aW9uICgkZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGV2ZW50LnRhcmdldC5jb21wb3NpbmcpIHJldHVyblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF92bS4kc2V0KF92bS5mb3JtLCBcIm5vdGVcIiwgJGV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgX3ZtLl92KFwiIFwiKSxcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcImhhcy1lcnJvclwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyBmb3JtOiBfdm0uZm9ybSwgZmllbGQ6IFwibm90ZVwiIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtMTIgZC1mbGV4IGZsZXgtd3JhcFwiIH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInByLTVcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRvZ2dsZS1idXR0b25cIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGRpc2FibGVkOiBfdm0uaXNEZW1vTW9kZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uaXNTZW5kRW1haWwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjazogZnVuY3Rpb24gKCQkdikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uJHNldChfdm0uZm9ybSwgXCJpc1NlbmRFbWFpbFwiLCAkJHYpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcmVzc2lvbjogXCJmb3JtLmlzU2VuZEVtYWlsXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiU2VuZCBUbyBFbWFpbFwiKSkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgIHsgc3RhdGljQ2xhc3M6IFwiZm9ybS1ncm91cCBjb2wtMTIgZC1mbGV4IGZsZXgtd3JhcFwiIH0sXG4gICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7IHN0YXRpY0NsYXNzOiBcInByLTVcIiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICBfYyhcInRvZ2dsZS1idXR0b25cIiwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGRpc2FibGVkOiBfdm0uaXNEZW1vTW9kZSB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGVsOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogX3ZtLmZvcm0uaXNTZW5kU01TLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6IGZ1bmN0aW9uICgkJHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3ZtLiRzZXQoX3ZtLmZvcm0sIFwiaXNTZW5kU01TXCIsICQkdilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHByZXNzaW9uOiBcImZvcm0uaXNTZW5kU01TXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF92bS5fdihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcbiAgICAgICAgICAgICAgICBcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiU2VuZCBUbyBTTVNcIikpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIF92bS5fdihcIiBcIiksXG4gICAgICAgICAgICAgICAgX2MoXG4gICAgICAgICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgICAgICAgeyBzdGF0aWNDbGFzczogXCJjYXJkLWZvb3RlclwiIH0sXG4gICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgIF9jKFxuICAgICAgICAgICAgICAgICAgICAgIFwidi1idXR0b25cIixcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNDbGFzczogXCJidG4gYnRuLXByaW1hcnlcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzOiB7IGxvYWRpbmc6IF92bS5mb3JtLmJ1c3kgfSxcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9jKFwiaVwiLCB7IHN0YXRpY0NsYXNzOiBcImZhcyBmYS1zYXZlXCIgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiIFwiICsgX3ZtLl9zKF92bS4kdChcImNvbW1vbi5zYXZlXCIpKSArIFwiXFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXCIgXCIpLFxuICAgICAgICAgICAgICAgICAgICBfYyhcbiAgICAgICAgICAgICAgICAgICAgICBcImJ1dHRvblwiLFxuICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY0NsYXNzOiBcImJ0biBidG4tc2Vjb25kYXJ5IGZsb2F0LXJpZ2h0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBhdHRyczogeyB0eXBlOiBcInJlc2V0XCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrOiBmdW5jdGlvbiAoJGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF92bS5mb3JtLnJlc2V0KClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBfYyhcImlcIiwgeyBzdGF0aWNDbGFzczogXCJmYXMgZmEtcG93ZXItb2ZmXCIgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3YoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiIFwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfdm0uX3MoX3ZtLiR0KFwiY29tbW9uLnJlc2V0XCIpKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICksXG4gICAgICAgICAgXSksXG4gICAgICAgIF0pLFxuICAgICAgXSksXG4gICAgXSxcbiAgICAxXG4gIClcbn1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxucmVuZGVyLl93aXRoU3RyaXBwZWQgPSB0cnVlXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iXSwic291cmNlUm9vdCI6IiJ9\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/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true&\n"); /***/ }), /***/ "./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&": /*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader??ref--6-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--6-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& ***! \**********************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/lib/css-base.js */ \"./node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.i, \"\\n.create-btn[data-v-34a196a9] {\\n padding: 11px;\\n}\\n\", \"\"]);\n\n// exports\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT8wOTIzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJCQUEyQixtQkFBTyxDQUFDLHlHQUF3RDtBQUMzRjs7O0FBR0E7QUFDQSxjQUFjLFFBQVMsbUNBQW1DLGtCQUFrQixHQUFHOztBQUUvRSIsImZpbGUiOiIuL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzPyEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPyEuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9pbnZvaWNlcy9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MzRhMTk2YTkmc2NvcGVkPXRydWUmbGFuZz1jc3MmLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCJcXG4uY3JlYXRlLWJ0bltkYXRhLXYtMzRhMTk2YTldIHtcXG4gIHBhZGRpbmc6IDExcHg7XFxufVxcblwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\n"); /***/ }), /***/ "./node_modules/style-loader/index.js!./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&": /*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/style-loader!./node_modules/css-loader??ref--6-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--6-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& ***! \**************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("\nvar content = __webpack_require__(/*! !../../../../../node_modules/css-loader??ref--6-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src??ref--6-2!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& */ \"./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\");\n\nif(typeof content === 'string') content = [[module.i, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = __webpack_require__(/*! ../../../../../node_modules/style-loader/lib/addStyles.js */ \"./node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(false) {}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT82MDliIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxjQUFjLG1CQUFPLENBQUMsdWxCQUFtVjs7QUFFelcsNENBQTRDLFFBQVM7O0FBRXJEO0FBQ0E7Ozs7QUFJQSxlQUFlOztBQUVmO0FBQ0E7O0FBRUEsYUFBYSxtQkFBTyxDQUFDLCtHQUE0RDs7QUFFakY7O0FBRUEsR0FBRyxLQUFVLEVBQUUiLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/IS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/IS4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL2ludm9pY2VzL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZsYW5nPWNzcyYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNi0xIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTYtMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZsYW5nPWNzcyZcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSB1bmRlZmluZWQ7XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTYtMSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS02LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MzRhMTk2YTkmc2NvcGVkPXRydWUmbGFuZz1jc3MmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanM/P3JlZi0tNi0xIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTYtMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZsYW5nPWNzcyZcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/style-loader/index.js!./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\n"); /***/ }), /***/ "./resources/js/pages/sales/invoices/create.vue": /*!******************************************************!*\ !*** ./resources/js/pages/sales/invoices/create.vue ***! \******************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create.vue?vue&type=template&id=34a196a9&scoped=true& */ \"./resources/js/pages/sales/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true&\");\n/* harmony import */ var _create_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create.vue?vue&type=script&lang=js& */ \"./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport *//* harmony import */ var _create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& */ \"./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\");\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(\n _create_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"34a196a9\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"resources/js/pages/sales/invoices/create.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT9kN2M1Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBaUc7QUFDdkM7QUFDTDtBQUNxQzs7O0FBRzFGO0FBQ21HO0FBQ25HLGdCQUFnQiwyR0FBVTtBQUMxQixFQUFFLDRFQUFNO0FBQ1IsRUFBRSw2RkFBTTtBQUNSLEVBQUUsc0dBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQSxJQUFJLEtBQVUsRUFBRSxZQWlCZjtBQUNEO0FBQ2UsZ0YiLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vY3JlYXRlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZsYW5nPWNzcyZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIFwiMzRhMTk2YTlcIixcbiAgbnVsbFxuICBcbilcblxuLyogaG90IHJlbG9hZCAqL1xuaWYgKG1vZHVsZS5ob3QpIHtcbiAgdmFyIGFwaSA9IHJlcXVpcmUoXCJDOlxcXFxhY2N1bGFuY2UtdjQuMC4yXFxcXG5vZGVfbW9kdWxlc1xcXFx2dWUtaG90LXJlbG9hZC1hcGlcXFxcZGlzdFxcXFxpbmRleC5qc1wiKVxuICBhcGkuaW5zdGFsbChyZXF1aXJlKCd2dWUnKSlcbiAgaWYgKGFwaS5jb21wYXRpYmxlKSB7XG4gICAgbW9kdWxlLmhvdC5hY2NlcHQoKVxuICAgIGlmICghYXBpLmlzUmVjb3JkZWQoJzM0YTE5NmE5JykpIHtcbiAgICAgIGFwaS5jcmVhdGVSZWNvcmQoJzM0YTE5NmE5JywgY29tcG9uZW50Lm9wdGlvbnMpXG4gICAgfSBlbHNlIHtcbiAgICAgIGFwaS5yZWxvYWQoJzM0YTE5NmE5JywgY29tcG9uZW50Lm9wdGlvbnMpXG4gICAgfVxuICAgIG1vZHVsZS5ob3QuYWNjZXB0KFwiLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTM0YTE5NmE5JnNjb3BlZD10cnVlJlwiLCBmdW5jdGlvbiAoKSB7XG4gICAgICBhcGkucmVyZW5kZXIoJzM0YTE5NmE5Jywge1xuICAgICAgICByZW5kZXI6IHJlbmRlcixcbiAgICAgICAgc3RhdGljUmVuZGVyRm5zOiBzdGF0aWNSZW5kZXJGbnNcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxufVxuY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJyZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/invoices/create.vue\n"); /***/ }), /***/ "./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&": /*!*******************************************************************************!*\ !*** ./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js& ***! \*******************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&\");\n/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[\"default\"]); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT8zMmRhIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQSx3Q0FBa00sQ0FBZ0Isa1BBQUcsRUFBQyIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9pbnZvaWNlcy9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vY3JlYXRlLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/invoices/create.vue?vue&type=script&lang=js&\n"); /***/ }), /***/ "./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&": /*!***************************************************************************************************************!*\ !*** ./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& ***! \***************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_style_loader_index_js_node_modules_css_loader_index_js_ref_6_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_2_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/style-loader!../../../../../node_modules/css-loader??ref--6-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src??ref--6-2!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css& */ \"./node_modules/style-loader/index.js!./node_modules/css-loader/index.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\");\n/* harmony import */ var _node_modules_style_loader_index_js_node_modules_css_loader_index_js_ref_6_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_2_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_index_js_node_modules_css_loader_index_js_ref_6_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_2_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_index_js_node_modules_css_loader_index_js_ref_6_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_2_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_index_js_node_modules_css_loader_index_js_ref_6_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_2_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_style_index_0_id_34a196a9_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT81ZjdmIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3BhZ2VzL3NhbGVzL2ludm9pY2VzL2NyZWF0ZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZsYW5nPWNzcyYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTYtMSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS02LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MzRhMTk2YTkmc2NvcGVkPXRydWUmbGFuZz1jc3MmXCIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/invoices/create.vue?vue&type=style&index=0&id=34a196a9&scoped=true&lang=css&\n"); /***/ }), /***/ "./resources/js/pages/sales/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true&": /*!*************************************************************************************************!*\ !*** ./resources/js/pages/sales/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true& ***! \*************************************************************************************************/ /*! exports provided: render, staticRenderFns */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ref--6!../../../../../node_modules/vue-loader/lib??vue-loader-options!./create.vue?vue&type=template&id=34a196a9&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/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_loaders_templateLoader_js_ref_6_node_modules_vue_loader_lib_index_js_vue_loader_options_create_vue_vue_type_template_id_34a196a9_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvcGFnZXMvc2FsZXMvaW52b2ljZXMvY3JlYXRlLnZ1ZT83Y2VkIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy9wYWdlcy9zYWxlcy9pbnZvaWNlcy9jcmVhdGUudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTM0YTE5NmE5JnNjb3BlZD10cnVlJi5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy90ZW1wbGF0ZUxvYWRlci5qcz8/cmVmLS02IS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vY3JlYXRlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zNGExOTZhOSZzY29wZWQ9dHJ1ZSZcIiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/pages/sales/invoices/create.vue?vue&type=template&id=34a196a9&scoped=true&\n"); /***/ }) }]);