merchi_checkout
Version:
Merchi's custom checkout step form
423 lines (422 loc) • 80.5 kB
JavaScript
'use client';
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(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; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
import * as React from 'react';
import { createContext, useContext, useEffect, useState } from 'react';
import { tabsInit } from '../tabs_utils';
import { Merchi } from 'merchi_sdk_ts';
import { jsx as _jsx } from "react/jsx-runtime";
var MerchiCheckoutContext = /*#__PURE__*/createContext({
activeTabIndex: 0,
alerts: [],
alertClose: function alertClose() {},
alertErrorShow: function alertErrorShow() {},
classNameMerchiCheckoutAlertsContainer: undefined,
classNameMerchiCheckoutAlert: undefined,
classNameMerchiCheckoutAlertError: undefined,
classNameMerchiCheckoutAlertSuccess: undefined,
classNameMerchiCheckoutButtonPrimary: undefined,
classNameMerchiCheckoutButtonPrimaryBlock: undefined,
classNameMerchiCheckoutButtonSecondary: undefined,
classNameMerchiCheckoutButtonSecondaryBlock: undefined,
classNameMerchiCheckoutButtonDownloadInvoice: undefined,
classNameMerchiCheckoutConfirmInfoPanel: undefined,
classNameMerchiCheckoutFooterActionsContainer: undefined,
classNameMerchiCheckoutFormCheckbox: undefined,
classNameMerchiCheckoutFormGroup: undefined,
classNameMerchiCheckoutFormGroupCheckbox: undefined,
classNameMerchiCheckoutFormInput: undefined,
classNameMerchiCheckoutFormSelect: undefined,
classNameMerchiCheckoutGoogleSuggestList: undefined,
classNameMerchiCheckoutGoogleSuggestListItem: undefined,
classNameMerchiCheckoutListGroupItemLoader: undefined,
classNameMerchiCheckoutFormLabelCheckbox: undefined,
classNameMerchiCheckoutInputError: undefined,
classNameMerchiCheckoutListGroup: undefined,
classNameMerchiCheckoutListGroupItem: undefined,
classNameMerchiCheckoutRow: undefined,
classNameMerchiCheckoutRowColumn: undefined,
classNameMerchiCheckoutSubtitle: undefined,
classNameMerchiCheckoutTabsContainer: undefined,
classNameMerchiCheckoutTab: undefined,
classNameMerchiCheckoutTabPane: undefined,
classNameMerchiCheckoutTabPaneContainer: undefined,
classNameMerchiCheckoutTabButton: undefined,
classNameMerchiInvoiceButtonPayInvoice: undefined,
clearCustomer: function clearCustomer() {},
currentUser: undefined,
customer: undefined,
discountButtonText: undefined,
discountCallbackError: function discountCallbackError() {},
discountCallbackSuccess: function discountCallbackSuccess() {},
discountClassName: undefined,
discountClassNameButton: undefined,
discountClassNameButtonContainer: undefined,
discountClassNameButtonItemRemove: undefined,
discountClassNameErrorMessage: undefined,
discountClassNameInput: undefined,
discountClassNameInputContainer: undefined,
discountClassNameInputdiscountLabel: undefined,
discountClassNameListItem: undefined,
discountClassNameListItems: undefined,
discountClassNameMainContainer: undefined,
discountLabel: undefined,
discountShowAppliedItems: true,
domain: undefined,
editDraftTemplate: function editDraftTemplate() {},
isBuyRequest: false,
isOpen: false,
loading: false,
merchi: undefined,
messageSuccessBuyRequest: undefined,
messageSuccessQuoteRequest: undefined,
nextTab: function nextTab() {},
includeDomainSignup: false,
invoice: {},
isProductEmbedForm: false,
job: {},
product: {},
redirectAfterSuccessUrl: undefined,
redirectAfterQuoteSuccessUrl: undefined,
redirectWithValue: true,
setActiveTabById: function setActiveTabById() {},
setActiveTabIndex: function setActiveTabIndex() {},
setCustomer: function setCustomer() {},
setDomain: function setDomain() {},
setInvoice: function setInvoice() {},
setJob: function setJob() {},
showDiscountCode: true,
showUserTermsAndConditions: true,
tabs: [],
toggleMerchiCheckout: function toggleMerchiCheckout() {},
urlFrontend: '',
urlApi: ''
});
export var useMerchiCheckboutContext = function useMerchiCheckboutContext() {
return useContext(MerchiCheckoutContext);
};
export var MerchiCheckoutProvider = function MerchiCheckoutProvider(_ref) {
var children = _ref.children,
_ref$classNameMerchiC = _ref.classNameMerchiCheckoutAlertsContainer,
classNameMerchiCheckoutAlertsContainer = _ref$classNameMerchiC === void 0 ? 'd-flex justify-content-center flex-column alerts-container-sm' : _ref$classNameMerchiC,
_ref$classNameMerchiC2 = _ref.classNameMerchiCheckoutAlert,
classNameMerchiCheckoutAlert = _ref$classNameMerchiC2 === void 0 ? 'alert alert-dismissible alert-notify' : _ref$classNameMerchiC2,
_ref$classNameMerchiC3 = _ref.classNameMerchiCheckoutAlertError,
classNameMerchiCheckoutAlertError = _ref$classNameMerchiC3 === void 0 ? 'alert-danger' : _ref$classNameMerchiC3,
_ref$classNameMerchiC4 = _ref.classNameMerchiCheckoutAlertSuccess,
classNameMerchiCheckoutAlertSuccess = _ref$classNameMerchiC4 === void 0 ? 'alert-success' : _ref$classNameMerchiC4,
_ref$classNameMerchiC5 = _ref.classNameMerchiCheckoutButtonPrimary,
classNameMerchiCheckoutButtonPrimary = _ref$classNameMerchiC5 === void 0 ? 'btn btn-lmd btn-primary d-flex align-items-center justify-content-center' : _ref$classNameMerchiC5,
_ref$classNameMerchiC6 = _ref.classNameMerchiCheckoutButtonPrimaryBlock,
classNameMerchiCheckoutButtonPrimaryBlock = _ref$classNameMerchiC6 === void 0 ? 'btn btn-lg btn-primary btn-block' : _ref$classNameMerchiC6,
_ref$classNameMerchiC7 = _ref.classNameMerchiCheckoutButtonSecondary,
classNameMerchiCheckoutButtonSecondary = _ref$classNameMerchiC7 === void 0 ? 'btn btn-lg btn-secondary' : _ref$classNameMerchiC7,
_ref$classNameMerchiC8 = _ref.classNameMerchiCheckoutButtonSecondaryBlock,
classNameMerchiCheckoutButtonSecondaryBlock = _ref$classNameMerchiC8 === void 0 ? 'btn btn-lg btn-secondary btn-block' : _ref$classNameMerchiC8,
_ref$classNameMerchiC9 = _ref.classNameMerchiCheckoutButtonDownloadInvoice,
classNameMerchiCheckoutButtonDownloadInvoice = _ref$classNameMerchiC9 === void 0 ? 'btn btn-lg btn-primary' : _ref$classNameMerchiC9,
_ref$classNameMerchiC10 = _ref.classNameMerchiCheckoutConfirmInfoPanel,
classNameMerchiCheckoutConfirmInfoPanel = _ref$classNameMerchiC10 === void 0 ? 'd-flex align-items-center' : _ref$classNameMerchiC10,
_ref$classNameMerchiC11 = _ref.classNameMerchiCheckoutFooterActionsContainer,
classNameMerchiCheckoutFooterActionsContainer = _ref$classNameMerchiC11 === void 0 ? 'd-flex justify-content-between mt-4' : _ref$classNameMerchiC11,
_ref$classNameMerchiC12 = _ref.classNameMerchiCheckoutFormCheckbox,
classNameMerchiCheckoutFormCheckbox = _ref$classNameMerchiC12 === void 0 ? 'form-check-input' : _ref$classNameMerchiC12,
_ref$classNameMerchiC13 = _ref.classNameMerchiCheckoutFormGroup,
classNameMerchiCheckoutFormGroup = _ref$classNameMerchiC13 === void 0 ? 'form-group' : _ref$classNameMerchiC13,
_ref$classNameMerchiC14 = _ref.classNameMerchiCheckoutFormGroupCheckbox,
classNameMerchiCheckoutFormGroupCheckbox = _ref$classNameMerchiC14 === void 0 ? 'form-check' : _ref$classNameMerchiC14,
_ref$classNameMerchiC15 = _ref.classNameMerchiCheckoutFormInput,
classNameMerchiCheckoutFormInput = _ref$classNameMerchiC15 === void 0 ? 'form-control' : _ref$classNameMerchiC15,
_ref$classNameMerchiC16 = _ref.classNameMerchiCheckoutFormSelect,
classNameMerchiCheckoutFormSelect = _ref$classNameMerchiC16 === void 0 ? 'form-control' : _ref$classNameMerchiC16,
_ref$classNameMerchiC17 = _ref.classNameMerchiCheckoutGoogleSuggestList,
classNameMerchiCheckoutGoogleSuggestList = _ref$classNameMerchiC17 === void 0 ? 'list-group m-b-0' : _ref$classNameMerchiC17,
_ref$classNameMerchiC18 = _ref.classNameMerchiCheckoutGoogleSuggestListItem,
classNameMerchiCheckoutGoogleSuggestListItem = _ref$classNameMerchiC18 === void 0 ? 'list-group-item cursor-pointer' : _ref$classNameMerchiC18,
_ref$classNameMerchiC19 = _ref.classNameMerchiCheckoutListGroupItemLoader,
classNameMerchiCheckoutListGroupItemLoader = _ref$classNameMerchiC19 === void 0 ? 'list-group-item modal-merchi-checkout-shipment-option' : _ref$classNameMerchiC19,
_ref$classNameMerchiC20 = _ref.classNameMerchiCheckoutInputError,
classNameMerchiCheckoutInputError = _ref$classNameMerchiC20 === void 0 ? 'text-danger' : _ref$classNameMerchiC20,
_ref$classNameMerchiC21 = _ref.classNameMerchiCheckoutFormLabelCheckbox,
classNameMerchiCheckoutFormLabelCheckbox = _ref$classNameMerchiC21 === void 0 ? '' : _ref$classNameMerchiC21,
_ref$classNameMerchiC22 = _ref.classNameMerchiCheckoutListGroup,
classNameMerchiCheckoutListGroup = _ref$classNameMerchiC22 === void 0 ? 'modal-merchi-checkout-shipment-option' : _ref$classNameMerchiC22,
_ref$classNameMerchiC23 = _ref.classNameMerchiCheckoutListGroupItem,
classNameMerchiCheckoutListGroupItem = _ref$classNameMerchiC23 === void 0 ? 'list-group-item' : _ref$classNameMerchiC23,
_ref$classNameMerchiC24 = _ref.classNameMerchiCheckoutRow,
classNameMerchiCheckoutRow = _ref$classNameMerchiC24 === void 0 ? 'merchi-row' : _ref$classNameMerchiC24,
_ref$classNameMerchiC25 = _ref.classNameMerchiCheckoutRowColumn,
classNameMerchiCheckoutRowColumn = _ref$classNameMerchiC25 === void 0 ? 'merchi-column' : _ref$classNameMerchiC25,
_ref$classNameMerchiC26 = _ref.classNameMerchiCheckoutSubtitle,
classNameMerchiCheckoutSubtitle = _ref$classNameMerchiC26 === void 0 ? 'merchi-checkout-subtitle' : _ref$classNameMerchiC26,
_ref$classNameMerchiC27 = _ref.classNameMerchiCheckoutTabsContainer,
classNameMerchiCheckoutTabsContainer = _ref$classNameMerchiC27 === void 0 ? 'merchi-checkout-tabs-container' : _ref$classNameMerchiC27,
_ref$classNameMerchiC28 = _ref.classNameMerchiCheckoutTab,
classNameMerchiCheckoutTab = _ref$classNameMerchiC28 === void 0 ? 'merchi-checkout-tab' : _ref$classNameMerchiC28,
_ref$classNameMerchiC29 = _ref.classNameMerchiCheckoutTabButton,
classNameMerchiCheckoutTabButton = _ref$classNameMerchiC29 === void 0 ? 'btn merchi-checkout-tab-btn' : _ref$classNameMerchiC29,
_ref$classNameMerchiC30 = _ref.classNameMerchiCheckoutTabPane,
classNameMerchiCheckoutTabPane = _ref$classNameMerchiC30 === void 0 ? 'tab-pane' : _ref$classNameMerchiC30,
_ref$classNameMerchiC31 = _ref.classNameMerchiCheckoutTabPaneContainer,
classNameMerchiCheckoutTabPaneContainer = _ref$classNameMerchiC31 === void 0 ? 'tab-content' : _ref$classNameMerchiC31,
_ref$classNameMerchiI = _ref.classNameMerchiInvoiceButtonPayInvoice,
classNameMerchiInvoiceButtonPayInvoice = _ref$classNameMerchiI === void 0 ? 'btn btn-lg btn-primary btn-block' : _ref$classNameMerchiI,
currentUser = _ref.currentUser,
_ref$discountButtonTe = _ref.discountButtonText,
discountButtonText = _ref$discountButtonTe === void 0 ? 'Apply' : _ref$discountButtonTe,
_ref$discountClassNam = _ref.discountClassName,
discountClassName = _ref$discountClassNam === void 0 ? 'merchi-checkout-discount-code-container' : _ref$discountClassNam,
_ref$discountClassNam2 = _ref.discountClassNameButton,
discountClassNameButton = _ref$discountClassNam2 === void 0 ? 'btn btn-primary' : _ref$discountClassNam2,
_ref$discountClassNam3 = _ref.discountClassNameButtonContainer,
discountClassNameButtonContainer = _ref$discountClassNam3 === void 0 ? '' : _ref$discountClassNam3,
_ref$discountClassNam4 = _ref.discountClassNameButtonItemRemove,
discountClassNameButtonItemRemove = _ref$discountClassNam4 === void 0 ? 'btn btn-sm btn-link' : _ref$discountClassNam4,
_ref$discountClassNam5 = _ref.discountClassNameErrorMessage,
discountClassNameErrorMessage = _ref$discountClassNam5 === void 0 ? 'text-danger' : _ref$discountClassNam5,
_ref$discountClassNam6 = _ref.discountClassNameInput,
discountClassNameInput = _ref$discountClassNam6 === void 0 ? 'form-control' : _ref$discountClassNam6,
_ref$discountClassNam7 = _ref.discountClassNameInputContainer,
discountClassNameInputContainer = _ref$discountClassNam7 === void 0 ? 'merchi-checkout-discount-code-field-container' : _ref$discountClassNam7,
_ref$discountClassNam8 = _ref.discountClassNameInputdiscountLabel,
discountClassNameInputdiscountLabel = _ref$discountClassNam8 === void 0 ? 'visually-hidden' : _ref$discountClassNam8,
_ref$discountClassNam9 = _ref.discountClassNameListItem,
discountClassNameListItem = _ref$discountClassNam9 === void 0 ? 'list-group-item d-flex align-items-center justify-content-between mt-2' : _ref$discountClassNam9,
_ref$discountClassNam10 = _ref.discountClassNameListItems,
discountClassNameListItems = _ref$discountClassNam10 === void 0 ? 'list-group' : _ref$discountClassNam10,
discountClassNameMainContainer = _ref.discountClassNameMainContainer,
_ref$discountLabel = _ref.discountLabel,
discountLabel = _ref$discountLabel === void 0 ? 'Discount code' : _ref$discountLabel,
_ref$discountShowAppl = _ref.discountShowAppliedItems,
discountShowAppliedItems = _ref$discountShowAppl === void 0 ? true : _ref$discountShowAppl,
_ref$includeDomainSig = _ref.includeDomainSignup,
includeDomainSignup = _ref$includeDomainSig === void 0 ? false : _ref$includeDomainSig,
invoice = _ref.invoice,
isBuyRequest = _ref.isBuyRequest,
isOpen = _ref.isOpen,
_ref$isProductEmbedFo = _ref.isProductEmbedForm,
isProductEmbedForm = _ref$isProductEmbedFo === void 0 ? false : _ref$isProductEmbedFo,
job = _ref.job,
product = _ref.product,
messageSuccessBuyRequest = _ref.messageSuccessBuyRequest,
messageSuccessQuoteRequest = _ref.messageSuccessQuoteRequest,
redirectAfterSuccessUrl = _ref.redirectAfterSuccessUrl,
redirectAfterQuoteSuccessUrl = _ref.redirectAfterQuoteSuccessUrl,
redirectWithValue = _ref.redirectWithValue,
setInvoice = _ref.setInvoice,
setJob = _ref.setJob,
_ref$showDiscountCode = _ref.showDiscountCode,
showDiscountCode = _ref$showDiscountCode === void 0 ? true : _ref$showDiscountCode,
_ref$showUserTermsAnd = _ref.showUserTermsAndConditions,
showUserTermsAndConditions = _ref$showUserTermsAnd === void 0 ? true : _ref$showUserTermsAnd,
toggleMerchiCheckout = _ref.toggleMerchiCheckout,
_ref$urlApi = _ref.urlApi,
urlApi = _ref$urlApi === void 0 ? 'https://api.merchi.co/v6/' : _ref$urlApi,
_ref$urlFrontend = _ref.urlFrontend,
urlFrontend = _ref$urlFrontend === void 0 ? 'https://merchi.co/' : _ref$urlFrontend;
var _useState = useState(0),
_useState2 = _slicedToArray(_useState, 2),
activeTabIndex = _useState2[0],
setActiveTabIndex = _useState2[1];
var _useState3 = useState(false),
_useState4 = _slicedToArray(_useState3, 2),
loading = _useState4[0],
setLoading = _useState4[1];
var _useState5 = useState([]),
_useState6 = _slicedToArray(_useState5, 2),
alerts = _useState6[0],
setAlerts = _useState6[1];
var _useState7 = useState(null),
_useState8 = _slicedToArray(_useState7, 2),
domain = _useState8[0],
setDomain = _useState8[1];
var _useState9 = useState([]),
_useState10 = _slicedToArray(_useState9, 2),
tabs = _useState10[0],
setTabs = _useState10[1];
var merchi = new Merchi(undefined, undefined, undefined, undefined, urlApi);
function editDraftTemplate(index, draft) {
var jobJson = _objectSpread({}, job);
var draftTemplates = product.draftTemplates || [];
var draftTemplateFiles = draftTemplates.map(function (d) {
return d.file;
});
var ownDraft = jobJson.ownDrafts && jobJson.ownDrafts[0] || {
images: draftTemplateFiles
};
if (ownDraft.images) {
ownDraft.images[index] = draft;
} else {
ownDraft.images = [draft];
}
jobJson.ownDrafts = [ownDraft];
setJob(jobJson);
}
function alertClose(index) {
var updatedAlerts = alerts.filter(function (_, idx) {
return idx !== index;
});
setAlerts(updatedAlerts);
}
function alertErrorShow(message) {
var newAlerts = [].concat(_toConsumableArray(alerts), [{
alertType: 'error',
message: message,
title: 'Error!'
}]);
setAlerts(newAlerts);
}
function resetTabs() {
var _tabs = tabsInit({
job: job,
includeDomainSignup: includeDomainSignup,
isBuyRequest: isBuyRequest
});
setTabs(_tabs);
}
function setCustomer(customer) {
setJob(_objectSpread(_objectSpread({}, job), {}, {
client: customer
}));
resetTabs();
}
function clearCustomer() {
setCustomer({});
resetTabs();
}
function nextTab() {
var ndextIndex = activeTabIndex + 1;
var _tabs = _toConsumableArray(tabs);
_tabs[ndextIndex].disabled = false;
setTabs(_tabs);
setActiveTabIndex(ndextIndex);
}
function setActiveTabById(tabId) {
var index = tabs.findIndex(function (t) {
return t.id === tabId;
});
setActiveTabIndex(index);
}
useEffect(function () {
if (job.product && !tabs.length) {
resetTabs();
}
if (!job.client) {
setCustomer(currentUser || {});
}
}, [job]);
function discountCallbackSuccess(items) {
setJob(_objectSpread(_objectSpread({}, job), {}, {
items: items
}));
}
function discountCallbackError() {
setJob(_objectSpread(_objectSpread({}, job), {}, {
items: []
}));
}
return /*#__PURE__*/_jsx(MerchiCheckoutContext.Provider, {
value: {
activeTabIndex: activeTabIndex,
alerts: alerts,
alertClose: alertClose,
alertErrorShow: alertErrorShow,
classNameMerchiCheckoutAlertsContainer: classNameMerchiCheckoutAlertsContainer,
classNameMerchiCheckoutAlert: classNameMerchiCheckoutAlert,
classNameMerchiCheckoutAlertError: classNameMerchiCheckoutAlertError,
classNameMerchiCheckoutAlertSuccess: classNameMerchiCheckoutAlertSuccess,
classNameMerchiCheckoutButtonPrimary: classNameMerchiCheckoutButtonPrimary,
classNameMerchiCheckoutButtonPrimaryBlock: classNameMerchiCheckoutButtonPrimaryBlock,
classNameMerchiCheckoutButtonSecondary: classNameMerchiCheckoutButtonSecondary,
classNameMerchiCheckoutButtonSecondaryBlock: classNameMerchiCheckoutButtonSecondaryBlock,
classNameMerchiCheckoutButtonDownloadInvoice: classNameMerchiCheckoutButtonDownloadInvoice,
classNameMerchiCheckoutConfirmInfoPanel: classNameMerchiCheckoutConfirmInfoPanel,
classNameMerchiCheckoutFooterActionsContainer: classNameMerchiCheckoutFooterActionsContainer,
classNameMerchiCheckoutFormCheckbox: classNameMerchiCheckoutFormCheckbox,
classNameMerchiCheckoutFormGroup: classNameMerchiCheckoutFormGroup,
classNameMerchiCheckoutFormGroupCheckbox: classNameMerchiCheckoutFormGroupCheckbox,
classNameMerchiCheckoutFormInput: classNameMerchiCheckoutFormInput,
classNameMerchiCheckoutFormSelect: classNameMerchiCheckoutFormSelect,
classNameMerchiCheckoutGoogleSuggestList: classNameMerchiCheckoutGoogleSuggestList,
classNameMerchiCheckoutGoogleSuggestListItem: classNameMerchiCheckoutGoogleSuggestListItem,
classNameMerchiCheckoutListGroupItemLoader: classNameMerchiCheckoutListGroupItemLoader,
classNameMerchiCheckoutFormLabelCheckbox: classNameMerchiCheckoutFormLabelCheckbox,
classNameMerchiCheckoutInputError: classNameMerchiCheckoutInputError,
classNameMerchiCheckoutListGroup: classNameMerchiCheckoutListGroup,
classNameMerchiCheckoutListGroupItem: classNameMerchiCheckoutListGroupItem,
classNameMerchiCheckoutRow: classNameMerchiCheckoutRow,
classNameMerchiCheckoutRowColumn: classNameMerchiCheckoutRowColumn,
classNameMerchiCheckoutSubtitle: classNameMerchiCheckoutSubtitle,
classNameMerchiCheckoutTabsContainer: classNameMerchiCheckoutTabsContainer,
classNameMerchiCheckoutTab: classNameMerchiCheckoutTab,
classNameMerchiCheckoutTabButton: classNameMerchiCheckoutTabButton,
classNameMerchiCheckoutTabPane: classNameMerchiCheckoutTabPane,
classNameMerchiCheckoutTabPaneContainer: classNameMerchiCheckoutTabPaneContainer,
classNameMerchiInvoiceButtonPayInvoice: classNameMerchiInvoiceButtonPayInvoice,
clearCustomer: clearCustomer,
currentUser: currentUser,
customer: job.client || {},
discountButtonText: discountButtonText,
discountCallbackError: discountCallbackError,
discountCallbackSuccess: discountCallbackSuccess,
discountClassName: discountClassName,
discountClassNameButton: discountClassNameButton,
discountClassNameButtonContainer: discountClassNameButtonContainer,
discountClassNameButtonItemRemove: discountClassNameButtonItemRemove,
discountClassNameErrorMessage: discountClassNameErrorMessage,
discountClassNameInput: discountClassNameInput,
discountClassNameInputContainer: discountClassNameInputContainer,
discountClassNameInputdiscountLabel: discountClassNameInputdiscountLabel,
discountClassNameListItem: discountClassNameListItem,
discountClassNameListItems: discountClassNameListItems,
discountClassNameMainContainer: discountClassNameMainContainer,
discountLabel: discountLabel,
discountShowAppliedItems: discountShowAppliedItems,
domain: domain,
editDraftTemplate: editDraftTemplate,
includeDomainSignup: includeDomainSignup,
invoice: invoice,
isBuyRequest: isBuyRequest,
isOpen: isOpen,
isProductEmbedForm: isProductEmbedForm,
job: job,
loading: loading,
merchi: merchi,
messageSuccessBuyRequest: messageSuccessBuyRequest,
messageSuccessQuoteRequest: messageSuccessQuoteRequest,
nextTab: nextTab,
product: product,
redirectAfterSuccessUrl: redirectAfterSuccessUrl,
redirectAfterQuoteSuccessUrl: redirectAfterQuoteSuccessUrl,
redirectWithValue: redirectWithValue,
setActiveTabById: setActiveTabById,
setActiveTabIndex: setActiveTabIndex,
setCustomer: setCustomer,
setDomain: setDomain,
setInvoice: setInvoice,
setJob: setJob,
showDiscountCode: showDiscountCode,
showUserTermsAndConditions: showUserTermsAndConditions,
tabs: tabs,
toggleMerchiCheckout: toggleMerchiCheckout,
urlApi: urlApi,
urlFrontend: urlFrontend
},
children: children
});
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJhcnIiLCJfYXJyYXlXaXRob3V0SG9sZXMiLCJfaXRlcmFibGVUb0FycmF5IiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwiX25vbkl0ZXJhYmxlU3ByZWFkIiwiVHlwZUVycm9yIiwiaXRlciIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIm9iaiIsImtleSIsInZhbHVlIiwiX3RvUHJvcGVydHlLZXkiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJTdHJpbmciLCJ0b1ByaW1pdGl2ZSIsImNhbGwiLCJOdW1iZXIiLCJfc2xpY2VkVG9BcnJheSIsIl9hcnJheVdpdGhIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXlMaW1pdCIsIl9ub25JdGVyYWJsZVJlc3QiLCJtaW5MZW4iLCJuIiwidG9TdHJpbmciLCJzbGljZSIsIm5hbWUiLCJ0ZXN0IiwibGVuIiwiYXJyMiIsImwiLCJ1IiwiYSIsImYiLCJuZXh0IiwiZG9uZSIsIlJlYWN0IiwiY3JlYXRlQ29udGV4dCIsInVzZUNvbnRleHQiLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsInRhYnNJbml0IiwiTWVyY2hpIiwianN4IiwiX2pzeCIsIk1lcmNoaUNoZWNrb3V0Q29udGV4dCIsImFjdGl2ZVRhYkluZGV4IiwiYWxlcnRzIiwiYWxlcnRDbG9zZSIsImFsZXJ0RXJyb3JTaG93IiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydHNDb250YWluZXIiLCJ1bmRlZmluZWQiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0IiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydEVycm9yIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydFN1Y2Nlc3MiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnkiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnlCbG9jayIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5IiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25TZWNvbmRhcnlCbG9jayIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uRG93bmxvYWRJbnZvaWNlIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRDb25maXJtSW5mb1BhbmVsIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb290ZXJBY3Rpb25zQ29udGFpbmVyIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtQ2hlY2tib3giLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1Hcm91cCIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUdyb3VwQ2hlY2tib3giLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1JbnB1dCIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybVNlbGVjdCIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3QiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dEdvb2dsZVN1Z2dlc3RMaXN0SXRlbSIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbUxvYWRlciIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUxhYmVsQ2hlY2tib3giLCJjbGFzc05hbWVNZXJjaGlDaGVja291dElucHV0RXJyb3IiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cCIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbSIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Um93IiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRSb3dDb2x1bW4iLCJjbGFzc05hbWVNZXJjaGlDaGVja291dFN1YnRpdGxlIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJzQ29udGFpbmVyIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWIiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmUiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmVDb250YWluZXIiLCJjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYkJ1dHRvbiIsImNsYXNzTmFtZU1lcmNoaUludm9pY2VCdXR0b25QYXlJbnZvaWNlIiwiY2xlYXJDdXN0b21lciIsImN1cnJlbnRVc2VyIiwiY3VzdG9tZXIiLCJkaXNjb3VudEJ1dHRvblRleHQiLCJkaXNjb3VudENhbGxiYWNrRXJyb3IiLCJkaXNjb3VudENhbGxiYWNrU3VjY2VzcyIsImRpc2NvdW50Q2xhc3NOYW1lIiwiZGlzY291bnRDbGFzc05hbWVCdXR0b24iLCJkaXNjb3VudENsYXNzTmFtZUJ1dHRvbkNvbnRhaW5lciIsImRpc2NvdW50Q2xhc3NOYW1lQnV0dG9uSXRlbVJlbW92ZSIsImRpc2NvdW50Q2xhc3NOYW1lRXJyb3JNZXNzYWdlIiwiZGlzY291bnRDbGFzc05hbWVJbnB1dCIsImRpc2NvdW50Q2xhc3NOYW1lSW5wdXRDb250YWluZXIiLCJkaXNjb3VudENsYXNzTmFtZUlucHV0ZGlzY291bnRMYWJlbCIsImRpc2NvdW50Q2xhc3NOYW1lTGlzdEl0ZW0iLCJkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtcyIsImRpc2NvdW50Q2xhc3NOYW1lTWFpbkNvbnRhaW5lciIsImRpc2NvdW50TGFiZWwiLCJkaXNjb3VudFNob3dBcHBsaWVkSXRlbXMiLCJkb21haW4iLCJlZGl0RHJhZnRUZW1wbGF0ZSIsImlzQnV5UmVxdWVzdCIsImlzT3BlbiIsImxvYWRpbmciLCJtZXJjaGkiLCJtZXNzYWdlU3VjY2Vzc0J1eVJlcXVlc3QiLCJtZXNzYWdlU3VjY2Vzc1F1b3RlUmVxdWVzdCIsIm5leHRUYWIiLCJpbmNsdWRlRG9tYWluU2lnbnVwIiwiaW52b2ljZSIsImlzUHJvZHVjdEVtYmVkRm9ybSIsImpvYiIsInByb2R1Y3QiLCJyZWRpcmVjdEFmdGVyU3VjY2Vzc1VybCIsInJlZGlyZWN0QWZ0ZXJRdW90ZVN1Y2Nlc3NVcmwiLCJyZWRpcmVjdFdpdGhWYWx1ZSIsInNldEFjdGl2ZVRhYkJ5SWQiLCJzZXRBY3RpdmVUYWJJbmRleCIsInNldEN1c3RvbWVyIiwic2V0RG9tYWluIiwic2V0SW52b2ljZSIsInNldEpvYiIsInNob3dEaXNjb3VudENvZGUiLCJzaG93VXNlclRlcm1zQW5kQ29uZGl0aW9ucyIsInRhYnMiLCJ0b2dnbGVNZXJjaGlDaGVja291dCIsInVybEZyb250ZW5kIiwidXJsQXBpIiwidXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCIsIk1lcmNoaUNoZWNrb3V0UHJvdmlkZXIiLCJfcmVmIiwiY2hpbGRyZW4iLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMyIiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMyIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzQiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUM1IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDNiIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzciLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUM4IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDOSIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzEwIiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMTEiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMxMiIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzEzIiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMTQiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMxNSIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzE2IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMTciLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMxOCIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzE5IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMjAiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMyMSIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzIyIiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMjMiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMyNCIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzI1IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMjYiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMyNyIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzI4IiwiX3JlZiRjbGFzc05hbWVNZXJjaGlDMjkiLCJfcmVmJGNsYXNzTmFtZU1lcmNoaUMzMCIsIl9yZWYkY2xhc3NOYW1lTWVyY2hpQzMxIiwiX3JlZiRjbGFzc05hbWVNZXJjaGlJIiwiX3JlZiRkaXNjb3VudEJ1dHRvblRlIiwiX3JlZiRkaXNjb3VudENsYXNzTmFtIiwiX3JlZiRkaXNjb3VudENsYXNzTmFtMiIsIl9yZWYkZGlzY291bnRDbGFzc05hbTMiLCJfcmVmJGRpc2NvdW50Q2xhc3NOYW00IiwiX3JlZiRkaXNjb3VudENsYXNzTmFtNSIsIl9yZWYkZGlzY291bnRDbGFzc05hbTYiLCJfcmVmJGRpc2NvdW50Q2xhc3NOYW03IiwiX3JlZiRkaXNjb3VudENsYXNzTmFtOCIsIl9yZWYkZGlzY291bnRDbGFzc05hbTkiLCJfcmVmJGRpc2NvdW50Q2xhc3NOYW0xMCIsIl9yZWYkZGlzY291bnRMYWJlbCIsIl9yZWYkZGlzY291bnRTaG93QXBwbCIsIl9yZWYkaW5jbHVkZURvbWFpblNpZyIsIl9yZWYkaXNQcm9kdWN0RW1iZWRGbyIsIl9yZWYkc2hvd0Rpc2NvdW50Q29kZSIsIl9yZWYkc2hvd1VzZXJUZXJtc0FuZCIsIl9yZWYkdXJsQXBpIiwiX3JlZiR1cmxGcm9udGVuZCIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNldExvYWRpbmciLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInNldEFsZXJ0cyIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTEwIiwic2V0VGFicyIsImluZGV4IiwiZHJhZnQiLCJqb2JKc29uIiwiZHJhZnRUZW1wbGF0ZXMiLCJkcmFmdFRlbXBsYXRlRmlsZXMiLCJtYXAiLCJkIiwiZmlsZSIsIm93bkRyYWZ0Iiwib3duRHJhZnRzIiwiaW1hZ2VzIiwidXBkYXRlZEFsZXJ0cyIsIl8iLCJpZHgiLCJtZXNzYWdlIiwibmV3QWxlcnRzIiwiY29uY2F0IiwiYWxlcnRUeXBlIiwidGl0bGUiLCJyZXNldFRhYnMiLCJfdGFicyIsImNsaWVudCIsIm5kZXh0SW5kZXgiLCJkaXNhYmxlZCIsInRhYklkIiwiZmluZEluZGV4IiwiaWQiLCJpdGVtcyIsIlByb3ZpZGVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvTWVyY2hpQ2hlY2tvdXRQcm92aWRlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgUmVhY3ROb2RlLCB1c2VDb250ZXh0LCB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWVyY2hpQ2hlY2tvdXRUYWIgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyB0YWJzSW5pdCB9IGZyb20gJy4uL3RhYnNfdXRpbHMnO1xuaW1wb3J0IHsgTWVyY2hpIH0gZnJvbSAnbWVyY2hpX3Nka190cyc7XG5cbmludGVyZmFjZSBJTWVyY2hpQ2hlY2tvdXQge1xuICBhY3RpdmVUYWJJbmRleDogbnVtYmVyO1xuICBhbGVydHM6IGFueVtdO1xuICBhbGVydENsb3NlOiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgYWxlcnRFcnJvclNob3c6IChtZXNzYWdlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QWxlcnRzQ29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0RXJyb3I/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QWxlcnRTdWNjZXNzPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnk/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uUHJpbWFyeUJsb2NrPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblNlY29uZGFyeT86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25TZWNvbmRhcnlCbG9jaz86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25Eb3dubG9hZEludm9pY2U/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Q29uZmlybUluZm9QYW5lbD86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb290ZXJBY3Rpb25zQ29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1DaGVja2JveD86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtR3JvdXA/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUdyb3VwQ2hlY2tib3g/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUlucHV0Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1TZWxlY3Q/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3Q/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3RJdGVtPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW1Mb2FkZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUxhYmVsQ2hlY2tib3g/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0SW5wdXRFcnJvcj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXA/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbT86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRSb3c/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Um93Q29sdW1uPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFN1YnRpdGxlPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYnNDb250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0VGFiPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmU/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0VGFiUGFuZUNvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJCdXR0b24/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUludm9pY2VCdXR0b25QYXlJbnZvaWNlPzogc3RyaW5nO1xuICBjbGVhckN1c3RvbWVyOiAoKSA9PiB2b2lkO1xuICBjdXJyZW50VXNlcj86IGFueTtcbiAgY3VzdG9tZXI/OiBhbnk7XG4gIGRpc2NvdW50QnV0dG9uVGV4dD86IHN0cmluZztcbiAgZGlzY291bnRDYWxsYmFja0Vycm9yOiAoKSA9PiB2b2lkO1xuICBkaXNjb3VudENhbGxiYWNrU3VjY2VzczogKGl0ZW1zOiBhbnlbXSkgPT4gdm9pZDtcbiAgZGlzY291bnRDbGFzc05hbWU/OiBzdHJpbmc7XG4gIGRpc2NvdW50Q2xhc3NOYW1lTWFpbkNvbnRhaW5lcj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25JdGVtUmVtb3ZlPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUJ1dHRvbj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25Db250YWluZXI/OiBzdHJpbmc7XG4gIGRpc2NvdW50Q2xhc3NOYW1lRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUlucHV0Pzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtcz86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dENvbnRhaW5lcj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dGRpc2NvdW50TGFiZWw/OiBzdHJpbmc7XG4gIGRpc2NvdW50TGFiZWw/OiBzdHJpbmc7XG4gIGRpc2NvdW50U2hvd0FwcGxpZWRJdGVtcz86IGJvb2xlYW47XG4gIGRvbWFpbj86IGFueTtcbiAgZWRpdERyYWZ0VGVtcGxhdGU6IChpbmRleDogbnVtYmVyLCBkcmFmdDogYW55KSA9PiB2b2lkO1xuICBpbmNsdWRlRG9tYWluU2lnbnVwPzogYm9vbGVhbjtcbiAgaW52b2ljZTogYW55O1xuICBpc0J1eVJlcXVlc3Q/OiBib29sZWFuO1xuICBpc09wZW4/OiBib29sZWFuO1xuICBpc1Byb2R1Y3RFbWJlZEZvcm0/OiBib29sZWFuO1xuICBqb2I6IGFueTtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgbWVyY2hpOiBNZXJjaGk7XG4gIG1lc3NhZ2VTdWNjZXNzQnV5UmVxdWVzdD86IHN0cmluZztcbiAgbWVzc2FnZVN1Y2Nlc3NRdW90ZVJlcXVlc3Q/OiBzdHJpbmc7XG4gIG5leHRUYWI6ICgpID0+IHZvaWQ7XG4gIHByb2R1Y3Q6IGFueTtcbiAgcmVkaXJlY3RBZnRlclN1Y2Nlc3NVcmw/OiBzdHJpbmc7XG4gIHJlZGlyZWN0QWZ0ZXJRdW90ZVN1Y2Nlc3NVcmw/OiBzdHJpbmc7XG4gIHJlZGlyZWN0V2l0aFZhbHVlPzogYm9vbGVhbjtcbiAgc2V0QWN0aXZlVGFiQnlJZDogKGlkOiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNldEFjdGl2ZVRhYkluZGV4OiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgc2V0Q3VzdG9tZXI6IChjdXN0b21lcjogYW55KSA9PiB2b2lkO1xuICBzZXREb21haW46IChkb21haW46IGFueSkgPT4gdm9pZDtcbiAgc2V0SW52b2ljZTogKGludm9pY2U6IGFueSkgPT4gdm9pZDtcbiAgc2V0Sm9iOiAoam9iOiBhbnkpID0+IHZvaWQ7XG4gIHNob3dEaXNjb3VudENvZGU/OiBib29sZWFuO1xuICBzaG93VXNlclRlcm1zQW5kQ29uZGl0aW9ucz86IGJvb2xlYW47XG4gIHRhYnM6IE1lcmNoaUNoZWNrb3V0VGFiW107XG4gIHRvZ2dsZU1lcmNoaUNoZWNrb3V0OiAoKSA9PiB2b2lkO1xuICB1cmxGcm9udGVuZDogc3RyaW5nO1xuICB1cmxBcGk6IHN0cmluZztcbn1cblxuY29uc3QgTWVyY2hpQ2hlY2tvdXRDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxJTWVyY2hpQ2hlY2tvdXQ+KHtcbiAgYWN0aXZlVGFiSW5kZXg6IDAsXG4gIGFsZXJ0czogW10sXG4gIGFsZXJ0Q2xvc2UoKSB7fSxcbiAgYWxlcnRFcnJvclNob3coKSB7fSxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydHNDb250YWluZXI6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydDogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0RXJyb3I6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydFN1Y2Nlc3M6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25QcmltYXJ5OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uUHJpbWFyeUJsb2NrOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5QmxvY2s6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25Eb3dubG9hZEludm9pY2U6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRDb25maXJtSW5mb1BhbmVsOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9vdGVyQWN0aW9uc0NvbnRhaW5lcjogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1DaGVja2JveDogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1Hcm91cDogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1Hcm91cENoZWNrYm94OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUlucHV0OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybVNlbGVjdDogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEdvb2dsZVN1Z2dlc3RMaXN0OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3RJdGVtOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbUxvYWRlcjogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1MYWJlbENoZWNrYm94OiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0SW5wdXRFcnJvcjogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cDogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW06IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRSb3c6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRSb3dDb2x1bW46IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRTdWJ0aXRsZTogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYnNDb250YWluZXI6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWI6IHVuZGVmaW5lZCxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJQYW5lOiB1bmRlZmluZWQsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0VGFiUGFuZUNvbnRhaW5lcjogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYkJ1dHRvbjogdW5kZWZpbmVkLFxuICBjbGFzc05hbWVNZXJjaGlJbnZvaWNlQnV0dG9uUGF5SW52b2ljZTogdW5kZWZpbmVkLFxuICBjbGVhckN1c3RvbWVyKCkge30sXG4gIGN1cnJlbnRVc2VyOiB1bmRlZmluZWQsXG4gIGN1c3RvbWVyOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50QnV0dG9uVGV4dDogdW5kZWZpbmVkLFxuICBkaXNjb3VudENhbGxiYWNrRXJyb3IoKSB7fSxcbiAgZGlzY291bnRDYWxsYmFja1N1Y2Nlc3MoKSB7fSxcbiAgZGlzY291bnRDbGFzc05hbWU6IHVuZGVmaW5lZCxcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b246IHVuZGVmaW5lZCxcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25Db250YWluZXI6IHVuZGVmaW5lZCxcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25JdGVtUmVtb3ZlOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50Q2xhc3NOYW1lRXJyb3JNZXNzYWdlOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50Q2xhc3NOYW1lSW5wdXQ6IHVuZGVmaW5lZCxcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dENvbnRhaW5lcjogdW5kZWZpbmVkLFxuICBkaXNjb3VudENsYXNzTmFtZUlucHV0ZGlzY291bnRMYWJlbDogdW5kZWZpbmVkLFxuICBkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50Q2xhc3NOYW1lTGlzdEl0ZW1zOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50Q2xhc3NOYW1lTWFpbkNvbnRhaW5lcjogdW5kZWZpbmVkLFxuICBkaXNjb3VudExhYmVsOiB1bmRlZmluZWQsXG4gIGRpc2NvdW50U2hvd0FwcGxpZWRJdGVtczogdHJ1ZSxcbiAgZG9tYWluOiB1bmRlZmluZWQsXG4gIGVkaXREcmFmdFRlbXBsYXRlKCkge30sXG4gIGlzQnV5UmVxdWVzdDogZmFsc2UsXG4gIGlzT3BlbjogZmFsc2UsXG4gIGxvYWRpbmc6IGZhbHNlLFxuICBtZXJjaGk6IHVuZGVmaW5lZCxcbiAgbWVzc2FnZVN1Y2Nlc3NCdXlSZXF1ZXN0OiB1bmRlZmluZWQsXG4gIG1lc3NhZ2VTdWNjZXNzUXVvdGVSZXF1ZXN0OiB1bmRlZmluZWQsXG4gIG5leHRUYWIoKSB7fSxcbiAgaW5jbHVkZURvbWFpblNpZ251cDogZmFsc2UsXG4gIGludm9pY2U6IHt9LFxuICBpc1Byb2R1Y3RFbWJlZEZvcm06IGZhbHNlLFxuICBqb2I6IHt9LFxuICBwcm9kdWN0OiB7fSxcbiAgcmVkaXJlY3RBZnRlclN1Y2Nlc3NVcmw6IHVuZGVmaW5lZCxcbiAgcmVkaXJlY3RBZnRlclF1b3RlU3VjY2Vzc1VybDogdW5kZWZpbmVkLFxuICByZWRpcmVjdFdpdGhWYWx1ZTogdHJ1ZSxcbiAgc2V0QWN0aXZlVGFiQnlJZCgpIHt9LFxuICBzZXRBY3RpdmVUYWJJbmRleCgpIHt9LFxuICBzZXRDdXN0b21lcigpIHt9LFxuICBzZXREb21haW4oKSB7fSxcbiAgc2V0SW52b2ljZSgpIHt9LFxuICBzZXRKb2IoKSB7fSxcbiAgc2hvd0Rpc2NvdW50Q29kZTogdHJ1ZSxcbiAgc2hvd1VzZXJUZXJtc0FuZENvbmRpdGlvbnM6IHRydWUsXG4gIHRhYnM6IFtdLFxuICB0b2dnbGVNZXJjaGlDaGVja291dCgpIHt9LFxuICB1cmxGcm9udGVuZDogJycsXG4gIHVybEFwaTogJycsXG59KTtcblxuZXhwb3J0IGNvbnN0IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQgPSAoKSA9PlxuICB1c2VDb250ZXh0KE1lcmNoaUNoZWNrb3V0Q29udGV4dCk7XG5cbmludGVyZmFjZSBQcm9wc01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXIge1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0c0NvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydD86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydEVycm9yPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0U3VjY2Vzcz86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25QcmltYXJ5Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnlCbG9jaz86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRCdXR0b25TZWNvbmRhcnk/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5QmxvY2s/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uRG93bmxvYWRJbnZvaWNlPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dENvbmZpcm1JbmZvUGFuZWw/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9vdGVyQWN0aW9uc0NvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtQ2hlY2tib3g/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUdyb3VwPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1Hcm91cENoZWNrYm94Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1JbnB1dD86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtU2VsZWN0Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEdvb2dsZVN1Z2dlc3RMaXN0Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEdvb2dsZVN1Z2dlc3RMaXN0SXRlbT86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXBJdGVtTG9hZGVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dElucHV0RXJyb3I/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW0/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Um93Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFJvd0NvbHVtbj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRTdWJ0aXRsZT86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJzQ29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1MYWJlbENoZWNrYm94Pzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYj86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJCdXR0b24/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0VGFiUGFuZT86IHN0cmluZztcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJQYW5lQ29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVNZXJjaGlJbnZvaWNlQnV0dG9uUGF5SW52b2ljZT86IHN0cmluZztcbiAgY3VycmVudFVzZXI/OiBhbnk7XG4gIGRpc2NvdW50QnV0dG9uVGV4dD86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWU/OiBzdHJpbmc7XG4gIGRpc2NvdW50Q2xhc3NOYW1lTWFpbkNvbnRhaW5lcj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25JdGVtUmVtb3ZlPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUJ1dHRvbj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVCdXR0b25Db250YWluZXI/OiBzdHJpbmc7XG4gIGRpc2NvdW50Q2xhc3NOYW1lRXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUlucHV0Pzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtPzogc3RyaW5nO1xuICBkaXNjb3VudENsYXNzTmFtZUxpc3RJdGVtcz86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dENvbnRhaW5lcj86IHN0cmluZztcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dGRpc2NvdW50TGFiZWw/OiBzdHJpbmc7XG4gIGRpc2NvdW50TGFiZWw/OiBzdHJpbmc7XG4gIGRpc2NvdW50U2hvd0FwcGxpZWRJdGVtcz86IGJvb2xlYW47XG4gIGluY2x1ZGVEb21haW5TaWdudXA/OiBib29sZWFuO1xuICBpc0J1eVJlcXVlc3Q/OiBib29sZWFuO1xuICBpc09wZW46IGJvb2xlYW47XG4gIGlzUHJvZHVjdEVtYmVkRm9ybT86IGJvb2xlYW47XG4gIG1lc3NhZ2VTdWNjZXNzQnV5UmVxdWVzdD86IHN0cmluZztcbiAgbWVzc2FnZVN1Y2Nlc3NRdW90ZVJlcXVlc3Q/OiBzdHJpbmc7XG4gIHNob3dEaXNjb3VudENvZGU/OiBib29sZWFuO1xuICBzaG93VXNlclRlcm1zQW5kQ29uZGl0aW9ucz86IGJvb2xlYW47XG4gIGludm9pY2U6IGFueTtcbiAgam9iOiBhbnk7XG4gIHByb2R1Y3Q6IGFueTtcbiAgcmVkaXJlY3RBZnRlclN1Y2Nlc3NVcmw/OiBzdHJpbmc7XG4gIHJlZGlyZWN0QWZ0ZXJRdW90ZVN1Y2Nlc3NVcmw/OiBzdHJpbmc7XG4gIHJlZGlyZWN0V2l0aFZhbHVlPzogYm9vbGVhbjtcbiAgc2V0SW52b2ljZTogKGludm9pY2U6IGFueSkgPT4gdm9pZDtcbiAgc2V0Sm9iOiAoam9iOiBhbnkpID0+IHZvaWQ7XG4gIHRvZ2dsZU1lcmNoaUNoZWNrb3V0OiAoKSA9PiB2b2lkO1xuICB1cmxBcGk/OiBzdHJpbmc7XG4gIHVybEZyb250ZW5kPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgTWVyY2hpQ2hlY2tvdXRQcm92aWRlciA9ICh7XG4gIGNoaWxkcmVuLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0c0NvbnRhaW5lciA9ICdkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LWNvbHVtbiBhbGVydHMtY29udGFpbmVyLXNtJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydCA9ICdhbGVydCBhbGVydC1kaXNtaXNzaWJsZSBhbGVydC1ub3RpZnknLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEFsZXJ0RXJyb3IgPSAnYWxlcnQtZGFuZ2VyJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRBbGVydFN1Y2Nlc3MgPSAnYWxlcnQtc3VjY2VzcycsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uUHJpbWFyeSA9ICdidG4gYnRuLWxtZCBidG4tcHJpbWFyeSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXInLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnlCbG9jayA9ICdidG4gYnRuLWxnIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jaycsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5ID0gJ2J0biBidG4tbGcgYnRuLXNlY29uZGFyeScsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uU2Vjb25kYXJ5QmxvY2sgPSAnYnRuIGJ0bi1sZyBidG4tc2Vjb25kYXJ5IGJ0bi1ibG9jaycsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uRG93bmxvYWRJbnZvaWNlID0gJ2J0biBidG4tbGcgYnRuLXByaW1hcnknLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dENvbmZpcm1JbmZvUGFuZWwgPSAnZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlcicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9vdGVyQWN0aW9uc0NvbnRhaW5lciA9ICdkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtNCcsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUNoZWNrYm94ID0gJ2Zvcm0tY2hlY2staW5wdXQnLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dEZvcm1Hcm91cCA9ICdmb3JtLWdyb3VwJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtR3JvdXBDaGVja2JveCA9ICdmb3JtLWNoZWNrJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtSW5wdXQgPSAnZm9ybS1jb250cm9sJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRGb3JtU2VsZWN0ID0gJ2Zvcm0tY29udHJvbCcsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3QgPSAnbGlzdC1ncm91cCBtLWItMCcsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0R29vZ2xlU3VnZ2VzdExpc3RJdGVtID0gJ2xpc3QtZ3JvdXAtaXRlbSBjdXJzb3ItcG9pbnRlcicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbUxvYWRlciA9ICdsaXN0LWdyb3VwLWl0ZW0gbW9kYWwtbWVyY2hpLWNoZWNrb3V0LXNoaXBtZW50LW9wdGlvbicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0SW5wdXRFcnJvciA9ICd0ZXh0LWRhbmdlcicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0Rm9ybUxhYmVsQ2hlY2tib3ggPSAnJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXAgPSAnbW9kYWwtbWVyY2hpLWNoZWNrb3V0LXNoaXBtZW50LW9wdGlvbicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbSA9ICdsaXN0LWdyb3VwLWl0ZW0nLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFJvdyA9ICdtZXJjaGktcm93JyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRSb3dDb2x1bW4gPSAnbWVyY2hpLWNvbHVtbicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0U3VidGl0bGUgPSAnbWVyY2hpLWNoZWNrb3V0LXN1YnRpdGxlJyxcbiAgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJzQ29udGFpbmVyID0gJ21lcmNoaS1jaGVja291dC10YWJzLWNvbnRhaW5lcicsXG4gIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0VGFiID0gJ21lcmNoaS1jaGVja291dC10YWInLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYkJ1dHRvbiA9ICdidG4gbWVyY2hpLWNoZWNrb3V0LXRhYi1idG4nLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmUgPSAndGFiLXBhbmUnLFxuICBjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmVDb250YWluZXIgPSAndGFiLWNvbnRlbnQnLFxuICBjbGFzc05hbWVNZXJjaGlJbnZvaWNlQnV0dG9uUGF5SW52b2ljZSA9ICdidG4gYnRuLWxnIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jaycsXG4gIGN1cnJlbnRVc2VyLFxuICBkaXNjb3VudEJ1dHRvblRleHQgPSAnQXBwbHknLFxuICBkaXNjb3VudENsYXNzTmFtZSA9ICdtZXJjaGktY2hlY2tvdXQtZGlzY291bnQtY29kZS1jb250YWluZXInLFxuICBkaXNjb3VudENsYXNzTmFtZUJ1dHRvbiA9ICdidG4gYnRuLXByaW1hcnknLFxuICBkaXNjb3VudENsYXNzTmFtZUJ1dHRvbkNvbnRhaW5lciA9ICcnLFxuICBkaXNjb3VudENsYXNzTmFtZUJ1dHRvbkl0ZW1SZW1vdmUgPSAnYnRuIGJ0bi1zbSBidG4tbGluaycsXG4gIGRpc2NvdW50Q2xhc3NOYW1lRXJyb3JNZXNzYWdlID0gJ3RleHQtZGFuZ2VyJyxcbiAgZGlzY291bnRDbGFzc05hbWVJbnB1dCA9ICdmb3JtLWNvbnRyb2wnLFxuICBkaXNjb3VudENsYXNzTmFtZUlucHV0Q29udGFpbmVyID0gJ21lcmNoaS1jaGVja291dC1kaXNjb3VudC1jb2RlLWZpZWxkLWNvbnRhaW5lcicsXG4gIGRpc2NvdW50Q2xhc3NOYW1lSW5wdXRkaXNjb3VudExhYmVsID0gJ3Zpc3VhbGx5LWhpZGRlbicsXG4gIGRpc2NvdW50Q2xhc3NOYW1lTGlzdEl0ZW0gPSAnbGlzdC1ncm91cC1pdGVtIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gbXQtMicsXG4gIGRpc2NvdW50Q2xhc3NOYW1lTGlzdEl0ZW1zID0gJ2xpc3QtZ3JvdXAnLFxuICBkaXNjb3VudENsYXNzTmFtZU1haW5Db250YWluZXIsXG4gIGRpc2NvdW50TGFiZWwgPSAnRGlzY291bnQgY29kZScsXG4gIGRpc2NvdW50U2hvd0FwcGxpZWRJdGVtcyA