"use strict"; (self["webpackChunk_core_volunteer_app"] = self["webpackChunk_core_volunteer_app"] || []).push([["main-src_services_volunteer_c"],{ /***/ "./src/services/volunteer/core/actions.ts": /*!************************************************!*\ !*** ./src/services/volunteer/core/actions.ts ***! \************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createUpdateIdentityCsvAction: () => (/* binding */ createUpdateIdentityCsvAction), /* harmony export */ createUpdateTeamCsvAction: () => (/* binding */ createUpdateTeamCsvAction), /* harmony export */ createUploadCsvAction: () => (/* binding */ createUploadCsvAction), /* harmony export */ deleteVolunteerAction: () => (/* binding */ deleteVolunteerAction), /* harmony export */ downloadSampleCsvAction: () => (/* binding */ downloadSampleCsvAction), /* harmony export */ downloadSampleUpdateIdentityCsvAction: () => (/* binding */ downloadSampleUpdateIdentityCsvAction), /* harmony export */ downloadSampleUpdateTeamCsvAction: () => (/* binding */ downloadSampleUpdateTeamCsvAction), /* harmony export */ fetchCommune: () => (/* binding */ fetchCommune), /* harmony export */ fetchDashboardAction: () => (/* binding */ fetchDashboardAction), /* harmony export */ fetchDisabilityType: () => (/* binding */ fetchDisabilityType), /* harmony export */ fetchDistrict: () => (/* binding */ fetchDistrict), /* harmony export */ fetchEducationInstitutions: () => (/* binding */ fetchEducationInstitutions), /* harmony export */ fetchEvent: () => (/* binding */ fetchEvent), /* harmony export */ fetchFood: () => (/* binding */ fetchFood), /* harmony export */ fetchLanguateAction: () => (/* binding */ fetchLanguateAction), /* harmony export */ fetchOccupation: () => (/* binding */ fetchOccupation), /* harmony export */ fetchOfferProgramAction: () => (/* binding */ fetchOfferProgramAction), /* harmony export */ fetchProvince: () => (/* binding */ fetchProvince), /* harmony export */ fetchSkillAction: () => (/* binding */ fetchSkillAction), /* harmony export */ fetchSource: () => (/* binding */ fetchSource), /* harmony export */ fetchTeam: () => (/* binding */ fetchTeam), /* harmony export */ fetchTrainingSession: () => (/* binding */ fetchTrainingSession), /* harmony export */ fetchTravelDayAction: () => (/* binding */ fetchTravelDayAction), /* harmony export */ fetchVolunteers: () => (/* binding */ fetchVolunteers), /* harmony export */ loginUserAction: () => (/* binding */ loginUserAction), /* harmony export */ updateVolunteerAction: () => (/* binding */ updateVolunteerAction), /* harmony export */ verifyOTPAction: () => (/* binding */ verifyOTPAction), /* harmony export */ volunteerDetailAction: () => (/* binding */ volunteerDetailAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/volunteer/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./services */ "./src/services/volunteer/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var loginUserAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.AUTHENTICATION_LOGIN, _services__WEBPACK_IMPORTED_MODULE_2__.loginUserService); var verifyOTPAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.AUTHENTICATION_VERIFY_OPT, _services__WEBPACK_IMPORTED_MODULE_2__.verifyOTPService); var fetchDisabilityType = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DISABILITY_TYPE, _services__WEBPACK_IMPORTED_MODULE_2__.disabilityTypeService); var fetchProvince = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.PROVINCES, _services__WEBPACK_IMPORTED_MODULE_2__.provinceService); var fetchDistrict = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DISTRICT, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var id, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.p = _context.n) { case 0: id = _ref.id; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; console.log('provinceId::::', id); _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.districtService)(id); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 ? void 0 : _error$response.detail) || "Failed")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var fetchCommune = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.COMMUNE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.p = _context2.n) { case 0: id = _ref4.id; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.communeService)(id); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.detail) || "Failed")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var fetchOccupation = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.OCCUPATION, _services__WEBPACK_IMPORTED_MODULE_2__.occupationService); var fetchEducationInstitutions = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.EDUCATION_INSTITUTION, _services__WEBPACK_IMPORTED_MODULE_2__.educationInstitutionsService); var fetchFood = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.FOOD, _services__WEBPACK_IMPORTED_MODULE_2__.foodService); var fetchTeam = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.TEAM, _services__WEBPACK_IMPORTED_MODULE_2__.teamService); var fetchEvent = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.EVENT, _services__WEBPACK_IMPORTED_MODULE_2__.eventService); var fetchSource = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.SOURCE, _services__WEBPACK_IMPORTED_MODULE_2__.sourceService); var fetchTrainingSession = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.TRAINING_SESSION, _services__WEBPACK_IMPORTED_MODULE_2__.trainingSessionService); // export const fetchVolunteers: any = createAsyncThunk( // VOLUNTEERS, // volunteersService // ); var fetchVolunteers = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEERS, /*#__PURE__*/function () { var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(_ref7, _ref8) { var volunteer_status, page, pageSize, search, sort_order, education_institution_id, score_from, score_to, province, interested_team_id, event_ids, language_id, skill_id, rejectWithValue, response, _error$response3, _t3; return _regenerator().w(function (_context3) { while (1) switch (_context3.p = _context3.n) { case 0: volunteer_status = _ref7.volunteer_status, page = _ref7.page, pageSize = _ref7.pageSize, search = _ref7.search, sort_order = _ref7.sort_order, education_institution_id = _ref7.education_institution_id, score_from = _ref7.score_from, score_to = _ref7.score_to, province = _ref7.province, interested_team_id = _ref7.interested_team_id, event_ids = _ref7.event_ids, language_id = _ref7.language_id, skill_id = _ref7.skill_id; rejectWithValue = _ref8.rejectWithValue; _context3.p = 1; _context3.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.volunteersService)(volunteer_status, page, pageSize, search, sort_order, education_institution_id, score_from, score_to, province, interested_team_id, event_ids, language_id, skill_id); case 2: response = _context3.v; return _context3.a(2, response); case 3: _context3.p = 3; _t3 = _context3.v; return _context3.a(2, rejectWithValue(((_error$response3 = _t3.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.detail) || "Failed to fetch volunteers")); } }, _callee3, null, [[1, 3]]); })); return function (_x5, _x6) { return _ref9.apply(this, arguments); }; }()); var deleteVolunteerAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEERS, _services__WEBPACK_IMPORTED_MODULE_2__.deleteVolunteersService); var volunteerDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER, _services__WEBPACK_IMPORTED_MODULE_2__.volunteersDetailService); var updateVolunteerAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_UPDATE, /*#__PURE__*/function () { var _ref10 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(_ref0, _ref1) { var id, data, rejectWithValue, _error$response4, _t4; return _regenerator().w(function (_context4) { while (1) switch (_context4.p = _context4.n) { case 0: id = _ref0.id, data = _ref0.data; rejectWithValue = _ref1.rejectWithValue; _context4.p = 1; _context4.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.volunteerUpdateService)(id, data); case 2: return _context4.a(2, _context4.v); case 3: _context4.p = 3; _t4 = _context4.v; return _context4.a(2, rejectWithValue(((_error$response4 = _t4.response) === null || _error$response4 === void 0 ? void 0 : _error$response4.detail) || "Failed to update volunteer")); } }, _callee4, null, [[1, 3]]); })); return function (_x7, _x8) { return _ref10.apply(this, arguments); }; }()); // export const registerVolunteers: any = createAsyncThunk( // VOLUNTEERS, // registerVolunteersService // ); var fetchDashboardAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DASHBOARD, _services__WEBPACK_IMPORTED_MODULE_2__.fetchDashboardService); var fetchLanguateAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.LANGUAGE, _services__WEBPACK_IMPORTED_MODULE_2__.languagesService); var fetchSkillAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.SKILL, _services__WEBPACK_IMPORTED_MODULE_2__.skillService); var fetchOfferProgramAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.OFFER_PROGRAM, _services__WEBPACK_IMPORTED_MODULE_2__.offerProgramService); var fetchTravelDayAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.TRAVEL_DAY, _services__WEBPACK_IMPORTED_MODULE_2__.travelDayService); var downloadSampleCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DOWNLOAD_SAMPLE_CSV, _services__WEBPACK_IMPORTED_MODULE_2__.downloadSampleCsvService); var createUploadCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.UPLOAD_CSV, /*#__PURE__*/function () { var _ref12 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(formData, _ref11) { var rejectWithValue, _error$response5, _t5; return _regenerator().w(function (_context5) { while (1) switch (_context5.p = _context5.n) { case 0: rejectWithValue = _ref11.rejectWithValue; _context5.p = 1; _context5.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.createUploadCsvService)(formData); case 2: return _context5.a(2, _context5.v); case 3: _context5.p = 3; _t5 = _context5.v; return _context5.a(2, rejectWithValue(((_error$response5 = _t5.response) === null || _error$response5 === void 0 || (_error$response5 = _error$response5.data) === null || _error$response5 === void 0 ? void 0 : _error$response5.message) || "Failed to upload CSV")); } }, _callee5, null, [[1, 3]]); })); return function (_x9, _x0) { return _ref12.apply(this, arguments); }; }()); var downloadSampleUpdateTeamCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DOWNLOAD_SAMPLE_UPDATE_TEAM_CSV, _services__WEBPACK_IMPORTED_MODULE_2__.downloadSampleUpdateTeamCsvService); var createUpdateTeamCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.UPDATE_TEAM_CSV, /*#__PURE__*/function () { var _ref14 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(formData, _ref13) { var rejectWithValue, _error$response6, _t6; return _regenerator().w(function (_context6) { while (1) switch (_context6.p = _context6.n) { case 0: rejectWithValue = _ref13.rejectWithValue; _context6.p = 1; _context6.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.createUpdateTeamCsvService)(formData); case 2: return _context6.a(2, _context6.v); case 3: _context6.p = 3; _t6 = _context6.v; return _context6.a(2, rejectWithValue(((_error$response6 = _t6.response) === null || _error$response6 === void 0 || (_error$response6 = _error$response6.data) === null || _error$response6 === void 0 ? void 0 : _error$response6.message) || "Failed to update team CSV")); } }, _callee6, null, [[1, 3]]); })); return function (_x1, _x10) { return _ref14.apply(this, arguments); }; }()); var downloadSampleUpdateIdentityCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.DOWNLOAD_SAMPLE_UPDATE_IDENTITY_CSV, _services__WEBPACK_IMPORTED_MODULE_2__.downloadSampleUpdateIdentityCsvService); var createUpdateIdentityCsvAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.UPDATE_IDENTITY_CSV, /*#__PURE__*/function () { var _ref16 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(formData, _ref15) { var rejectWithValue, _error$response7, _t7; return _regenerator().w(function (_context7) { while (1) switch (_context7.p = _context7.n) { case 0: rejectWithValue = _ref15.rejectWithValue; _context7.p = 1; _context7.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.createUpdateIdentityCsvService)(formData); case 2: return _context7.a(2, _context7.v); case 3: _context7.p = 3; _t7 = _context7.v; return _context7.a(2, rejectWithValue(((_error$response7 = _t7.response) === null || _error$response7 === void 0 || (_error$response7 = _error$response7.data) === null || _error$response7 === void 0 ? void 0 : _error$response7.message) || "Failed to update team CSV")); } }, _callee7, null, [[1, 3]]); })); return function (_x11, _x12) { return _ref16.apply(this, arguments); }; }()); /***/ }), /***/ "./src/services/volunteer/core/constants.ts": /*!**************************************************!*\ !*** ./src/services/volunteer/core/constants.ts ***! \**************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ AUTH: () => (/* binding */ AUTH), /* harmony export */ AUTHENTICATION_LOGIN: () => (/* binding */ AUTHENTICATION_LOGIN), /* harmony export */ AUTHENTICATION_VERIFY_OPT: () => (/* binding */ AUTHENTICATION_VERIFY_OPT), /* harmony export */ COMMUNE: () => (/* binding */ COMMUNE), /* harmony export */ DASHBOARD: () => (/* binding */ DASHBOARD), /* harmony export */ DISABILITY_TYPE: () => (/* binding */ DISABILITY_TYPE), /* harmony export */ DISTRICT: () => (/* binding */ DISTRICT), /* harmony export */ DOWNLOAD_SAMPLE_CSV: () => (/* binding */ DOWNLOAD_SAMPLE_CSV), /* harmony export */ DOWNLOAD_SAMPLE_UPDATE_IDENTITY_CSV: () => (/* binding */ DOWNLOAD_SAMPLE_UPDATE_IDENTITY_CSV), /* harmony export */ DOWNLOAD_SAMPLE_UPDATE_TEAM_CSV: () => (/* binding */ DOWNLOAD_SAMPLE_UPDATE_TEAM_CSV), /* harmony export */ EDUCATION_INSTITUTION: () => (/* binding */ EDUCATION_INSTITUTION), /* harmony export */ EVENT: () => (/* binding */ EVENT), /* harmony export */ FOOD: () => (/* binding */ FOOD), /* harmony export */ LANGUAGE: () => (/* binding */ LANGUAGE), /* harmony export */ OCCUPATION: () => (/* binding */ OCCUPATION), /* harmony export */ OFFER_PROGRAM: () => (/* binding */ OFFER_PROGRAM), /* harmony export */ PROVINCES: () => (/* binding */ PROVINCES), /* harmony export */ SKILL: () => (/* binding */ SKILL), /* harmony export */ SOURCE: () => (/* binding */ SOURCE), /* harmony export */ TEAM: () => (/* binding */ TEAM), /* harmony export */ TRAINING_SESSION: () => (/* binding */ TRAINING_SESSION), /* harmony export */ TRAVEL_DAY: () => (/* binding */ TRAVEL_DAY), /* harmony export */ UPDATE_IDENTITY_CSV: () => (/* binding */ UPDATE_IDENTITY_CSV), /* harmony export */ UPDATE_TEAM_CSV: () => (/* binding */ UPDATE_TEAM_CSV), /* harmony export */ UPLOAD_CSV: () => (/* binding */ UPLOAD_CSV), /* harmony export */ VOLUNTEER: () => (/* binding */ VOLUNTEER), /* harmony export */ VOLUNTEERS: () => (/* binding */ VOLUNTEERS), /* harmony export */ VOLUNTEERS_BY_ID: () => (/* binding */ VOLUNTEERS_BY_ID), /* harmony export */ VOLUNTEERS_FETCH_ALL: () => (/* binding */ VOLUNTEERS_FETCH_ALL), /* harmony export */ VOLUNTEER_UPDATE: () => (/* binding */ VOLUNTEER_UPDATE) /* harmony export */ }); var AUTH = 'auth'; var VOLUNTEER = 'volunteer'; var AUTHENTICATION_LOGIN = 'auth/login'; var AUTHENTICATION_VERIFY_OPT = 'auth/verify'; var DISABILITY_TYPE = 'disability-types/'; var PROVINCES = 'provinces/'; var DISTRICT = 'DISTRICT'; var COMMUNE = 'COMMUNE'; var OCCUPATION = 'occupations/'; var EDUCATION_INSTITUTION = 'education-institutions/'; var FOOD = 'foods/'; var TEAM = 'interested-teams/'; var EVENT = 'volunteer-events/'; var LANGUAGE = 'languages'; var SKILL = 'skills'; var SOURCE = 'opportunity-sources/'; var TRAINING_SESSION = 'training-sessions/'; var VOLUNTEER_UPDATE = 'volunteer-update'; var VOLUNTEERS = 'volunteers/fetchAll'; var VOLUNTEERS_FETCH_ALL = 'volunteers/fetchAll'; var VOLUNTEERS_BY_ID = 'volunteers/fetchByID'; var DASHBOARD = 'dashboard'; var OFFER_PROGRAM = 'offer-programs'; var TRAVEL_DAY = 'travel-days'; var DOWNLOAD_SAMPLE_CSV = 'download-sameple-csv'; var UPLOAD_CSV = 'upload-csv'; var DOWNLOAD_SAMPLE_UPDATE_TEAM_CSV = 'download-sample-update-team-csv'; var UPDATE_TEAM_CSV = 'update-team-csv'; var DOWNLOAD_SAMPLE_UPDATE_IDENTITY_CSV = 'download-sample-update_identity_csv'; var UPDATE_IDENTITY_CSV = 'update_identity_csv'; /***/ }), /***/ "./src/services/volunteer/core/reducer.ts": /*!************************************************!*\ !*** ./src/services/volunteer/core/reducer.ts ***! \************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setRegisterPending: () => (/* binding */ setRegisterPending), /* harmony export */ setVolunteer: () => (/* binding */ setVolunteer), /* harmony export */ volunteerSlice: () => (/* binding */ volunteerSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./actions */ "./src/services/volunteer/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ "./src/services/volunteer/core/constants.ts"); /* eslint-disable no-console */ var initialState = { disabilityTypes: null, // Assuming you need an empty array initially registerPending: false, registerErrorMessage: '', volunteer: null, // Assuming volunteer is initially null or undefined provinces: null, occupations: null, educationInstitutions: null, foods: null, interestedTeams: null, volunteerEvents: null, opportunitySources: null, trainingSessions: null, volunteerPending: false, volunteerDetailPending: false, volunteerUpdatePending: false, uploadCsvPending: false, updateTeamCsvPending: false, volunteers: [], dashboard: null, languages: null, skills: null, communes: null, districts: null }; var volunteerSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_2__.VOLUNTEER, initialState: initialState, reducers: { // Sets the current volunteer setVolunteer: function setVolunteer(state, action) { state.volunteer = action.payload; }, // Updates the register pending state setRegisterPending: function setRegisterPending(state, action) { state.registerPending = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // Handles fetching disability types pending state .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDisabilityType.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDisabilityType.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch disability types.'; }) // Handles fulfilled disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDisabilityType.fulfilled, function (state, action) { var payload = action.payload; state.disabilityTypes = payload; state.registerPending = false; }) // handle province // Handles fetching province pending state .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchProvince.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected province fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchProvince.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch province.'; }) // Handles fulfilled province fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchProvince.fulfilled, function (state, action) { var payload = action.payload; state.provinces = payload; state.registerPending = false; }) // handle occupation .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOccupation.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected occupation fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOccupation.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch occupation.'; }) // Handles fulfilled occupation fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOccupation.fulfilled, function (state, action) { var payload = action.payload; state.occupations = payload; state.registerPending = false; }) // handle eduction institution .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEducationInstitutions.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected institution fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEducationInstitutions.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch institution.'; }) // Handles fulfilled institution fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEducationInstitutions.fulfilled, function (state, action) { var payload = action.payload; state.educationInstitutions = payload; state.registerPending = false; }) // handle foods .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchFood.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected food fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchFood.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch food.'; }) // Handles fulfilled food fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchFood.fulfilled, function (state, action) { var payload = action.payload; state.foods = payload; state.registerPending = false; }) // handle team .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTeam.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected team fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTeam.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch team.'; }) // Handles fulfilled team fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTeam.fulfilled, function (state, action) { var payload = action.payload; state.interestedTeams = payload; state.registerPending = false; }) // handle event .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEvent.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected event fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEvent.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch event.'; }) // Handles fulfilled event fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchEvent.fulfilled, function (state, action) { var payload = action.payload; state.volunteerEvents = payload; state.registerPending = false; }) // handle source .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSource.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected source fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSource.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch source.'; }) // Handles fulfilled source fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSource.fulfilled, function (state, action) { var payload = action.payload; state.opportunitySources = payload; state.registerPending = false; }) // handle training session .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTrainingSession.pending, function (state) { state.registerPending = true; state.registerErrorMessage = ''; }) // Handles rejected training session fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTrainingSession.rejected, function (state, action) { state.registerPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch training session.'; }) // Handles fulfilled training session fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTrainingSession.fulfilled, function (state, action) { var payload = action.payload; state.trainingSessions = payload; state.registerPending = false; }) // handle volunteers .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteers.pending, function (state) { state.volunteerPending = true; }) // Handles rejected disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteers.rejected, function (state) { state.volunteerPending = false; }) // Handles fulfilled disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteers.fulfilled, function (state, action) { var payload = action.payload; state.volunteers = payload; state.volunteerPending = false; }) // handle volunteer detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerDetailAction.pending, function (state) { state.volunteerDetailPending = true; }) // Handles rejected disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerDetailAction.rejected, function (state) { state.volunteerDetailPending = false; }) // Handles fulfilled disability types fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.volunteer = payload; state.volunteerDetailPending = false; }) // handle volunteer update .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerAction.pending, function (state) { state.volunteerUpdatePending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerAction.rejected, function (state) { state.volunteerUpdatePending = false; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerAction.fulfilled, function (state, action) { state.volunteer = action.payload; state.volunteerUpdatePending = false; }) // handle volunteer upload csv .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUploadCsvAction.pending, function (state) { state.uploadCsvPending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUploadCsvAction.rejected, function (state, action) { state.uploadCsvPending = false; state.registerErrorMessage = action.error.message || 'Failed to upload csv file.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUploadCsvAction.fulfilled, function (state, action) { state.volunteer = action.payload; state.uploadCsvPending = false; }) // handle volunteer update team csv .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUpdateTeamCsvAction.pending, function (state) { state.updateTeamCsvPending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUpdateTeamCsvAction.rejected, function (state, action) { state.updateTeamCsvPending = false; state.registerErrorMessage = action.error.message || 'Failed to update team csv file.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createUpdateTeamCsvAction.fulfilled, function (state, action) { state.volunteer = action.payload; state.updateTeamCsvPending = false; }) // Handle dashboad details .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDashboardAction.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDashboardAction.rejected, function (state, action) { state.volunteerPending = false; state.volunteer = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDashboardAction.fulfilled, function (state, action) { state.volunteerPending = false; state.dashboard = action.payload; // Store the fetched volunteer details }) // handle language .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchLanguateAction.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchLanguateAction.rejected, function (state, action) { state.volunteerPending = false; state.languages = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchLanguateAction.fulfilled, function (state, action) { state.volunteerPending = false; state.languages = action.payload; // Store the fetched volunteer details }) // district .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDistrict.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDistrict.rejected, function (state, action) { state.volunteerPending = false; state.districts = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchDistrict.fulfilled, function (state, action) { state.volunteerPending = false; state.districts = action.payload; // Store the fetched volunteer details }) // district .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchCommune.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchCommune.rejected, function (state, action) { state.volunteerPending = false; state.communes = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchCommune.fulfilled, function (state, action) { state.volunteerPending = false; state.communes = action.payload; // Store the fetched volunteer details }) // ravel .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTravelDayAction.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTravelDayAction.rejected, function (state, action) { state.volunteerPending = false; state.travelDays = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchTravelDayAction.fulfilled, function (state, action) { state.volunteerPending = false; state.travelDays = action.payload; // Store the fetched volunteer details }) // district .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOfferProgramAction.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOfferProgramAction.rejected, function (state, action) { state.volunteerPending = false; state.offerProgram = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchOfferProgramAction.fulfilled, function (state, action) { state.volunteerPending = false; state.offerProgram = action.payload; // Store the fetched volunteer details }) // handle skills .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSkillAction.pending, function (state) { state.volunteerPending = true; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSkillAction.rejected, function (state, action) { state.volunteerPending = false; state.skills = null; // Clear volunteer data if the request fails }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchSkillAction.fulfilled, function (state, action) { state.volunteerPending = false; state.skills = action.payload; // Store the fetched volunteer details }); // handle regiter volunteer // handle volunteers // .addCase(registerVolunteers.Volunteers.pending, (state) => { // state.volunteerPending = true; // }) // // Handles rejected disability types fetch // .addCase(registerVolunteers.rejected, (state) => { // state.volunteerPending = false; // }) // // Handles fulfilled disability types fetch // .addCase(registerVolunteers.fulfilled, (state, action) => { // const { payload } = action; // state.volunteers = payload; // state.volunteerPending = false; // }) } }); var _volunteerSlice$actio = volunteerSlice.actions, setRegisterErrorMessage = _volunteerSlice$actio.setRegisterErrorMessage, setRegisterPending = _volunteerSlice$actio.setRegisterPending, setVolunteer = _volunteerSlice$actio.setVolunteer; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (volunteerSlice.reducer); /***/ }), /***/ "./src/services/volunteer/core/services.ts": /*!*************************************************!*\ !*** ./src/services/volunteer/core/services.ts ***! \*************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ communeService: () => (/* binding */ communeService), /* harmony export */ createUpdateIdentityCsvService: () => (/* binding */ createUpdateIdentityCsvService), /* harmony export */ createUpdateTeamCsvService: () => (/* binding */ createUpdateTeamCsvService), /* harmony export */ createUploadCsvService: () => (/* binding */ createUploadCsvService), /* harmony export */ deleteVolunteersService: () => (/* binding */ deleteVolunteersService), /* harmony export */ disabilityTypeService: () => (/* binding */ disabilityTypeService), /* harmony export */ districtService: () => (/* binding */ districtService), /* harmony export */ downloadSampleCsvService: () => (/* binding */ downloadSampleCsvService), /* harmony export */ downloadSampleUpdateIdentityCsvService: () => (/* binding */ downloadSampleUpdateIdentityCsvService), /* harmony export */ downloadSampleUpdateTeamCsvService: () => (/* binding */ downloadSampleUpdateTeamCsvService), /* harmony export */ educationInstitutionsService: () => (/* binding */ educationInstitutionsService), /* harmony export */ eventService: () => (/* binding */ eventService), /* harmony export */ fetchDashboardService: () => (/* binding */ fetchDashboardService), /* harmony export */ foodService: () => (/* binding */ foodService), /* harmony export */ languagesService: () => (/* binding */ languagesService), /* harmony export */ loginUserService: () => (/* binding */ loginUserService), /* harmony export */ occupationService: () => (/* binding */ occupationService), /* harmony export */ offerProgramService: () => (/* binding */ offerProgramService), /* harmony export */ provinceService: () => (/* binding */ provinceService), /* harmony export */ registerVolunteersService: () => (/* binding */ registerVolunteersService), /* harmony export */ skillService: () => (/* binding */ skillService), /* harmony export */ sourceService: () => (/* binding */ sourceService), /* harmony export */ teamService: () => (/* binding */ teamService), /* harmony export */ trainingSessionService: () => (/* binding */ trainingSessionService), /* harmony export */ travelDayService: () => (/* binding */ travelDayService), /* harmony export */ verifyOTPService: () => (/* binding */ verifyOTPService), /* harmony export */ volunteerUpdateService: () => (/* binding */ volunteerUpdateService), /* harmony export */ volunteersDetailService: () => (/* binding */ volunteersDetailService), /* harmony export */ volunteersService: () => (/* binding */ volunteersService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); 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 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(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : 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 _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var disabilityTypeService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { var pageSize, _args = arguments; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: pageSize = _args.length > 0 && _args[0] !== undefined ? _args[0] : 99999; _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.DISABILITY_TYPE, { pageSize: pageSize }); case 1: return _context.a(2, _context.v); } }, _callee); })); return function disabilityTypeService() { return _ref.apply(this, arguments); }; }(); var provinceService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)('https://phumiapi.joonaakhub.com/provinces'); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function provinceService() { return _ref2.apply(this, arguments); }; }(); var districtService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(provinceId) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: _context3.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("https://phumiapi.joonaakhub.com/districts/".concat(provinceId)); case 1: return _context3.a(2, _context3.v); } }, _callee3); })); return function districtService(_x) { return _ref3.apply(this, arguments); }; }(); var communeService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(districtId) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: _context4.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("https://phumiapi.joonaakhub.com/communes/".concat(districtId)); case 1: return _context4.a(2, _context4.v); } }, _callee4); })); return function communeService(_x2) { return _ref4.apply(this, arguments); }; }(); var occupationService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() { var pageSize, _args5 = arguments; return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: pageSize = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : 99999; _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.OCCUPATION, { pageSize: pageSize }); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function occupationService() { return _ref5.apply(this, arguments); }; }(); var educationInstitutionsService = /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() { var pageSize, _args6 = arguments; return _regenerator().w(function (_context6) { while (1) switch (_context6.n) { case 0: pageSize = _args6.length > 0 && _args6[0] !== undefined ? _args6[0] : 99999; _context6.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.EDUCATION_INSTITUTION, { pageSize: pageSize }); case 1: return _context6.a(2, _context6.v); } }, _callee6); })); return function educationInstitutionsService() { return _ref6.apply(this, arguments); }; }(); var foodService = /*#__PURE__*/function () { var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() { var pageSize, _args7 = arguments; return _regenerator().w(function (_context7) { while (1) switch (_context7.n) { case 0: pageSize = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : 99999; _context7.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.FOODS, { pageSize: pageSize }); case 1: return _context7.a(2, _context7.v); } }, _callee7); })); return function foodService() { return _ref7.apply(this, arguments); }; }(); var teamService = /*#__PURE__*/function () { var _ref8 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() { var pageSize, _args8 = arguments; return _regenerator().w(function (_context8) { while (1) switch (_context8.n) { case 0: pageSize = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : 99999; _context8.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TEAM, { pageSize: pageSize }); case 1: return _context8.a(2, _context8.v); } }, _callee8); })); return function teamService() { return _ref8.apply(this, arguments); }; }(); var eventService = /*#__PURE__*/function () { var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() { var pageSize, _args9 = arguments; return _regenerator().w(function (_context9) { while (1) switch (_context9.n) { case 0: pageSize = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : 99999; _context9.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.EVENT, { pageSize: pageSize }); case 1: return _context9.a(2, _context9.v); } }, _callee9); })); return function eventService() { return _ref9.apply(this, arguments); }; }(); var sourceService = /*#__PURE__*/function () { var _ref0 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() { var pageSize, _args0 = arguments; return _regenerator().w(function (_context0) { while (1) switch (_context0.n) { case 0: pageSize = _args0.length > 0 && _args0[0] !== undefined ? _args0[0] : 99999; _context0.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SOURCE, { pageSize: pageSize }); case 1: return _context0.a(2, _context0.v); } }, _callee0); })); return function sourceService() { return _ref0.apply(this, arguments); }; }(); var trainingSessionService = /*#__PURE__*/function () { var _ref1 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1() { var pageSize, _args1 = arguments; return _regenerator().w(function (_context1) { while (1) switch (_context1.n) { case 0: pageSize = _args1.length > 0 && _args1[0] !== undefined ? _args1[0] : 99999; _context1.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION, { pageSize: pageSize }); case 1: return _context1.a(2, _context1.v); } }, _callee1); })); return function trainingSessionService() { return _ref1.apply(this, arguments); }; }(); var volunteersService = /*#__PURE__*/function () { var _ref10 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(volunteer_status, page, pageSize, search, sort_order, education_institution_id, score_from, score_to, province, interested_team_id, event_ids, language_id, skill_id) { var _t; return _regenerator().w(function (_context10) { while (1) switch (_context10.p = _context10.n) { case 0: _context10.p = 0; _context10.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, { volunteer_status: volunteer_status, page: page, pageSize: pageSize, search: search, sort_order: sort_order, education_institution_id: education_institution_id, score_from: score_from, score_to: score_to, province: province, interested_team_id: interested_team_id, event_ids: event_ids, language_id: language_id, skill_id: skill_id }); case 1: return _context10.a(2, _context10.v); case 2: _context10.p = 2; _t = _context10.v; console.error("Error fetching volunteers:", _t); throw _t; case 3: return _context10.a(2); } }, _callee10, null, [[0, 2]]); })); return function volunteersService(_x3, _x4, _x5, _x6, _x7, _x8, _x9, _x0, _x1, _x10, _x11, _x12, _x13) { return _ref10.apply(this, arguments); }; }(); var deleteVolunteersService = /*#__PURE__*/function () { var _ref11 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(id) { return _regenerator().w(function (_context11) { while (1) switch (_context11.n) { case 0: _context11.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS).concat(id)); case 1: return _context11.a(2, _context11.v); } }, _callee11); })); return function deleteVolunteersService(_x14) { return _ref11.apply(this, arguments); }; }(); var registerVolunteersService = /*#__PURE__*/function () { var _ref12 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(data) { return _regenerator().w(function (_context12) { while (1) switch (_context12.n) { case 0: _context12.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfigWhitelist)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, _objectSpread({}, data)); case 1: return _context12.a(2, _context12.v); } }, _callee12); })); return function registerVolunteersService(_x15) { return _ref12.apply(this, arguments); }; }(); var volunteersDetailService = /*#__PURE__*/function () { var _ref13 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13(id) { return _regenerator().w(function (_context13) { while (1) switch (_context13.n) { case 0: _context13.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS).concat(id)); case 1: return _context13.a(2, _context13.v); } }, _callee13); })); return function volunteersDetailService(_x16) { return _ref13.apply(this, arguments); }; }(); var volunteerUpdateService = /*#__PURE__*/function () { var _ref14 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14(id, data) { return _regenerator().w(function (_context14) { while (1) switch (_context14.n) { case 0: return _context14.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS).concat(id), data)); } }, _callee14); })); return function volunteerUpdateService(_x17, _x18) { return _ref14.apply(this, arguments); }; }(); var loginUserService = /*#__PURE__*/function () { var _ref15 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee15(body) { return _regenerator().w(function (_context15) { while (1) switch (_context15.n) { case 0: return _context15.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.LOGIN, { email: body.email, password: body.password })); } }, _callee15); })); return function loginUserService(_x19) { return _ref15.apply(this, arguments); }; }(); var verifyOTPService = /*#__PURE__*/function () { var _ref16 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee16(body) { var response, _t2; return _regenerator().w(function (_context16) { while (1) switch (_context16.p = _context16.n) { case 0: _context16.p = 0; _context16.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VERIFY_TOP, { email: body.email, code: body.otpCode }); case 1: response = _context16.v; return _context16.a(2, response); case 2: _context16.p = 2; _t2 = _context16.v; console.error('OTP verification failed:', _t2); throw _t2; case 3: return _context16.a(2); } }, _callee16, null, [[0, 2]]); })); return function verifyOTPService(_x20) { return _ref16.apply(this, arguments); }; }(); var fetchDashboardService = /*#__PURE__*/function () { var _ref17 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17() { return _regenerator().w(function (_context17) { while (1) switch (_context17.n) { case 0: _context17.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.DASHBOARD); case 1: return _context17.a(2, _context17.v); } }, _callee17); })); return function fetchDashboardService() { return _ref17.apply(this, arguments); }; }(); var languagesService = /*#__PURE__*/function () { var _ref18 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee18() { var pageSize, _args18 = arguments; return _regenerator().w(function (_context18) { while (1) switch (_context18.n) { case 0: pageSize = _args18.length > 0 && _args18[0] !== undefined ? _args18[0] : 99999; _context18.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.LANGUAGE, { pageSize: pageSize }); case 1: return _context18.a(2, _context18.v); } }, _callee18); })); return function languagesService() { return _ref18.apply(this, arguments); }; }(); var skillService = /*#__PURE__*/function () { var _ref19 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee19() { var pageSize, _args19 = arguments; return _regenerator().w(function (_context19) { while (1) switch (_context19.n) { case 0: pageSize = _args19.length > 0 && _args19[0] !== undefined ? _args19[0] : 99999; _context19.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL, { pageSize: pageSize }); case 1: return _context19.a(2, _context19.v); } }, _callee19); })); return function skillService() { return _ref19.apply(this, arguments); }; }(); var offerProgramService = /*#__PURE__*/function () { var _ref20 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee20() { var pageSize, _args20 = arguments; return _regenerator().w(function (_context20) { while (1) switch (_context20.n) { case 0: pageSize = _args20.length > 0 && _args20[0] !== undefined ? _args20[0] : 99999; _context20.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.OFFER_PROGRAM, { pageSize: pageSize }); case 1: return _context20.a(2, _context20.v); } }, _callee20); })); return function offerProgramService() { return _ref20.apply(this, arguments); }; }(); var travelDayService = /*#__PURE__*/function () { var _ref21 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee21() { var pageSize, _args21 = arguments; return _regenerator().w(function (_context21) { while (1) switch (_context21.n) { case 0: pageSize = _args21.length > 0 && _args21[0] !== undefined ? _args21[0] : 99999; _context21.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY, { pageSize: pageSize }); case 1: return _context21.a(2, _context21.v); } }, _callee21); })); return function travelDayService() { return _ref21.apply(this, arguments); }; }(); var downloadSampleCsvService = /*#__PURE__*/function () { var _ref22 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee22() { return _regenerator().w(function (_context22) { while (1) switch (_context22.n) { case 0: _context22.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "download-sample-csv/"), { responseType: "blob" }); case 1: return _context22.a(2, _context22.v); } }, _callee22); })); return function downloadSampleCsvService() { return _ref22.apply(this, arguments); }; }(); var createUploadCsvService = /*#__PURE__*/function () { var _ref23 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee23(formData) { return _regenerator().w(function (_context23) { while (1) switch (_context23.n) { case 0: return _context23.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfigFormData)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "upload-csv/"), formData)); } }, _callee23); })); return function createUploadCsvService(_x21) { return _ref23.apply(this, arguments); }; }(); var downloadSampleUpdateTeamCsvService = /*#__PURE__*/function () { var _ref24 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee24() { return _regenerator().w(function (_context24) { while (1) switch (_context24.n) { case 0: _context24.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "download-sample-update_team_csv/"), { responseType: "blob" }); case 1: return _context24.a(2, _context24.v); } }, _callee24); })); return function downloadSampleUpdateTeamCsvService() { return _ref24.apply(this, arguments); }; }(); var createUpdateTeamCsvService = /*#__PURE__*/function () { var _ref25 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee25(formData) { return _regenerator().w(function (_context25) { while (1) switch (_context25.n) { case 0: return _context25.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfigFormData)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "update_team_csv/"), formData)); } }, _callee25); })); return function createUpdateTeamCsvService(_x22) { return _ref25.apply(this, arguments); }; }(); var downloadSampleUpdateIdentityCsvService = /*#__PURE__*/function () { var _ref26 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee26() { return _regenerator().w(function (_context26) { while (1) switch (_context26.n) { case 0: _context26.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "download-sample-update_identity_csv/"), { responseType: "blob" }); case 1: return _context26.a(2, _context26.v); } }, _callee26); })); return function downloadSampleUpdateIdentityCsvService() { return _ref26.apply(this, arguments); }; }(); var createUpdateIdentityCsvService = /*#__PURE__*/function () { var _ref27 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee27(formData) { return _regenerator().w(function (_context27) { while (1) switch (_context27.n) { case 0: return _context27.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfigFormData)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEERS, "update_identity_csv/"), formData)); } }, _callee27); })); return function createUpdateIdentityCsvService(_x23) { return _ref27.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/volunteer/register/components/form.tsx": /*!*************************************************************!*\ !*** ./src/services/volunteer/register/components/form.tsx ***! \*************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var antd_es_modal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/modal */ "../../../node_modules/antd/lib/modal/index.js"); /* harmony import */ var antd_es_checkbox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/checkbox */ "../../../node_modules/antd/lib/checkbox/index.js"); /* harmony import */ var antd_es_space__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd/es/space */ "../../../node_modules/antd/lib/space/index.js"); /* harmony import */ var antd_es_tag__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! antd/es/tag */ "../../../node_modules/antd/lib/tag/index.js"); /* harmony import */ var antd_es_radio__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd/es/radio */ "../../../node_modules/antd/lib/radio/index.js"); /* harmony import */ var antd_es_date_picker__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd/es/date-picker */ "../../../node_modules/antd/lib/date-picker/index.js"); /* harmony import */ var antd_es_row__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd/es/row */ "../../../node_modules/antd/lib/row/index.js"); /* harmony import */ var antd_es_input__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd/es/input */ "../../../node_modules/antd/lib/input/index.js"); /* harmony import */ var antd_es_col__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd/es/col */ "../../../node_modules/antd/lib/col/index.js"); /* harmony import */ var antd_es_upload__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd/es/upload */ "../../../node_modules/antd/lib/upload/index.js"); /* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! antd/es/button */ "../../../node_modules/antd/lib/button/index.js"); /* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(antd_es_button__WEBPACK_IMPORTED_MODULE_10__); /* harmony import */ var antd_es_form__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd/es/form */ "../../../node_modules/antd/lib/form/index.js"); /* harmony import */ var antd_es_tabs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd/es/tabs */ "../../../node_modules/antd/lib/tabs/index.js"); /* harmony import */ var antd_es_select__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd/es/select */ "../../../node_modules/antd/lib/select/index.js"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_14__); /* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @ant-design/icons */ "../../../node_modules/@ant-design/icons/es/icons/FileOutlined.js"); /* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @ant-design/icons */ "../../../node_modules/@ant-design/icons/es/icons/PlusOutlined.js"); /* harmony import */ var _ant_design_icons__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @ant-design/icons */ "../../../node_modules/@ant-design/icons/es/icons/UploadOutlined.js"); /* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! moment */ "../../../node_modules/moment/moment.js"); /* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_18__); /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! react-redux */ "../../../node_modules/react-redux/dist/react-redux.mjs"); /* harmony import */ var _core_actions__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../core/actions */ "./src/services/volunteer/core/actions.ts"); /* harmony import */ var sweetalert2__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! sweetalert2 */ "../../../node_modules/sweetalert2/dist/sweetalert2.all.js"); /* harmony import */ var sweetalert2__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(sweetalert2__WEBPACK_IMPORTED_MODULE_21__); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); /* harmony import */ var antd_es_input_TextArea__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! antd/es/input/TextArea */ "../../../node_modules/antd/lib/input/TextArea.js"); /* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! react-router-dom */ "../../../node_modules/react-router/dist/index.js"); 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 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(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : 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 _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _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(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } } function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } 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(r) { if (Array.isArray(r)) return r; } var Option = antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option; var TabPane = antd_es_tabs__WEBPACK_IMPORTED_MODULE_12__["default"].TabPane; var VolunteerForm = function VolunteerForm(_ref) { var _occupations$data, _disabilityTypes$data; var id = _ref.id; var _useSelector = (0,react_redux__WEBPACK_IMPORTED_MODULE_19__.useSelector)(function (state) { return state.volunteer; }), disabilityTypes = _useSelector.disabilityTypes, provinces = _useSelector.provinces, occupations = _useSelector.occupations, educationInstitutions = _useSelector.educationInstitutions, foods = _useSelector.foods, interestedTeams = _useSelector.interestedTeams, volunteerEvents = _useSelector.volunteerEvents, opportunitySources = _useSelector.opportunitySources, trainingSessions = _useSelector.trainingSessions, skills = _useSelector.skills, languages = _useSelector.languages, communes = _useSelector.communes, districts = _useSelector.districts, offerProgram = _useSelector.offerProgram, travelDays = _useSelector.travelDays; var navigate = (0,react_router_dom__WEBPACK_IMPORTED_MODULE_24__.useNavigate)(); var dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_19__.useDispatch)(); var _useSelector2 = (0,react_redux__WEBPACK_IMPORTED_MODULE_19__.useSelector)(function (state) { return state.volunteer; }), volunteer = _useSelector2.volunteer, volunteerUpdatePending = _useSelector2.volunteerUpdatePending; var _Form$useForm = antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].useForm(), _Form$useForm2 = _slicedToArray(_Form$useForm, 1), form = _Form$useForm2[0]; var _useState = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(''), _useState2 = _slicedToArray(_useState, 2), photoUrl = _useState2[0], setPhotoUrl = _useState2[1]; var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(''), _useState4 = _slicedToArray(_useState3, 2), idCardUrl = _useState4[0], setIdCardUrl = _useState4[1]; var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(''), _useState6 = _slicedToArray(_useState5, 2), cvUrl = _useState6[0], setCvUrl = _useState6[1]; var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(false), _useState8 = _slicedToArray(_useState7, 2), previewVisible = _useState8[0], setPreviewVisible = _useState8[1]; var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(''), _useState0 = _slicedToArray(_useState9, 2), previewTitle = _useState0[0], setPreviewTitle = _useState0[1]; var _useState1 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(null), _useState10 = _slicedToArray(_useState1, 2), previewContent = _useState10[0], setPreviewContent = _useState10[1]; var _useSelector3 = (0,react_redux__WEBPACK_IMPORTED_MODULE_19__.useSelector)(function (state) { return state; }), auth = _useSelector3.auth; // Get user role var currentUser = auth.currentUser; var isAdmin = (currentUser === null || currentUser === void 0 ? void 0 : currentUser.role) === "super_admin"; // Check if user is admin var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(""), _useState12 = _slicedToArray(_useState11, 2), radioValue = _useState12[0], setRadioValue = _useState12[1]; // Track selected radio value var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_14__.useState)(""), _useState14 = _slicedToArray(_useState13, 2), otherText = _useState14[0], setOtherText = _useState14[1]; // Track input text (0,react__WEBPACK_IMPORTED_MODULE_14__.useEffect)(function () { dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchDisabilityType)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchProvince)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchOccupation)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchEducationInstitutions)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchFood)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchTeam)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchSource)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchEvent)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchTrainingSession)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchLanguateAction)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchSkillAction)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchOfferProgramAction)()); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchTravelDayAction)()); }, [dispatch]); (0,react__WEBPACK_IMPORTED_MODULE_14__.useEffect)(function () { if (id) { dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.volunteerDetailAction)(id)); } }, [dispatch, id]); (0,react__WEBPACK_IMPORTED_MODULE_14__.useEffect)(function () { if (volunteer) { form.setFieldsValue({ photo: volunteer.photo || '', code: volunteer.code || '', main_code: volunteer.main_code || '', event_code: volunteer.event_code || '', first_name_khmer: volunteer.first_name_khmer || '', last_name_khmer: volunteer.last_name_khmer || '', first_name_latin: volunteer.first_name_latin || '', last_name_latin: volunteer.last_name_latin || '', date_of_birth: volunteer.date_of_birth ? moment__WEBPACK_IMPORTED_MODULE_18___default()(volunteer.date_of_birth) : null, gender: volunteer.gender || '', nationality: volunteer.nationality || '', province_id: volunteer.province_id || '', phone_number: volunteer.phone_number || '', email: volunteer.email || '', current_address: volunteer.current_address || '', house_number: volunteer.house_number || '', street_number: volunteer.street_number || '', phumi: volunteer.phumi || '', sangkat: volunteer.sangkat || '', khan: volunteer.khan || '', t_shirt_size: volunteer.t_shirt_size || '', volunteer_status: volunteer.volunteer_status || '', id_card: volunteer.id_card || '', occupation_id: volunteer.occupation_id || null, education_institution_id: volunteer.education_institution_id || null, opportunity_source_id: volunteer.opportunity_source_id || null, volunteer_event_id: volunteer.volunteer_event_id || null, training_session_id: volunteer.training_session_id || null, interested_team_id: volunteer.interested_team_id || null, food_id: volunteer.food_id || null, upload_id_card: volunteer.upload_id_card || '', upload_cv: volunteer.upload_cv || '', score: volunteer.score || null, note: volunteer.note || '', emergency_contact_name: volunteer.emergency_contact_name || '', emergency_contact_phone: volunteer.emergency_contact_phone || '', emergency_contact_relationship: volunteer.emergency_contact_relationship || '', is_agree_terms_conditions: volunteer.is_agree_term_condition || false, language_id: volunteer.language_id || null, skill_id: volunteer.skill_id || null, is_disability: volunteer.is_disability !== undefined ? volunteer.is_disability : false, disability_type_id: volunteer.disability_type_id || null, disability_part: volunteer.disability_part || '', is_food_allergy: volunteer.is_food_allergy !== undefined ? volunteer.is_food_allergy : false, food_allergies: volunteer.food_allergies || '', travel_day_id: volunteer.travel_day_id || null, can_you_join: volunteer.can_you_join || '', expertise: volunteer.expertise || '', communication_score: volunteer.communication_score || null, teamwork_score: volunteer.teamwork_score || null, problem_solving_score: volunteer.problem_solving_score || null, leadership_score: volunteer.leadership_score || null, technical_skill_score: volunteer.technical_skill_score || null }); setPhotoUrl(volunteer.photo || ''); setIdCardUrl(volunteer.upload_id_card || ''); setCvUrl(volunteer.upload_cv || ''); } }, [volunteer, form]); var handleProvinceChange = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(item) { var ids, firstId; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: console.log(item); if (item) { ids = item.split(','); // Split by ',' and get the first ID firstId = ids[0].trim(); // Ensure no extra spaces if (firstId) { form.setFieldsValue({ khan: '', sangkat: '' }); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchDistrict)({ id: firstId })); } } case 1: return _context.a(2); } }, _callee); })); return function handleProvinceChange(_x) { return _ref2.apply(this, arguments); }; }(); var handleDistrictChange = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(item) { var ids, firstId; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: if (item) { ids = item.split(','); // Split by ',' and get the first ID firstId = ids[0].trim(); // Ensure no extra spaces if (firstId) { form.setFieldsValue({ sangkat: '' }); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.fetchCommune)({ id: firstId })); } } case 1: return _context2.a(2); } }, _callee2); })); return function handleDistrictChange(_x2) { return _ref3.apply(this, arguments); }; }(); // Handle radio button changes var handleRadioChange = function handleRadioChange(e) { var selectedValue = e.target.value; setRadioValue(selectedValue); // If "Other" is deselected, clear the input field if (selectedValue !== "other") { setOtherText(""); form.setFieldsValue({ other_text: "" }); // Reset input field in form } }; // Handle input changes for "Other" option var handleInputChange = function handleInputChange(e) { var value = e.target.value; setOtherText(value); setRadioValue(value); // Set input value as radio value dynamically form.setFieldsValue({ can_you_join: value }); // Update form field dynamically }; // Common helper function for file uploads var handleFileChange = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(file, fieldName, form) { var formData, response, _t; return _regenerator().w(function (_context3) { while (1) switch (_context3.p = _context3.n) { case 0: if (isAdmin) { _context3.n = 1; break; } return _context3.a(2); case 1: if (file) { _context3.n = 2; break; } console.error("".concat(fieldName, " Upload Error: No file selected.")); return _context3.a(2); case 2: _context3.p = 2; formData = new FormData(); formData.append("file", file); _context3.n = 3; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_22__.postUpload)(formData); case 3: response = _context3.v; if (response !== null && response !== void 0 && response.url) { form.setFieldsValue(_defineProperty({}, fieldName, response.url)); } _context3.n = 5; break; case 4: _context3.p = 4; _t = _context3.v; console.error("".concat(fieldName, " Upload Error:"), _t); case 5: return _context3.a(2); } }, _callee3, null, [[2, 4]]); })); return function handleFileChange(_x3, _x4, _x5) { return _ref4.apply(this, arguments); }; }(); var handlePhotoUploadChange = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(photoFile) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: if (isAdmin) { _context4.n = 1; break; } return _context4.a(2); case 1: _context4.n = 2; return handleFileChange(photoFile, "photo", form); case 2: return _context4.a(2); } }, _callee4); })); return function handlePhotoUploadChange(_x6) { return _ref5.apply(this, arguments); }; }(); var handleIdCardChange = /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(idCardFile) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: if (isAdmin) { _context5.n = 1; break; } return _context5.a(2); case 1: _context5.n = 2; return handleFileChange(idCardFile, "upload_id_card", form); case 2: return _context5.a(2); } }, _callee5); })); return function handleIdCardChange(_x7) { return _ref6.apply(this, arguments); }; }(); var handleCvUploadChange = /*#__PURE__*/function () { var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(cvFile) { return _regenerator().w(function (_context6) { while (1) switch (_context6.n) { case 0: if (isAdmin) { _context6.n = 1; break; } return _context6.a(2); case 1: _context6.n = 2; return handleFileChange(cvFile, "upload_cv", form); case 2: return _context6.a(2); } }, _callee6); })); return function handleCvUploadChange(_x8) { return _ref7.apply(this, arguments); }; }(); var onFinish = function onFinish(values) { if (!isAdmin) return; // Restrict edit access if (volunteer !== null && volunteer !== void 0 && volunteer.id) { var _volunteer$id; var volunteer_id = (_volunteer$id = volunteer === null || volunteer === void 0 ? void 0 : volunteer.id) !== null && _volunteer$id !== void 0 ? _volunteer$id : null; // Ensure `date_of_birth` is converted to a proper string format var updatedValues = _objectSpread(_objectSpread({}, values), {}, { date_of_birth: values.date_of_birth ? moment__WEBPACK_IMPORTED_MODULE_18___default()(values.date_of_birth).format("YYYY-MM-DD") : null }); // **Remove main_code from the submitted data** delete updatedValues.main_code; dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.updateVolunteerAction)({ id: volunteer_id, data: updatedValues })); // Show success alert sweetalert2__WEBPACK_IMPORTED_MODULE_21___default().fire({ title: "Success!", text: "Volunteer details have been updated.", icon: "success", confirmButtonText: "OK" }).then(function (result) { if (result.isConfirmed) { form.resetFields(); navigate("/volunteers"); } }); } else { // Show error alert instead of default alert sweetalert2__WEBPACK_IMPORTED_MODULE_21___default().fire({ title: "Error!", text: "Missing volunteer ID", icon: "error", confirmButtonText: "OK" }); } }; var onFinishInvertiew = function onFinishInvertiew(values) { if (!isAdmin) return; // Restrict edit access if (volunteer !== null && volunteer !== void 0 && volunteer.id) { var _volunteer$id2; var volunteer_id = (_volunteer$id2 = volunteer === null || volunteer === void 0 ? void 0 : volunteer.id) !== null && _volunteer$id2 !== void 0 ? _volunteer$id2 : null; // Ensure `date_of_birth` is converted to a proper string format var updatedValues = _objectSpread(_objectSpread({}, values), {}, { date_of_birth: values.date_of_birth ? moment__WEBPACK_IMPORTED_MODULE_18___default()(values.date_of_birth).format("YYYY-MM-DD") : null }); dispatch((0,_core_actions__WEBPACK_IMPORTED_MODULE_20__.updateVolunteerAction)({ id: volunteer_id, data: updatedValues })); // Show success alert sweetalert2__WEBPACK_IMPORTED_MODULE_21___default().fire({ title: "Success!", text: "Volunteer details have been updated.", icon: "success", confirmButtonText: "OK" }).then(function (result) { if (result.isConfirmed) { form.resetFields(); navigate("/volunteers"); } }); } else { // Show error alert instead of default alert sweetalert2__WEBPACK_IMPORTED_MODULE_21___default().fire({ title: "Error!", text: "Missing volunteer ID", icon: "error", confirmButtonText: "OK" }); } }; var handlePreview = function handlePreview(url, title) { setPreviewTitle(title); if (url.endsWith('.pdf')) { setPreviewContent(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("iframe", { src: url, width: "100%", height: "300px" })); } else { setPreviewContent(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("div", { style: { width: '70%', margin: 'auto' } }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("img", { src: url, alt: title, style: { width: '100%' } }))); } setPreviewVisible(true); }; var uploadButton = function uploadButton(url, setUrl, label, fieldName) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("div", { style: { position: 'relative', display: 'inline-block' } }, url ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((react__WEBPACK_IMPORTED_MODULE_14___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("div", { style: { cursor: 'pointer' }, onClick: function onClick() { return handlePreview(url, label); } }, url.endsWith('.pdf') ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((react__WEBPACK_IMPORTED_MODULE_14___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("center", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_15__["default"], { style: { fontSize: '25px' } }), " ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("p", null, "PDF Uploaded")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("br", null)) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("img", { src: url, alt: label, style: { width: '100%', maxHeight: '300px', borderRadius: '8px', display: 'block' } })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((antd_es_button__WEBPACK_IMPORTED_MODULE_10___default()), { icon: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_16__["default"], null), size: "small", style: { position: 'absolute', bottom: 12, right: 8, background: '#1890ff', color: '#fff' }, onClick: function onClick() { var _document$getElementB; return (_document$getElementB = document.getElementById("upload-".concat(label))) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.click(); } }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("input", { id: "upload-".concat(label), type: "file", style: { display: 'none' }, onChange: function onChange(e) { var file = e.target.files[0]; if (file) { // You can add your logic here for different file handling if (fieldName === 'photo') { // Call a function specific to photos handlePhotoUploadChange(file); } else if (fieldName === 'upload_id_card') { // Call a function specific to ID card handleIdCardChange(file); } else if (fieldName === 'upload_cv') { // Call a function specific to CV handleCvUploadChange(file); } setUrl(URL.createObjectURL(file)); } } })) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((react__WEBPACK_IMPORTED_MODULE_14___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_upload__WEBPACK_IMPORTED_MODULE_9__["default"], { listType: "picture-card", showUploadList: { showPreviewIcon: true, showRemoveIcon: true }, className: "w-full" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(_ant_design_icons__WEBPACK_IMPORTED_MODULE_17__["default"], null)))); }; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_tabs__WEBPACK_IMPORTED_MODULE_12__["default"], { defaultActiveKey: "1" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(TabPane, { tab: "Volunteer Information", key: "1" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"], { form: form, layout: "vertical", onFinish: onFinish, style: { maxWidth: '100%', margin: '0 auto' } }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 8, lg: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179A\u17BC\u1794\u1790\u178F", name: "photo" }, uploadButton(photoUrl, setPhotoUrl, 'រូបថត', 'photo'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 16, lg: 18 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1780\u17BC\u178A\u1794\u178E\u17D2\u178A\u17C4\u17C7\u17A2\u17B6\u179F\u1793\u17D2\u1793", name: "code", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { disabled: true }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1780\u17BC\u178A", name: "main_code" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { disabled: true, style: { color: 'green' } }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179F\u17D2\u1790\u17B6\u1793\u1797\u17B6\u1796\u17A2\u17D2\u1793\u1780\u179F\u17D2\u1798\u17D0\u1782\u17D2\u179A\u1785\u17B7\u178F\u17D2\u178F", name: "volunteer_status" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Register" }, "Register"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Shortlist" }, "Shortlist"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Interview" }, "Interview"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Participants" }, "Participants"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Reserve" }, "Reserve"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Failed" }, "Failed"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Resignation" }, "Resignation"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Disqualification" }, "Disqualification"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1793\u17B6\u1798\u178F\u17D2\u179A\u1780\u17BC\u179B", name: "last_name_khmer", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1793\u17B6\u1798\u1781\u17D2\u179B\u17BD\u1793", name: "first_name_khmer", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1793\u17B6\u1798\u178F\u17D2\u179A\u1780\u17BC\u179B\u1787\u17B6\u1797\u17B6\u179F\u17B6\u17A1\u17B6\u178F\u17B6\u17C6\u1784", name: "last_name_latin", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1793\u17B6\u1798\u1781\u17D2\u179B\u17BD\u1793\u1787\u17B6\u1797\u17B6\u179F\u17B6\u17A1\u17B6\u178F\u17B6\u17C6\u1784", name: "first_name_latin", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 18, lg: 18 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179F\u1789\u17D2\u1787\u17B6\u178F\u17B7", name: "nationality" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Cambodian" }, "Cambodian"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "Foreigner" }, "Foreigner")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1790\u17D2\u1784\u17C3\u1781\u17C2\u1786\u17D2\u1793\u17B6\u17C6\u1780\u17C6\u178E\u17BE\u178F", name: "date_of_birth", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_date_picker__WEBPACK_IMPORTED_MODULE_5__["default"], { format: "YYYY-MM-DD", style: { width: '100%' } })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1791\u17BC\u179A\u179F\u17D0\u1796\u17D2\u1791", name: "phone_number", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u17A2\u17CA\u17B8\u1798\u17C2\u179B", name: "email", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1797\u17C1\u1791", name: "gender", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"].Group, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: "Male" }, "Male"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: "Female" }, "Female")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u17A2\u178F\u17D2\u178F\u179F\u1789\u17D2\u1789\u17B6\u178E\u1794\u17D0\u178E\u17D2\u178E/\u179B\u17B7\u1781\u17B7\u178F\u1786\u17D2\u179B\u1784\u178A\u17C2\u1793", name: "id_card", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 6, lg: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179A\u17BC\u1794\u1790\u178F\u17A2\u178F\u17D2\u178F\u179F\u1789\u17D2\u1789\u17B6\u178E\u1794\u17D0\u178E\u17D2\u178E/\u179B\u17B7\u1781\u17B7\u178F\u1786\u17D2\u179B\u1784\u178A\u17C2\u1793", name: "upload_id_card" }, uploadButton(idCardUrl, setIdCardUrl, 'រូបថតអត្តសញ្ញាណប័ណ្ណ/លិខិតឆ្លងដែន', 'upload_id_card')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1795\u17D2\u1791\u17C7", name: "house_number" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1795\u17D2\u179B\u17BC\u179C", name: "street_number" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1797\u17BC\u1798\u17B7", name: "phumi" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "province_id", label: "\u1781\u17C1\u178F\u17D2\u178F\u200B \u17AC \u1780\u17D2\u179A\u17BB\u1784", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { placeholder: "Select a Province\u200B or City", disabled: !isAdmin, onChange: function onChange(value) { return handleProvinceChange(value); } // Handle province selection }, Array.isArray(provinces) && provinces.length > 0 ? provinces === null || provinces === void 0 ? void 0 : provinces.map(function (province) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: province.id, value: "".concat(province.id, ",").concat(province.name.km, " / ").concat(province.name.latin) }, "".concat(province.name.km, " / ").concat(province.name.latin)); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No provinces available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "khan", label: "\u1781\u178E\u17D2\u178C \u17AC \u179F\u17D2\u179A\u17BB\u1780", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { placeholder: "Select a Khan or District", disabled: !isAdmin, onChange: function onChange(value) { return handleDistrictChange(value); } }, Array.isArray(districts) && districts.length > 0 ? districts.map(function (item) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: "".concat(item.name.km, " / ").concat(item.name.latin), value: "".concat(item.id, ", ").concat(item.name.km, " / ").concat(item.name.latin) }, "".concat(item.name.km, " / ").concat(item.name.latin)); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No provinces available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "sangkat", label: "\u179F\u1784\u17D2\u1780\u17B6\u178F\u17CB \u17AC \u1783\u17BB\u17C6", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select a Sangkat or Commune" }, Array.isArray(communes) && communes.length > 0 ? communes.map(function (item) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: "".concat(item.name.km, " / ").concat(item.name.latin), value: "".concat(item.id, ", ").concat(item.name.km, " / ").concat(item.name.latin) }, "".concat(item.name.km, " / ").concat(item.name.latin)); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No provinces available"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 8, lg: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u17AF\u1780\u179F\u17B6\u179A CV", name: "upload_cv" }, uploadButton(cvUrl, setCvUrl, 'ឯកសារ CV', 'upload_cv'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 16, lg: 18 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1791\u17C6\u17A0\u17C6\u17AF\u1780\u179F\u178E\u17D2\u178B\u17B6\u1793", name: "t_shirt_size" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "S" }, "S"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "M" }, "M"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "L" }, "L"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { value: "XL" }, "XL")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "occupation_id", label: "\u1798\u17BB\u1781\u179A\u1794\u179A", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select an occupation" }, occupations === null || occupations === void 0 || (_occupations$data = occupations.data) === null || _occupations$data === void 0 ? void 0 : _occupations$data.map(function (occupation) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { key: occupation.id, value: occupation.id }, occupation.name); }))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 0] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { shouldUpdate: true }, function (_ref8) { var _educationInstitution; var getFieldValue = _ref8.getFieldValue; var isRequired = getFieldValue("occupation_id") === 7; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "education_institution_id", label: "\u179F\u17B6\u1780\u179B\u179C\u17B7\u1791\u17D2\u1799\u17B6\u179B\u17D0\u1799", rules: isRequired ? [{ required: false, message: "Required for Teachers" }] : [] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], _defineProperty(_defineProperty({ disabled: !isAdmin, filterOption: function filterOption(input, option) { return option === null || option === void 0 ? void 0 : option.children.toLowerCase().includes(input.toLowerCase()); }, placeholder: "Select an institution" }, "disabled", !isRequired), "showSearch", true), educationInstitutions === null || educationInstitutions === void 0 || (_educationInstitution = educationInstitutions.data) === null || _educationInstitution === void 0 ? void 0 : _educationInstitution.map(function (institution) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(Option, { key: institution.id, value: institution.id }, institution.name); }))); })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793\u1796\u17D0\u178F\u17CC\u1798\u17B6\u1793\u1796\u17B8\u1780\u17B6\u179A\u179F\u17D2\u1798\u17D0\u1782\u17D2\u179A\u1785\u17B7\u178F\u17D2\u178F\u178F\u17B6\u1798\u179A\u1799\u17C8\u17A2\u17D2\u179C\u17B8?", name: "opportunity_source_id", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select an opportunity source" }, Array.isArray(opportunitySources === null || opportunitySources === void 0 ? void 0 : opportunitySources.data) && (opportunitySources === null || opportunitySources === void 0 ? void 0 : opportunitySources.data.length) > 0 ? opportunitySources === null || opportunitySources === void 0 ? void 0 : opportunitySources.data.map(function (source) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: source.id, value: source.id }, source.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No sources available"))))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u17A2\u17D2\u1793\u1780\u179F\u17D2\u1798\u17D0\u1782\u17D2\u179A\u1785\u17B7\u178F\u17D2\u178F\u1780\u17D2\u1793\u17BB\u1784\u1796\u17D2\u179A\u17B9\u178F\u17D2\u178F\u17B7\u1780\u17B6\u178E\u17CD", name: "volunteer_event_id", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select a volunteer event" }, Array.isArray(volunteerEvents === null || volunteerEvents === void 0 ? void 0 : volunteerEvents.data) && (volunteerEvents === null || volunteerEvents === void 0 ? void 0 : volunteerEvents.data.length) > 0 ? volunteerEvents === null || volunteerEvents === void 0 ? void 0 : volunteerEvents.data.map(function (event) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: event.id, value: event.id }, event.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No volunteer event available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1790\u17D2\u1784\u17C3\u178A\u17C2\u179B\u17A2\u17B6\u1785\u1785\u17BC\u179B\u179A\u17BD\u1798\u179C\u1782\u17D2\u1782\u1794\u178E\u17D2\u178A\u17BB\u17C7\u1794\u178E\u17D2\u178A\u17B6\u179B", name: "training_session_id", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select a training session" }, Array.isArray(trainingSessions === null || trainingSessions === void 0 ? void 0 : trainingSessions.data) && (trainingSessions === null || trainingSessions === void 0 ? void 0 : trainingSessions.data.length) > 0 ? trainingSessions === null || trainingSessions === void 0 ? void 0 : trainingSessions.data.map(function (session) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: session.id, value: session.id }, session.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No training session available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u178F\u17BE\u179B\u17C4\u1780\u17A2\u17D2\u1793\u1780\u1798\u17B6\u1793\u1787\u17C6\u1793\u17B6\u1789\u17A2\u17D2\u179C\u17B8\u1781\u17D2\u179B\u17C7? / What is your expertise?", name: "expertise" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "is_disability", label: "\u178F\u17BE\u17A2\u17D2\u1793\u1780\u1798\u17B6\u1793\u1796\u17B7\u1780\u17B6\u179A\u1797\u17B6\u1796\u1791\u17C1?", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"].Group, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: true }, "Yes"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: false }, "No")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "disability_type_id", label: "\u1794\u17D2\u179A\u1797\u17C1\u1791\u1796\u17B7\u1780\u17B6\u179A\u1797\u17B6\u1796" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select Disability Type" }, Array.isArray(disabilityTypes === null || disabilityTypes === void 0 ? void 0 : disabilityTypes.data) && (disabilityTypes === null || disabilityTypes === void 0 ? void 0 : disabilityTypes.data.length) > 0 ? disabilityTypes === null || disabilityTypes === void 0 || (_disabilityTypes$data = disabilityTypes.data) === null || _disabilityTypes$data === void 0 ? void 0 : _disabilityTypes$data.map(function (disability) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: disability.id, value: disability.id }, disability.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No disability types available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "disability_part", label: "\u1795\u17D2\u1793\u17C2\u1780\u1796\u17B7\u1780\u17B6\u179A\u1797\u17B6\u1796" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 6 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "language_id", label: "\u178F\u17BE\u17A2\u17D2\u1793\u1780\u1785\u17C1\u17C7\u1797\u17B6\u179F\u17B6\u1794\u179A\u1791\u17C1\u179F\u1791\u17C1?", rules: [{ required: false, message: "Please select a foreign language!" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select an option" }, Array.isArray(languages === null || languages === void 0 ? void 0 : languages.data) && (languages === null || languages === void 0 ? void 0 : languages.data.length) > 0 ? languages === null || languages === void 0 ? void 0 : languages.data.map(function (lang) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: lang.id, value: lang.id }, lang.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No sources available"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "is_food_allergy", label: "\u178F\u17BE\u17A2\u17D2\u1793\u1780\u1798\u17B6\u1793\u1794\u17D2\u179A\u178F\u17B7\u1780\u1798\u17D2\u1798\u1787\u17B6\u1798\u17BD\u1799\u17A2\u17B6\u17A0\u17B6\u179A\u178A\u17C2\u179B\u17AC\u1791\u17C1?", rules: [{ required: false, message: "Required" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"].Group, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: true }, "Yes"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: false }, "No")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "food_allergies", label: "\u179F\u17BC\u1798\u1794\u1789\u17D2\u1787\u17B6\u1780\u17CB\u17A2\u17B6\u17A0\u17B6\u179A\u178A\u17C2\u179B\u1798\u17B6\u1793\u1794\u17D2\u179A\u178F\u17B7\u1780\u1798\u17D2\u1798" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"].TextArea, { rows: 3 }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "skill_id", label: "\u1787\u17C6\u1793\u17B6\u1789\u1795\u17D2\u179F\u17C1\u1784\u1791\u17C0\u178F", rules: [{ required: false, message: "Please select a skill!" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select an option" }, Array.isArray(skills === null || skills === void 0 ? void 0 : skills.data) && (skills === null || skills === void 0 ? void 0 : skills.data.length) > 0 ? skills === null || skills === void 0 ? void 0 : skills.data.map(function (sk) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: sk.id, value: sk.id }, sk.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No sources available"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "travel_day_id", label: "\u178F\u17BE\u179B\u17C4\u1780\u17A2\u17D2\u1793\u1780\u17A2\u17B6\u1785\u1785\u17C1\u1789\u178A\u17C6\u178E\u17BE\u179A\u1796\u17B8\u1797\u17D2\u1793\u17C6\u1796\u17C1\u1789\u1791\u17C5\u179F\u17C0\u1798\u179A\u17B6\u1794\u1794\u17B6\u1793\u1793\u17C5\u1790\u17D2\u1784\u17C3\u178E\u17B6? (\u178F\u17D2\u179A\u17A1\u1794\u17CB\u1798\u1780\u179C\u17B7\u1789\u1793\u17C5\u1790\u17D2\u1784\u17C3\u1791\u17C5\u17E1\u17E8 \u1781\u17C2\u1798\u17C1\u179F\u17B6 \u1786\u17D2\u1793\u17B6\u17C6\u17E2\u17E0\u17E2\u17E5)", rules: [{ required: false, message: "Please select a team!" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"].Group, null, Array.isArray(travelDays === null || travelDays === void 0 ? void 0 : travelDays.data) && (travelDays === null || travelDays === void 0 ? void 0 : travelDays.data.length) > 0 ? travelDays === null || travelDays === void 0 ? void 0 : travelDays.data.map(function (item) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 24, lg: 24, key: item.id }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: item.id }, item.name)); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("p", null, "No teams available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("strong", null, "\u1780\u1798\u17D2\u1798\u179C\u17B8\u1792\u17B8\u1795\u17D2\u178A\u179B\u17CB\u1787\u17BC\u1793\u200B\u17D6 / Program Benefits"), Array.isArray(offerProgram === null || offerProgram === void 0 ? void 0 : offerProgram.data) && (offerProgram === null || offerProgram === void 0 ? void 0 : offerProgram.data.length) > 0 ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("ol", null, offerProgram === null || offerProgram === void 0 ? void 0 : offerProgram.data.map(function (item, index) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("li", { key: item.id, style: { marginBottom: "8px" } }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_tag__WEBPACK_IMPORTED_MODULE_3__["default"], { color: "blue" }, item.name)); })) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("p", null, "No Program Benefits available")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "can_you_join", label: "\u178F\u17BE\u179B\u17C4\u1780\u17A2\u17D2\u1793\u1780\u17A2\u17B6\u1785\u1785\u17BC\u179B\u179A\u17BD\u1798\u1780\u1798\u17D2\u1798\u179C\u17B8\u1792\u17B8\u1793\u17C1\u17C7\u1794\u17B6\u1793\u178A\u17C2\u179B\u17AC\u1791\u17C1?", rules: [{ required: false, message: "Please select an option!" }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"].Group, { onChange: handleRadioChange, value: radioValue }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_space__WEBPACK_IMPORTED_MODULE_2__["default"], { direction: "vertical" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: "Yes" }, "\u1794\u17B6\u1793 / Yes"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: "No" }, "\u1798\u17B7\u1793\u1794\u17B6\u1793 / No"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_radio__WEBPACK_IMPORTED_MODULE_4__["default"], { value: "other" }, "\u1795\u17D2\u179F\u17C1\u1784\u17D7 / Other:", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { style: { width: 200, marginLeft: 8 }, value: otherText, onChange: handleInputChange, placeholder: "Specify other..." }))))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement("label", { htmlFor: "" }, "\u1791\u17C6\u1793\u17B6\u1780\u17CB\u1791\u17C6\u1793\u1784\u1794\u1793\u17D2\u1791\u17B6\u1793\u17CB"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1788\u17D2\u1798\u17C4\u17C7", name: "emergency_contact_name" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u179B\u17C1\u1781\u1791\u17BC\u179A\u179F\u17D0\u1796\u17D2\u1791", name: "emergency_contact_phone" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1791\u17C6\u1793\u17B6\u1780\u17CB\u1791\u17C6\u1793\u1784", name: "emergency_contact_relationship" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], null)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u17A2\u17B6\u17A0\u17B6\u179A", name: "food_id", rules: [{ required: false }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select a food" }, Array.isArray(foods === null || foods === void 0 ? void 0 : foods.data) && (foods === null || foods === void 0 ? void 0 : foods.data.length) > 0 ? foods === null || foods === void 0 ? void 0 : foods.data.map(function (food) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: food.id, value: food.id }, food.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No food available")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 8 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "\u1780\u17D2\u179A\u17BB\u1798", name: "interested_team_id" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"], { disabled: !isAdmin, placeholder: "Select a team" }, Array.isArray(interestedTeams === null || interestedTeams === void 0 ? void 0 : interestedTeams.data) && (interestedTeams === null || interestedTeams === void 0 ? void 0 : interestedTeams.data.length) > 0 ? interestedTeams === null || interestedTeams === void 0 ? void 0 : interestedTeams.data.map(function (team) { return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { key: team.id, value: team.id }, team.name); }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_13__["default"].Option, { disabled: true }, "No team available"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "is_agree_terms_conditions", valuePropName: "checked", rules: [{ validator: function validator(_, value) { return value ? Promise.resolve() : Promise.reject(new Error('You must agree to the terms and conditions!')); } }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_checkbox__WEBPACK_IMPORTED_MODULE_1__["default"], null, "I agree to the terms and conditions")), isAdmin && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [12, 12] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 3 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((antd_es_button__WEBPACK_IMPORTED_MODULE_10___default()), { type: "primary", block: true, htmlType: "submit", loading: volunteerUpdatePending }, "Submit"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 12, md: 3 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((antd_es_button__WEBPACK_IMPORTED_MODULE_10___default()), { htmlType: "button", onClick: function onClick() { return navigate('/volunteers'); } }, "Cancel")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_modal__WEBPACK_IMPORTED_MODULE_0__["default"], { visible: previewVisible, title: previewTitle, footer: null, onCancel: function onCancel() { return setPreviewVisible(false); } }, previewContent))), isAdmin && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(TabPane, { tab: "Interview Evaluation", key: "2" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"], { form: form, layout: "vertical", onFinish: onFinishInvertiew }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [16, 16] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Communication", name: "communication_score", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number", min: 1, max: 10 }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Teamwork", name: "teamwork_score", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number", min: 1, max: 10 })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [16, 16] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Problem Solving", name: "problem_solving_score", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number", min: 1, max: 10 }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Leadership", name: "leadership_score", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number", min: 1, max: 10 })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_6__["default"], { gutter: [16, 16] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Technical Skill", name: "technical_skill_score", rules: [{ required: true }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number", min: 1, max: 10 }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { xs: 24, sm: 24, md: 12 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Total Score", name: "score" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_7__["default"], { type: "number" }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_8__["default"], { span: 24 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { label: "Interview Note", name: "note" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_input_TextArea__WEBPACK_IMPORTED_MODULE_23__["default"], { rows: 4 })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, { name: "is_agree_terms_conditions", valuePropName: "checked", rules: [{ validator: function validator(_, value) { return value ? Promise.resolve() : Promise.reject(new Error('You must agree to the terms and conditions!')); } }] }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_checkbox__WEBPACK_IMPORTED_MODULE_1__["default"], null, "I agree to the terms and conditions")), isAdmin && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_11__["default"].Item, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default().createElement((antd_es_button__WEBPACK_IMPORTED_MODULE_10___default()), { type: "primary", block: true, htmlType: "submit", loading: volunteerUpdatePending }, "Submit"))))); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VolunteerForm); /***/ }), /***/ "./src/services/volunteer/register/components/thanks.tsx": /*!***************************************************************!*\ !*** ./src/services/volunteer/register/components/thanks.tsx ***! \***************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var antd_es_row__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/row */ "../../../node_modules/antd/lib/row/index.js"); /* harmony import */ var antd_es_col__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/col */ "../../../node_modules/antd/lib/col/index.js"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-redux */ "../../../node_modules/react-redux/dist/react-redux.mjs"); /* harmony import */ var _shared_assets_images_team_png__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../shared/assets/images/team.png */ "./src/shared/assets/images/team.png"); function _objectDestructuringEmpty(t) { if (null == t) throw new TypeError("Cannot destructure " + t); } var VolunteerThankYou = function VolunteerThankYou() { _objectDestructuringEmpty((0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useSelector)(function (state) { return state.volunteer; })); var dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)(); (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {}, [dispatch]); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_0__["default"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_1__["default"], { xs: 24, sm: 24, md: 10, lg: 10 }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("img", { src: _shared_assets_images_team_png__WEBPACK_IMPORTED_MODULE_4__, alt: "Team", className: "fullscreen-image" })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_1__["default"], { xs: 24, md: 14, lg: 14, style: { backgroundColor: "white", padding: "16px" } }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", { className: "text-center" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("br", null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("br", null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("h2", { className: "form-title text-2xl font-bold mb-2" }, "\u179F\u17BC\u1798\u17A2\u179A\u1782\u17BB\u178E\u1785\u17C6\u1796\u17C4\u17C7\u1780\u17B6\u179A\u1785\u17B6\u1794\u17CB\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD\u17D4 ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("br", null), "\u1780\u17B6\u179A\u1787\u17D2\u179A\u17BE\u179F\u179A\u17BE\u179F\u17A2\u17D2\u1793\u1780\u179F\u17D2\u1798\u17D0\u1782\u17D2\u179A\u1785\u17B7\u178F\u17D2\u178F\u178F\u17D2\u179A\u17BC\u179C\u1794\u17B6\u1793\u1794\u1789\u17D2\u1785\u1794\u17CB\u17D4"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("h2", { className: "form-title" }, "Thank you for your interest. The recruitment of volunteers has been completed.")))); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VolunteerThankYou); /***/ }), /***/ "./src/services/volunteer_event/core/actions.ts": /*!******************************************************!*\ !*** ./src/services/volunteer_event/core/actions.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createVolunteerEventAction: () => (/* binding */ createVolunteerEventAction), /* harmony export */ deleteVolunteerEventAction: () => (/* binding */ deleteVolunteerEventAction), /* harmony export */ fetchVolunteerEvents: () => (/* binding */ fetchVolunteerEvents), /* harmony export */ updateVolunteerEventAction: () => (/* binding */ updateVolunteerEventAction), /* harmony export */ volunteerEventDetailAction: () => (/* binding */ volunteerEventDetailAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/volunteer_event/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./services */ "./src/services/volunteer_event/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchVolunteerEvents = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_EVENTS, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var search, page, pageSize, rejectWithValue, response, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.p = _context.n) { case 0: search = _ref.search, page = _ref.page, pageSize = _ref.pageSize; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.volunteerEventsService)(search, page, pageSize); case 2: response = _context.v; return _context.a(2, response); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 ? void 0 : _error$response.detail) || "Failed to fetch volunteer events")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var volunteerEventDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_EVENT, _services__WEBPACK_IMPORTED_MODULE_2__.volunteerEventDetailService); var createVolunteerEventAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_EVENT_CREATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.p = _context2.n) { case 0: data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.createVolunteerEventService)(data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to create volunteer event")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var updateVolunteerEventAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_EVENT_UPDATE, /*#__PURE__*/function () { var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(_ref7, _ref8) { var id, data, rejectWithValue, _error$response3, _t3; return _regenerator().w(function (_context3) { while (1) switch (_context3.p = _context3.n) { case 0: id = _ref7.id, data = _ref7.data; rejectWithValue = _ref8.rejectWithValue; _context3.p = 1; _context3.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_2__.updateVolunteerEventService)(id, data); case 2: return _context3.a(2, _context3.v); case 3: _context3.p = 3; _t3 = _context3.v; return _context3.a(2, rejectWithValue(((_error$response3 = _t3.response) === null || _error$response3 === void 0 || (_error$response3 = _error$response3.data) === null || _error$response3 === void 0 ? void 0 : _error$response3.message) || "Failed to update volunteer event")); } }, _callee3, null, [[1, 3]]); })); return function (_x5, _x6) { return _ref9.apply(this, arguments); }; }()); var deleteVolunteerEventAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_1__.VOLUNTEER_EVENT_DELETE, _services__WEBPACK_IMPORTED_MODULE_2__.deleteVolunteerEventService); /***/ }), /***/ "./src/services/volunteer_event/core/constants.ts": /*!********************************************************!*\ !*** ./src/services/volunteer_event/core/constants.ts ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ VOLUNTEER_EVENT: () => (/* binding */ VOLUNTEER_EVENT), /* harmony export */ VOLUNTEER_EVENTS: () => (/* binding */ VOLUNTEER_EVENTS), /* harmony export */ VOLUNTEER_EVENT_CREATE: () => (/* binding */ VOLUNTEER_EVENT_CREATE), /* harmony export */ VOLUNTEER_EVENT_DELETE: () => (/* binding */ VOLUNTEER_EVENT_DELETE), /* harmony export */ VOLUNTEER_EVENT_UPDATE: () => (/* binding */ VOLUNTEER_EVENT_UPDATE) /* harmony export */ }); var VOLUNTEER_EVENTS = 'volunteer-events/fetchAll'; var VOLUNTEER_EVENT = 'volunteer-events/fetchByID'; var VOLUNTEER_EVENT_CREATE = 'volunteer-events/create'; var VOLUNTEER_EVENT_UPDATE = 'volunteer-events/update'; var VOLUNTEER_EVENT_DELETE = 'volunteer-events/delete'; /***/ }), /***/ "./src/services/volunteer_event/core/reducer.ts": /*!******************************************************!*\ !*** ./src/services/volunteer_event/core/reducer.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setVolunteerEvent: () => (/* binding */ setVolunteerEvent), /* harmony export */ volunteerEventSlice: () => (/* binding */ volunteerEventSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./actions */ "./src/services/volunteer_event/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ "./src/services/volunteer_event/core/constants.ts"); /* eslint-disable no-console */ var initialState = { volunteerEvents: [], volunteerEvent: null, volunteerEventsPending: false, volunteerEventDetailPending: false, volunteerEventCreatePending: false, volunteerEventUpdatePending: false, volunteerEventDeletePending: false, registerErrorMessage: '' }; var volunteerEventSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_2__.VOLUNTEER_EVENT, initialState: initialState, reducers: { // Sets the current volunteerEvent setVolunteerEvent: function setVolunteerEvent(state, action) { state.volunteerEvent = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle volunteer event .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteerEvents.pending, function (state) { state.volunteerEventsPending = true; state.registerErrorMessage = ''; }) // Handles rejected volunteer events fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteerEvents.rejected, function (state, action) { state.volunteerEventsPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch volunteer events.'; }) // Handles fulfilled volunteer events fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.fetchVolunteerEvents.fulfilled, function (state, action) { var payload = action.payload; state.volunteerEvents = payload; state.volunteerEventsPending = false; state.registerErrorMessage = ''; }) // handle volunteer event detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerEventDetailAction.pending, function (state) { state.volunteerEventDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected volunteer events fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerEventDetailAction.rejected, function (state, action) { state.volunteerEventDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch volunteer events.'; }) // Handles fulfilled volunteer events fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.volunteerEventDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.volunteerEvent = payload; state.volunteerEventDetailPending = false; state.registerErrorMessage = ''; }) // handle volunteerEvent create .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createVolunteerEventAction.pending, function (state) { state.volunteerEventUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createVolunteerEventAction.rejected, function (state, action) { state.volunteerEventUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create volunteer events.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.createVolunteerEventAction.fulfilled, function (state, action) { state.volunteerEvent = action.payload; state.volunteerEventUpdatePending = false; state.registerErrorMessage = ''; }) // handle volunteerEvent update .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerEventAction.pending, function (state) { state.volunteerEventUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerEventAction.rejected, function (state, action) { state.volunteerEventUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update volunteer events.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.updateVolunteerEventAction.fulfilled, function (state, action) { state.volunteerEvent = action.payload; state.volunteerEventUpdatePending = false; state.registerErrorMessage = ''; }) // handle volunteerEvent delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.deleteVolunteerEventAction.pending, function (state) { state.volunteerEventUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.deleteVolunteerEventAction.rejected, function (state, action) { state.volunteerEventUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete volunteer events.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_1__.deleteVolunteerEventAction.fulfilled, function (state, action) { state.volunteerEvent = action.payload; state.volunteerEventUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _volunteerEventSlice$ = volunteerEventSlice.actions, setRegisterErrorMessage = _volunteerEventSlice$.setRegisterErrorMessage, setVolunteerEvent = _volunteerEventSlice$.setVolunteerEvent; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (volunteerEventSlice.reducer); /***/ }), /***/ "./src/services/volunteer_event/core/services.ts": /*!*******************************************************!*\ !*** ./src/services/volunteer_event/core/services.ts ***! \*******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createVolunteerEventService: () => (/* binding */ createVolunteerEventService), /* harmony export */ deleteVolunteerEventService: () => (/* binding */ deleteVolunteerEventService), /* harmony export */ updateVolunteerEventService: () => (/* binding */ updateVolunteerEventService), /* harmony export */ volunteerEventDetailService: () => (/* binding */ volunteerEventDetailService), /* harmony export */ volunteerEventsService: () => (/* binding */ volunteerEventsService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var volunteerEventsService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(search, page, pageSize) { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEER_EVENT, { search: search, page: page, pageSize: pageSize }); case 1: return _context.a(2, _context.v); } }, _callee); })); return function volunteerEventsService(_x, _x2, _x3) { return _ref.apply(this, arguments); }; }(); var volunteerEventDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEER_EVENT).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function volunteerEventDetailService(_x4) { return _ref2.apply(this, arguments); }; }(); var createVolunteerEventService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEER_EVENT), data)); } }, _callee3); })); return function createVolunteerEventService(_x5) { return _ref3.apply(this, arguments); }; }(); var updateVolunteerEventService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEER_EVENT).concat(id), data)); } }, _callee4); })); return function updateVolunteerEventService(_x6, _x7) { return _ref4.apply(this, arguments); }; }(); var deleteVolunteerEventService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.VOLUNTEER_EVENT).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteVolunteerEventService(_x8) { return _ref5.apply(this, arguments); }; }(); /***/ }) }]); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianMvbWFpbi1zcmNfc2VydmljZXNfdm9sdW50ZWVyX2Mudm9sdW50ZWVyYXBpLjBjM2NjYjU3ZDE3OTc0OTYyNGFlLmJ1bmRsZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzBCQUNBLHVLQUFBQSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLENBQUEsR0FBQUYsQ0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFKLENBQUEsQ0FBQUssV0FBQSw4QkFBQUMsRUFBQU4sQ0FBQSxFQUFBRSxDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxRQUFBQyxDQUFBLEdBQUFMLENBQUEsSUFBQUEsQ0FBQSxDQUFBTSxTQUFBLFlBQUFDLFNBQUEsR0FBQVAsQ0FBQSxHQUFBTyxTQUFBLEVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxNQUFBLENBQUFMLENBQUEsQ0FBQUMsU0FBQSxVQUFBSyxtQkFBQSxDQUFBSCxDQUFBLHVCQUFBVixDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxRQUFBRSxDQUFBLEVBQUFDLENBQUEsRUFBQUcsQ0FBQSxFQUFBSSxDQUFBLE1BQUFDLENBQUEsR0FBQVgsQ0FBQSxRQUFBWSxDQUFBLE9BQUFDLENBQUEsS0FBQUYsQ0FBQSxLQUFBYixDQUFBLEtBQUFnQixDQUFBLEVBQUFwQixDQUFBLEVBQUFxQixDQUFBLEVBQUFDLENBQUEsRUFBQU4sQ0FBQSxFQUFBTSxDQUFBLENBQUFDLElBQUEsQ0FBQXZCLENBQUEsTUFBQXNCLENBQUEsV0FBQUEsRUFBQXJCLENBQUEsRUFBQUMsQ0FBQSxXQUFBTSxDQUFBLEdBQUFQLENBQUEsRUFBQVEsQ0FBQSxNQUFBRyxDQUFBLEdBQUFaLENBQUEsRUFBQW1CLENBQUEsQ0FBQWYsQ0FBQSxHQUFBRixDQUFBLEVBQUFtQixDQUFBLGdCQUFBQyxFQUFBcEIsQ0FBQSxFQUFBRSxDQUFBLFNB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bUIsMkJBQTJCO0VBQUEsSUFBQTlnQixLQUFBLEdBQUFyRixpQkFBQSxjQUFBYixZQUFBLEdBQUFFLENBQUEsQ0FBRyxTQUFBeUosU0FBTXhFLEVBQVU7SUFBQSxPQUFBbkYsWUFBQSxHQUFBQyxDQUFBLFdBQUErSixTQUFBO01BQUEsa0JBQUFBLFNBQUEsQ0FBQWhNLENBQUE7UUFBQTtVQUFBZ00sU0FBQSxDQUFBaE0sQ0FBQTtVQUFBLE9BQzVDK1EsNEVBQWdCLElBQUFJLE1BQUEsQ0FBSVYsMERBQUcsQ0FBQytYLGVBQWUsRUFBQXJYLE1BQUEsQ0FBR2hLLEVBQUUsQ0FBRSxDQUFDO1FBQUE7VUFBQSxPQUFBNkUsU0FBQSxDQUFBL0ssQ0FBQSxJQUFBK0ssU0FBQSxDQUFBaEwsQ0FBQTtNQUFBO0lBQUEsR0FBQTJLLFFBQUE7RUFBQSxDQUM3RDtFQUFBLGdCQUZZcWQsMkJBQTJCQSxDQUFBOWQsR0FBQTtJQUFBLE9BQUFoRCxLQUFBLENBQUFuRixLQUFBLE9BQUFELFNBQUE7RUFBQTtBQUFBLEdBRXZDLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3ZvbHVudGVlci9jb3JlL2FjdGlvbnMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy92b2x1bnRlZXIvY29yZS9jb25zdGFudHMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy92b2x1bnRlZXIvY29yZS9yZWR1Y2VyLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdm9sdW50ZWVyL2NvcmUvc2VydmljZXMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy92b2x1bnRlZXIvcmVnaXN0ZXIvY29tcG9uZW50cy9mb3JtLnRzeCIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3ZvbHVudGVlci9yZWdpc3Rlci9jb21wb25lbnRzL3RoYW5rcy50c3giLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy92b2x1bnRlZXJfZXZlbnQvY29yZS9hY3Rpb25zLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdm9sdW50ZWVyX2V2ZW50L2NvcmUvY29uc3RhbnRzLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdm9sdW50ZWVyX2V2ZW50L2NvcmUvcmVkdWNlci50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3ZvbHVudGVlcl9ldmVudC9jb3JlL3NlcnZpY2VzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUFzeW5jVGh1bmsgfSBmcm9tICdAcmVkdXhqcy90b29sa2l0JztcbmltcG9ydCB7IEFVVEhFTlRJQ0FUSU9OX0xPR0lOLCBBVVRIRU5USUNBVElPTl9WRVJJRllfT1BULCBEQVNIQk9BUkQsIERJU0FCSUxJVFlfVFlQRSwgRURVQ0FUSU9OX0lOU1RJVFVUSU9OLCBFVkVOVCwgRk9PRCwgT0NDVVBBVElPTiwgUFJPVklOQ0VTLCBTT1VSQ0UsIFRFQU0sIFRSQUlOSU5HX1NFU1NJT04sIFZPTFVOVEVFUlMsIFZPTFVOVEVFUiwgVk9MVU5URUVSX1VQREFURSwgTEFOR1VBR0UsIFNLSUxMLCBESVNUUklDVCwgQ09NTVVORSwgVFJBVkVMX0RBWSwgT0ZGRVJfUFJPR1JBTSwgRE9XTkxPQURfU0FNUExFX0NTViwgVVBMT0FEX0NTViwgRE9XTkxPQURfU0FNUExFX1VQREFURV9URUFNX0NTViwgVVBEQVRFX1RFQU1fQ1NWLCBET1dOTE9BRF9TQU1QTEVfVVBEQVRFX0lERU5USVRZX0NTViwgVVBEQVRFX0lERU5USVRZX0NTViB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGNvbW11bmVTZXJ2aWNlLCBkZWxldGVWb2x1bnRlZXJzU2VydmljZSwgZGlzYWJpbGl0eVR5cGVTZXJ2aWNlLCBkaXN0cmljdFNlcnZpY2UsIGVkdWNhdGlvbkluc3RpdHV0aW9uc1NlcnZpY2UsIGV2ZW50U2VydmljZSwgZmV0Y2hEYXNoYm9hcmRTZXJ2aWNlLCBmb29kU2VydmljZSwgbGFuZ3VhZ2VzU2VydmljZSwgbG9naW5Vc2VyU2VydmljZSwgb2NjdXBhdGlvblNlcnZpY2UsIG9mZmVyUHJvZ3JhbVNlcnZpY2UsIHByb3ZpbmNlU2VydmljZSwgcmVnaXN0ZXJWb2x1bnRlZXJzU2VydmljZSwgc2tpbGxTZXJ2aWNlLCBzb3VyY2VTZXJ2aWNlLCB0ZWFtU2VydmljZSwgdHJhaW5pbmdTZXNzaW9uU2VydmljZSwgdHJhdmVsRGF5U2VydmljZSwgdmVyaWZ5T1RQU2VydmljZSwgdm9sdW50ZWVyc0RldGFpbFNlcnZpY2UsIHZvbHVudGVlcnNTZXJ2aWNlLCB2b2x1bnRlZXJVcGRhdGVTZXJ2aWNlLCBkb3dubG9hZFNhbXBsZUNzdlNlcnZpY2UsIGNyZWF0ZVVwbG9hZENzdlNlcnZpY2UsIGRvd25sb2FkU2FtcGxlVXBkYXRlVGVhbUNzdlNlcnZpY2UsIGNyZWF0ZVVwZGF0ZVRlYW1Dc3ZTZXJ2aWNlLCBjcmVhdGVVcGRhdGVJZGVudGl0eUNzdlNlcnZpY2UsIGRvd25sb2FkU2FtcGxlVXBkYXRlSWRlbnRpdHlDc3ZTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBWb2x1bnRlZXIsIEZldGNoVm9sdW50ZWVyc1BhcmFtcywgVm9sdW50ZWVyUGFnaW5hdGlvbiB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuXG5cbmV4cG9ydCBjb25zdCBsb2dpblVzZXJBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIEFVVEhFTlRJQ0FUSU9OX0xPR0lOLFxuICBsb2dpblVzZXJTZXJ2aWNlLFxuKTtcblxuZXhwb3J0IGNvbnN0IHZlcmlmeU9UUEFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgQVVUSEVOVElDQVRJT05fVkVSSUZZX09QVCxcbiAgdmVyaWZ5T1RQU2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IGZldGNoRGlzYWJpbGl0eVR5cGU6IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIERJU0FCSUxJVFlfVFlQRSxcbiAgZGlzYWJpbGl0eVR5cGVTZXJ2aWNlXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaFByb3ZpbmNlOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBQUk9WSU5DRVMsXG4gIHByb3ZpbmNlU2VydmljZVxuKTtcblxuXG5leHBvcnQgY29uc3QgZmV0Y2hEaXN0cmljdDogYW55ID0gY3JlYXRlQXN5bmNUaHVuazxhbnkse2lkOiBudW1iZXJ9PihcbiAgRElTVFJJQ1QsXG4gIGFzeW5jICh7IGlkIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc29sZS5sb2coJ3Byb3ZpbmNlSWQ6Ojo6JywgaWQpXG4gICAgICByZXR1cm4gYXdhaXQgZGlzdHJpY3RTZXJ2aWNlKGlkKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kZXRhaWwgfHwgXCJGYWlsZWRcIik7XG4gICAgfVxuICB9XG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaENvbW11bmU6IGFueSA9IGNyZWF0ZUFzeW5jVGh1bms8YW55LHtpZDogbnVtYmVyfT4oXG4gIENPTU1VTkUsXG4gIGFzeW5jICh7IGlkIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNvbW11bmVTZXJ2aWNlKGlkKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kZXRhaWwgfHwgXCJGYWlsZWRcIik7XG4gICAgfVxuICB9XG4pO1xuZXhwb3J0IGNvbnN0IGZldGNoT2NjdXBhdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgT0NDVVBBVElPTixcbiAgb2NjdXBhdGlvblNlcnZpY2Vcbik7XG5cbmV4cG9ydCBjb25zdCBmZXRjaEVkdWNhdGlvbkluc3RpdHV0aW9uczogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgRURVQ0FUSU9OX0lOU1RJVFVUSU9OLFxuICBlZHVjYXRpb25JbnN0aXR1dGlvbnNTZXJ2aWNlXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaEZvb2Q6IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIEZPT0QsXG4gIGZvb2RTZXJ2aWNlXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaFRlYW06IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFRFQU0sXG4gIHRlYW1TZXJ2aWNlXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaEV2ZW50OiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBFVkVOVCxcbiAgZXZlbnRTZXJ2aWNlXG4pO1xuXG5cbmV4cG9ydCBjb25zdCBmZXRjaFNvdXJjZTogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgU09VUkNFLFxuICBzb3VyY2VTZXJ2aWNlXG4pO1xuXG5leHBvcnQgY29uc3QgZmV0Y2hUcmFpbmluZ1Nlc3Npb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFRSQUlOSU5HX1NFU1NJT04sXG4gIHRyYWluaW5nU2Vzc2lvblNlcnZpY2Vcbik7XG5cbi8vIGV4cG9ydCBjb25zdCBmZXRjaFZvbHVudGVlcnM6IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4vLyAgIFZPTFVOVEVFUlMsXG4vLyAgIHZvbHVudGVlcnNTZXJ2aWNlXG4vLyApO1xuXG5leHBvcnQgY29uc3QgZmV0Y2hWb2x1bnRlZXJzID0gY3JlYXRlQXN5bmNUaHVuazxWb2x1bnRlZXJQYWdpbmF0aW9uLCBGZXRjaFZvbHVudGVlcnNQYXJhbXM+KFxuICBWT0xVTlRFRVJTLFxuICBhc3luYyAoeyB2b2x1bnRlZXJfc3RhdHVzLCBwYWdlLCBwYWdlU2l6ZSwgc2VhcmNoLCBzb3J0X29yZGVyLCBlZHVjYXRpb25faW5zdGl0dXRpb25faWQsIHNjb3JlX2Zyb20sIHNjb3JlX3RvLCBwcm92aW5jZSwgaW50ZXJlc3RlZF90ZWFtX2lkLCBldmVudF9pZHMsIGxhbmd1YWdlX2lkLCBza2lsbF9pZCB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdm9sdW50ZWVyc1NlcnZpY2Uodm9sdW50ZWVyX3N0YXR1cywgcGFnZSwgcGFnZVNpemUsIHNlYXJjaCwgc29ydF9vcmRlciwgZWR1Y2F0aW9uX2luc3RpdHV0aW9uX2lkLCBzY29yZV9mcm9tLCBzY29yZV90bywgcHJvdmluY2UsIGludGVyZXN0ZWRfdGVhbV9pZCwgZXZlbnRfaWRzLCBsYW5ndWFnZV9pZCwgc2tpbGxfaWQpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRldGFpbCB8fCBcIkZhaWxlZCB0byBmZXRjaCB2b2x1bnRlZXJzXCIpO1xuICAgIH1cbiAgfVxuKTtcbmV4cG9ydCBjb25zdCBkZWxldGVWb2x1bnRlZXJBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFZPTFVOVEVFUlMsXG4gIGRlbGV0ZVZvbHVudGVlcnNTZXJ2aWNlXG4pXG5cbmV4cG9ydCBjb25zdCB2b2x1bnRlZXJEZXRhaWxBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFZPTFVOVEVFUixcbiAgdm9sdW50ZWVyc0RldGFpbFNlcnZpY2VcbilcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVZvbHVudGVlckFjdGlvbiA9IGNyZWF0ZUFzeW5jVGh1bms8Vm9sdW50ZWVyLCB7IGlkOiBudW1iZXI7IGRhdGE6IFZvbHVudGVlciB9PihcbiAgVk9MVU5URUVSX1VQREFURSxcbiAgYXN5bmMgKHsgaWQsIGRhdGEgfSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgdm9sdW50ZWVyVXBkYXRlU2VydmljZShpZCwgZGF0YSk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgcmV0dXJuIHJlamVjdFdpdGhWYWx1ZShlcnJvci5yZXNwb25zZT8uZGV0YWlsIHx8IFwiRmFpbGVkIHRvIHVwZGF0ZSB2b2x1bnRlZXJcIik7XG4gICAgfVxuICB9XG4pO1xuXG4vLyBleHBvcnQgY29uc3QgcmVnaXN0ZXJWb2x1bnRlZXJzOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuLy8gICBWT0xVTlRFRVJTLFxuLy8gICByZWdpc3RlclZvbHVudGVlcnNTZXJ2aWNlXG4vLyApO1xuXG5leHBvcnQgY29uc3QgZmV0Y2hEYXNoYm9hcmRBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIERBU0hCT0FSRCxcbiAgZmV0Y2hEYXNoYm9hcmRTZXJ2aWNlXG4pXG5cbmV4cG9ydCBjb25zdCBmZXRjaExhbmd1YXRlQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBMQU5HVUFHRSxcbiAgbGFuZ3VhZ2VzU2VydmljZVxuKTtcblxuXG5leHBvcnQgY29uc3QgZmV0Y2hTa2lsbEFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgU0tJTEwsXG4gIHNraWxsU2VydmljZVxuKTtcblxuXG5leHBvcnQgY29uc3QgZmV0Y2hPZmZlclByb2dyYW1BY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIE9GRkVSX1BST0dSQU0sXG4gIG9mZmVyUHJvZ3JhbVNlcnZpY2Vcbik7XG5cblxuZXhwb3J0IGNvbnN0IGZldGNoVHJhdmVsRGF5QWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBUUkFWRUxfREFZLFxuICB0cmF2ZWxEYXlTZXJ2aWNlXG4pO1xuXG5leHBvcnQgY29uc3QgZG93bmxvYWRTYW1wbGVDc3ZBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIERPV05MT0FEX1NBTVBMRV9DU1YsXG4gIGRvd25sb2FkU2FtcGxlQ3N2U2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVVwbG9hZENzdkFjdGlvbiA9IGNyZWF0ZUFzeW5jVGh1bms8YW55LCBGb3JtRGF0YT4oXG4gIFVQTE9BRF9DU1YsXG4gIGFzeW5jIChmb3JtRGF0YSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY3JlYXRlVXBsb2FkQ3N2U2VydmljZShmb3JtRGF0YSk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgcmV0dXJuIHJlamVjdFdpdGhWYWx1ZShlcnJvci5yZXNwb25zZT8uZGF0YT8ubWVzc2FnZSB8fCBcIkZhaWxlZCB0byB1cGxvYWQgQ1NWXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRvd25sb2FkU2FtcGxlVXBkYXRlVGVhbUNzdkFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgRE9XTkxPQURfU0FNUExFX1VQREFURV9URUFNX0NTVixcbiAgZG93bmxvYWRTYW1wbGVVcGRhdGVUZWFtQ3N2U2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVVwZGF0ZVRlYW1Dc3ZBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPGFueSwgRm9ybURhdGE+KFxuICBVUERBVEVfVEVBTV9DU1YsXG4gIGFzeW5jIChmb3JtRGF0YSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY3JlYXRlVXBkYXRlVGVhbUNzdlNlcnZpY2UoZm9ybURhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHRlYW0gQ1NWXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuXG5leHBvcnQgY29uc3QgZG93bmxvYWRTYW1wbGVVcGRhdGVJZGVudGl0eUNzdkFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgRE9XTkxPQURfU0FNUExFX1VQREFURV9JREVOVElUWV9DU1YsXG4gIGRvd25sb2FkU2FtcGxlVXBkYXRlSWRlbnRpdHlDc3ZTZXJ2aWNlXG4pO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlVXBkYXRlSWRlbnRpdHlDc3ZBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPGFueSwgRm9ybURhdGE+KFxuICBVUERBVEVfSURFTlRJVFlfQ1NWLFxuICBhc3luYyAoZm9ybURhdGEsIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVVwZGF0ZUlkZW50aXR5Q3N2U2VydmljZShmb3JtRGF0YSk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgcmV0dXJuIHJlamVjdFdpdGhWYWx1ZShlcnJvci5yZXNwb25zZT8uZGF0YT8ubWVzc2FnZSB8fCBcIkZhaWxlZCB0byB1cGRhdGUgdGVhbSBDU1ZcIik7XG4gICAgfVxuICB9XG4pO1xuIiwiZXhwb3J0IGNvbnN0IEFVVEggPSAnYXV0aCc7XG5leHBvcnQgY29uc3QgVk9MVU5URUVSID0gJ3ZvbHVudGVlcic7XG5leHBvcnQgY29uc3QgQVVUSEVOVElDQVRJT05fTE9HSU4gPSAnYXV0aC9sb2dpbic7XG5leHBvcnQgY29uc3QgQVVUSEVOVElDQVRJT05fVkVSSUZZX09QVCA9ICdhdXRoL3ZlcmlmeSc7XG5leHBvcnQgY29uc3QgRElTQUJJTElUWV9UWVBFID0gJ2Rpc2FiaWxpdHktdHlwZXMvJztcbmV4cG9ydCBjb25zdCBQUk9WSU5DRVMgPSAncHJvdmluY2VzLyc7XG5leHBvcnQgY29uc3QgRElTVFJJQ1QgPSAnRElTVFJJQ1QnO1xuZXhwb3J0IGNvbnN0IENPTU1VTkUgPSAnQ09NTVVORSc7XG5leHBvcnQgY29uc3QgT0NDVVBBVElPTiA9ICdvY2N1cGF0aW9ucy8nO1xuZXhwb3J0IGNvbnN0IEVEVUNBVElPTl9JTlNUSVRVVElPTiA9ICdlZHVjYXRpb24taW5zdGl0dXRpb25zLyc7XG5leHBvcnQgY29uc3QgRk9PRD0gJ2Zvb2RzLyc7XG5leHBvcnQgY29uc3QgVEVBTT0gJ2ludGVyZXN0ZWQtdGVhbXMvJztcbmV4cG9ydCBjb25zdCBFVkVOVCA9ICd2b2x1bnRlZXItZXZlbnRzLyc7XG5leHBvcnQgY29uc3QgTEFOR1VBR0UgPSAnbGFuZ3VhZ2VzJztcbmV4cG9ydCBjb25zdCBTS0lMTCA9ICdza2lsbHMnO1xuZXhwb3J0IGNvbnN0IFNPVVJDRSA9ICdvcHBvcnR1bml0eS1zb3VyY2VzLyc7XG5leHBvcnQgY29uc3QgVFJBSU5JTkdfU0VTU0lPTiA9ICd0cmFpbmluZy1zZXNzaW9ucy8nO1xuZXhwb3J0IGNvbnN0IFZPTFVOVEVFUl9VUERBVEUgPSAndm9sdW50ZWVyLXVwZGF0ZSc7XG5leHBvcnQgY29uc3QgVk9MVU5URUVSUyA9ICd2b2x1bnRlZXJzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBWT0xVTlRFRVJTX0ZFVENIX0FMTCA9ICd2b2x1bnRlZXJzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBWT0xVTlRFRVJTX0JZX0lEID0gJ3ZvbHVudGVlcnMvZmV0Y2hCeUlEJztcbmV4cG9ydCBjb25zdCBEQVNIQk9BUkQgPSAnZGFzaGJvYXJkJztcbmV4cG9ydCBjb25zdCBPRkZFUl9QUk9HUkFNID0gJ29mZmVyLXByb2dyYW1zJztcbmV4cG9ydCBjb25zdCBUUkFWRUxfREFZID0gJ3RyYXZlbC1kYXlzJztcbmV4cG9ydCBjb25zdCBET1dOTE9BRF9TQU1QTEVfQ1NWID0gJ2Rvd25sb2FkLXNhbWVwbGUtY3N2J1xuZXhwb3J0IGNvbnN0IFVQTE9BRF9DU1YgPSAndXBsb2FkLWNzdidcbmV4cG9ydCBjb25zdCBET1dOTE9BRF9TQU1QTEVfVVBEQVRFX1RFQU1fQ1NWID0gJ2Rvd25sb2FkLXNhbXBsZS11cGRhdGUtdGVhbS1jc3YnXG5leHBvcnQgY29uc3QgVVBEQVRFX1RFQU1fQ1NWID0gJ3VwZGF0ZS10ZWFtLWNzdidcbmV4cG9ydCBjb25zdCBET1dOTE9BRF9TQU1QTEVfVVBEQVRFX0lERU5USVRZX0NTViA9ICdkb3dubG9hZC1zYW1wbGUtdXBkYXRlX2lkZW50aXR5X2NzdidcbmV4cG9ydCBjb25zdCBVUERBVEVfSURFTlRJVFlfQ1NWID0gJ3VwZGF0ZV9pZGVudGl0eV9jc3YnIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVm9sdW50ZWVyLCBWb2x1bnRlZXJTdGF0ZSB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY3JlYXRlVXBkYXRlVGVhbUNzdkFjdGlvbiwgY3JlYXRlVXBsb2FkQ3N2QWN0aW9uLCBmZXRjaENvbW11bmUsIGZldGNoRGFzaGJvYXJkQWN0aW9uLCBmZXRjaERpc2FiaWxpdHlUeXBlLCBmZXRjaERpc3RyaWN0LCBmZXRjaEVkdWNhdGlvbkluc3RpdHV0aW9ucywgZmV0Y2hFdmVudCwgZmV0Y2hGb29kLCBmZXRjaExhbmd1YXRlQWN0aW9uLCBmZXRjaE9jY3VwYXRpb24sIGZldGNoT2ZmZXJQcm9ncmFtQWN0aW9uLCBmZXRjaFByb3ZpbmNlLCBmZXRjaFNraWxsQWN0aW9uLCBmZXRjaFNvdXJjZSwgZmV0Y2hUZWFtLCBmZXRjaFRyYWluaW5nU2Vzc2lvbiwgZmV0Y2hUcmF2ZWxEYXlBY3Rpb24sIGZldGNoVm9sdW50ZWVycywgdXBkYXRlVm9sdW50ZWVyQWN0aW9uLCB2b2x1bnRlZXJEZXRhaWxBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0IHsgVk9MVU5URUVSIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5jb25zdCBpbml0aWFsU3RhdGU6IFZvbHVudGVlclN0YXRlID0ge1xuICBkaXNhYmlsaXR5VHlwZXM6IG51bGwsICAvLyBBc3N1bWluZyB5b3UgbmVlZCBhbiBlbXB0eSBhcnJheSBpbml0aWFsbHlcbiAgcmVnaXN0ZXJQZW5kaW5nOiBmYWxzZSxcbiAgcmVnaXN0ZXJFcnJvck1lc3NhZ2U6ICcnLFxuICB2b2x1bnRlZXI6IG51bGwsIC8vIEFzc3VtaW5nIHZvbHVudGVlciBpcyBpbml0aWFsbHkgbnVsbCBvciB1bmRlZmluZWRcbiAgcHJvdmluY2VzOiBudWxsLFxuICBvY2N1cGF0aW9uczogbnVsbCxcbiAgZWR1Y2F0aW9uSW5zdGl0dXRpb25zOiBudWxsLFxuICBmb29kczogbnVsbCxcbiAgaW50ZXJlc3RlZFRlYW1zOiBudWxsLFxuICB2b2x1bnRlZXJFdmVudHM6IG51bGwsXG4gIG9wcG9ydHVuaXR5U291cmNlczogbnVsbCxcbiAgdHJhaW5pbmdTZXNzaW9uczogbnVsbCxcbiAgdm9sdW50ZWVyUGVuZGluZzogZmFsc2UsXG4gIHZvbHVudGVlckRldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB2b2x1bnRlZXJVcGRhdGVQZW5kaW5nOiBmYWxzZSxcbiAgdXBsb2FkQ3N2UGVuZGluZzogZmFsc2UsXG4gIHVwZGF0ZVRlYW1Dc3ZQZW5kaW5nOiBmYWxzZSxcbiAgdm9sdW50ZWVyczogW10sXG4gIGRhc2hib2FyZDogbnVsbCxcbiAgbGFuZ3VhZ2VzOiBudWxsLFxuICBza2lsbHM6IG51bGwsXG4gIGNvbW11bmVzOiBudWxsLFxuICBkaXN0cmljdHM6IG51bGxcbn07XG5cbmV4cG9ydCBjb25zdCB2b2x1bnRlZXJTbGljZSA9IGNyZWF0ZVNsaWNlKHtcbiAgbmFtZTogVk9MVU5URUVSLFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB2b2x1bnRlZXJcbiAgICBzZXRWb2x1bnRlZXI6IChzdGF0ZSwgYWN0aW9uOiBQYXlsb2FkQWN0aW9uPFZvbHVudGVlcj4pID0+IHtcbiAgICAgIHN0YXRlLnZvbHVudGVlciA9IGFjdGlvbi5wYXlsb2FkO1xuICAgIH0sXG5cbiAgICAvLyBVcGRhdGVzIHRoZSByZWdpc3RlciBwZW5kaW5nIHN0YXRlXG4gICAgc2V0UmVnaXN0ZXJQZW5kaW5nOiAoc3RhdGUsIGFjdGlvbjogUGF5bG9hZEFjdGlvbjxib29sZWFuPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gSGFuZGxlcyBmZXRjaGluZyBkaXNhYmlsaXR5IHR5cGVzIHBlbmRpbmcgc3RhdGVcbiAgICAgIC5hZGRDYXNlKGZldGNoRGlzYWJpbGl0eVR5cGUucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCBkaXNhYmlsaXR5IHR5cGVzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaERpc2FiaWxpdHlUeXBlLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIGRpc2FiaWxpdHkgdHlwZXMuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCBkaXNhYmlsaXR5IHR5cGVzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaERpc2FiaWxpdHlUeXBlLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLmRpc2FiaWxpdHlUeXBlcyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHByb3ZpbmNlXG4gICAgICAvLyBIYW5kbGVzIGZldGNoaW5nIHByb3ZpbmNlIHBlbmRpbmcgc3RhdGVcbiAgICAgIC5hZGRDYXNlKGZldGNoUHJvdmluY2UucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCBwcm92aW5jZSBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hQcm92aW5jZS5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCBwcm92aW5jZS4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHByb3ZpbmNlIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFByb3ZpbmNlLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlcyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIG9jY3VwYXRpb25cbiAgICAgIC5hZGRDYXNlKGZldGNoT2NjdXBhdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIG9jY3VwYXRpb24gZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoT2NjdXBhdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCBvY2N1cGF0aW9uLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgb2NjdXBhdGlvbiBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hPY2N1cGF0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLm9jY3VwYXRpb25zID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgZWR1Y3Rpb24gaW5zdGl0dXRpb25cbiAgICAgIC5hZGRDYXNlKGZldGNoRWR1Y2F0aW9uSW5zdGl0dXRpb25zLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgaW5zdGl0dXRpb24gZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoRWR1Y2F0aW9uSW5zdGl0dXRpb25zLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIGluc3RpdHV0aW9uLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgaW5zdGl0dXRpb24gZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoRWR1Y2F0aW9uSW5zdGl0dXRpb25zLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLmVkdWNhdGlvbkluc3RpdHV0aW9ucyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIGZvb2RzXG4gICAgICAuYWRkQ2FzZShmZXRjaEZvb2QucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCBmb29kIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaEZvb2QucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggZm9vZC4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIGZvb2QgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoRm9vZC5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS5mb29kcyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHRlYW1cbiAgICAgIC5hZGRDYXNlKGZldGNoVGVhbS5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHRlYW0gZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoVGVhbS5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB0ZWFtLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdGVhbSBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hUZWFtLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLmludGVyZXN0ZWRUZWFtcyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIGV2ZW50XG4gICAgICAuYWRkQ2FzZShmZXRjaEV2ZW50LnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgZXZlbnQgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoRXZlbnQucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggZXZlbnQuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCBldmVudCBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hFdmVudC5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudHMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSBzb3VyY2VcbiAgICAgIC5hZGRDYXNlKGZldGNoU291cmNlLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgc291cmNlIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFNvdXJjZS5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCBzb3VyY2UuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCBzb3VyY2UgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoU291cmNlLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLm9wcG9ydHVuaXR5U291cmNlcyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHRyYWluaW5nIHNlc3Npb25cbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhaW5pbmdTZXNzaW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgdHJhaW5pbmcgc2Vzc2lvbiBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hUcmFpbmluZ1Nlc3Npb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggdHJhaW5pbmcgc2Vzc2lvbi4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHRyYWluaW5nIHNlc3Npb24gZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhaW5pbmdTZXNzaW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvbnMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXJzXG4gICAgICAuYWRkQ2FzZShmZXRjaFZvbHVudGVlcnMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgZGlzYWJpbGl0eSB0eXBlcyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hWb2x1bnRlZXJzLnJlamVjdGVkLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIGRpc2FiaWxpdHkgdHlwZXMgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoVm9sdW50ZWVycy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJzID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHZvbHVudGVlciBkZXRhaWxcbiAgICAgIC5hZGRDYXNlKHZvbHVudGVlckRldGFpbEFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyRGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCBkaXNhYmlsaXR5IHR5cGVzIGZldGNoXG4gICAgICAuYWRkQ2FzZSh2b2x1bnRlZXJEZXRhaWxBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJEZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgZGlzYWJpbGl0eSB0eXBlcyBmZXRjaFxuICAgICAgLmFkZENhc2Uodm9sdW50ZWVyRGV0YWlsQWN0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLnZvbHVudGVlciA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlckRldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXIgdXBkYXRlXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVWb2x1bnRlZXJBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVZvbHVudGVlckFjdGlvbi5yZWplY3RlZCwgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVWb2x1bnRlZXJBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXIgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHZvbHVudGVlciB1cGxvYWQgY3N2XG4gICAgICAuYWRkQ2FzZShjcmVhdGVVcGxvYWRDc3ZBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVwbG9hZENzdlBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVVwbG9hZENzdkFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXBsb2FkQ3N2UGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gdXBsb2FkIGNzdiBmaWxlLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVXBsb2FkQ3N2QWN0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnVwbG9hZENzdlBlbmRpbmcgPSBmYWxzZTtcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXIgdXBkYXRlIHRlYW0gY3N2XG4gICAgICAuYWRkQ2FzZShjcmVhdGVVcGRhdGVUZWFtQ3N2QWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS51cGRhdGVUZWFtQ3N2UGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVXBkYXRlVGVhbUNzdkFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXBkYXRlVGVhbUNzdlBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB0ZWFtIGNzdiBmaWxlLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVXBkYXRlVGVhbUNzdkFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlciA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS51cGRhdGVUZWFtQ3N2UGVuZGluZyA9IGZhbHNlO1xuICAgICAgfSlcblxuXG4gICAgICAvLyBIYW5kbGUgZGFzaGJvYWQgZGV0YWlsc1xuICAgICAgLmFkZENhc2UoZmV0Y2hEYXNoYm9hcmRBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSB0cnVlO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGZldGNoRGFzaGJvYXJkQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlciA9IG51bGw7IC8vIENsZWFyIHZvbHVudGVlciBkYXRhIGlmIHRoZSByZXF1ZXN0IGZhaWxzXG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hEYXNoYm9hcmRBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLmRhc2hib2FyZCA9IGFjdGlvbi5wYXlsb2FkOyAvLyBTdG9yZSB0aGUgZmV0Y2hlZCB2b2x1bnRlZXIgZGV0YWlsc1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIGxhbmd1YWdlXG4gICAgICAuYWRkQ2FzZShmZXRjaExhbmd1YXRlQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gdHJ1ZTtcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaExhbmd1YXRlQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLmxhbmd1YWdlcyA9IG51bGw7IC8vIENsZWFyIHZvbHVudGVlciBkYXRhIGlmIHRoZSByZXF1ZXN0IGZhaWxzXG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hMYW5ndWF0ZUFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUubGFuZ3VhZ2VzID0gYWN0aW9uLnBheWxvYWQ7IC8vIFN0b3JlIHRoZSBmZXRjaGVkIHZvbHVudGVlciBkZXRhaWxzXG4gICAgICB9KVxuXG4gICAgICAvLyBkaXN0cmljdFxuICAgICAgLmFkZENhc2UoZmV0Y2hEaXN0cmljdC5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IHRydWU7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hEaXN0cmljdC5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5kaXN0cmljdHMgPSBudWxsOyAvLyBDbGVhciB2b2x1bnRlZXIgZGF0YSBpZiB0aGUgcmVxdWVzdCBmYWlsc1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGZldGNoRGlzdHJpY3QuZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLmRpc3RyaWN0cyA9IGFjdGlvbi5wYXlsb2FkOyAvLyBTdG9yZSB0aGUgZmV0Y2hlZCB2b2x1bnRlZXIgZGV0YWlsc1xuICAgICAgfSlcblxuICAgICAgLy8gZGlzdHJpY3RcbiAgICAgIC5hZGRDYXNlKGZldGNoQ29tbXVuZS5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IHRydWU7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hDb21tdW5lLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLmNvbW11bmVzID0gbnVsbDsgLy8gQ2xlYXIgdm9sdW50ZWVyIGRhdGEgaWYgdGhlIHJlcXVlc3QgZmFpbHNcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaENvbW11bmUuZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLmNvbW11bmVzID0gYWN0aW9uLnBheWxvYWQ7IC8vIFN0b3JlIHRoZSBmZXRjaGVkIHZvbHVudGVlciBkZXRhaWxzXG4gICAgICB9KVxuICAgICAgLy8gcmF2ZWxcbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhdmVsRGF5QWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gdHJ1ZTtcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaFRyYXZlbERheUFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXlzID0gbnVsbDsgLy8gQ2xlYXIgdm9sdW50ZWVyIGRhdGEgaWYgdGhlIHJlcXVlc3QgZmFpbHNcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaFRyYXZlbERheUFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5cyA9IGFjdGlvbi5wYXlsb2FkOyAvLyBTdG9yZSB0aGUgZmV0Y2hlZCB2b2x1bnRlZXIgZGV0YWlsc1xuICAgICAgfSlcbiAgICAgIC8vIGRpc3RyaWN0XG4gICAgICAuYWRkQ2FzZShmZXRjaE9mZmVyUHJvZ3JhbUFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IHRydWU7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hPZmZlclByb2dyYW1BY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUub2ZmZXJQcm9ncmFtID0gbnVsbDsgLy8gQ2xlYXIgdm9sdW50ZWVyIGRhdGEgaWYgdGhlIHJlcXVlc3QgZmFpbHNcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaE9mZmVyUHJvZ3JhbUFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUub2ZmZXJQcm9ncmFtID0gYWN0aW9uLnBheWxvYWQ7IC8vIFN0b3JlIHRoZSBmZXRjaGVkIHZvbHVudGVlciBkZXRhaWxzXG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgc2tpbGxzXG4gICAgICAuYWRkQ2FzZShmZXRjaFNraWxsQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gdHJ1ZTtcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShmZXRjaFNraWxsQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnNraWxscyA9IG51bGw7IC8vIENsZWFyIHZvbHVudGVlciBkYXRhIGlmIHRoZSByZXF1ZXN0IGZhaWxzXG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZmV0Y2hTa2lsbEFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlclBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUuc2tpbGxzID0gYWN0aW9uLnBheWxvYWQ7IC8vIFN0b3JlIHRoZSBmZXRjaGVkIHZvbHVudGVlciBkZXRhaWxzXG4gICAgICB9KTtcbiAgICAvLyBoYW5kbGUgcmVnaXRlciB2b2x1bnRlZXJcbiAgICAvLyBoYW5kbGUgdm9sdW50ZWVyc1xuICAgIC8vIC5hZGRDYXNlKHJlZ2lzdGVyVm9sdW50ZWVycy5Wb2x1bnRlZXJzLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgIC8vICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IHRydWU7XG4gICAgLy8gfSlcbiAgICAvLyAvLyBIYW5kbGVzIHJlamVjdGVkIGRpc2FiaWxpdHkgdHlwZXMgZmV0Y2hcbiAgICAvLyAuYWRkQ2FzZShyZWdpc3RlclZvbHVudGVlcnMucmVqZWN0ZWQsIChzdGF0ZSkgPT4ge1xuICAgIC8vICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgIC8vIH0pXG4gICAgLy8gLy8gSGFuZGxlcyBmdWxmaWxsZWQgZGlzYWJpbGl0eSB0eXBlcyBmZXRjaFxuICAgIC8vIC5hZGRDYXNlKHJlZ2lzdGVyVm9sdW50ZWVycy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgLy8gICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAvLyAgIHN0YXRlLnZvbHVudGVlcnMgPSBwYXlsb2FkO1xuICAgIC8vICAgc3RhdGUudm9sdW50ZWVyUGVuZGluZyA9IGZhbHNlO1xuICAgIC8vIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFJlZ2lzdGVyUGVuZGluZywgc2V0Vm9sdW50ZWVyIH0gPSB2b2x1bnRlZXJTbGljZS5hY3Rpb25zO1xuXG5leHBvcnQgZGVmYXVsdCB2b2x1bnRlZXJTbGljZS5yZWR1Y2VyO1xuIiwiaW1wb3J0IHsgVmVyaWZ5T3RwRm9ybVZhbHVlcywgVm9sdW50ZWVyIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHBvc3RXaXRoQ29uZmlnRm9ybURhdGEsIHBvc3RXaXRoQ29uZmlnV2hpdGVsaXN0LCBwdXRXaXRoQ29uZmlnLCByZW1vdmVXaXRoQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvcmUvYmFzZS9zZXJ2aWNlcyc7XG5cbmV4cG9ydCBjb25zdCBkaXNhYmlsaXR5VHlwZVNlcnZpY2UgPSBhc3luYyhwYWdlU2l6ZTogbnVtYmVyID0gOTk5OTkpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLkRJU0FCSUxJVFlfVFlQRSwgeyBwYWdlU2l6ZSB9KVxufVxuXG5leHBvcnQgY29uc3QgcHJvdmluY2VTZXJ2aWNlID0gYXN5bmMoKSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKCdodHRwczovL3BodW1pYXBpLmpvb25hYWtodWIuY29tL3Byb3ZpbmNlcycpXG59XG5cbmV4cG9ydCBjb25zdCBkaXN0cmljdFNlcnZpY2UgPSBhc3luYyhwcm92aW5jZUlkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYGh0dHBzOi8vcGh1bWlhcGkuam9vbmFha2h1Yi5jb20vZGlzdHJpY3RzLyR7cHJvdmluY2VJZH1gKVxufVxuXG5leHBvcnQgY29uc3QgY29tbXVuZVNlcnZpY2UgPSBhc3luYyhkaXN0cmljdElkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYGh0dHBzOi8vcGh1bWlhcGkuam9vbmFha2h1Yi5jb20vY29tbXVuZXMvJHtkaXN0cmljdElkfWApXG59XG5cblxuZXhwb3J0IGNvbnN0IG9jY3VwYXRpb25TZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5PQ0NVUEFUSU9OLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCBlZHVjYXRpb25JbnN0aXR1dGlvbnNTZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5FRFVDQVRJT05fSU5TVElUVVRJT04sIHsgcGFnZVNpemUgfSlcbn1cblxuZXhwb3J0IGNvbnN0IGZvb2RTZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5GT09EUywgeyBwYWdlU2l6ZSB9KVxufVxuXG5leHBvcnQgY29uc3QgdGVhbVNlcnZpY2UgPSBhc3luYyhwYWdlU2l6ZTogbnVtYmVyID0gOTk5OTkpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlRFQU0sIHsgcGFnZVNpemUgfSlcbn1cblxuXG5leHBvcnQgY29uc3QgZXZlbnRTZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5FVkVOVCwgeyBwYWdlU2l6ZSB9KVxufVxuXG5leHBvcnQgY29uc3Qgc291cmNlU2VydmljZSA9IGFzeW5jKHBhZ2VTaXplOiBudW1iZXIgPSA5OTk5OSkgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhVUkwuU09VUkNFLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCB0cmFpbmluZ1Nlc3Npb25TZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5UUkFJTklOR19TRVNTSU9OLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCB2b2x1bnRlZXJzU2VydmljZSA9IGFzeW5jKHZvbHVudGVlcl9zdGF0dXM6IHN0cmluZywgcGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyLCBzZWFyY2g6IHN0cmluZywgc29ydF9vcmRlcjogc3RyaW5nLCBlZHVjYXRpb25faW5zdGl0dXRpb25faWQ6IG51bWJlciwgc2NvcmVfZnJvbTogbnVtYmVyLCBzY29yZV90bzogbnVtYmVyLCBwcm92aW5jZTogc3RyaW5nLCBpbnRlcmVzdGVkX3RlYW1faWQ6IG51bWJlciwgZXZlbnRfaWRzOiBudW1iZXJbXSwgbGFuZ3VhZ2VfaWQ6IG51bWJlciwgc2tpbGxfaWQ6IG51bWJlcikgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5WT0xVTlRFRVJTLCB7IHZvbHVudGVlcl9zdGF0dXMsIHBhZ2UsIHBhZ2VTaXplLCBzZWFyY2gsIHNvcnRfb3JkZXIsZWR1Y2F0aW9uX2luc3RpdHV0aW9uX2lkLCBzY29yZV9mcm9tLCBzY29yZV90bywgcHJvdmluY2UsIGludGVyZXN0ZWRfdGVhbV9pZCwgZXZlbnRfaWRzLCBsYW5ndWFnZV9pZCwgc2tpbGxfaWQgIH0pXG4gIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICBjb25zb2xlLmVycm9yKFwiRXJyb3IgZmV0Y2hpbmcgdm9sdW50ZWVyczpcIiwgZXJyb3IpO1xuICAgIHRocm93IGVycm9yO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBkZWxldGVWb2x1bnRlZXJzU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+e1xuICByZXR1cm4gYXdhaXQgcmVtb3ZlV2l0aENvbmZpZyhgJHtVUkwuVk9MVU5URUVSU30ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCByZWdpc3RlclZvbHVudGVlcnNTZXJ2aWNlID0gYXN5bmMoZGF0YTogVm9sdW50ZWVyKSA9PiB7XG4gIHJldHVybiBhd2FpdCBwb3N0V2l0aENvbmZpZ1doaXRlbGlzdChVUkwuVk9MVU5URUVSUywgeyAuLi5kYXRhIH0pXG59XG5cbmV4cG9ydCBjb25zdCB2b2x1bnRlZXJzRGV0YWlsU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlZPTFVOVEVFUlN9JHtpZH1gKVxufVxuXG5leHBvcnQgY29uc3Qgdm9sdW50ZWVyVXBkYXRlU2VydmljZSA9IGFzeW5jIChpZDogbnVtYmVyLCBkYXRhOiBWb2x1bnRlZXIpOiBQcm9taXNlPFZvbHVudGVlcj4gPT4ge1xuICByZXR1cm4gcHV0V2l0aENvbmZpZyhgJHtVUkwuVk9MVU5URUVSU30ke2lkfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IGxvZ2luVXNlclNlcnZpY2UgPSBhc3luYyAoYm9keTogYW55KSA9PiB7XG4gIHJldHVybiBwb3N0V2l0aENvbmZpZyhcbiAgICBVUkwuTE9HSU4sXG4gICAge1xuICAgICAgZW1haWw6IGJvZHkuZW1haWwsXG4gICAgICBwYXNzd29yZDogYm9keS5wYXNzd29yZCxcbiAgICB9XG4gICk7XG59O1xuXG5cbmV4cG9ydCBjb25zdCB2ZXJpZnlPVFBTZXJ2aWNlID0gYXN5bmMgKFxuICBib2R5OiBWZXJpZnlPdHBGb3JtVmFsdWVzLFxuKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RXaXRoQ29uZmlnKFVSTC5WRVJJRllfVE9QLCB7XG4gICAgICBlbWFpbDogYm9keS5lbWFpbCxcbiAgICAgIGNvZGU6IGJvZHkub3RwQ29kZSxcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzcG9uc2U7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignT1RQIHZlcmlmaWNhdGlvbiBmYWlsZWQ6JywgZXJyb3IpO1xuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5cblxuZXhwb3J0IGNvbnN0IGZldGNoRGFzaGJvYXJkU2VydmljZSA9IGFzeW5jICgpPT57XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5EQVNIQk9BUkQpXG59XG5cbmV4cG9ydCBjb25zdCBsYW5ndWFnZXNTZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5MQU5HVUFHRSwgeyBwYWdlU2l6ZSB9KVxufVxuXG5cbmV4cG9ydCBjb25zdCBza2lsbFNlcnZpY2UgPSBhc3luYyhwYWdlU2l6ZTogbnVtYmVyID0gOTk5OTkpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlNLSUxMLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCBvZmZlclByb2dyYW1TZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5PRkZFUl9QUk9HUkFNLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCB0cmF2ZWxEYXlTZXJ2aWNlID0gYXN5bmMocGFnZVNpemU6IG51bWJlciA9IDk5OTk5KSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5UUkFWRUxfREFZLCB7IHBhZ2VTaXplIH0pXG59XG5cbmV4cG9ydCBjb25zdCBkb3dubG9hZFNhbXBsZUNzdlNlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlZPTFVOVEVFUlN9ZG93bmxvYWQtc2FtcGxlLWNzdi9gLCB7XG4gICAgcmVzcG9uc2VUeXBlOiBcImJsb2JcIixcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVVwbG9hZENzdlNlcnZpY2UgPSBhc3luYyAoZm9ybURhdGE6IEZvcm1EYXRhKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgcmV0dXJuIHBvc3RXaXRoQ29uZmlnRm9ybURhdGEoYCR7VVJMLlZPTFVOVEVFUlN9dXBsb2FkLWNzdi9gLCBmb3JtRGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgZG93bmxvYWRTYW1wbGVVcGRhdGVUZWFtQ3N2U2VydmljZSA9IGFzeW5jKCkgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhgJHtVUkwuVk9MVU5URUVSU31kb3dubG9hZC1zYW1wbGUtdXBkYXRlX3RlYW1fY3N2L2AsIHtcbiAgICByZXNwb25zZVR5cGU6IFwiYmxvYlwiLFxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVXBkYXRlVGVhbUNzdlNlcnZpY2UgPSBhc3luYyAoZm9ybURhdGE6IEZvcm1EYXRhKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgcmV0dXJuIHBvc3RXaXRoQ29uZmlnRm9ybURhdGEoYCR7VVJMLlZPTFVOVEVFUlN9dXBkYXRlX3RlYW1fY3N2L2AsIGZvcm1EYXRhKTtcbn07XG5cblxuXG5leHBvcnQgY29uc3QgZG93bmxvYWRTYW1wbGVVcGRhdGVJZGVudGl0eUNzdlNlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlZPTFVOVEVFUlN9ZG93bmxvYWQtc2FtcGxlLXVwZGF0ZV9pZGVudGl0eV9jc3YvYCwge1xuICAgIHJlc3BvbnNlVHlwZTogXCJibG9iXCIsXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVVcGRhdGVJZGVudGl0eUNzdlNlcnZpY2UgPSBhc3luYyAoZm9ybURhdGE6IEZvcm1EYXRhKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgcmV0dXJuIHBvc3RXaXRoQ29uZmlnRm9ybURhdGEoYCR7VVJMLlZPTFVOVEVFUlN9dXBkYXRlX2lkZW50aXR5X2Nzdi9gLCBmb3JtRGF0YSk7XG59O1xuIiwiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBGb3JtLCBJbnB1dCwgU2VsZWN0LCBCdXR0b24sIERhdGVQaWNrZXIsIFJhZGlvLCBVcGxvYWQsIENoZWNrYm94LCBNb2RhbCwgUm93LCBDb2wsIFRhZywgU3BhY2UsIFRhYnMgfSBmcm9tICdhbnRkJztcbmltcG9ydCB7IEZpbGVPdXRsaW5lZCwgUGx1c091dGxpbmVkLCBVcGxvYWRPdXRsaW5lZCB9IGZyb20gJ0BhbnQtZGVzaWduL2ljb25zJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IFJvb3RTdGF0ZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9yZWR1eC9zdG9yZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBmZXRjaENvbW11bmUsIGZldGNoRGlzYWJpbGl0eVR5cGUsIGZldGNoRGlzdHJpY3QsIGZldGNoTGFuZ3VhdGVBY3Rpb24sIGZldGNoT2ZmZXJQcm9ncmFtQWN0aW9uLCBmZXRjaFNraWxsQWN0aW9uLCBmZXRjaFRyYXZlbERheUFjdGlvbiwgdXBkYXRlVm9sdW50ZWVyQWN0aW9uLCB2b2x1bnRlZXJEZXRhaWxBY3Rpb24gfSBmcm9tICcuLi8uLi9jb3JlL2FjdGlvbnMnO1xuaW1wb3J0IHsgVm9sdW50ZWVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL2ludGVyZmFjZXMnO1xuaW1wb3J0IFN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xuaW1wb3J0IHtcbiAgICBmZXRjaEVkdWNhdGlvbkluc3RpdHV0aW9ucyxcbiAgICBmZXRjaEV2ZW50LFxuICAgIGZldGNoRm9vZCxcbiAgICBmZXRjaE9jY3VwYXRpb24sXG4gICAgZmV0Y2hQcm92aW5jZSxcbiAgICBmZXRjaFNvdXJjZSxcbiAgICBmZXRjaFRlYW0sXG4gICAgZmV0Y2hUcmFpbmluZ1Nlc3Npb24sXG59IGZyb20gXCIuLi8uLi9jb3JlL2FjdGlvbnNcIjtcbmltcG9ydCB7IHBvc3RVcGxvYWQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcbmltcG9ydCBUZXh0QXJlYSBmcm9tICdhbnRkL2VzL2lucHV0L1RleHRBcmVhJztcbmltcG9ydCB7IHVzZU5hdmlnYXRlIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5cbmNvbnN0IHsgT3B0aW9uIH0gPSBTZWxlY3Q7XG5jb25zdCB7IFRhYlBhbmUgfSA9IFRhYnM7XG5cbmNvbnN0IFZvbHVudGVlckZvcm0gPSAoeyBpZCB9OiB7IGlkOiBzdHJpbmcgfCBudWxsIH0pID0+IHtcbiAgICBjb25zdCB7XG4gICAgICAgIGRpc2FiaWxpdHlUeXBlcyxcbiAgICAgICAgcHJvdmluY2VzLFxuICAgICAgICBvY2N1cGF0aW9ucyxcbiAgICAgICAgZWR1Y2F0aW9uSW5zdGl0dXRpb25zLFxuICAgICAgICBmb29kcyxcbiAgICAgICAgaW50ZXJlc3RlZFRlYW1zLFxuICAgICAgICB2b2x1bnRlZXJFdmVudHMsXG4gICAgICAgIG9wcG9ydHVuaXR5U291cmNlcyxcbiAgICAgICAgdHJhaW5pbmdTZXNzaW9ucyxcbiAgICAgICAgc2tpbGxzLFxuICAgICAgICBsYW5ndWFnZXMsXG4gICAgICAgIGNvbW11bmVzLFxuICAgICAgICBkaXN0cmljdHMsXG4gICAgICAgIG9mZmVyUHJvZ3JhbSxcbiAgICAgICAgdHJhdmVsRGF5c1xuICAgIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGU6IFJvb3RTdGF0ZSkgPT4gc3RhdGUudm9sdW50ZWVyKTtcblxuICAgIGNvbnN0IG5hdmlnYXRlID0gdXNlTmF2aWdhdGUoKTtcbiAgICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gICAgY29uc3QgeyB2b2x1bnRlZXIsIHZvbHVudGVlclVwZGF0ZVBlbmRpbmcgfSA9IHVzZVNlbGVjdG9yKChzdGF0ZTogUm9vdFN0YXRlKSA9PiBzdGF0ZS52b2x1bnRlZXIpO1xuICAgIGNvbnN0IFtmb3JtXSA9IEZvcm0udXNlRm9ybSgpO1xuICAgIGNvbnN0IFtwaG90b1VybCwgc2V0UGhvdG9VcmxdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IFtpZENhcmRVcmwsIHNldElkQ2FyZFVybF0gPSB1c2VTdGF0ZSgnJyk7XG4gICAgY29uc3QgW2N2VXJsLCBzZXRDdlVybF0gPSB1c2VTdGF0ZSgnJyk7XG4gICAgY29uc3QgW3ByZXZpZXdWaXNpYmxlLCBzZXRQcmV2aWV3VmlzaWJsZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3ByZXZpZXdUaXRsZSwgc2V0UHJldmlld1RpdGxlXSA9IHVzZVN0YXRlKCcnKTtcbiAgICBjb25zdCBbcHJldmlld0NvbnRlbnQsIHNldFByZXZpZXdDb250ZW50XSA9IHVzZVN0YXRlPGFueT4obnVsbCk7XG4gICAgY29uc3QgeyBhdXRoIH0gPSB1c2VTZWxlY3Rvcigoc3RhdGU6IFJvb3RTdGF0ZSkgPT4gc3RhdGUpOyAvLyBHZXQgdXNlciByb2xlXG4gICAgY29uc3QgeyBjdXJyZW50VXNlciB9ID0gYXV0aDtcbiAgICBjb25zdCBpc0FkbWluID0gY3VycmVudFVzZXI/LnJvbGUgPT09IFwic3VwZXJfYWRtaW5cIjsgLy8gQ2hlY2sgaWYgdXNlciBpcyBhZG1pblxuXG4gICAgY29uc3QgW3JhZGlvVmFsdWUsIHNldFJhZGlvVmFsdWVdID0gdXNlU3RhdGUoXCJcIik7IC8vIFRyYWNrIHNlbGVjdGVkIHJhZGlvIHZhbHVlXG4gICAgY29uc3QgW290aGVyVGV4dCwgc2V0T3RoZXJUZXh0XSA9IHVzZVN0YXRlKFwiXCIpOyAvLyBUcmFjayBpbnB1dCB0ZXh0XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBkaXNwYXRjaChmZXRjaERpc2FiaWxpdHlUeXBlKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaFByb3ZpbmNlKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaE9jY3VwYXRpb24oKSk7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoRWR1Y2F0aW9uSW5zdGl0dXRpb25zKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaEZvb2QoKSk7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoVGVhbSgpKTtcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hTb3VyY2UoKSk7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoRXZlbnQoKSk7XG4gICAgICAgIGRpc3BhdGNoKGZldGNoVHJhaW5pbmdTZXNzaW9uKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaExhbmd1YXRlQWN0aW9uKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaFNraWxsQWN0aW9uKCkpO1xuICAgICAgICBkaXNwYXRjaChmZXRjaE9mZmVyUHJvZ3JhbUFjdGlvbigpKTtcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hUcmF2ZWxEYXlBY3Rpb24oKSk7XG4gICAgfSwgW2Rpc3BhdGNoXSk7XG5cbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoaWQpIHtcbiAgICAgICAgICAgIGRpc3BhdGNoKHZvbHVudGVlckRldGFpbEFjdGlvbihpZCkpO1xuICAgICAgICB9XG4gICAgfSwgW2Rpc3BhdGNoLCBpZF0pO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHZvbHVudGVlcikge1xuICAgICAgICAgICAgZm9ybS5zZXRGaWVsZHNWYWx1ZSh7XG4gICAgICAgICAgICAgICAgcGhvdG86IHZvbHVudGVlci5waG90byB8fCAnJyxcbiAgICAgICAgICAgICAgICBjb2RlOiB2b2x1bnRlZXIuY29kZSB8fCAnJyxcbiAgICAgICAgICAgICAgICBtYWluX2NvZGU6IHZvbHVudGVlci5tYWluX2NvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgZXZlbnRfY29kZTogdm9sdW50ZWVyLmV2ZW50X2NvZGUgfHwgJycsXG4gICAgICAgICAgICAgICAgZmlyc3RfbmFtZV9raG1lcjogdm9sdW50ZWVyLmZpcnN0X25hbWVfa2htZXIgfHwgJycsXG4gICAgICAgICAgICAgICAgbGFzdF9uYW1lX2tobWVyOiB2b2x1bnRlZXIubGFzdF9uYW1lX2tobWVyIHx8ICcnLFxuICAgICAgICAgICAgICAgIGZpcnN0X25hbWVfbGF0aW46IHZvbHVudGVlci5maXJzdF9uYW1lX2xhdGluIHx8ICcnLFxuICAgICAgICAgICAgICAgIGxhc3RfbmFtZV9sYXRpbjogdm9sdW50ZWVyLmxhc3RfbmFtZV9sYXRpbiB8fCAnJyxcbiAgICAgICAgICAgICAgICBkYXRlX29mX2JpcnRoOiB2b2x1bnRlZXIuZGF0ZV9vZl9iaXJ0aCA/IG1vbWVudCh2b2x1bnRlZXIuZGF0ZV9vZl9iaXJ0aCkgOiBudWxsLFxuICAgICAgICAgICAgICAgIGdlbmRlcjogdm9sdW50ZWVyLmdlbmRlciB8fCAnJyxcbiAgICAgICAgICAgICAgICBuYXRpb25hbGl0eTogdm9sdW50ZWVyLm5hdGlvbmFsaXR5IHx8ICcnLFxuICAgICAgICAgICAgICAgIHByb3ZpbmNlX2lkOiB2b2x1bnRlZXIucHJvdmluY2VfaWQgfHwgJycsXG4gICAgICAgICAgICAgICAgcGhvbmVfbnVtYmVyOiB2b2x1bnRlZXIucGhvbmVfbnVtYmVyIHx8ICcnLFxuICAgICAgICAgICAgICAgIGVtYWlsOiB2b2x1bnRlZXIuZW1haWwgfHwgJycsXG4gICAgICAgICAgICAgICAgY3VycmVudF9hZGRyZXNzOiB2b2x1bnRlZXIuY3VycmVudF9hZGRyZXNzIHx8ICcnLFxuICAgICAgICAgICAgICAgIGhvdXNlX251bWJlcjogdm9sdW50ZWVyLmhvdXNlX251bWJlciB8fCAnJyxcbiAgICAgICAgICAgICAgICBzdHJlZXRfbnVtYmVyOiB2b2x1bnRlZXIuc3RyZWV0X251bWJlciB8fCAnJyxcbiAgICAgICAgICAgICAgICBwaHVtaTogdm9sdW50ZWVyLnBodW1pIHx8ICcnLFxuICAgICAgICAgICAgICAgIHNhbmdrYXQ6IHZvbHVudGVlci5zYW5na2F0IHx8ICcnLFxuICAgICAgICAgICAgICAgIGtoYW46IHZvbHVudGVlci5raGFuIHx8ICcnLFxuICAgICAgICAgICAgICAgIHRfc2hpcnRfc2l6ZTogdm9sdW50ZWVyLnRfc2hpcnRfc2l6ZSB8fCAnJyxcbiAgICAgICAgICAgICAgICB2b2x1bnRlZXJfc3RhdHVzOiB2b2x1bnRlZXIudm9sdW50ZWVyX3N0YXR1cyB8fCAnJyxcbiAgICAgICAgICAgICAgICBpZF9jYXJkOiB2b2x1bnRlZXIuaWRfY2FyZCB8fCAnJyxcbiAgICAgICAgICAgICAgICBvY2N1cGF0aW9uX2lkOiB2b2x1bnRlZXIub2NjdXBhdGlvbl9pZCB8fCBudWxsLFxuICAgICAgICAgICAgICAgIGVkdWNhdGlvbl9pbnN0aXR1dGlvbl9pZDogdm9sdW50ZWVyLmVkdWNhdGlvbl9pbnN0aXR1dGlvbl9pZCB8fCBudWxsLFxuICAgICAgICAgICAgICAgIG9wcG9ydHVuaXR5X3NvdXJjZV9pZDogdm9sdW50ZWVyLm9wcG9ydHVuaXR5X3NvdXJjZV9pZCB8fCBudWxsLFxuICAgICAgICAgICAgICAgIHZvbHVudGVlcl9ldmVudF9pZDogdm9sdW50ZWVyLnZvbHVudGVlcl9ldmVudF9pZCB8fCBudWxsLFxuICAgICAgICAgICAgICAgIHRyYWluaW5nX3Nlc3Npb25faWQ6IHZvbHVudGVlci50cmFpbmluZ19zZXNzaW9uX2lkIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgaW50ZXJlc3RlZF90ZWFtX2lkOiB2b2x1bnRlZXIuaW50ZXJlc3RlZF90ZWFtX2lkIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgZm9vZF9pZDogdm9sdW50ZWVyLmZvb2RfaWQgfHwgbnVsbCxcbiAgICAgICAgICAgICAgICB1cGxvYWRfaWRfY2FyZDogdm9sdW50ZWVyLnVwbG9hZF9pZF9jYXJkIHx8ICcnLFxuICAgICAgICAgICAgICAgIHVwbG9hZF9jdjogdm9sdW50ZWVyLnVwbG9hZF9jdiB8fCAnJyxcbiAgICAgICAgICAgICAgICBzY29yZTogdm9sdW50ZWVyLnNjb3JlIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgbm90ZTogdm9sdW50ZWVyLm5vdGUgfHwgJycsXG4gICAgICAgICAgICAgICAgZW1lcmdlbmN5X2NvbnRhY3RfbmFtZTogdm9sdW50ZWVyLmVtZXJnZW5jeV9jb250YWN0X25hbWUgfHwgJycsXG4gICAgICAgICAgICAgICAgZW1lcmdlbmN5X2NvbnRhY3RfcGhvbmU6IHZvbHVudGVlci5lbWVyZ2VuY3lfY29udGFjdF9waG9uZSB8fCAnJyxcbiAgICAgICAgICAgICAgICBlbWVyZ2VuY3lfY29udGFjdF9yZWxhdGlvbnNoaXA6IHZvbHVudGVlci5lbWVyZ2VuY3lfY29udGFjdF9yZWxhdGlvbnNoaXAgfHwgJycsXG4gICAgICAgICAgICAgICAgaXNfYWdyZWVfdGVybXNfY29uZGl0aW9uczogdm9sdW50ZWVyLmlzX2FncmVlX3Rlcm1fY29uZGl0aW9uIHx8IGZhbHNlLFxuICAgICAgICAgICAgICAgIGxhbmd1YWdlX2lkOiB2b2x1bnRlZXIubGFuZ3VhZ2VfaWQgfHwgbnVsbCxcbiAgICAgICAgICAgICAgICBza2lsbF9pZDogdm9sdW50ZWVyLnNraWxsX2lkIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgaXNfZGlzYWJpbGl0eTogdm9sdW50ZWVyLmlzX2Rpc2FiaWxpdHkgIT09IHVuZGVmaW5lZCA/IHZvbHVudGVlci5pc19kaXNhYmlsaXR5IDogZmFsc2UsXG4gICAgICAgICAgICAgICAgZGlzYWJpbGl0eV90eXBlX2lkOiB2b2x1bnRlZXIuZGlzYWJpbGl0eV90eXBlX2lkIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgZGlzYWJpbGl0eV9wYXJ0OiB2b2x1bnRlZXIuZGlzYWJpbGl0eV9wYXJ0IHx8ICcnLFxuICAgICAgICAgICAgICAgIGlzX2Zvb2RfYWxsZXJneTogdm9sdW50ZWVyLmlzX2Zvb2RfYWxsZXJneSAhPT0gdW5kZWZpbmVkID8gdm9sdW50ZWVyLmlzX2Zvb2RfYWxsZXJneSA6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGZvb2RfYWxsZXJnaWVzOiB2b2x1bnRlZXIuZm9vZF9hbGxlcmdpZXMgfHwgJycsXG4gICAgICAgICAgICAgICAgdHJhdmVsX2RheV9pZDogdm9sdW50ZWVyLnRyYXZlbF9kYXlfaWQgfHwgbnVsbCxcbiAgICAgICAgICAgICAgICBjYW5feW91X2pvaW46IHZvbHVudGVlci5jYW5feW91X2pvaW4gfHwgJycsXG4gICAgICAgICAgICAgICAgZXhwZXJ0aXNlOiB2b2x1bnRlZXIuZXhwZXJ0aXNlIHx8ICcnLFxuICAgICAgICAgICAgICAgIGNvbW11bmljYXRpb25fc2NvcmU6IHZvbHVudGVlci5jb21tdW5pY2F0aW9uX3Njb3JlIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgdGVhbXdvcmtfc2NvcmU6IHZvbHVudGVlci50ZWFtd29ya19zY29yZSB8fCBudWxsLFxuICAgICAgICAgICAgICAgIHByb2JsZW1fc29sdmluZ19zY29yZTogdm9sdW50ZWVyLnByb2JsZW1fc29sdmluZ19zY29yZSB8fCBudWxsLFxuICAgICAgICAgICAgICAgIGxlYWRlcnNoaXBfc2NvcmU6IHZvbHVudGVlci5sZWFkZXJzaGlwX3Njb3JlIHx8IG51bGwsXG4gICAgICAgICAgICAgICAgdGVjaG5pY2FsX3NraWxsX3Njb3JlOiB2b2x1bnRlZXIudGVjaG5pY2FsX3NraWxsX3Njb3JlIHx8IG51bGxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBzZXRQaG90b1VybCh2b2x1bnRlZXIucGhvdG8gfHwgJycpO1xuICAgICAgICAgICAgc2V0SWRDYXJkVXJsKHZvbHVudGVlci51cGxvYWRfaWRfY2FyZCB8fCAnJyk7XG4gICAgICAgICAgICBzZXRDdlVybCh2b2x1bnRlZXIudXBsb2FkX2N2IHx8ICcnKTtcbiAgICAgICAgfVxuICAgIH0sIFt2b2x1bnRlZXIsIGZvcm1dKTtcblxuICAgIGNvbnN0IGhhbmRsZVByb3ZpbmNlQ2hhbmdlID0gYXN5bmMgKGl0ZW06IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhpdGVtKVxuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgY29uc3QgaWRzID0gaXRlbS5zcGxpdCgnLCcpOyAvLyBTcGxpdCBieSAnLCcgYW5kIGdldCB0aGUgZmlyc3QgSURcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0SWQgPSBpZHNbMF0udHJpbSgpOyAvLyBFbnN1cmUgbm8gZXh0cmEgc3BhY2VzXG5cbiAgICAgICAgICAgIGlmIChmaXJzdElkKSB7XG4gICAgICAgICAgICAgICAgZm9ybS5zZXRGaWVsZHNWYWx1ZSh7IGtoYW46ICcnLCBzYW5na2F0OiAnJyB9KTtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaChmZXRjaERpc3RyaWN0KHsgaWQ6IGZpcnN0SWQgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IGhhbmRsZURpc3RyaWN0Q2hhbmdlID0gYXN5bmMgKGl0ZW06IHN0cmluZykgPT4ge1xuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgY29uc3QgaWRzID0gaXRlbS5zcGxpdCgnLCcpOyAvLyBTcGxpdCBieSAnLCcgYW5kIGdldCB0aGUgZmlyc3QgSURcbiAgICAgICAgICAgIGNvbnN0IGZpcnN0SWQgPSBpZHNbMF0udHJpbSgpOyAvLyBFbnN1cmUgbm8gZXh0cmEgc3BhY2VzXG5cbiAgICAgICAgICAgIGlmIChmaXJzdElkKSB7XG4gICAgICAgICAgICAgICAgZm9ybS5zZXRGaWVsZHNWYWx1ZSh7IHNhbmdrYXQ6ICcnIH0pO1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKGZldGNoQ29tbXVuZSh7IGlkOiBmaXJzdElkIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgcmFkaW8gYnV0dG9uIGNoYW5nZXNcbiAgICBjb25zdCBoYW5kbGVSYWRpb0NoYW5nZSA9IChlOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgICAgICBzZXRSYWRpb1ZhbHVlKHNlbGVjdGVkVmFsdWUpO1xuXG4gICAgICAgIC8vIElmIFwiT3RoZXJcIiBpcyBkZXNlbGVjdGVkLCBjbGVhciB0aGUgaW5wdXQgZmllbGRcbiAgICAgICAgaWYgKHNlbGVjdGVkVmFsdWUgIT09IFwib3RoZXJcIikge1xuICAgICAgICAgICAgc2V0T3RoZXJUZXh0KFwiXCIpO1xuICAgICAgICAgICAgZm9ybS5zZXRGaWVsZHNWYWx1ZSh7IG90aGVyX3RleHQ6IFwiXCIgfSk7IC8vIFJlc2V0IGlucHV0IGZpZWxkIGluIGZvcm1cbiAgICAgICAgfVxuICAgIH07XG5cbiAgICAvLyBIYW5kbGUgaW5wdXQgY2hhbmdlcyBmb3IgXCJPdGhlclwiIG9wdGlvblxuICAgIGNvbnN0IGhhbmRsZUlucHV0Q2hhbmdlID0gKGU6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgICAgICBzZXRPdGhlclRleHQodmFsdWUpO1xuICAgICAgICBzZXRSYWRpb1ZhbHVlKHZhbHVlKTsgLy8gU2V0IGlucHV0IHZhbHVlIGFzIHJhZGlvIHZhbHVlIGR5bmFtaWNhbGx5XG4gICAgICAgIGZvcm0uc2V0RmllbGRzVmFsdWUoeyBjYW5feW91X2pvaW46IHZhbHVlIH0pOyAvLyBVcGRhdGUgZm9ybSBmaWVsZCBkeW5hbWljYWxseVxuICAgIH07XG5cbiAgICAvLyBDb21tb24gaGVscGVyIGZ1bmN0aW9uIGZvciBmaWxlIHVwbG9hZHNcbiAgICBjb25zdCBoYW5kbGVGaWxlQ2hhbmdlID0gYXN5bmMgKFxuICAgICAgICBmaWxlOiBGaWxlLFxuICAgICAgICBmaWVsZE5hbWU6IHN0cmluZyxcbiAgICAgICAgZm9ybTogYW55XG4gICAgKSA9PiB7XG4gICAgICAgIGlmICghaXNBZG1pbikgcmV0dXJuOyAvLyBSZXN0cmljdCBlZGl0IGFjY2Vzc1xuICAgICAgICBpZiAoIWZpbGUpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYCR7ZmllbGROYW1lfSBVcGxvYWQgRXJyb3I6IE5vIGZpbGUgc2VsZWN0ZWQuYCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChcImZpbGVcIiwgZmlsZSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgcG9zdFVwbG9hZChmb3JtRGF0YSk7XG5cbiAgICAgICAgICAgIGlmIChyZXNwb25zZT8udXJsKSB7XG4gICAgICAgICAgICAgICAgZm9ybS5zZXRGaWVsZHNWYWx1ZSh7IFtmaWVsZE5hbWVdOiByZXNwb25zZS51cmwgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGAke2ZpZWxkTmFtZX0gVXBsb2FkIEVycm9yOmAsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgY29uc3QgaGFuZGxlUGhvdG9VcGxvYWRDaGFuZ2UgPSBhc3luYyAocGhvdG9GaWxlOiBGaWxlKSA9PiB7XG4gICAgICAgIGlmICghaXNBZG1pbikgcmV0dXJuOyAvLyBSZXN0cmljdCBlZGl0IGFjY2Vzc1xuICAgICAgICBhd2FpdCBoYW5kbGVGaWxlQ2hhbmdlKHBob3RvRmlsZSwgXCJwaG90b1wiLCBmb3JtKTtcbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlSWRDYXJkQ2hhbmdlID0gYXN5bmMgKGlkQ2FyZEZpbGU6IEZpbGUpID0+IHtcbiAgICAgICAgaWYgKCFpc0FkbWluKSByZXR1cm47IC8vIFJlc3RyaWN0IGVkaXQgYWNjZXNzXG4gICAgICAgIGF3YWl0IGhhbmRsZUZpbGVDaGFuZ2UoaWRDYXJkRmlsZSwgXCJ1cGxvYWRfaWRfY2FyZFwiLCBmb3JtKTtcbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlQ3ZVcGxvYWRDaGFuZ2UgPSBhc3luYyAoY3ZGaWxlOiBGaWxlKSA9PiB7XG4gICAgICAgIGlmICghaXNBZG1pbikgcmV0dXJuOyAvLyBSZXN0cmljdCBlZGl0IGFjY2Vzc1xuICAgICAgICBhd2FpdCBoYW5kbGVGaWxlQ2hhbmdlKGN2RmlsZSwgXCJ1cGxvYWRfY3ZcIiwgZm9ybSk7XG4gICAgfTtcblxuICAgIGNvbnN0IG9uRmluaXNoID0gKHZhbHVlczogVm9sdW50ZWVyKSA9PiB7XG4gICAgICAgIGlmICghaXNBZG1pbikgcmV0dXJuOyAvLyBSZXN0cmljdCBlZGl0IGFjY2Vzc1xuICAgICAgICBpZiAodm9sdW50ZWVyPy5pZCkge1xuICAgICAgICAgICAgbGV0IHZvbHVudGVlcl9pZCA9IHZvbHVudGVlcj8uaWQgPz8gbnVsbDtcblxuICAgICAgICAgICAgLy8gRW5zdXJlIGBkYXRlX29mX2JpcnRoYCBpcyBjb252ZXJ0ZWQgdG8gYSBwcm9wZXIgc3RyaW5nIGZvcm1hdFxuICAgICAgICAgICAgY29uc3QgdXBkYXRlZFZhbHVlcyA9IHtcbiAgICAgICAgICAgICAgICAuLi52YWx1ZXMsXG4gICAgICAgICAgICAgICAgZGF0ZV9vZl9iaXJ0aDogdmFsdWVzLmRhdGVfb2ZfYmlydGggPyBtb21lbnQodmFsdWVzLmRhdGVfb2ZfYmlydGgpLmZvcm1hdChcIllZWVktTU0tRERcIikgOiBudWxsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy8gKipSZW1vdmUgbWFpbl9jb2RlIGZyb20gdGhlIHN1Ym1pdHRlZCBkYXRhKipcbiAgICAgICAgICAgIGRlbGV0ZSB1cGRhdGVkVmFsdWVzLm1haW5fY29kZTtcblxuXG4gICAgICAgICAgICBkaXNwYXRjaCh1cGRhdGVWb2x1bnRlZXJBY3Rpb24oeyBpZDogdm9sdW50ZWVyX2lkLCBkYXRhOiB1cGRhdGVkVmFsdWVzIH0pKTtcbiAgICAgICAgICAgIC8vIFNob3cgc3VjY2VzcyBhbGVydFxuICAgICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJTdWNjZXNzIVwiLFxuICAgICAgICAgICAgICAgIHRleHQ6IFwiVm9sdW50ZWVyIGRldGFpbHMgaGF2ZSBiZWVuIHVwZGF0ZWQuXCIsXG4gICAgICAgICAgICAgICAgaWNvbjogXCJzdWNjZXNzXCIsXG4gICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiT0tcIlxuICAgICAgICAgICAgfSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdC5pc0NvbmZpcm1lZCkge1xuICAgICAgICAgICAgICAgICAgICBmb3JtLnJlc2V0RmllbGRzKCk7XG4gICAgICAgICAgICAgICAgICAgIG5hdmlnYXRlKFwiL3ZvbHVudGVlcnNcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBTaG93IGVycm9yIGFsZXJ0IGluc3RlYWQgb2YgZGVmYXVsdCBhbGVydFxuICAgICAgICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJFcnJvciFcIixcbiAgICAgICAgICAgICAgICB0ZXh0OiBcIk1pc3Npbmcgdm9sdW50ZWVyIElEXCIsXG4gICAgICAgICAgICAgICAgaWNvbjogXCJlcnJvclwiLFxuICAgICAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIk9LXCJcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfTtcblxuXG4gICAgY29uc3Qgb25GaW5pc2hJbnZlcnRpZXcgPSAodmFsdWVzOiBWb2x1bnRlZXIpID0+IHtcbiAgICAgICAgaWYgKCFpc0FkbWluKSByZXR1cm47IC8vIFJlc3RyaWN0IGVkaXQgYWNjZXNzXG4gICAgICAgIGlmICh2b2x1bnRlZXI/LmlkKSB7XG4gICAgICAgICAgICBsZXQgdm9sdW50ZWVyX2lkID0gdm9sdW50ZWVyPy5pZCA/PyBudWxsO1xuXG4gICAgICAgICAgICAvLyBFbnN1cmUgYGRhdGVfb2ZfYmlydGhgIGlzIGNvbnZlcnRlZCB0byBhIHByb3BlciBzdHJpbmcgZm9ybWF0XG4gICAgICAgICAgICBjb25zdCB1cGRhdGVkVmFsdWVzID0ge1xuICAgICAgICAgICAgICAgIC4uLnZhbHVlcyxcbiAgICAgICAgICAgICAgICBkYXRlX29mX2JpcnRoOiB2YWx1ZXMuZGF0ZV9vZl9iaXJ0aCA/IG1vbWVudCh2YWx1ZXMuZGF0ZV9vZl9iaXJ0aCkuZm9ybWF0KFwiWVlZWS1NTS1ERFwiKSA6IG51bGxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGRpc3BhdGNoKHVwZGF0ZVZvbHVudGVlckFjdGlvbih7IGlkOiB2b2x1bnRlZXJfaWQsIGRhdGE6IHVwZGF0ZWRWYWx1ZXMgfSkpO1xuICAgICAgICAgICAgLy8gU2hvdyBzdWNjZXNzIGFsZXJ0XG4gICAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIlN1Y2Nlc3MhXCIsXG4gICAgICAgICAgICAgICAgdGV4dDogXCJWb2x1bnRlZXIgZGV0YWlscyBoYXZlIGJlZW4gdXBkYXRlZC5cIixcbiAgICAgICAgICAgICAgICBpY29uOiBcInN1Y2Nlc3NcIixcbiAgICAgICAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogXCJPS1wiXG4gICAgICAgICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0LmlzQ29uZmlybWVkKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvcm0ucmVzZXRGaWVsZHMoKTtcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGUoXCIvdm9sdW50ZWVyc1wiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIFNob3cgZXJyb3IgYWxlcnQgaW5zdGVhZCBvZiBkZWZhdWx0IGFsZXJ0XG4gICAgICAgICAgICBTd2FsLmZpcmUoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiBcIkVycm9yIVwiLFxuICAgICAgICAgICAgICAgIHRleHQ6IFwiTWlzc2luZyB2b2x1bnRlZXIgSURcIixcbiAgICAgICAgICAgICAgICBpY29uOiBcImVycm9yXCIsXG4gICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiT0tcIlxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgaGFuZGxlUHJldmlldyA9ICh1cmw6IHN0cmluZywgdGl0bGU6IHN0cmluZykgPT4ge1xuICAgICAgICBzZXRQcmV2aWV3VGl0bGUodGl0bGUpO1xuICAgICAgICBpZiAodXJsLmVuZHNXaXRoKCcucGRmJykpIHtcbiAgICAgICAgICAgIHNldFByZXZpZXdDb250ZW50KDxpZnJhbWUgc3JjPXt1cmx9IHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjMwMHB4XCIgLz4pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2V0UHJldmlld0NvbnRlbnQoPGRpdiBzdHlsZT17eyB3aWR0aDogJzcwJScsIG1hcmdpbjogJ2F1dG8nIH19PjxpbWcgc3JjPXt1cmx9IGFsdD17dGl0bGV9IHN0eWxlPXt7IHdpZHRoOiAnMTAwJScgfX0gLz48L2Rpdj4pO1xuICAgICAgICB9XG4gICAgICAgIHNldFByZXZpZXdWaXNpYmxlKHRydWUpO1xuICAgIH07XG5cbiAgICBjb25zdCB1cGxvYWRCdXR0b24gPSAoXG4gICAgICAgIHVybDogc3RyaW5nLFxuICAgICAgICBzZXRVcmw6IFJlYWN0LkRpc3BhdGNoPFJlYWN0LlNldFN0YXRlQWN0aW9uPHN0cmluZz4+LFxuICAgICAgICBsYWJlbDogc3RyaW5nLFxuICAgICAgICBmaWVsZE5hbWU6IHN0cmluZ1xuICAgICkgPT4gKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7IHBvc2l0aW9uOiAncmVsYXRpdmUnLCBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyB9fT5cbiAgICAgICAgICAgIHt1cmwgPyAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17eyBjdXJzb3I6ICdwb2ludGVyJyB9fSBvbkNsaWNrPXsoKSA9PiBoYW5kbGVQcmV2aWV3KHVybCwgbGFiZWwpfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt1cmwuZW5kc1dpdGgoJy5wZGYnKSA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2VudGVyPjxGaWxlT3V0bGluZWQgc3R5bGU9e3sgZm9udFNpemU6ICcyNXB4JyB9fSAvPiA8cD5QREYgVXBsb2FkZWQ8L3A+PC9jZW50ZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz17dXJsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9e2xhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogJzMwMHB4JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzhweCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgaWNvbj17PFBsdXNPdXRsaW5lZCAvPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17eyBwb3NpdGlvbjogJ2Fic29sdXRlJywgYm90dG9tOiAxMiwgcmlnaHQ6IDgsIGJhY2tncm91bmQ6ICcjMTg5MGZmJywgY29sb3I6ICcjZmZmJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYHVwbG9hZC0ke2xhYmVsfWApPy5jbGljaygpfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtgdXBsb2FkLSR7bGFiZWx9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6ICdub25lJyB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWxlID0gZS50YXJnZXQuZmlsZXNbMF07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gWW91IGNhbiBhZGQgeW91ciBsb2dpYyBoZXJlIGZvciBkaWZmZXJlbnQgZmlsZSBoYW5kbGluZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmllbGROYW1lID09PSAncGhvdG8nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBDYWxsIGEgZnVuY3Rpb24gc3BlY2lmaWMgdG8gcGhvdG9zXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVQaG90b1VwbG9hZENoYW5nZShmaWxlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWVsZE5hbWUgPT09ICd1cGxvYWRfaWRfY2FyZCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENhbGwgYSBmdW5jdGlvbiBzcGVjaWZpYyB0byBJRCBjYXJkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVJZENhcmRDaGFuZ2UoZmlsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmllbGROYW1lID09PSAndXBsb2FkX2N2Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2FsbCBhIGZ1bmN0aW9uIHNwZWNpZmljIHRvIENWXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDdlVwbG9hZENoYW5nZShmaWxlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRVcmwoVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgPFVwbG9hZFxuICAgICAgICAgICAgICAgICAgICAgICAgbGlzdFR5cGU9XCJwaWN0dXJlLWNhcmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1VwbG9hZExpc3Q9e3sgc2hvd1ByZXZpZXdJY29uOiB0cnVlLCBzaG93UmVtb3ZlSWNvbjogdHJ1ZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidy1mdWxsXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFVwbG9hZE91dGxpbmVkIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvVXBsb2FkPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxUYWJzIGRlZmF1bHRBY3RpdmVLZXk9XCIxXCI+XG4gICAgICAgICAgICA8VGFiUGFuZSB0YWI9XCJWb2x1bnRlZXIgSW5mb3JtYXRpb25cIiBrZXk9XCIxXCI+XG4gICAgICAgICAgICAgICAgPEZvcm1cbiAgICAgICAgICAgICAgICAgICAgZm9ybT17Zm9ybX1cbiAgICAgICAgICAgICAgICAgICAgbGF5b3V0PVwidmVydGljYWxcIlxuICAgICAgICAgICAgICAgICAgICBvbkZpbmlzaD17b25GaW5pc2h9XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7IG1heFdpZHRoOiAnMTAwJScsIG1hcmdpbjogJzAgYXV0bycgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDEyXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezI0fSBtZD17OH0gbGc9ezZ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnprhnrzhnpThnpDhno9cIiBuYW1lPVwicGhvdG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3VwbG9hZEJ1dHRvbihwaG90b1VybCwgc2V0UGhvdG9VcmwsICfhnprhnrzhnpThnpDhno8nLCAncGhvdG8nKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezE2fSBsZz17MTh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDBdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezZ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGem+GfgeGegeGegOGevOGeiuGelOGejuGfkuGeiuGfhOGfh+GeouGetuGen+Gek+GfkuGek1wiIG5hbWU9XCJjb2RlXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiB0cnVlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgZGlzYWJsZWQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezZ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGem+GfgeGegeGegOGevOGeilwiIG5hbWU9XCJtYWluX2NvZGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgZGlzYWJsZWQgc3R5bGU9e3sgY29sb3I6ICdncmVlbicgfX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnqLhn5LhnpPhnoDhnp/hn5Lhnpjhn5DhnoLhn5LhnprhnoXhnrfhno/hn5Lhno9cIiBuYW1lPVwidm9sdW50ZWVyX3N0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QgZGlzYWJsZWQ9eyFpc0FkbWlufT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIlJlZ2lzdGVyXCI+UmVnaXN0ZXI8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIlNob3J0bGlzdFwiPlNob3J0bGlzdDwvT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T3B0aW9uIHZhbHVlPVwiSW50ZXJ2aWV3XCI+SW50ZXJ2aWV3PC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcHRpb24gdmFsdWU9XCJQYXJ0aWNpcGFudHNcIj5QYXJ0aWNpcGFudHM8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIlJlc2VydmVcIj5SZXNlcnZlPC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcHRpb24gdmFsdWU9XCJGYWlsZWRcIj5GYWlsZWQ8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIlJlc2lnbmF0aW9uXCI+UmVzaWduYXRpb248L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIkRpc3F1YWxpZmljYXRpb25cIj5EaXNxdWFsaWZpY2F0aW9uPC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Sb3c+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMF19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17MTJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGek+GetuGemOGej+GfkuGemuGegOGevOGem1wiIG5hbWU9XCJsYXN0X25hbWVfa2htZXJcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpPhnrbhnpjhnoHhn5Lhnpvhnr3hnpNcIiBuYW1lPVwiZmlyc3RfbmFtZV9raG1lclwiIHJ1bGVzPXtbeyByZXF1aXJlZDogZmFsc2UgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDBdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpPhnrbhnpjhno/hn5LhnprhnoDhnrzhnpvhnofhnrbhnpfhnrbhnp/hnrbhnqHhnrbhno/hnrbhn4bhnoRcIiBuYW1lPVwibGFzdF9uYW1lX2xhdGluXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiBmYWxzZSB9XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6T4Z624Z6Y4Z6B4Z+S4Z6b4Z694Z6T4Z6H4Z624Z6X4Z624Z6f4Z624Z6h4Z624Z6P4Z624Z+G4Z6EXCIgbmFtZT1cImZpcnN0X25hbWVfbGF0aW5cIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MjR9IG1kPXsxOH0gbGc9ezE4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAwXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6f4Z6J4Z+S4Z6H4Z624Z6P4Z63XCIgbmFtZT1cIm5hdGlvbmFsaXR5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T3B0aW9uIHZhbHVlPVwiQ2FtYm9kaWFuXCI+Q2FtYm9kaWFuPC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcHRpb24gdmFsdWU9XCJGb3JlaWduZXJcIj5Gb3JlaWduZXI8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpDhn5LhnoThn4PhnoHhn4Lhnobhn5LhnpPhnrbhn4bhnoDhn4bhno7hnr7hno9cIiBuYW1lPVwiZGF0ZV9vZl9iaXJ0aFwiIHJ1bGVzPXtbeyByZXF1aXJlZDogZmFsc2UgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxEYXRlUGlja2VyIGZvcm1hdD1cIllZWVktTU0tRERcIiBzdHlsZT17eyB3aWR0aDogJzEwMCUnIH19IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Sb3c+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMF19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17MTJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGem+GfgeGegeGekeGevOGemuGen+GfkOGeluGfkuGekVwiIG5hbWU9XCJwaG9uZV9udW1iZXJcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnqLhn4rhnrjhnpjhn4LhnptcIiBuYW1lPVwiZW1haWxcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAwXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6X4Z+B4Z6RXCIgbmFtZT1cImdlbmRlclwiIHJ1bGVzPXtbeyByZXF1aXJlZDogdHJ1ZSB9XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvLkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8gdmFsdWU9XCJNYWxlXCI+TWFsZTwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSYWRpbyB2YWx1ZT1cIkZlbWFsZVwiPkZlbWFsZTwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9SYWRpby5Hcm91cD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpvhn4HhnoHhnqLhno/hn5Lhno/hnp/hnonhn5Lhnonhnrbhno7hnpThn5Dhno7hn5Lhno4v4Z6b4Z634Z6B4Z634Z6P4Z6G4Z+S4Z6b4Z6E4Z6K4Z+C4Z6TXCIgbmFtZT1cImlkX2NhcmRcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezZ9IGxnPXs2fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6a4Z684Z6U4Z6Q4Z6P4Z6i4Z6P4Z+S4Z6P4Z6f4Z6J4Z+S4Z6J4Z624Z6O4Z6U4Z+Q4Z6O4Z+S4Z6OL+Gem+Get+GegeGet+Gej+GehuGfkuGem+GehOGeiuGfguGek1wiIG5hbWU9XCJ1cGxvYWRfaWRfY2FyZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dXBsb2FkQnV0dG9uKGlkQ2FyZFVybCwgc2V0SWRDYXJkVXJsLCAn4Z6a4Z684Z6U4Z6Q4Z6P4Z6i4Z6P4Z+S4Z6P4Z6f4Z6J4Z+S4Z6J4Z624Z6O4Z6U4Z+Q4Z6O4Z+S4Z6OL+Gem+Get+GegeGet+Gej+GehuGfkuGem+GehOGeiuGfguGekycsICd1cGxvYWRfaWRfY2FyZCcpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAxMl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpvhn4HhnoHhnpXhn5LhnpHhn4dcIiBuYW1lPVwiaG91c2VfbnVtYmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGem+GfgeGegeGeleGfkuGem+GevOGenFwiIG5hbWU9XCJzdHJlZXRfbnVtYmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGel+GevOGemOGet1wiIG5hbWU9XCJwaHVtaVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIG5hbWU9XCJwcm92aW5jZV9pZFwiIGxhYmVsPVwi4Z6B4Z+B4Z6P4Z+S4Z6P4oCLIOGerCDhnoDhn5LhnprhnrvhnoRcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlJlcXVpcmVkXCIgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhIFByb3ZpbmNl4oCLIG9yIENpdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFpc0FkbWlufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh2YWx1ZSkgPT4gaGFuZGxlUHJvdmluY2VDaGFuZ2UodmFsdWUpfSAvLyBIYW5kbGUgcHJvdmluY2Ugc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtBcnJheS5pc0FycmF5KHByb3ZpbmNlcykgJiYgcHJvdmluY2VzLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdmluY2VzPy5tYXAoKHByb3ZpbmNlKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGtleT17cHJvdmluY2UuaWR9IHZhbHVlPXtgJHtwcm92aW5jZS5pZH0sJHtwcm92aW5jZS5uYW1lLmttfSAvICR7cHJvdmluY2UubmFtZS5sYXRpbn1gfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtwcm92aW5jZS5uYW1lLmttfSAvICR7cHJvdmluY2UubmFtZS5sYXRpbn1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gcHJvdmluY2VzIGF2YWlsYWJsZTwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBuYW1lPVwia2hhblwiIGxhYmVsPVwi4Z6B4Z6O4Z+S4Z6MIOGerCDhnp/hn5LhnprhnrvhnoBcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlJlcXVpcmVkXCIgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IHBsYWNlaG9sZGVyPVwiU2VsZWN0IGEgS2hhbiBvciBEaXN0cmljdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17IWlzQWRtaW59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHZhbHVlKSA9PiBoYW5kbGVEaXN0cmljdENoYW5nZSh2YWx1ZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtBcnJheS5pc0FycmF5KGRpc3RyaWN0cykgJiYgZGlzdHJpY3RzLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdHJpY3RzLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBrZXk9e2Ake2l0ZW0ubmFtZS5rbX0gLyAke2l0ZW0ubmFtZS5sYXRpbn1gfSB2YWx1ZT17YCR7aXRlbS5pZH0sICR7aXRlbS5uYW1lLmttfSAvICR7aXRlbS5uYW1lLmxhdGlufWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Ake2l0ZW0ubmFtZS5rbX0gLyAke2l0ZW0ubmFtZS5sYXRpbn1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gcHJvdmluY2VzIGF2YWlsYWJsZTwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBuYW1lPVwic2FuZ2thdFwiIGxhYmVsPVwi4Z6f4Z6E4Z+S4Z6A4Z624Z6P4Z+LIOGerCDhnoPhnrvhn4ZcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlJlcXVpcmVkXCIgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IGRpc2FibGVkPXshaXNBZG1pbn0gcGxhY2Vob2xkZXI9XCJTZWxlY3QgYSBTYW5na2F0IG9yIENvbW11bmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtBcnJheS5pc0FycmF5KGNvbW11bmVzKSAmJiBjb21tdW5lcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbW11bmVzLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBrZXk9e2Ake2l0ZW0ubmFtZS5rbX0gLyAke2l0ZW0ubmFtZS5sYXRpbn1gfSB2YWx1ZT17YCR7aXRlbS5pZH0sICR7aXRlbS5uYW1lLmttfSAvICR7aXRlbS5uYW1lLmxhdGlufWB9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Ake2l0ZW0ubmFtZS5rbX0gLyAke2l0ZW0ubmFtZS5sYXRpbn1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gcHJvdmluY2VzIGF2YWlsYWJsZTwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAxMl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezh9IGxnPXs2fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6v4Z6A4Z6f4Z624Z6aIENWXCIgbmFtZT1cInVwbG9hZF9jdlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dXBsb2FkQnV0dG9uKGN2VXJsLCBzZXRDdlVybCwgJ+Ger+GegOGen+GetuGemiBDVicsICd1cGxvYWRfY3YnKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezE2fSBsZz17MTh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDBdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpHhn4bhnqDhn4bhnq/hnoDhnp/hno7hn5LhnovhnrbhnpNcIiBuYW1lPVwidF9zaGlydF9zaXplXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T3B0aW9uIHZhbHVlPVwiU1wiPlM8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiB2YWx1ZT1cIk1cIj5NPC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPcHRpb24gdmFsdWU9XCJMXCI+TDwvT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T3B0aW9uIHZhbHVlPVwiWExcIj5YTDwvT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17MTJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBuYW1lPVwib2NjdXBhdGlvbl9pZFwiIGxhYmVsPVwi4Z6Y4Z674Z6B4Z6a4Z6U4Z6aXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiBmYWxzZSwgbWVzc2FnZTogXCJSZXF1aXJlZFwiIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IGRpc2FibGVkPXshaXNBZG1pbn0gcGxhY2Vob2xkZXI9XCJTZWxlY3QgYW4gb2NjdXBhdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b2NjdXBhdGlvbnM/LmRhdGE/Lm1hcCgob2NjdXBhdGlvbikgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9wdGlvbiBrZXk9e29jY3VwYXRpb24uaWR9IHZhbHVlPXtvY2N1cGF0aW9uLmlkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b2NjdXBhdGlvbi5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDBdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gc2hvdWxkVXBkYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoeyBnZXRGaWVsZFZhbHVlIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNSZXF1aXJlZCA9IGdldEZpZWxkVmFsdWUoXCJvY2N1cGF0aW9uX2lkXCIpID09PSA3O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBuYW1lPVwiZWR1Y2F0aW9uX2luc3RpdHV0aW9uX2lkXCIgbGFiZWw9XCLhnp/hnrbhnoDhnpvhnpzhnrfhnpHhn5Lhnpnhnrbhnpvhn5DhnplcIiBydWxlcz17aXNSZXF1aXJlZCA/IFt7IHJlcXVpcmVkOiBmYWxzZSwgbWVzc2FnZTogXCJSZXF1aXJlZCBmb3IgVGVhY2hlcnNcIiB9XSA6IFtdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IGRpc2FibGVkPXshaXNBZG1pbn0gZmlsdGVyT3B0aW9uPXsoaW5wdXQsIG9wdGlvbjogYW55KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb24/LmNoaWxkcmVuLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoaW5wdXQudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IHBsYWNlaG9sZGVyPVwiU2VsZWN0IGFuIGluc3RpdHV0aW9uXCIgZGlzYWJsZWQ9eyFpc1JlcXVpcmVkfSBzaG93U2VhcmNoPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZWR1Y2F0aW9uSW5zdGl0dXRpb25zPy5kYXRhPy5tYXAoKGluc3RpdHV0aW9uKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T3B0aW9uIGtleT17aW5zdGl0dXRpb24uaWR9IHZhbHVlPXtpbnN0aXR1dGlvbi5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2luc3RpdHV0aW9uLm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L09wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17MTJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGekeGekeGeveGem+GelOGetuGek+GeluGfkOGej+GfjOGemOGetuGek+GeluGeuOGegOGetuGemuGen+GfkuGemOGfkOGeguGfkuGemuGeheGet+Gej+GfkuGej+Gej+GetuGemOGemuGemeGfiOGeouGfkuGenOGeuD9cIiBuYW1lPVwib3Bwb3J0dW5pdHlfc291cmNlX2lkXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiBmYWxzZSB9XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59IHBsYWNlaG9sZGVyPVwiU2VsZWN0IGFuIG9wcG9ydHVuaXR5IHNvdXJjZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7QXJyYXkuaXNBcnJheShvcHBvcnR1bml0eVNvdXJjZXM/LmRhdGEpICYmIG9wcG9ydHVuaXR5U291cmNlcz8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3Bwb3J0dW5pdHlTb3VyY2VzPy5kYXRhLm1hcCgoc291cmNlKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24ga2V5PXtzb3VyY2UuaWR9IHZhbHVlPXtzb3VyY2UuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c291cmNlLm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGRpc2FibGVkPk5vIHNvdXJjZXMgYXZhaWxhYmxlPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAxMl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnqLhn5LhnpPhnoDhnp/hn5Lhnpjhn5DhnoLhn5LhnprhnoXhnrfhno/hn5Lhno/hnoDhn5LhnpPhnrvhnoThnpbhn5Lhnprhnrnhno/hn5Lhno/hnrfhnoDhnrbhno7hn41cIiBuYW1lPVwidm9sdW50ZWVyX2V2ZW50X2lkXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiBmYWxzZSB9XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QgZGlzYWJsZWQ9eyFpc0FkbWlufSBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhIHZvbHVudGVlciBldmVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge0FycmF5LmlzQXJyYXkodm9sdW50ZWVyRXZlbnRzPy5kYXRhKSAmJiB2b2x1bnRlZXJFdmVudHM/LmRhdGEubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2x1bnRlZXJFdmVudHM/LmRhdGEubWFwKChldmVudCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBrZXk9e2V2ZW50LmlkfSB2YWx1ZT17ZXZlbnQuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBkaXNhYmxlZD5ObyB2b2x1bnRlZXIgZXZlbnQgYXZhaWxhYmxlPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6Q4Z+S4Z6E4Z+D4Z6K4Z+C4Z6b4Z6i4Z624Z6F4Z6F4Z684Z6b4Z6a4Z694Z6Y4Z6c4Z6C4Z+S4Z6C4Z6U4Z6O4Z+S4Z6K4Z674Z+H4Z6U4Z6O4Z+S4Z6K4Z624Z6bXCIgbmFtZT1cInRyYWluaW5nX3Nlc3Npb25faWRcIiBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59IHBsYWNlaG9sZGVyPVwiU2VsZWN0IGEgdHJhaW5pbmcgc2Vzc2lvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge0FycmF5LmlzQXJyYXkodHJhaW5pbmdTZXNzaW9ucz8uZGF0YSkgJiYgdHJhaW5pbmdTZXNzaW9ucz8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYWluaW5nU2Vzc2lvbnM/LmRhdGEubWFwKChzZXNzaW9uKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGtleT17c2Vzc2lvbi5pZH0gdmFsdWU9e3Nlc3Npb24uaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3Nlc3Npb24ubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGRpc2FibGVkPk5vIHRyYWluaW5nIHNlc3Npb24gYXZhaWxhYmxlPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6P4Z6+4Z6b4Z+E4Z6A4Z6i4Z+S4Z6T4Z6A4Z6Y4Z624Z6T4Z6H4Z+G4Z6T4Z624Z6J4Z6i4Z+S4Z6c4Z644Z6B4Z+S4Z6b4Z+HPyAvIFdoYXQgaXMgeW91ciBleHBlcnRpc2U/XCIgbmFtZT1cImV4cGVydGlzZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs2fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpc19kaXNhYmlsaXR5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLhno/hnr7hnqLhn5LhnpPhnoDhnpjhnrbhnpPhnpbhnrfhnoDhnrbhnprhnpfhnrbhnpbhnpHhn4E/XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM9e1t7IHJlcXVpcmVkOiBmYWxzZSwgbWVzc2FnZTogXCJSZXF1aXJlZFwiIH1dfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvLkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvIHZhbHVlPXt0cnVlfT5ZZXM8L1JhZGlvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvIHZhbHVlPXtmYWxzZX0+Tm88L1JhZGlvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1JhZGlvLkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17Nn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGlzYWJpbGl0eV90eXBlX2lkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLhnpThn5Lhnprhnpfhn4HhnpHhnpbhnrfhnoDhnrbhnprhnpfhnrbhnpZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59IHBsYWNlaG9sZGVyPVwiU2VsZWN0IERpc2FiaWxpdHkgVHlwZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge0FycmF5LmlzQXJyYXkoZGlzYWJpbGl0eVR5cGVzPy5kYXRhKSAmJiBkaXNhYmlsaXR5VHlwZXM/LmRhdGEubGVuZ3RoID4gMCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmlsaXR5VHlwZXM/LmRhdGE/Lm1hcCgoZGlzYWJpbGl0eSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBrZXk9e2Rpc2FiaWxpdHkuaWR9IHZhbHVlPXtkaXNhYmlsaXR5LmlkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtkaXNhYmlsaXR5Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0Lk9wdGlvbiBkaXNhYmxlZD5ObyBkaXNhYmlsaXR5IHR5cGVzIGF2YWlsYWJsZTwvU2VsZWN0Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17Nn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwiZGlzYWJpbGl0eV9wYXJ0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLhnpXhn5LhnpPhn4LhnoDhnpbhnrfhnoDhnrbhnprhnpfhnrbhnpZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs2fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJsYW5ndWFnZV9pZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi4Z6P4Z6+4Z6i4Z+S4Z6T4Z6A4Z6F4Z+B4Z+H4Z6X4Z624Z6f4Z624Z6U4Z6a4Z6R4Z+B4Z6f4Z6R4Z+BP1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzPXtbeyByZXF1aXJlZDogZmFsc2UsIG1lc3NhZ2U6IFwiUGxlYXNlIHNlbGVjdCBhIGZvcmVpZ24gbGFuZ3VhZ2UhXCIgfV19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IGRpc2FibGVkPXshaXNBZG1pbn0gcGxhY2Vob2xkZXI9XCJTZWxlY3QgYW4gb3B0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7QXJyYXkuaXNBcnJheShsYW5ndWFnZXM/LmRhdGEpICYmIGxhbmd1YWdlcz8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbmd1YWdlcz8uZGF0YS5tYXAoKGxhbmcpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24ga2V5PXtsYW5nLmlkfSB2YWx1ZT17bGFuZy5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7bGFuZy5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gc291cmNlcyBhdmFpbGFibGU8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpc19mb29kX2FsbGVyZ3lcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIuGej+GevuGeouGfkuGek+GegOGemOGetuGek+GelOGfkuGemuGej+Get+GegOGemOGfkuGemOGeh+GetuGemOGeveGemeGeouGetuGeoOGetuGemuGeiuGfguGem+GerOGekeGfgT9cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlJlcXVpcmVkXCIgfV19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8gdmFsdWU9e3RydWV9PlllczwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8gdmFsdWU9e2ZhbHNlfT5ObzwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmFkaW8uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIG5hbWU9XCJmb29kX2FsbGVyZ2llc1wiIGxhYmVsPVwi4Z6f4Z684Z6Y4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+L4Z6i4Z624Z6g4Z624Z6a4Z6K4Z+C4Z6b4Z6Y4Z624Z6T4Z6U4Z+S4Z6a4Z6P4Z634Z6A4Z6Y4Z+S4Z6YXCIgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQuVGV4dEFyZWEgcm93cz17M30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInNraWxsX2lkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLhnofhn4bhnpPhnrbhnonhnpXhn5Lhnp/hn4HhnoThnpHhn4Dhno9cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlBsZWFzZSBzZWxlY3QgYSBza2lsbCFcIiB9XX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QgZGlzYWJsZWQ9eyFpc0FkbWlufSBwbGFjZWhvbGRlcj1cIlNlbGVjdCBhbiBvcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtBcnJheS5pc0FycmF5KHNraWxscz8uZGF0YSkgJiYgc2tpbGxzPy5kYXRhLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpbGxzPy5kYXRhLm1hcCgoc2spID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24ga2V5PXtzay5pZH0gdmFsdWU9e3NrLmlkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzay5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gc291cmNlcyBhdmFpbGFibGU8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJ0cmF2ZWxfZGF5X2lkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCLhno/hnr7hnpvhn4ThnoDhnqLhn5LhnpPhnoDhnqLhnrbhnoXhnoXhn4Hhnonhnorhn4bhno7hnr7hnprhnpbhnrjhnpfhn5LhnpPhn4bhnpbhn4HhnonhnpHhn4Xhnp/hn4DhnpjhnprhnrbhnpThnpThnrbhnpPhnpPhn4XhnpDhn5LhnoThn4Phno7hnrY/ICjhno/hn5LhnprhnqHhnpThn4vhnpjhnoDhnpzhnrfhnonhnpPhn4XhnpDhn5LhnoThn4PhnpHhn4Xhn6Hhn6gg4Z6B4Z+C4Z6Y4Z+B4Z6f4Z62IOGehuGfkuGek+GetuGfhuGfouGfoOGfouGfpSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydWxlcz17W3sgcmVxdWlyZWQ6IGZhbHNlLCBtZXNzYWdlOiBcIlBsZWFzZSBzZWxlY3QgYSB0ZWFtIVwiIH1dfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvLkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge0FycmF5LmlzQXJyYXkodHJhdmVsRGF5cz8uZGF0YSkgJiYgdHJhdmVsRGF5cz8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYXZlbERheXM/LmRhdGEubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MjR9IG1kPXsyNH0gbGc9ezI0fSBrZXk9e2l0ZW0uaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFJhZGlvIHZhbHVlPXtpdGVtLmlkfT57aXRlbS5uYW1lfTwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk5vIHRlYW1zIGF2YWlsYWJsZTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmFkaW8uR3JvdXA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPuGegOGemOGfkuGemOGenOGeuOGekuGeuOGeleGfkuGeiuGem+Gfi+Geh+GevOGek+KAi+GfliAvIFByb2dyYW0gQmVuZWZpdHM8L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7QXJyYXkuaXNBcnJheShvZmZlclByb2dyYW0/LmRhdGEpICYmIG9mZmVyUHJvZ3JhbT8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b2ZmZXJQcm9ncmFtPy5kYXRhLm1hcCgoaXRlbSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkga2V5PXtpdGVtLmlkfSBzdHlsZT17eyBtYXJnaW5Cb3R0b206IFwiOHB4XCIgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUYWcgY29sb3I9XCJibHVlXCI+e2l0ZW0ubmFtZX08L1RhZz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb2w+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+Tm8gUHJvZ3JhbSBCZW5lZml0cyBhdmFpbGFibGU8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImNhbl95b3Vfam9pblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsPVwi4Z6P4Z6+4Z6b4Z+E4Z6A4Z6i4Z+S4Z6T4Z6A4Z6i4Z624Z6F4Z6F4Z684Z6b4Z6a4Z694Z6Y4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z644Z6S4Z644Z6T4Z+B4Z+H4Z6U4Z624Z6T4Z6K4Z+C4Z6b4Z6s4Z6R4Z+BP1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzPXtbeyByZXF1aXJlZDogZmFsc2UsIG1lc3NhZ2U6IFwiUGxlYXNlIHNlbGVjdCBhbiBvcHRpb24hXCIgfV19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8uR3JvdXAgb25DaGFuZ2U9e2hhbmRsZVJhZGlvQ2hhbmdlfSB2YWx1ZT17cmFkaW9WYWx1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3BhY2UgZGlyZWN0aW9uPVwidmVydGljYWxcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8UmFkaW8gdmFsdWU9XCJZZXNcIj7hnpThnrbhnpMgLyBZZXM8L1JhZGlvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSYWRpbyB2YWx1ZT1cIk5vXCI+4Z6Y4Z634Z6T4Z6U4Z624Z6TIC8gTm88L1JhZGlvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxSYWRpbyB2YWx1ZT1cIm90aGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGeleGfkuGen+GfgeGehOGflyAvIE90aGVyOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7IHdpZHRoOiAyMDAsIG1hcmdpbkxlZnQ6IDggfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtvdGhlclRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlSW5wdXRDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNwZWNpZnkgb3RoZXIuLi5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvUmFkaW8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NwYWNlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1JhZGlvLkdyb3VwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgaHRtbEZvcj1cIlwiPuGekeGfhuGek+GetuGegOGfi+GekeGfhuGek+GehOGelOGek+GfkuGekeGetuGek+GfizwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTIsIDEyXX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGeiOGfkuGemOGfhOGfh1wiIG5hbWU9XCJlbWVyZ2VuY3lfY29udGFjdF9uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17OH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIuGem+GfgeGegeGekeGevOGemuGen+GfkOGeluGfkuGekVwiIG5hbWU9XCJlbWVyZ2VuY3lfY29udGFjdF9waG9uZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnpHhn4bhnpPhnrbhnoDhn4vhnpHhn4bhnpPhnoRcIiBuYW1lPVwiZW1lcmdlbmN5X2NvbnRhY3RfcmVsYXRpb25zaGlwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzEyLCAxMl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsxMn0gbWQ9ezh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCLhnqLhnrbhnqDhnrbhnppcIiBuYW1lPVwiZm9vZF9pZFwiIHJ1bGVzPXtbeyByZXF1aXJlZDogZmFsc2UgfV19ID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdCBkaXNhYmxlZD17IWlzQWRtaW59IHBsYWNlaG9sZGVyPVwiU2VsZWN0IGEgZm9vZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge0FycmF5LmlzQXJyYXkoZm9vZHM/LmRhdGEpICYmIGZvb2RzPy5kYXRhLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9vZHM/LmRhdGEubWFwKChmb29kKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGtleT17Zm9vZC5pZH0gdmFsdWU9e2Zvb2QuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvb2QubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTZWxlY3QuT3B0aW9uIGRpc2FibGVkPk5vIGZvb2QgYXZhaWxhYmxlPC9TZWxlY3QuT3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MTJ9IG1kPXs4fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwi4Z6A4Z+S4Z6a4Z674Z6YXCIgbmFtZT1cImludGVyZXN0ZWRfdGVhbV9pZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2VsZWN0IGRpc2FibGVkPXshaXNBZG1pbn0gcGxhY2Vob2xkZXI9XCJTZWxlY3QgYSB0ZWFtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7QXJyYXkuaXNBcnJheShpbnRlcmVzdGVkVGVhbXM/LmRhdGEpICYmIGludGVyZXN0ZWRUZWFtcz8uZGF0YS5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVyZXN0ZWRUZWFtcz8uZGF0YS5tYXAoKHRlYW0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24ga2V5PXt0ZWFtLmlkfSB2YWx1ZT17dGVhbS5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGVhbS5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNlbGVjdC5PcHRpb24gZGlzYWJsZWQ+Tm8gdGVhbSBhdmFpbGFibGU8L1NlbGVjdC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICA8L1Jvdz5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbVxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cImlzX2FncmVlX3Rlcm1zX2NvbmRpdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVQcm9wTmFtZT1cImNoZWNrZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcnVsZXM9e1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkYXRvcjogKF8sIHZhbHVlKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPyBQcm9taXNlLnJlc29sdmUoKSA6IFByb21pc2UucmVqZWN0KG5ldyBFcnJvcignWW91IG11c3QgYWdyZWUgdG8gdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIScpKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgXX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENoZWNrYm94PkkgYWdyZWUgdG8gdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zPC9DaGVja2JveD5cbiAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG5cbiAgICAgICAgICAgICAgICAgICAge2lzQWRtaW4gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxMiwgMTJdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHR5cGU9XCJwcmltYXJ5XCIgYmxvY2sgaHRtbFR5cGU9XCJzdWJtaXRcIiBsb2FkaW5nPXt2b2x1bnRlZXJVcGRhdGVQZW5kaW5nfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJtaXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezEyfSBtZD17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIGh0bWxUeXBlPVwiYnV0dG9uXCIgb25DbGljaz17KCkgPT4gbmF2aWdhdGUoJy92b2x1bnRlZXJzJyl9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbmNlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Sb3c+XG4gICAgICAgICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAgICAgICAgPE1vZGFsIHZpc2libGU9e3ByZXZpZXdWaXNpYmxlfSB0aXRsZT17cHJldmlld1RpdGxlfSBmb290ZXI9e251bGx9IG9uQ2FuY2VsPXsoKSA9PiBzZXRQcmV2aWV3VmlzaWJsZShmYWxzZSl9PlxuICAgICAgICAgICAgICAgICAgICAgICAge3ByZXZpZXdDb250ZW50fVxuICAgICAgICAgICAgICAgICAgICA8L01vZGFsPlxuICAgICAgICAgICAgICAgIDwvRm9ybT5cbiAgICAgICAgICAgIDwvVGFiUGFuZT5cblxuICAgICAgICAgICAgey8qIGhhbmRsZSBJbnRlcnZpZXcgKi99XG4gICAgICAgICAgICB7aXNBZG1pbiAmJiAoPFRhYlBhbmUgdGFiPVwiSW50ZXJ2aWV3IEV2YWx1YXRpb25cIiBrZXk9XCIyXCI+XG4gICAgICAgICAgICAgICAgPEZvcm0gZm9ybT17Zm9ybX0gbGF5b3V0PVwidmVydGljYWxcIiBvbkZpbmlzaD17b25GaW5pc2hJbnZlcnRpZXd9PlxuICAgICAgICAgICAgICAgICAgICA8Um93IGd1dHRlcj17WzE2LCAxNl19PlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwiQ29tbXVuaWNhdGlvblwiIG5hbWU9XCJjb21tdW5pY2F0aW9uX3Njb3JlXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiB0cnVlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IHR5cGU9XCJudW1iZXJcIiBtaW49ezF9IG1heD17MTB9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MjR9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIlRlYW13b3JrXCIgbmFtZT1cInRlYW13b3JrX3Njb3JlXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiB0cnVlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IHR5cGU9XCJudW1iZXJcIiBtaW49ezF9IG1heD17MTB9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgPC9Sb3c+XG4gICAgICAgICAgICAgICAgICAgIDxSb3cgZ3V0dGVyPXtbMTYsIDE2XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q29sIHhzPXsyNH0gc209ezI0fSBtZD17MTJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW0gbGFiZWw9XCJQcm9ibGVtIFNvbHZpbmdcIiBuYW1lPVwicHJvYmxlbV9zb2x2aW5nX3Njb3JlXCIgcnVsZXM9e1t7IHJlcXVpcmVkOiB0cnVlIH1dfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IHR5cGU9XCJudW1iZXJcIiBtaW49ezF9IG1heD17MTB9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MjR9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIkxlYWRlcnNoaXBcIiBuYW1lPVwibGVhZGVyc2hpcF9zY29yZVwiIHJ1bGVzPXtbeyByZXF1aXJlZDogdHJ1ZSB9XX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dCB0eXBlPVwibnVtYmVyXCIgbWluPXsxfSBtYXg9ezEwfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Db2w+XG4gICAgICAgICAgICAgICAgICAgIDwvUm93PlxuICAgICAgICAgICAgICAgICAgICB7LyogLS0tLS0tLS0tLSAqL31cbiAgICAgICAgICAgICAgICAgICAgPFJvdyBndXR0ZXI9e1sxNiwgMTZdfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDb2wgeHM9ezI0fSBzbT17MjR9IG1kPXsxMn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIlRlY2huaWNhbCBTa2lsbFwiIG5hbWU9XCJ0ZWNobmljYWxfc2tpbGxfc2NvcmVcIiBydWxlcz17W3sgcmVxdWlyZWQ6IHRydWUgfV19PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXQgdHlwZT1cIm51bWJlclwiIG1pbj17MX0gbWF4PXsxMH0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIC0tLS0tLS0tLS0tICovfVxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCB4cz17MjR9IHNtPXsyNH0gbWQ9ezEyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybS5JdGVtIGxhYmVsPVwiVG90YWwgU2NvcmVcIiBuYW1lPVwic2NvcmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0IHR5cGU9J251bWJlcicgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Zvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENvbCBzcGFuPXsyNH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm0uSXRlbSBsYWJlbD1cIkludGVydmlldyBOb3RlXCIgbmFtZT1cIm5vdGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRleHRBcmVhIHJvd3M9ezR9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Gb3JtLkl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0NvbD5cbiAgICAgICAgICAgICAgICAgICAgPC9Sb3c+XG4gICAgICAgICAgICAgICAgICAgIDxGb3JtLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJpc19hZ3JlZV90ZXJtc19jb25kaXRpb25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlUHJvcE5hbWU9XCJjaGVja2VkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ1bGVzPXtbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZGF0b3I6IChfLCB2YWx1ZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID8gUHJvbWlzZS5yZXNvbHZlKCkgOiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ1lvdSBtdXN0IGFncmVlIHRvIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyEnKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDaGVja2JveD5JIGFncmVlIHRvIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9uczwvQ2hlY2tib3g+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPlxuICAgICAgICAgICAgICAgICAgICB7aXNBZG1pbiAmJiAoPEZvcm0uSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b24gdHlwZT1cInByaW1hcnlcIiBibG9jayBodG1sVHlwZT1cInN1Ym1pdFwiIGxvYWRpbmc9e3ZvbHVudGVlclVwZGF0ZVBlbmRpbmd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1Ym1pdFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgIDwvRm9ybS5JdGVtPil9XG4gICAgICAgICAgICAgICAgPC9Gb3JtPlxuICAgICAgICAgICAgPC9UYWJQYW5lPil9XG4gICAgICAgIDwvVGFicz5cbiAgICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgVm9sdW50ZWVyRm9ybTtcbiIsImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gXCJyZWFjdC1yZWR1eFwiO1xuaW1wb3J0IHsgUm93LCBDb2wsIH0gZnJvbSBcImFudGRcIjtcblxuXG5cbmltcG9ydCB0ZWFtIGZyb20gXCIuLi8uLi8uLi8uLi9zaGFyZWQvYXNzZXRzL2ltYWdlcy90ZWFtLnBuZ1wiO1xuXG5jb25zdCBWb2x1bnRlZXJUaGFua1lvdSA9ICgpID0+IHtcbiAgY29uc3Qge30gPSB1c2VTZWxlY3Rvcigoc3RhdGU6IFJvb3RTdGF0ZSkgPT4gc3RhdGUudm9sdW50ZWVyKTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgfSwgW2Rpc3BhdGNoXSlcblxuICByZXR1cm4gKFxuICAgIDxSb3c+XG4gICAgICA8Q29sIHhzPXsyNH0gc209ezI0fSBtZD17MTB9IGxnPXsxMH0+XG4gICAgICAgIDxpbWcgc3JjPXt0ZWFtfSBhbHQ9XCJUZWFtXCIgY2xhc3NOYW1lPVwiZnVsbHNjcmVlbi1pbWFnZVwiIC8+XG4gICAgICA8L0NvbD5cbiAgICAgIDxDb2wgeHM9ezI0fSBtZD17MTR9IGxnPXsxNH0gc3R5bGU9e3sgYmFja2dyb3VuZENvbG9yOiBcIndoaXRlXCIsIHBhZGRpbmc6IFwiMTZweFwiIH19PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtY2VudGVyXCI+XG4gICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgPGJyIC8+XG4gICAgICAgICAgPGgyIGNsYXNzTmFtZT1cImZvcm0tdGl0bGUgdGV4dC0yeGwgZm9udC1ib2xkIG1iLTJcIj5cbiAgICAgICAgICAgICAg4Z6f4Z684Z6Y4Z6i4Z6a4Z6C4Z674Z6O4Z6F4Z+G4Z6W4Z+E4Z+H4Z6A4Z624Z6a4Z6F4Z624Z6U4Z+L4Z6i4Z624Z6a4Z6Y4Z+S4Z6Y4Z6O4Z+N4Z+UIDxiciAvPuGegOGetuGemuGeh+GfkuGemuGevuGen+GemuGevuGen+GeouGfkuGek+GegOGen+GfkuGemOGfkOGeguGfkuGemuGeheGet+Gej+GfkuGej+Gej+GfkuGemuGevOGenOGelOGetuGek+GelOGeieGfkuGeheGelOGfi+GflFxuICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJmb3JtLXRpdGxlXCI+VGhhbmsgeW91IGZvciB5b3VyIGludGVyZXN0LiBUaGUgcmVjcnVpdG1lbnQgb2Ygdm9sdW50ZWVycyBoYXMgYmVlbiBjb21wbGV0ZWQuPC9oMj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0NvbD5cbiAgICA8L1Jvdz5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFZvbHVudGVlclRoYW5rWW91O1xuIiwiaW1wb3J0IHsgY3JlYXRlQXN5bmNUaHVuayB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVk9MVU5URUVSX0VWRU5UUywgVk9MVU5URUVSX0VWRU5ULCBWT0xVTlRFRVJfRVZFTlRfREVMRVRFLCBWT0xVTlRFRVJfRVZFTlRfQ1JFQVRFLCBWT0xVTlRFRVJfRVZFTlRfVVBEQVRFIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdm9sdW50ZWVyRXZlbnRzU2VydmljZSwgdm9sdW50ZWVyRXZlbnREZXRhaWxTZXJ2aWNlLCBjcmVhdGVWb2x1bnRlZXJFdmVudFNlcnZpY2UsIHVwZGF0ZVZvbHVudGVlckV2ZW50U2VydmljZSwgZGVsZXRlVm9sdW50ZWVyRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBWb2x1bnRlZXJFdmVudCB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgVm9sdW50ZWVyRXZlbnRQYWdpbmF0aW9uLCBWb2x1bnRlZXJFdmVudFBhcmFtcyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2VzL2luZGV4JztcblxuZXhwb3J0IGNvbnN0IGZldGNoVm9sdW50ZWVyRXZlbnRzID0gY3JlYXRlQXN5bmNUaHVuazxWb2x1bnRlZXJFdmVudFBhZ2luYXRpb24sIFZvbHVudGVlckV2ZW50UGFyYW1zPihcbiAgVk9MVU5URUVSX0VWRU5UUyxcbiAgYXN5bmMgKHsgc2VhcmNoLCBwYWdlLCBwYWdlU2l6ZX0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB2b2x1bnRlZXJFdmVudHNTZXJ2aWNlKHNlYXJjaCwgcGFnZSwgcGFnZVNpemUpO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRldGFpbCB8fCBcIkZhaWxlZCB0byBmZXRjaCB2b2x1bnRlZXIgZXZlbnRzXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IHZvbHVudGVlckV2ZW50RGV0YWlsQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBWT0xVTlRFRVJfRVZFTlQsXG4gIHZvbHVudGVlckV2ZW50RGV0YWlsU2VydmljZVxuKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFZvbHVudGVlckV2ZW50LCB7IGRhdGE6IFZvbHVudGVlckV2ZW50IH0+KFxuICBWT0xVTlRFRVJfRVZFTlRfQ1JFQVRFLFxuICBhc3luYyAoeyBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVZvbHVudGVlckV2ZW50U2VydmljZShkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIGNyZWF0ZSB2b2x1bnRlZXIgZXZlbnRcIik7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgdXBkYXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFZvbHVudGVlckV2ZW50LCB7IGlkOiBudW1iZXI7IGRhdGE6IFZvbHVudGVlckV2ZW50IH0+KFxuICBWT0xVTlRFRVJfRVZFTlRfVVBEQVRFLFxuICBhc3luYyAoeyBpZCwgZGF0YSB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB1cGRhdGVWb2x1bnRlZXJFdmVudFNlcnZpY2UoaWQsIGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHZvbHVudGVlciBldmVudFwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBkZWxldGVWb2x1bnRlZXJFdmVudEFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVk9MVU5URUVSX0VWRU5UX0RFTEVURSxcbiAgZGVsZXRlVm9sdW50ZWVyRXZlbnRTZXJ2aWNlXG4pXG4iLCJleHBvcnQgY29uc3QgVk9MVU5URUVSX0VWRU5UUyA9ICd2b2x1bnRlZXItZXZlbnRzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBWT0xVTlRFRVJfRVZFTlQgPSAndm9sdW50ZWVyLWV2ZW50cy9mZXRjaEJ5SUQnO1xuZXhwb3J0IGNvbnN0IFZPTFVOVEVFUl9FVkVOVF9DUkVBVEUgPSAndm9sdW50ZWVyLWV2ZW50cy9jcmVhdGUnO1xuZXhwb3J0IGNvbnN0IFZPTFVOVEVFUl9FVkVOVF9VUERBVEUgPSAndm9sdW50ZWVyLWV2ZW50cy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFZPTFVOVEVFUl9FVkVOVF9ERUxFVEUgPSAndm9sdW50ZWVyLWV2ZW50cy9kZWxldGUnO1xuIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVm9sdW50ZWVyRXZlbnQsIFZvbHVudGVlckV2ZW50U3RhdGUgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZldGNoVm9sdW50ZWVyRXZlbnRzLCB1cGRhdGVWb2x1bnRlZXJFdmVudEFjdGlvbiwgdm9sdW50ZWVyRXZlbnREZXRhaWxBY3Rpb24sIGNyZWF0ZVZvbHVudGVlckV2ZW50QWN0aW9uLCBkZWxldGVWb2x1bnRlZXJFdmVudEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBWT0xVTlRFRVJfRVZFTlQgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogVm9sdW50ZWVyRXZlbnRTdGF0ZSA9IHtcbiAgdm9sdW50ZWVyRXZlbnRzOiBbXSxcbiAgdm9sdW50ZWVyRXZlbnQ6IG51bGwsXG4gIHZvbHVudGVlckV2ZW50c1BlbmRpbmc6IGZhbHNlLFxuICB2b2x1bnRlZXJFdmVudERldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB2b2x1bnRlZXJFdmVudENyZWF0ZVBlbmRpbmc6IGZhbHNlLFxuICB2b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmc6IGZhbHNlLFxuICB2b2x1bnRlZXJFdmVudERlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3Qgdm9sdW50ZWVyRXZlbnRTbGljZSA9IGNyZWF0ZVNsaWNlKHtcbiAgbmFtZTogVk9MVU5URUVSX0VWRU5ULFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB2b2x1bnRlZXJFdmVudFxuICAgIHNldFZvbHVudGVlckV2ZW50OiAoc3RhdGUsIGFjdGlvbjogUGF5bG9hZEFjdGlvbjxWb2x1bnRlZXJFdmVudD4pID0+IHtcbiAgICAgIHN0YXRlLnZvbHVudGVlckV2ZW50ID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gaGFuZGxlIHZvbHVudGVlciBldmVudFxuICAgICAgLmFkZENhc2UoZmV0Y2hWb2x1bnRlZXJFdmVudHMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlckV2ZW50c1BlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgdm9sdW50ZWVyIGV2ZW50cyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hWb2x1bnRlZXJFdmVudHMucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlckV2ZW50c1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHZvbHVudGVlciBldmVudHMuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCB2b2x1bnRlZXIgZXZlbnRzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFZvbHVudGVlckV2ZW50cy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudHMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudHNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdm9sdW50ZWVyIGV2ZW50IGRldGFpbFxuICAgICAgLmFkZENhc2Uodm9sdW50ZWVyRXZlbnREZXRhaWxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnZvbHVudGVlckV2ZW50RGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCB2b2x1bnRlZXIgZXZlbnRzIGZldGNoXG4gICAgICAuYWRkQ2FzZSh2b2x1bnRlZXJFdmVudERldGFpbEFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyRXZlbnREZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB2b2x1bnRlZXIgZXZlbnRzLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdm9sdW50ZWVyIGV2ZW50cyBmZXRjaFxuICAgICAgLmFkZENhc2Uodm9sdW50ZWVyRXZlbnREZXRhaWxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUudm9sdW50ZWVyRXZlbnQgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudERldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXJFdmVudCBjcmVhdGVcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGNyZWF0ZSB2b2x1bnRlZXIgZXZlbnRzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXJFdmVudCB1cGRhdGVcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB2b2x1bnRlZXIgZXZlbnRzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB2b2x1bnRlZXJFdmVudCBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVZvbHVudGVlckV2ZW50QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGRlbGV0ZSB2b2x1bnRlZXIgZXZlbnRzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS52b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFZvbHVudGVlckV2ZW50IH0gPSB2b2x1bnRlZXJFdmVudFNsaWNlLmFjdGlvbnM7XG5cbmV4cG9ydCBkZWZhdWx0IHZvbHVudGVlckV2ZW50U2xpY2UucmVkdWNlcjtcbiIsImltcG9ydCB7IFZvbHVudGVlckV2ZW50IH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHZvbHVudGVlckV2ZW50c1NlcnZpY2UgPSBhc3luYyhzZWFyY2g6IHN0cmluZywgcGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5WT0xVTlRFRVJfRVZFTlQsIHsgc2VhcmNoLCBwYWdlLCBwYWdlU2l6ZSB9KVxufVxuXG5leHBvcnQgY29uc3Qgdm9sdW50ZWVyRXZlbnREZXRhaWxTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhgJHtVUkwuVk9MVU5URUVSX0VWRU5UfSR7aWR9YClcbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVZvbHVudGVlckV2ZW50U2VydmljZSA9IGFzeW5jIChkYXRhOiBWb2x1bnRlZXJFdmVudCk6IFByb21pc2U8Vm9sdW50ZWVyRXZlbnQ+ID0+IHtcbiAgcmV0dXJuIHBvc3RXaXRoQ29uZmlnKGAke1VSTC5WT0xVTlRFRVJfRVZFTlR9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlVm9sdW50ZWVyRXZlbnRTZXJ2aWNlID0gYXN5bmMgKGlkOiBudW1iZXIsIGRhdGE6IFZvbHVudGVlckV2ZW50KTogUHJvbWlzZTxWb2x1bnRlZXJFdmVudD4gPT4ge1xuICByZXR1cm4gcHV0V2l0aENvbmZpZyhgJHtVUkwuVk9MVU5URUVSX0VWRU5UfSR7aWR9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlVm9sdW50ZWVyRXZlbnRTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT57XG4gIHJldHVybiBhd2FpdCByZW1vdmVXaXRoQ29uZmlnKGAke1VSTC5WT0xVTlRFRVJfRVZFTlR9JHtpZH1gKVxufVxuIl0sIm5hbWVzIjpbImUiLCJ0IiwiciIsIlN5bWJvbCIsIm4iLCJpdGVyYXRvciIsIm8iLCJ0b1N0cmluZ1RhZyIsImkiLCJjIiwicHJvdG90eXBlIiwiR2VuZXJhdG9yIiwidSIsIk9iamVjdCIsImNyZWF0ZSIsIl9yZWdlbmVyYXRvckRlZmluZTIiLCJmIiwicCIsInkiLCJHIiwidiIsImEiLCJkIiwiYmluZCIsImxlbmd0aCIsImwiLCJUeXBlRXJyb3IiLCJjYWxsIiwiZG9uZSIsInZhbHVlIiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsImdldFByb3RvdHlwZU9mIiwic2V0UHJvdG90eXBlT2YiLCJfX3Byb3RvX18iLCJkaXNwbGF5TmFtZSIsIl9yZWdlbmVyYXRvciIsInciLCJtIiwiZGVmaW5lUHJvcGVydHkiLCJfcmVnZW5lcmF0b3JEZWZpbmUiLCJfaW52b2tlIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiYXN5bmNHZW5lcmF0b3JTdGVwIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJhcmd1bWVudHMiLCJhcHBseSIsIl9uZXh0IiwiX3Rocm93IiwiY3JlYXRlQXN5bmNUaHVuayIsIkFVVEhFTlRJQ0FUSU9OX0xPR0lOIiwiQVVUSEVOVElDQVRJT05fVkVSSUZZX09QVCIsIkRBU0hCT0FSRCIsIkRJU0FCSUxJVFlfVFlQRSIsIkVEVUNBVElPTl9JTlNUSVRVVElPTiIsIkVWRU5UIiwiRk9PRCIsIk9DQ1VQQVRJT04iLCJQUk9WSU5DRVMiLCJTT1VSQ0UiLCJURUFNIiwiVFJBSU5JTkdfU0VTU0lPTiIsIlZPTFVOVEVFUlMiLCJWT0xVTlRFRVIiLCJWT0xVTlRFRVJfVVBEQVRFIiwiTEFOR1VBR0UiLCJTS0lMTCIsIkRJU1RSSUNUIiwiQ09NTVVORSIsIlRSQVZFTF9EQVkiLCJPRkZFUl9QUk9HUkFNIiwiRE9XTkxPQURfU0FNUExFX0NTViIsIlVQTE9BRF9DU1YiLCJET1dOTE9BRF9TQU1QTEVfVVBEQVRFX1RFQU1fQ1NWIiwiVVBEQVRFX1RFQU1fQ1NWIiwiRE9XTkxPQURfU0FNUExFX1VQREFURV9JREVOVElUWV9DU1YiLCJVUERBVEVfSURFTlRJVFlfQ1NWIiwiY29tbXVuZVNlcnZpY2UiLCJkZWxldGVWb2x1bnRlZXJzU2VydmljZSIsImRpc2FiaWxpdHlUeXBlU2VydmljZSIsImRpc3RyaWN0U2VydmljZSIsImVkdWNhdGlvbkluc3RpdHV0aW9uc1NlcnZpY2UiLCJldmVudFNlcnZpY2UiLCJmZXRjaERhc2hib2FyZFNlcnZpY2UiLCJmb29kU2VydmljZSIsImxhbmd1YWdlc1NlcnZpY2UiLCJsb2dpblVzZXJTZXJ2aWNlIiwib2NjdXBhdGlvblNlcnZpY2UiLCJvZmZlclByb2dyYW1TZXJ2aWNlIiwicHJvdmluY2VTZXJ2aWNlIiwic2tpbGxTZXJ2aWNlIiwic291cmNlU2VydmljZSIsInRlYW1TZXJ2aWNlIiwidHJhaW5pbmdTZXNzaW9uU2VydmljZSIsInRyYXZlbERheVNlcnZpY2UiLCJ2ZXJpZnlPVFBTZXJ2aWNlIiwidm9sdW50ZWVyc0RldGFpbFNlcnZpY2UiLCJ2b2x1bnRlZXJzU2VydmljZSIsInZvbHVudGVlclVwZGF0ZVNlcnZpY2UiLCJkb3dubG9hZFNhbXBsZUNzdlNlcnZpY2UiLCJjcmVhdGVVcGxvYWRDc3ZTZXJ2aWNlIiwiZG93bmxvYWRTYW1wbGVVcGRhdGVUZWFtQ3N2U2VydmljZSIsImNyZWF0ZVVwZGF0ZVRlYW1Dc3ZTZXJ2aWNlIiwiY3JlYXRlVXBkYXRlSWRlbnRpdHlDc3ZTZXJ2aWNlIiwiZG93bmxvYWRTYW1wbGVVcGRhdGVJZGVudGl0eUNzdlNlcnZpY2UiLCJsb2dpblVzZXJBY3Rpb24iLCJ2ZXJpZnlPVFBBY3Rpb24iLCJmZXRjaERpc2FiaWxpdHlUeXBlIiwiZmV0Y2hQcm92aW5jZSIsImZldGNoRGlzdHJpY3QiLCJfcmVmMyIsIl9jYWxsZWUiLCJfcmVmIiwiX3JlZjIiLCJpZCIsInJlamVjdFdpdGhWYWx1ZSIsIl9lcnJvciRyZXNwb25zZSIsIl90IiwiX2NvbnRleHQiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJkZXRhaWwiLCJfeCIsIl94MiIsImZldGNoQ29tbXVuZSIsIl9yZWY2IiwiX2NhbGxlZTIiLCJfcmVmNCIsIl9yZWY1IiwiX2Vycm9yJHJlc3BvbnNlMiIsIl90MiIsIl9jb250ZXh0MiIsIl94MyIsIl94NCIsImZldGNoT2NjdXBhdGlvbiIsImZldGNoRWR1Y2F0aW9uSW5zdGl0dXRpb25zIiwiZmV0Y2hGb29kIiwiZmV0Y2hUZWFtIiwiZmV0Y2hFdmVudCIsImZldGNoU291cmNlIiwiZmV0Y2hUcmFpbmluZ1Nlc3Npb24iLCJmZXRjaFZvbHVudGVlcnMiLCJfcmVmOSIsIl9jYWxsZWUzIiwiX3JlZjciLCJfcmVmOCIsInZvbHVudGVlcl9zdGF0dXMiLCJwYWdlIiwicGFnZVNpemUiLCJzZWFyY2giLCJzb3J0X29yZGVyIiwiZWR1Y2F0aW9uX2luc3RpdHV0aW9uX2lkIiwic2NvcmVfZnJvbSIsInNjb3JlX3RvIiwicHJvdmluY2UiLCJpbnRlcmVzdGVkX3RlYW1faWQiLCJldmVudF9pZHMiLCJsYW5ndWFnZV9pZCIsInNraWxsX2lkIiwiX2Vycm9yJHJlc3BvbnNlMyIsIl90MyIsIl9jb250ZXh0MyIsIl94NSIsIl94NiIsImRlbGV0ZVZvbHVudGVlckFjdGlvbiIsInZvbHVudGVlckRldGFpbEFjdGlvbiIsInVwZGF0ZVZvbHVudGVlckFjdGlvbiIsIl9yZWYxMCIsIl9jYWxsZWU0IiwiX3JlZjAiLCJfcmVmMSIsImRhdGEiLCJfZXJyb3IkcmVzcG9uc2U0IiwiX3Q0IiwiX2NvbnRleHQ0IiwiX3g3IiwiX3g4IiwiZmV0Y2hEYXNoYm9hcmRBY3Rpb24iLCJmZXRjaExhbmd1YXRlQWN0aW9uIiwiZmV0Y2hTa2lsbEFjdGlvbiIsImZldGNoT2ZmZXJQcm9ncmFtQWN0aW9uIiwiZmV0Y2hUcmF2ZWxEYXlBY3Rpb24iLCJkb3dubG9hZFNhbXBsZUNzdkFjdGlvbiIsImNyZWF0ZVVwbG9hZENzdkFjdGlvbiIsIl9yZWYxMiIsIl9jYWxsZWU1IiwiZm9ybURhdGEiLCJfcmVmMTEiLCJfZXJyb3IkcmVzcG9uc2U1IiwiX3Q1IiwiX2NvbnRleHQ1IiwibWVzc2FnZSIsIl94OSIsIl94MCIsImRvd25sb2FkU2FtcGxlVXBkYXRlVGVhbUNzdkFjdGlvbiIsImNyZWF0ZVVwZGF0ZVRlYW1Dc3ZBY3Rpb24iLCJfcmVmMTQiLCJfY2FsbGVlNiIsIl9yZWYxMyIsIl9lcnJvciRyZXNwb25zZTYiLCJfdDYiLCJfY29udGV4dDYiLCJfeDEiLCJfeDEwIiwiZG93bmxvYWRTYW1wbGVVcGRhdGVJZGVudGl0eUNzdkFjdGlvbiIsImNyZWF0ZVVwZGF0ZUlkZW50aXR5Q3N2QWN0aW9uIiwiX3JlZjE2IiwiX2NhbGxlZTciLCJfcmVmMTUiLCJfZXJyb3IkcmVzcG9uc2U3IiwiX3Q3IiwiX2NvbnRleHQ3IiwiX3gxMSIsIl94MTIiLCJBVVRIIiwiVk9MVU5URUVSU19GRVRDSF9BTEwiLCJWT0xVTlRFRVJTX0JZX0lEIiwiY3JlYXRlU2xpY2UiLCJpbml0aWFsU3RhdGUiLCJkaXNhYmlsaXR5VHlwZXMiLCJyZWdpc3RlclBlbmRpbmciLCJyZWdpc3RlckVycm9yTWVzc2FnZSIsInZvbHVudGVlciIsInByb3ZpbmNlcyIsIm9jY3VwYXRpb25zIiwiZWR1Y2F0aW9uSW5zdGl0dXRpb25zIiwiZm9vZHMiLCJpbnRlcmVzdGVkVGVhbXMiLCJ2b2x1bnRlZXJFdmVudHMiLCJvcHBvcnR1bml0eVNvdXJjZXMiLCJ0cmFpbmluZ1Nlc3Npb25zIiwidm9sdW50ZWVyUGVuZGluZyIsInZvbHVudGVlckRldGFpbFBlbmRpbmciLCJ2b2x1bnRlZXJVcGRhdGVQZW5kaW5nIiwidXBsb2FkQ3N2UGVuZGluZyIsInVwZGF0ZVRlYW1Dc3ZQZW5kaW5nIiwidm9sdW50ZWVycyIsImRhc2hib2FyZCIsImxhbmd1YWdlcyIsInNraWxscyIsImNvbW11bmVzIiwiZGlzdHJpY3RzIiwidm9sdW50ZWVyU2xpY2UiLCJuYW1lIiwicmVkdWNlcnMiLCJzZXRWb2x1bnRlZXIiLCJzdGF0ZSIsImFjdGlvbiIsInBheWxvYWQiLCJzZXRSZWdpc3RlclBlbmRpbmciLCJzZXRSZWdpc3RlckVycm9yTWVzc2FnZSIsImV4dHJhUmVkdWNlcnMiLCJidWlsZGVyIiwiYWRkQ2FzZSIsInBlbmRpbmciLCJyZWplY3RlZCIsImVycm9yIiwiZnVsZmlsbGVkIiwidHJhdmVsRGF5cyIsIm9mZmVyUHJvZ3JhbSIsIl92b2x1bnRlZXJTbGljZSRhY3RpbyIsImFjdGlvbnMiLCJyZWR1Y2VyIiwiVVJMIiwiZ2V0V2l0aENvbmZpZyIsInBvc3RXaXRoQ29uZmlnIiwicG9zdFdpdGhDb25maWdGb3JtRGF0YSIsInBvc3RXaXRoQ29uZmlnV2hpdGVsaXN0IiwicHV0V2l0aENvbmZpZyIsInJlbW92ZVdpdGhDb25maWciLCJfYXJncyIsInVuZGVmaW5lZCIsInByb3ZpbmNlSWQiLCJjb25jYXQiLCJkaXN0cmljdElkIiwiX2FyZ3M1IiwiX2FyZ3M2IiwiX2FyZ3M3IiwiRk9PRFMiLCJfY2FsbGVlOCIsIl9hcmdzOCIsIl9jb250ZXh0OCIsIl9jYWxsZWU5IiwiX2FyZ3M5IiwiX2NvbnRleHQ5IiwiX2NhbGxlZTAiLCJfYXJnczAiLCJfY29udGV4dDAiLCJfY2FsbGVlMSIsIl9hcmdzMSIsIl9jb250ZXh0MSIsIl9jYWxsZWUxMCIsIl9jb250ZXh0MTAiLCJfeDEzIiwiX2NhbGxlZTExIiwiX2NvbnRleHQxMSIsIl94MTQiLCJyZWdpc3RlclZvbHVudGVlcnNTZXJ2aWNlIiwiX2NhbGxlZTEyIiwiX2NvbnRleHQxMiIsIl9vYmplY3RTcHJlYWQiLCJfeDE1IiwiX2NhbGxlZTEzIiwiX2NvbnRleHQxMyIsIl94MTYiLCJfY2FsbGVlMTQiLCJfY29udGV4dDE0IiwiX3gxNyIsIl94MTgiLCJfY2FsbGVlMTUiLCJib2R5IiwiX2NvbnRleHQxNSIsIkxPR0lOIiwiZW1haWwiLCJwYXNzd29yZCIsIl94MTkiLCJfY2FsbGVlMTYiLCJfY29udGV4dDE2IiwiVkVSSUZZX1RPUCIsImNvZGUiLCJvdHBDb2RlIiwiX3gyMCIsIl9yZWYxNyIsIl9jYWxsZWUxNyIsIl9jb250ZXh0MTciLCJfcmVmMTgiLCJfY2FsbGVlMTgiLCJfYXJnczE4IiwiX2NvbnRleHQxOCIsIl9yZWYxOSIsIl9jYWxsZWUxOSIsIl9hcmdzMTkiLCJfY29udGV4dDE5IiwiX3JlZjIwIiwiX2NhbGxlZTIwIiwiX2FyZ3MyMCIsIl9jb250ZXh0MjAiLCJfcmVmMjEiLCJfY2FsbGVlMjEiLCJfYXJnczIxIiwiX2NvbnRleHQyMSIsIl9yZWYyMiIsIl9jYWxsZWUyMiIsIl9jb250ZXh0MjIiLCJyZXNwb25zZVR5cGUiLCJfcmVmMjMiLCJfY2FsbGVlMjMiLCJfY29udGV4dDIzIiwiX3gyMSIsIl9yZWYyNCIsIl9jYWxsZWUyNCIsIl9jb250ZXh0MjQiLCJfcmVmMjUiLCJfY2FsbGVlMjUiLCJfY29udGV4dDI1IiwiX3gyMiIsIl9yZWYyNiIsIl9jYWxsZWUyNiIsIl9jb250ZXh0MjYiLCJfcmVmMjciLCJfY2FsbGVlMjciLCJfY29udGV4dDI3IiwiX3gyMyIsIl9zbGljZWRUb0FycmF5IiwiX2FycmF5V2l0aEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwiX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5IiwiX25vbkl0ZXJhYmxlUmVzdCIsIl9hcnJheUxpa2VUb0FycmF5IiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwiQXJyYXkiLCJmcm9tIiwidGVzdCIsIm5leHQiLCJwdXNoIiwiaXNBcnJheSIsIlJlYWN0IiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJGaWxlT3V0bGluZWQiLCJQbHVzT3V0bGluZWQiLCJVcGxvYWRPdXRsaW5lZCIsIm1vbWVudCIsInVzZURpc3BhdGNoIiwidXNlU2VsZWN0b3IiLCJTd2FsIiwicG9zdFVwbG9hZCIsIlRleHRBcmVhIiwidXNlTmF2aWdhdGUiLCJPcHRpb24iLCJfU2VsZWN0IiwiVGFiUGFuZSIsIl9UYWJzIiwiVm9sdW50ZWVyRm9ybSIsIl9vY2N1cGF0aW9ucyRkYXRhIiwiX2Rpc2FiaWxpdHlUeXBlcyRkYXRhIiwiX3VzZVNlbGVjdG9yIiwibmF2aWdhdGUiLCJkaXNwYXRjaCIsIl91c2VTZWxlY3RvcjIiLCJfRm9ybSR1c2VGb3JtIiwiX0Zvcm0iLCJ1c2VGb3JtIiwiX0Zvcm0kdXNlRm9ybTIiLCJmb3JtIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsInBob3RvVXJsIiwic2V0UGhvdG9VcmwiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImlkQ2FyZFVybCIsInNldElkQ2FyZFVybCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiY3ZVcmwiLCJzZXRDdlVybCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwicHJldmlld1Zpc2libGUiLCJzZXRQcmV2aWV3VmlzaWJsZSIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUwIiwicHJldmlld1RpdGxlIiwic2V0UHJldmlld1RpdGxlIiwiX3VzZVN0YXRlMSIsIl91c2VTdGF0ZTEwIiwicHJldmlld0NvbnRlbnQiLCJzZXRQcmV2aWV3Q29udGVudCIsIl91c2VTZWxlY3RvcjMiLCJhdXRoIiwiY3VycmVudFVzZXIiLCJpc0FkbWluIiwicm9sZSIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJyYWRpb1ZhbHVlIiwic2V0UmFkaW9WYWx1ZSIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJvdGhlclRleHQiLCJzZXRPdGhlclRleHQiLCJzZXRGaWVsZHNWYWx1ZSIsInBob3RvIiwibWFpbl9jb2RlIiwiZXZlbnRfY29kZSIsImZpcnN0X25hbWVfa2htZXIiLCJsYXN0X25hbWVfa2htZXIiLCJmaXJzdF9uYW1lX2xhdGluIiwibGFzdF9uYW1lX2xhdGluIiwiZGF0ZV9vZl9iaXJ0aCIsImdlbmRlciIsIm5hdGlvbmFsaXR5IiwicHJvdmluY2VfaWQiLCJwaG9uZV9udW1iZXIiLCJjdXJyZW50X2FkZHJlc3MiLCJob3VzZV9udW1iZXIiLCJzdHJlZXRfbnVtYmVyIiwicGh1bWkiLCJzYW5na2F0Iiwia2hhbiIsInRfc2hpcnRfc2l6ZSIsImlkX2NhcmQiLCJvY2N1cGF0aW9uX2lkIiwib3Bwb3J0dW5pdHlfc291cmNlX2lkIiwidm9sdW50ZWVyX2V2ZW50X2lkIiwidHJhaW5pbmdfc2Vzc2lvbl9pZCIsImZvb2RfaWQiLCJ1cGxvYWRfaWRfY2FyZCIsInVwbG9hZF9jdiIsInNjb3JlIiwibm90ZSIsImVtZXJnZW5jeV9jb250YWN0X25hbWUiLCJlbWVyZ2VuY3lfY29udGFjdF9waG9uZSIsImVtZXJnZW5jeV9jb250YWN0X3JlbGF0aW9uc2hpcCIsImlzX2FncmVlX3Rlcm1zX2NvbmRpdGlvbnMiLCJpc19hZ3JlZV90ZXJtX2NvbmRpdGlvbiIsImlzX2Rpc2FiaWxpdHkiLCJkaXNhYmlsaXR5X3R5cGVfaWQiLCJkaXNhYmlsaXR5X3BhcnQiLCJpc19mb29kX2FsbGVyZ3kiLCJmb29kX2FsbGVyZ2llcyIsInRyYXZlbF9kYXlfaWQiLCJjYW5feW91X2pvaW4iLCJleHBlcnRpc2UiLCJjb21tdW5pY2F0aW9uX3Njb3JlIiwidGVhbXdvcmtfc2NvcmUiLCJwcm9ibGVtX3NvbHZpbmdfc2NvcmUiLCJsZWFkZXJzaGlwX3Njb3JlIiwidGVjaG5pY2FsX3NraWxsX3Njb3JlIiwiaGFuZGxlUHJvdmluY2VDaGFuZ2UiLCJpdGVtIiwiaWRzIiwiZmlyc3RJZCIsInNwbGl0IiwidHJpbSIsImhhbmRsZURpc3RyaWN0Q2hhbmdlIiwiaGFuZGxlUmFkaW9DaGFuZ2UiLCJzZWxlY3RlZFZhbHVlIiwidGFyZ2V0Iiwib3RoZXJfdGV4dCIsImhhbmRsZUlucHV0Q2hhbmdlIiwiaGFuZGxlRmlsZUNoYW5nZSIsImZpbGUiLCJmaWVsZE5hbWUiLCJGb3JtRGF0YSIsImFwcGVuZCIsInVybCIsIl9kZWZpbmVQcm9wZXJ0eSIsImhhbmRsZVBob3RvVXBsb2FkQ2hhbmdlIiwicGhvdG9GaWxlIiwiaGFuZGxlSWRDYXJkQ2hhbmdlIiwiaWRDYXJkRmlsZSIsImhhbmRsZUN2VXBsb2FkQ2hhbmdlIiwiY3ZGaWxlIiwib25GaW5pc2giLCJ2YWx1ZXMiLCJfdm9sdW50ZWVyJGlkIiwidm9sdW50ZWVyX2lkIiwidXBkYXRlZFZhbHVlcyIsImZvcm1hdCIsImZpcmUiLCJ0aXRsZSIsInRleHQiLCJpY29uIiwiY29uZmlybUJ1dHRvblRleHQiLCJyZXN1bHQiLCJpc0NvbmZpcm1lZCIsInJlc2V0RmllbGRzIiwib25GaW5pc2hJbnZlcnRpZXciLCJfdm9sdW50ZWVyJGlkMiIsImhhbmRsZVByZXZpZXciLCJlbmRzV2l0aCIsImNyZWF0ZUVsZW1lbnQiLCJzcmMiLCJ3aWR0aCIsImhlaWdodCIsInN0eWxlIiwibWFyZ2luIiwiYWx0IiwidXBsb2FkQnV0dG9uIiwic2V0VXJsIiwibGFiZWwiLCJwb3NpdGlvbiIsImRpc3BsYXkiLCJGcmFnbWVudCIsImN1cnNvciIsIm9uQ2xpY2siLCJmb250U2l6ZSIsIm1heEhlaWdodCIsImJvcmRlclJhZGl1cyIsIl9CdXR0b24iLCJzaXplIiwiYm90dG9tIiwicmlnaHQiLCJiYWNrZ3JvdW5kIiwiY29sb3IiLCJfZG9jdW1lbnQkZ2V0RWxlbWVudEIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwiY2xpY2siLCJ0eXBlIiwib25DaGFuZ2UiLCJmaWxlcyIsImNyZWF0ZU9iamVjdFVSTCIsIl9VcGxvYWQiLCJsaXN0VHlwZSIsInNob3dVcGxvYWRMaXN0Iiwic2hvd1ByZXZpZXdJY29uIiwic2hvd1JlbW92ZUljb24iLCJjbGFzc05hbWUiLCJkZWZhdWx0QWN0aXZlS2V5IiwidGFiIiwia2V5IiwibGF5b3V0IiwibWF4V2lkdGgiLCJfUm93IiwiZ3V0dGVyIiwiX0NvbCIsInhzIiwic20iLCJtZCIsImxnIiwiSXRlbSIsInJ1bGVzIiwicmVxdWlyZWQiLCJfSW5wdXQiLCJkaXNhYmxlZCIsIl9EYXRlUGlja2VyIiwiX1JhZGlvIiwiR3JvdXAiLCJwbGFjZWhvbGRlciIsIm1hcCIsImttIiwibGF0aW4iLCJvY2N1cGF0aW9uIiwic2hvdWxkVXBkYXRlIiwiX2VkdWNhdGlvbkluc3RpdHV0aW9uIiwiZ2V0RmllbGRWYWx1ZSIsImlzUmVxdWlyZWQiLCJmaWx0ZXJPcHRpb24iLCJpbnB1dCIsIm9wdGlvbiIsImNoaWxkcmVuIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImluc3RpdHV0aW9uIiwic291cmNlIiwiZXZlbnQiLCJzZXNzaW9uIiwiZGlzYWJpbGl0eSIsImxhbmciLCJyb3dzIiwic2siLCJpbmRleCIsIm1hcmdpbkJvdHRvbSIsIl9UYWciLCJfU3BhY2UiLCJkaXJlY3Rpb24iLCJtYXJnaW5MZWZ0IiwiaHRtbEZvciIsImZvb2QiLCJ0ZWFtIiwidmFsdWVQcm9wTmFtZSIsInZhbGlkYXRvciIsIl8iLCJyZWplY3QiLCJFcnJvciIsIl9DaGVja2JveCIsImJsb2NrIiwiaHRtbFR5cGUiLCJsb2FkaW5nIiwiX01vZGFsIiwidmlzaWJsZSIsImZvb3RlciIsIm9uQ2FuY2VsIiwibWluIiwibWF4Iiwic3BhbiIsIlZvbHVudGVlclRoYW5rWW91IiwiX29iamVjdERlc3RydWN0dXJpbmdFbXB0eSIsImJhY2tncm91bmRDb2xvciIsInBhZGRpbmciLCJWT0xVTlRFRVJfRVZFTlRTIiwiVk9MVU5URUVSX0VWRU5UIiwiVk9MVU5URUVSX0VWRU5UX0RFTEVURSIsIlZPTFVOVEVFUl9FVkVOVF9DUkVBVEUiLCJWT0xVTlRFRVJfRVZFTlRfVVBEQVRFIiwidm9sdW50ZWVyRXZlbnRzU2VydmljZSIsInZvbHVudGVlckV2ZW50RGV0YWlsU2VydmljZSIsImNyZWF0ZVZvbHVudGVlckV2ZW50U2VydmljZSIsInVwZGF0ZVZvbHVudGVlckV2ZW50U2VydmljZSIsImRlbGV0ZVZvbHVudGVlckV2ZW50U2VydmljZSIsImZldGNoVm9sdW50ZWVyRXZlbnRzIiwidm9sdW50ZWVyRXZlbnREZXRhaWxBY3Rpb24iLCJjcmVhdGVWb2x1bnRlZXJFdmVudEFjdGlvbiIsInVwZGF0ZVZvbHVudGVlckV2ZW50QWN0aW9uIiwiZGVsZXRlVm9sdW50ZWVyRXZlbnRBY3Rpb24iLCJ2b2x1bnRlZXJFdmVudCIsInZvbHVudGVlckV2ZW50c1BlbmRpbmciLCJ2b2x1bnRlZXJFdmVudERldGFpbFBlbmRpbmciLCJ2b2x1bnRlZXJFdmVudENyZWF0ZVBlbmRpbmciLCJ2b2x1bnRlZXJFdmVudFVwZGF0ZVBlbmRpbmciLCJ2b2x1bnRlZXJFdmVudERlbGV0ZVBlbmRpbmciLCJ2b2x1bnRlZXJFdmVudFNsaWNlIiwic2V0Vm9sdW50ZWVyRXZlbnQiLCJfdm9sdW50ZWVyRXZlbnRTbGljZSQiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==