biohazard-vfx/.next/static/webpack/app/projects/page.8f117c87672dd4af.hot-update.js
nicholai 56271841f8
Some checks failed
Build and Push to Docker Hub / Push Docker image to Docker Hub (push) Has been cancelled
Build and Push Docker Image / build-and-push (push) Has been cancelled
refactoring pt.1
2025-09-09 11:24:28 -06:00

22 lines
44 KiB
JavaScript

"use strict";
/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
self["webpackHotUpdate_N_E"]("app/projects/page",{
/***/ "(app-pages-browser)/./src/app/projects/ProjectsPageClient.tsx":
/*!*************************************************!*\
!*** ./src/app/projects/ProjectsPageClient.tsx ***!
\*************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ ProjectsPageClient)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/link */ \"(app-pages-browser)/./node_modules/next/dist/client/app-dir/link.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _components_ui_ImageWithFallback__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ImageWithFallback */ \"(app-pages-browser)/./src/components/ui/ImageWithFallback.tsx\");\n/* harmony import */ var _components_Layouts__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/Layouts */ \"(app-pages-browser)/./src/components/Layouts.tsx\");\n/* harmony import */ var _components_motion_SectionReveal__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/motion/SectionReveal */ \"(app-pages-browser)/./src/components/motion/SectionReveal.tsx\");\n/* harmony import */ var _components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/motion/ItemReveal */ \"(app-pages-browser)/./src/components/motion/ItemReveal.tsx\");\n/* __next_internal_client_entry_do_not_use__ default auto */ \nvar _s = $RefreshSig$();\n\n\n\n\n\n\nfunction ProjectsPageClient(param) {\n let { projects } = param;\n _s();\n const [selectedCategory, setSelectedCategory] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)('All');\n // Get unique categories for filtering\n const categories = [\n 'All',\n ...Array.from(new Set(projects.map((p)=>p.category).filter(Boolean)))\n ];\n // Filter projects based on selected category\n const filteredProjects = selectedCategory === 'All' ? projects : projects.filter((p)=>p.category === selectedCategory);\n // Separate featured projects from regular projects\n const featuredProjects = filteredProjects.filter((p)=>p.featured === true);\n const regularProjects = filteredProjects.filter((p)=>p.featured !== true);\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Layouts__WEBPACK_IMPORTED_MODULE_4__.Container, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_SectionReveal__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-wrap gap-2 mb-8 justify-center\",\n children: categories.map((category)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n onClick: ()=>setSelectedCategory(category),\n className: \"px-4 py-2 rounded-md text-sm font-medium \".concat(selectedCategory === category ? 'bg-accent text-text-primary' : 'bg-surface-600 text-text-secondary hover:bg-surface-500 hover:text-text-primary'),\n children: category\n }, category, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 53,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 51,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 50,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"relative\",\n children: [\n featuredProjects.length > 0 && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mb-12\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"text-xl font-display text-white mb-6 text-center\",\n children: \"Featured Projects\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 74,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 73,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid md:grid-cols-2 gap-6\",\n children: featuredProjects.map((project)=>{\n // Extract year from createdAt\n const date = new Date(project.createdAt);\n const year = date.getFullYear().toString();\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_2___default()), {\n href: \"/projects/\".concat(project.id),\n className: \"group relative overflow-hidden rounded\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"aspect-cinema relative overflow-hidden\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ImageWithFallback__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n src: project.thumbnail,\n alt: project.title,\n fill: true,\n className: \"object-cover\",\n placeholderText: \"Project Thumbnail\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 92,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent opacity-70\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 100,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 91,\n columnNumber: 25\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"absolute bottom-0 left-0 right-0 p-5 z-10 pointer-events-none\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-accent text-xs font-medium mb-1\",\n children: [\n project.category || 'Project',\n \" • \",\n year\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 105,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"text-white text-xl font-bold\",\n children: project.title\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 108,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 104,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"absolute top-3 left-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"badge badge-accent text-xs\",\n children: \"FEATURED\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 115,\n columnNumber: 27\n }, this)\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 114,\n columnNumber: 25\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 86,\n columnNumber: 23\n }, this)\n }, project.id, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 85,\n columnNumber: 21\n }, this);\n })\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 78,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 72,\n columnNumber: 13\n }, this),\n regularProjects.length > 0 && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n featuredProjects.length > 0 && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"text-xl font-display text-white mb-6 text-center\",\n children: \"All Projects\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 132,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 131,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid md:grid-cols-3 gap-4\",\n children: regularProjects.map((project)=>{\n // Extract year from createdAt\n const date = new Date(project.createdAt);\n const year = date.getFullYear().toString();\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_motion_ItemReveal__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_2___default()), {\n href: \"/projects/\".concat(project.id),\n className: \"group relative overflow-hidden rounded\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"aspect-cinema relative overflow-hidden\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ImageWithFallback__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n src: project.thumbnail,\n alt: project.title,\n fill: true,\n className: \"object-cover\",\n placeholderText: \"Project Thumbnail\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 151,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent opacity-70\"\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 159,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 150,\n columnNumber: 25\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"absolute bottom-0 left-0 right-0 p-4 z-10 pointer-events-none\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-accent text-xs font-medium mb-1\",\n children: [\n project.category || 'Project',\n \" • \",\n year\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 164,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"text-white text-lg font-bold\",\n children: project.title\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 167,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 163,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 145,\n columnNumber: 23\n }, this)\n }, project.id, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 144,\n columnNumber: 21\n }, this);\n })\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 137,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 129,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 69,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 49,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/home/Nicholai/Documents/Dev/biohazard-vfx-2/src/app/projects/ProjectsPageClient.tsx\",\n lineNumber: 47,\n columnNumber: 5\n }, this);\n}\n_s(ProjectsPageClient, \"GJyJoXpi2ajXoAHNvbhzt/lrQyM=\");\n_c = ProjectsPageClient;\nvar _c;\n$RefreshReg$(_c, \"ProjectsPageClient\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvcHJvamVjdHMvUHJvamVjdHNQYWdlQ2xpZW50LnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFFZ0M7QUFDSjtBQUNxQztBQUNqQjtBQUNhO0FBQ047QUFleEMsU0FBU00sbUJBQW1CLEtBRWpCO1FBRmlCLEVBQ3pDQyxRQUFRLEVBQ2dCLEdBRmlCOztJQUd6QyxNQUFNLENBQUNDLGtCQUFrQkMsb0JBQW9CLEdBQUdULCtDQUFRQSxDQUFTO0lBRWpFLHNDQUFzQztJQUN0QyxNQUFNVSxhQUFhO1FBQ2pCO1dBQ0dDLE1BQU1DLElBQUksQ0FDWCxJQUFJQyxJQUFJTixTQUFTTyxHQUFHLENBQUMsQ0FBQ0MsSUFBTUEsRUFBRUMsUUFBUSxFQUFFQyxNQUFNLENBQUNDO0tBRWxEO0lBRUQsNkNBQTZDO0lBQzdDLE1BQU1DLG1CQUNKWCxxQkFBcUIsUUFDakJELFdBQ0FBLFNBQVNVLE1BQU0sQ0FBQyxDQUFDRixJQUFNQSxFQUFFQyxRQUFRLEtBQUtSO0lBRTVDLG1EQUFtRDtJQUNuRCxNQUFNWSxtQkFBbUJELGlCQUFpQkYsTUFBTSxDQUFDLENBQUNGLElBQU1BLEVBQUVNLFFBQVEsS0FBSztJQUN2RSxNQUFNQyxrQkFBa0JILGlCQUFpQkYsTUFBTSxDQUFDLENBQUNGLElBQU1BLEVBQUVNLFFBQVEsS0FBSztJQUV0RSxxQkFDRSw4REFBQ2xCLDBEQUFTQTtrQkFFUiw0RUFBQ0Msd0VBQWFBOzs4QkFDWiw4REFBQ0MscUVBQVVBOzhCQUNULDRFQUFDa0I7d0JBQUlDLFdBQVU7a0NBQ1pkLFdBQVdJLEdBQUcsQ0FBQyxDQUFDRSx5QkFDZiw4REFBQ1M7Z0NBRUNDLFNBQVMsSUFBTWpCLG9CQUFvQk87Z0NBQ25DUSxXQUFXLDRDQUlWLE9BSENoQixxQkFBcUJRLFdBQ2pCLGdDQUNBOzBDQUdMQTsrQkFSSUE7Ozs7Ozs7Ozs7Ozs7Ozs4QkFlYiw4REFBQ087b0JBQUlDLFdBQVU7O3dCQUVaSixpQkFBaUJPLE1BQU0sR0FBRyxtQkFDekIsOERBQUNKOzRCQUFJQyxXQUFVOzs4Q0FDYiw4REFBQ25CLHFFQUFVQTs4Q0FDVCw0RUFBQ3VCO3dDQUFHSixXQUFVO2tEQUFtRDs7Ozs7Ozs7Ozs7OENBSW5FLDhEQUFDRDtvQ0FBSUMsV0FBVTs4Q0FDWkosaUJBQWlCTixHQUFHLENBQUMsQ0FBQ2U7d0NBQ3JCLDhCQUE4Qjt3Q0FDOUIsTUFBTUMsT0FBTyxJQUFJQyxLQUFLRixRQUFRRyxTQUFTO3dDQUN2QyxNQUFNQyxPQUFPSCxLQUFLSSxXQUFXLEdBQUdDLFFBQVE7d0NBRXhDLHFCQUNFLDhEQUFDOUIscUVBQVVBO3NEQUNULDRFQUFDSixrREFBSUE7Z0RBQ0htQyxNQUFNLGFBQXdCLE9BQVhQLFFBQVFRLEVBQUU7Z0RBQzdCYixXQUFVOztrRUFHViw4REFBQ0Q7d0RBQUlDLFdBQVU7OzBFQUNiLDhEQUFDdEIsd0VBQWlCQTtnRUFDaEJvQyxLQUFLVCxRQUFRVSxTQUFTO2dFQUN0QkMsS0FBS1gsUUFBUVksS0FBSztnRUFDbEJDLElBQUk7Z0VBQ0psQixXQUFVO2dFQUNWbUIsaUJBQWdCOzs7Ozs7MEVBR2xCLDhEQUFDcEI7Z0VBQUlDLFdBQVU7Ozs7Ozs7Ozs7OztrRUFJckIsOERBQUNEO3dEQUFJQyxXQUFVOzswRUFDVCw4REFBQ1Q7Z0VBQUVTLFdBQVU7O29FQUNWSyxRQUFRYixRQUFRLElBQUk7b0VBQVU7b0VBQUlpQjs7Ozs7OzswRUFFckMsOERBQUNMO2dFQUFHSixXQUFVOzBFQUNYSyxRQUFRWSxLQUFLOzs7Ozs7Ozs7Ozs7a0VBS2xCLDhEQUFDbEI7d0RBQUlDLFdBQVU7a0VBQ2IsNEVBQUNvQjs0REFBS3BCLFdBQVU7c0VBQTZCOzs7Ozs7Ozs7Ozs7Ozs7OzsyQ0E5QmxDSyxRQUFRUSxFQUFFOzs7OztvQ0FxQy9COzs7Ozs7Ozs7Ozs7d0JBTUxmLGdCQUFnQkssTUFBTSxHQUFHLG1CQUN4Qiw4REFBQ0o7O2dDQUNFSCxpQkFBaUJPLE1BQU0sR0FBRyxtQkFDekIsOERBQUN0QixxRUFBVUE7OENBQ1QsNEVBQUN1Qjt3Q0FBR0osV0FBVTtrREFBbUQ7Ozs7Ozs7Ozs7OzhDQUtyRSw4REFBQ0Q7b0NBQUlDLFdBQVU7OENBQ1pGLGdCQUFnQlIsR0FBRyxDQUFDLENBQUNlO3dDQUNwQiw4QkFBOEI7d0NBQzlCLE1BQU1DLE9BQU8sSUFBSUMsS0FBS0YsUUFBUUcsU0FBUzt3Q0FDdkMsTUFBTUMsT0FBT0gsS0FBS0ksV0FBVyxHQUFHQyxRQUFRO3dDQUV4QyxxQkFDRSw4REFBQzlCLHFFQUFVQTtzREFDVCw0RUFBQ0osa0RBQUlBO2dEQUNIbUMsTUFBTSxhQUF3QixPQUFYUCxRQUFRUSxFQUFFO2dEQUM3QmIsV0FBVTs7a0VBR1YsOERBQUNEO3dEQUFJQyxXQUFVOzswRUFDYiw4REFBQ3RCLHdFQUFpQkE7Z0VBQ2hCb0MsS0FBS1QsUUFBUVUsU0FBUztnRUFDdEJDLEtBQUtYLFFBQVFZLEtBQUs7Z0VBQ2xCQyxJQUFJO2dFQUNKbEIsV0FBVTtnRUFDVm1CLGlCQUFnQjs7Ozs7OzBFQUdsQiw4REFBQ3BCO2dFQUFJQyxXQUFVOzs7Ozs7Ozs7Ozs7a0VBSXJCLDhEQUFDRDt3REFBSUMsV0FBVTs7MEVBQ1QsOERBQUNUO2dFQUFFUyxXQUFVOztvRUFDVkssUUFBUWIsUUFBUSxJQUFJO29FQUFVO29FQUFJaUI7Ozs7Ozs7MEVBRXJDLDhEQUFDTDtnRUFBR0osV0FBVTswRUFDWEssUUFBUVksS0FBSzs7Ozs7Ozs7Ozs7Ozs7Ozs7OzJDQXhCTFosUUFBUVEsRUFBRTs7Ozs7b0NBOEIvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRaEI7R0EvSndCL0I7S0FBQUEiLCJzb3VyY2VzIjpbIi9ob21lL05pY2hvbGFpL0RvY3VtZW50cy9EZXYvYmlvaGF6YXJkLXZmeC0yL3NyYy9hcHAvcHJvamVjdHMvUHJvamVjdHNQYWdlQ2xpZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCBMaW5rIGZyb20gJ25leHQvbGluaydcbmltcG9ydCBJbWFnZVdpdGhGYWxsYmFjayBmcm9tICdAL2NvbXBvbmVudHMvdWkvSW1hZ2VXaXRoRmFsbGJhY2snXG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tICdAL2NvbXBvbmVudHMvTGF5b3V0cydcbmltcG9ydCBTZWN0aW9uUmV2ZWFsIGZyb20gJ0AvY29tcG9uZW50cy9tb3Rpb24vU2VjdGlvblJldmVhbCdcbmltcG9ydCBJdGVtUmV2ZWFsIGZyb20gJ0AvY29tcG9uZW50cy9tb3Rpb24vSXRlbVJldmVhbCdcblxuaW50ZXJmYWNlIFByb2plY3Qge1xuICBpZDogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbiAgdGh1bWJuYWlsOiBzdHJpbmdcbiAgY2F0ZWdvcnk6IHN0cmluZyB8IG51bGxcbiAgZmVhdHVyZWQ6IGJvb2xlYW4gfCBudWxsXG4gIGNyZWF0ZWRBdDogc3RyaW5nIC8vIFRoaXMgd2lsbCBiZSBhIHN0cmluZyB3aGVuIHBhc3NlZCB0byB0aGUgY2xpZW50IGNvbXBvbmVudFxufVxuXG5pbnRlcmZhY2UgUHJvamVjdHNQYWdlQ2xpZW50UHJvcHMge1xuICBwcm9qZWN0czogUHJvamVjdFtdXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFByb2plY3RzUGFnZUNsaWVudCh7XG4gIHByb2plY3RzLFxufTogUHJvamVjdHNQYWdlQ2xpZW50UHJvcHMpIHtcbiAgY29uc3QgW3NlbGVjdGVkQ2F0ZWdvcnksIHNldFNlbGVjdGVkQ2F0ZWdvcnldID0gdXNlU3RhdGU8c3RyaW5nPignQWxsJylcblxuICAvLyBHZXQgdW5pcXVlIGNhdGVnb3JpZXMgZm9yIGZpbHRlcmluZ1xuICBjb25zdCBjYXRlZ29yaWVzID0gW1xuICAgICdBbGwnLFxuICAgIC4uLkFycmF5LmZyb20oXG4gICAgICBuZXcgU2V0KHByb2plY3RzLm1hcCgocCkgPT4gcC5jYXRlZ29yeSkuZmlsdGVyKEJvb2xlYW4pIGFzIHN0cmluZ1tdKVxuICAgICksXG4gIF1cblxuICAvLyBGaWx0ZXIgcHJvamVjdHMgYmFzZWQgb24gc2VsZWN0ZWQgY2F0ZWdvcnlcbiAgY29uc3QgZmlsdGVyZWRQcm9qZWN0cyA9XG4gICAgc2VsZWN0ZWRDYXRlZ29yeSA9PT0gJ0FsbCdcbiAgICAgID8gcHJvamVjdHNcbiAgICAgIDogcHJvamVjdHMuZmlsdGVyKChwKSA9PiBwLmNhdGVnb3J5ID09PSBzZWxlY3RlZENhdGVnb3J5KVxuXG4gIC8vIFNlcGFyYXRlIGZlYXR1cmVkIHByb2plY3RzIGZyb20gcmVndWxhciBwcm9qZWN0c1xuICBjb25zdCBmZWF0dXJlZFByb2plY3RzID0gZmlsdGVyZWRQcm9qZWN0cy5maWx0ZXIoKHApID0+IHAuZmVhdHVyZWQgPT09IHRydWUpXG4gIGNvbnN0IHJlZ3VsYXJQcm9qZWN0cyA9IGZpbHRlcmVkUHJvamVjdHMuZmlsdGVyKChwKSA9PiBwLmZlYXR1cmVkICE9PSB0cnVlKVxuXG4gIHJldHVybiAoXG4gICAgPENvbnRhaW5lcj5cbiAgICAgIHsvKiBDYXRlZ29yeSBGaWx0ZXIgKi99XG4gICAgICA8U2VjdGlvblJldmVhbD5cbiAgICAgICAgPEl0ZW1SZXZlYWw+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGZsZXgtd3JhcCBnYXAtMiBtYi04IGp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgICAgICB7Y2F0ZWdvcmllcy5tYXAoKGNhdGVnb3J5KSA9PiAoXG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICBrZXk9e2NhdGVnb3J5fVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldFNlbGVjdGVkQ2F0ZWdvcnkoY2F0ZWdvcnkpfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YHB4LTQgcHktMiByb3VuZGVkLW1kIHRleHQtc20gZm9udC1tZWRpdW0gJHtcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQ2F0ZWdvcnkgPT09IGNhdGVnb3J5XG4gICAgICAgICAgICAgICAgICAgID8gJ2JnLWFjY2VudCB0ZXh0LXRleHQtcHJpbWFyeSdcbiAgICAgICAgICAgICAgICAgICAgOiAnYmctc3VyZmFjZS02MDAgdGV4dC10ZXh0LXNlY29uZGFyeSBob3ZlcjpiZy1zdXJmYWNlLTUwMCBob3Zlcjp0ZXh0LXRleHQtcHJpbWFyeSdcbiAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtjYXRlZ29yeX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9JdGVtUmV2ZWFsPlxuXG4gICAgICAgIHsvKiBQcm9qZWN0cyBHcmlkIC0gTWF0dXJlIGxheW91dCB3aXRoIGZlYXR1cmVkIHByb2plY3RzICovfVxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJlbGF0aXZlXCI+XG4gICAgICAgICAgey8qIEZlYXR1cmVkIFByb2plY3RzIC0gTGFyZ2VyIGRpc3BsYXkgKi99XG4gICAgICAgICAge2ZlYXR1cmVkUHJvamVjdHMubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1iLTEyXCI+XG4gICAgICAgICAgICAgIDxJdGVtUmV2ZWFsPlxuICAgICAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9XCJ0ZXh0LXhsIGZvbnQtZGlzcGxheSB0ZXh0LXdoaXRlIG1iLTYgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgIEZlYXR1cmVkIFByb2plY3RzXG4gICAgICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgICAgPC9JdGVtUmV2ZWFsPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyaWQgbWQ6Z3JpZC1jb2xzLTIgZ2FwLTZcIj5cbiAgICAgICAgICAgICAgICB7ZmVhdHVyZWRQcm9qZWN0cy5tYXAoKHByb2plY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgIC8vIEV4dHJhY3QgeWVhciBmcm9tIGNyZWF0ZWRBdFxuICAgICAgICAgICAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHByb2plY3QuY3JlYXRlZEF0KVxuICAgICAgICAgICAgICAgICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKS50b1N0cmluZygpXG5cbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxJdGVtUmV2ZWFsIGtleT17cHJvamVjdC5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9e2AvcHJvamVjdHMvJHtwcm9qZWN0LmlkfWB9XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJncm91cCByZWxhdGl2ZSBvdmVyZmxvdy1oaWRkZW4gcm91bmRlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIEJhY2tncm91bmQgSW1hZ2UgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFzcGVjdC1jaW5lbWEgcmVsYXRpdmUgb3ZlcmZsb3ctaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxJbWFnZVdpdGhGYWxsYmFja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz17cHJvamVjdC50aHVtYm5haWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PXtwcm9qZWN0LnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJvYmplY3QtY292ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyVGV4dD1cIlByb2plY3QgVGh1bWJuYWlsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgey8qIEdyYWRpZW50IE92ZXJsYXkgKi99XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWJzb2x1dGUgaW5zZXQtMCBiZy1ncmFkaWVudC10by10IGZyb20tYmxhY2svODAgdmlhLWJsYWNrLzIwIHRvLXRyYW5zcGFyZW50IG9wYWNpdHktNzBcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgey8qIENvbnRlbnQgKi99XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWJzb2x1dGUgYm90dG9tLTAgbGVmdC0wIHJpZ2h0LTAgcC01IHotMTAgcG9pbnRlci1ldmVudHMtbm9uZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LWFjY2VudCB0ZXh0LXhzIGZvbnQtbWVkaXVtIG1iLTFcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cHJvamVjdC5jYXRlZ29yeSB8fCAnUHJvamVjdCd9IOKAoiB7eWVhcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPVwidGV4dC13aGl0ZSB0ZXh0LXhsIGZvbnQtYm9sZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwcm9qZWN0LnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gzPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBGZWF0dXJlZCBCYWRnZSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWJzb2x1dGUgdG9wLTMgbGVmdC0zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImJhZGdlIGJhZGdlLWFjY2VudCB0ZXh0LXhzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBGRUFUVVJFRFxuICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgICAgICAgICAgPC9JdGVtUmV2ZWFsPlxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7LyogUmVndWxhciBQcm9qZWN0cyAtIFN0YW5kYXJkIGdyaWQgKi99XG4gICAgICAgICAge3JlZ3VsYXJQcm9qZWN0cy5sZW5ndGggPiAwICYmIChcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIHtmZWF0dXJlZFByb2plY3RzLmxlbmd0aCA+IDAgJiYgKFxuICAgICAgICAgICAgICAgIDxJdGVtUmV2ZWFsPlxuICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cInRleHQteGwgZm9udC1kaXNwbGF5IHRleHQtd2hpdGUgbWItNiB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICBBbGwgUHJvamVjdHNcbiAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgPC9JdGVtUmV2ZWFsPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyaWQgbWQ6Z3JpZC1jb2xzLTMgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgICB7cmVndWxhclByb2plY3RzLm1hcCgocHJvamVjdCkgPT4ge1xuICAgICAgICAgICAgICAgICAgLy8gRXh0cmFjdCB5ZWFyIGZyb20gY3JlYXRlZEF0XG4gICAgICAgICAgICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUocHJvamVjdC5jcmVhdGVkQXQpXG4gICAgICAgICAgICAgICAgICBjb25zdCB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKClcblxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgPEl0ZW1SZXZlYWwga2V5PXtwcm9qZWN0LmlkfT5cbiAgICAgICAgICAgICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj17YC9wcm9qZWN0cy8ke3Byb2plY3QuaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImdyb3VwIHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiByb3VuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogQmFja2dyb3VuZCBJbWFnZSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYXNwZWN0LWNpbmVtYSByZWxhdGl2ZSBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEltYWdlV2l0aEZhbGxiYWNrXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXtwcm9qZWN0LnRodW1ibmFpbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9e3Byb2plY3QudGl0bGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm9iamVjdC1jb3ZlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXJUZXh0PVwiUHJvamVjdCBUaHVtYm5haWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7LyogR3JhZGllbnQgT3ZlcmxheSAqL31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhYnNvbHV0ZSBpbnNldC0wIGJnLWdyYWRpZW50LXRvLXQgZnJvbS1ibGFjay84MCB2aWEtYmxhY2svMjAgdG8tdHJhbnNwYXJlbnQgb3BhY2l0eS03MFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICB7LyogQ29udGVudCAqL31cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhYnNvbHV0ZSBib3R0b20tMCBsZWZ0LTAgcmlnaHQtMCBwLTQgei0xMCBwb2ludGVyLWV2ZW50cy1ub25lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtYWNjZW50IHRleHQteHMgZm9udC1tZWRpdW0gbWItMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwcm9qZWN0LmNhdGVnb3J5IHx8ICdQcm9qZWN0J30g4oCiIHt5ZWFyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlIHRleHQtbGcgZm9udC1ib2xkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3Byb2plY3QudGl0bGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICAgICAgICAgIDwvSXRlbVJldmVhbD5cbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvU2VjdGlvblJldmVhbD5cbiAgICA8L0NvbnRhaW5lcj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbInVzZVN0YXRlIiwiTGluayIsIkltYWdlV2l0aEZhbGxiYWNrIiwiQ29udGFpbmVyIiwiU2VjdGlvblJldmVhbCIsIkl0ZW1SZXZlYWwiLCJQcm9qZWN0c1BhZ2VDbGllbnQiLCJwcm9qZWN0cyIsInNlbGVjdGVkQ2F0ZWdvcnkiLCJzZXRTZWxlY3RlZENhdGVnb3J5IiwiY2F0ZWdvcmllcyIsIkFycmF5IiwiZnJvbSIsIlNldCIsIm1hcCIsInAiLCJjYXRlZ29yeSIsImZpbHRlciIsIkJvb2xlYW4iLCJmaWx0ZXJlZFByb2plY3RzIiwiZmVhdHVyZWRQcm9qZWN0cyIsImZlYXR1cmVkIiwicmVndWxhclByb2plY3RzIiwiZGl2IiwiY2xhc3NOYW1lIiwiYnV0dG9uIiwib25DbGljayIsImxlbmd0aCIsImgzIiwicHJvamVjdCIsImRhdGUiLCJEYXRlIiwiY3JlYXRlZEF0IiwieWVhciIsImdldEZ1bGxZZWFyIiwidG9TdHJpbmciLCJocmVmIiwiaWQiLCJzcmMiLCJ0aHVtYm5haWwiLCJhbHQiLCJ0aXRsZSIsImZpbGwiLCJwbGFjZWhvbGRlclRleHQiLCJzcGFuIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/projects/ProjectsPageClient.tsx\n"));
/***/ })
});