sixseconds-modules 1.6.80 → 1.6.82

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -13,14 +13,14 @@
13
13
  "use strict";
14
14
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
15
15
  const jsxRuntime = require("react/jsx-runtime");
16
- const React = require("react");
17
16
  const material = require("@mui/material");
17
+ const React = require("react");
18
18
  const Cookies = require("js-cookie");
19
- const MenuIcon = require("@mui/icons-material/Menu");
20
- const CheckIcon = require("@mui/icons-material/Check");
21
19
  const axios = require("axios");
20
+ const MenuIcon = require("@mui/icons-material/Menu");
22
21
  const toast = require("react-hot-toast");
23
22
  const VisibilityOffIcon = require("@mui/icons-material/VisibilityOff");
23
+ const CheckIcon = require("@mui/icons-material/Check");
24
24
  const ExitToAppTwoToneIcon = require("@mui/icons-material/ExitToAppTwoTone");
25
25
  const CloseIcon = require("@mui/icons-material/Close");
26
26
  const PublicIcon = require("@mui/icons-material/Public");
@@ -2659,7 +2659,7 @@ function createEnv(opts) {
2659
2659
  }
2660
2660
  return runtimeEnv;
2661
2661
  }
2662
- const __vite_import_meta_env__ = { "BASE_URL": "/", "DEV": false, "MODE": "production", "PROD": true, "SSR": false, "VITE_MODULES_CARDS_ADMIN_FRONTEND_BASE_URL": "https://admin-cards.6seconds.org", "VITE_MODULES_CARDS_HOME_FRONTEND_BASE_URL": "https://cards.6seconds.org", "VITE_MODULES_CERT_FRONTEND_BASE_URL": "https://cert.6seconds.org", "VITE_MODULES_EVENTS_FRONTEND_BASE_URL": "https://newevents.6seconds.org", "VITE_MODULES_SSO_BACKEND_BASE_URL": "https://ssoapi.6seconds.org", "VITE_MODULES_SSO_FRONTEND_BASE_URL": "https://sso.6seconds.org", "VITE_MODULES_TOOLS_FRONTEND_BASE_URL": "https://newtools.6seconds.org" };
2662
+ const __vite_import_meta_env__ = { "BASE_URL": "/", "DEV": false, "MODE": "qa", "PROD": true, "SSR": false, "VITE_MODULES_CARDS_ADMIN_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org", "VITE_MODULES_CARDS_HOME_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org", "VITE_MODULES_CERT_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org", "VITE_MODULES_EVENTS_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org", "VITE_MODULES_SSO_BACKEND_BASE_URL": "https://qa-ssoapi.6seconds.org", "VITE_MODULES_SSO_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org", "VITE_MODULES_TOOLS_FRONTEND_BASE_URL": "https://qa-sso.6seconds.org" };
2663
2663
  const env = createEnv({
2664
2664
  runtimeEnv: __vite_import_meta_env__
2665
2665
  });
@@ -8975,360 +8975,214 @@ function Logo({ sx }) {
8975
8975
  }
8976
8976
  );
8977
8977
  }
8978
- const SubHeaderStyled = material.styled(material.AppBar)(() => ({
8979
- // "@media screen and (max-width:1920px) and (min-width:1600px)": {
8980
- // "& .submenu": {
8981
- // width: "84% !important",
8982
- // },
8983
- // },
8984
- // "@media screen and (max-width:1600px) and (min-width:1440px)": {
8985
- // "& .submenu": {
8986
- // width: "82% !important",
8987
- // },
8988
- // },
8989
- // "@media screen and (max-width:5000px) and (min-width:2560px)": {
8990
- // "& .submenu": {
8991
- // width: "89% !important",
8992
- // },
8993
- // },
8994
- "& ": {
8995
- background: "#fff",
8996
- color: "#000",
8997
- height: "70px",
8998
- width: "100vw",
8999
- fontFamily: "Inter, sans-serif",
9000
- position: "fixed",
9001
- zIndex: "999",
9002
- // left: "255px",
9003
- right: "0px",
9004
- top: "0px"
9005
- },
9006
- "& .submenu": {
9007
- display: "flex",
9008
- justifyContent: "space-between",
9009
- alignItems: "center",
9010
- margin: "0px",
9011
- fontFamily: "Inter, sans-serif"
9012
- },
9013
- "& .profile": {
9014
- position: "absolute",
9015
- right: "0px",
9016
- top: "66px",
9017
- background: "#fff",
9018
- width: "250px",
9019
- borderRadius: "16px",
9020
- zIndex: "999",
9021
- boxShadow: "0px 4px 6px -2px #1A191908",
9022
- fontFamily: "Inter, sans-serif",
9023
- border: "1px solid #EDEDED",
9024
- "& ul": {
9025
- margin: "0px",
9026
- padding: "0px 16px 16px",
9027
- listStyle: "none",
9028
- "& li": {
9029
- padding: "10px 0px",
9030
- borderBottom: "1px solid #E9E9E9",
9031
- cursor: "pointer",
9032
- "&:last-child": { borderBottom: "0px" }
8978
+ var dist = {};
8979
+ var hasRequiredDist;
8980
+ function requireDist() {
8981
+ if (hasRequiredDist) return dist;
8982
+ hasRequiredDist = 1;
8983
+ var __assign2 = dist && dist.__assign || function() {
8984
+ __assign2 = Object.assign || function(t) {
8985
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8986
+ s = arguments[i];
8987
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8988
+ t[p] = s[p];
9033
8989
  }
8990
+ return t;
8991
+ };
8992
+ return __assign2.apply(this, arguments);
8993
+ };
8994
+ Object.defineProperty(dist, "__esModule", { value: true });
8995
+ dist.join = dist.subst = dist.query = void 0;
8996
+ function urlcat2(baseUrlOrTemplate, pathTemplateOrParams, maybeParams) {
8997
+ if (maybeParams === void 0) {
8998
+ maybeParams = {};
9034
8999
  }
9035
- },
9036
- "& .notification": {
9037
- display: "flex",
9038
- alignItems: "center",
9039
- fontFamily: "Inter, sans-serif"
9040
- },
9041
- "& .notification h6,p": {
9042
- margin: "10px",
9043
- fontFamily: "Inter, sans-serif"
9044
- },
9045
- "& .total": {
9046
- border: "1px solid #C9C9C9",
9047
- borderRadius: "6px",
9048
- padding: "4px 8px 4px 8px",
9049
- color: "#666666",
9050
- fontSize: "14px",
9051
- fontWeight: "500",
9052
- display: "flex",
9053
- fontFamily: "Inter, sans-serif"
9054
- }
9055
- }));
9056
- const UserProfile = ({ t: t2, userData, setInitialState, extraMenuOptions, router }) => {
9057
- const [state, setState] = React.useState({ toggles: { userProfile: false } });
9058
- const handleRedirection2 = (appName, url2) => {
9059
- if (router && appName === APP_NAMES.sso) {
9060
- router.push(url2);
9000
+ if (typeof pathTemplateOrParams === "string") {
9001
+ var baseUrl = baseUrlOrTemplate;
9002
+ var pathTemplate = pathTemplateOrParams;
9003
+ var params = maybeParams;
9004
+ return urlcatImpl(pathTemplate, params, baseUrl);
9061
9005
  } else {
9062
- window.open(url2, "_blank");
9006
+ var baseTemplate = baseUrlOrTemplate;
9007
+ var params = pathTemplateOrParams;
9008
+ return urlcatImpl(baseTemplate, params);
9063
9009
  }
9064
- };
9065
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9066
- /* @__PURE__ */ jsxRuntime.jsxs(
9067
- material.Box,
9068
- {
9069
- sx: {
9070
- display: "flex",
9071
- alignItems: "center",
9072
- cursor: "pointer",
9073
- width: "auto",
9074
- height: "auto"
9075
- },
9076
- "data-toggle-name": "userProfile",
9077
- onClick: (e) => handleOpenUtil(e, setState),
9078
- children: [
9079
- /* @__PURE__ */ jsxRuntime.jsx(material.Avatar, { src: userData?.userprofile, sx: { width: "40px", height: "40px" } }),
9080
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { margin: "2px 0px 0px 2px" }, children: /* @__PURE__ */ jsxRuntime.jsx(SVG.Dawn, {}) })
9081
- ]
9010
+ }
9011
+ dist.default = urlcat2;
9012
+ function urlcatImpl(pathTemplate, params, baseUrl) {
9013
+ var _a = path(pathTemplate, params), renderedPath = _a.renderedPath, remainingParams = _a.remainingParams;
9014
+ var cleanParams = removeNullOrUndef(remainingParams);
9015
+ var renderedQuery = query(cleanParams);
9016
+ var pathAndQuery = join(renderedPath, "?", renderedQuery);
9017
+ return baseUrl ? join(baseUrl, "/", pathAndQuery) : pathAndQuery;
9018
+ }
9019
+ function query(params) {
9020
+ return new URLSearchParams(params).toString();
9021
+ }
9022
+ dist.query = query;
9023
+ function subst(template, params) {
9024
+ var renderedPath = path(template, params).renderedPath;
9025
+ return renderedPath;
9026
+ }
9027
+ dist.subst = subst;
9028
+ function path(template, params) {
9029
+ var remainingParams = __assign2({}, params);
9030
+ var allowedTypes = ["boolean", "string", "number"];
9031
+ var renderedPath = template.replace(/:\w+/g, function(p) {
9032
+ var key = p.slice(1);
9033
+ if (/^\d+$/.test(key)) {
9034
+ return p;
9082
9035
  }
9083
- ),
9084
- state.toggles.userProfile && /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setState), children: /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { className: "profile", children: [
9085
- /* @__PURE__ */ jsxRuntime.jsxs(
9086
- material.Stack,
9087
- {
9088
- direction: "row",
9089
- spacing: 1,
9090
- alignItems: "center",
9091
- sx: {
9092
- borderBottom: "1px solid #EDEDED",
9093
- p: 2,
9094
- zIndex: "99999999 !important"
9095
- },
9096
- children: [
9097
- /* @__PURE__ */ jsxRuntime.jsx(material.Avatar, { src: userData?.userprofile, sx: { width: "55px", height: "55px" }, children: userData?.fullName.trim().split(/\s+/).map((part) => part[0].toUpperCase()).join("") }),
9098
- /* @__PURE__ */ jsxRuntime.jsxs(
9099
- material.Box,
9100
- {
9101
- sx: {
9102
- flex: 1,
9103
- whiteSpace: "normal",
9104
- wordBreak: "break-all"
9105
- },
9106
- children: [
9107
- /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h4", sx: { fontSize: "16px", fontWeight: "500", m: 0 }, children: userData?.fullName }),
9108
- /* @__PURE__ */ jsxRuntime.jsxs(material.Typography, { component: "span", sx: { m: 0, fontSize: "14px", color: "#666666" }, children: [
9109
- truncateValUtil(userData?.email || ""),
9110
- " ",
9111
- /* @__PURE__ */ jsxRuntime.jsx("br", {}),
9112
- Boolean(userData?.role) && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9113
- "(",
9114
- userData?.role,
9115
- ")"
9116
- ] })
9117
- ] })
9118
- ]
9119
- }
9120
- )
9121
- ]
9122
- }
9123
- ),
9124
- /* @__PURE__ */ jsxRuntime.jsxs("ul", { children: [
9125
- extraMenuOptions.components,
9126
- extraMenuOptions.isViewProfile && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
9127
- material.Stack,
9128
- {
9129
- direction: "row",
9130
- spacing: 1,
9131
- alignItems: "center",
9132
- onClick: () => setInitialState((p) => ({ ...p, toggles: { ...p.toggles, viewProfile: true } })),
9133
- sx: { color: "#1A1919", cursor: "pointer", textDecoration: "none" },
9134
- children: [
9135
- /* @__PURE__ */ jsxRuntime.jsx(SVG.CheckedPerson, {}),
9136
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
9137
- material.Typography,
9138
- {
9139
- variant: "h4",
9140
- sx: {
9141
- fontSize: "16px",
9142
- fontWeight: "400",
9143
- m: 0
9144
- },
9145
- children: t2("View Profile")
9146
- }
9147
- ) })
9148
- ]
9149
- }
9150
- ) }),
9151
- extraMenuOptions.isEditProfile && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
9152
- material.Stack,
9153
- {
9154
- direction: "row",
9155
- spacing: 1,
9156
- alignItems: "center",
9157
- onClick: () => handleRedirection2(userData?.appName, SSO_ROUTES(userData?.appName).editProfile),
9158
- sx: { color: "#1A1919", textDecoration: "none" },
9159
- children: [
9160
- /* @__PURE__ */ jsxRuntime.jsx(SVG.UserEdit, {}),
9161
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
9162
- material.Typography,
9163
- {
9164
- variant: "h4",
9165
- sx: {
9166
- fontSize: "16px",
9167
- fontWeight: "400",
9168
- m: 0
9169
- },
9170
- children: t2("Edit Profile")
9171
- }
9172
- ) })
9173
- ]
9174
- }
9175
- ) }),
9176
- extraMenuOptions.isChangePassword && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
9177
- material.Stack,
9178
- {
9179
- direction: "row",
9180
- spacing: 1,
9181
- alignItems: "center",
9182
- onClick: () => setInitialState((p) => ({ ...p, toggles: { ...p.toggles, changePassword: true } })),
9183
- sx: { cursor: "pointer", textDecoration: "none" },
9184
- children: [
9185
- /* @__PURE__ */ jsxRuntime.jsx(SVG.CheckedPerson, {}),
9186
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
9187
- material.Typography,
9188
- {
9189
- variant: "h4",
9190
- sx: {
9191
- color: "#1A1919",
9192
- fontSize: "16px",
9193
- fontWeight: "400",
9194
- m: 0
9195
- },
9196
- children: t2("Change Password")
9197
- }
9198
- ) })
9199
- ]
9200
- }
9201
- ) }),
9202
- /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
9203
- material.Stack,
9204
- {
9205
- direction: "row",
9206
- spacing: 1,
9207
- alignItems: "center",
9208
- onClick: () => setInitialState?.((p) => ({
9209
- ...p,
9210
- toggles: { ...p.toggles, logout: true }
9211
- })),
9212
- children: [
9213
- /* @__PURE__ */ jsxRuntime.jsx(SVG.Logout, {}),
9214
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
9215
- material.Typography,
9216
- {
9217
- variant: "h4",
9218
- sx: {
9219
- fontSize: "16px",
9220
- fontWeight: "400",
9221
- m: 0
9222
- },
9223
- children: t2("Logout")
9224
- }
9225
- ) })
9226
- ]
9227
- }
9228
- ) })
9229
- ] })
9230
- ] }) })
9231
- ] });
9232
- };
9233
- function Language({
9234
- interFaceLangList,
9235
- updateInterfaceLang,
9236
- selectedInterFaceLang,
9237
- setInitialState,
9238
- t: t2
9239
- }) {
9240
- return /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setInitialState), children: /* @__PURE__ */ jsxRuntime.jsx(
9241
- material.Box,
9242
- {
9243
- sx: {
9244
- p: 2,
9245
- zIndex: "99999999 !important",
9246
- borderRadius: "16px",
9247
- border: "1px solid #EDEDED",
9248
- boxShadow: "0px 12px 16px -4px #1A191914",
9249
- maxWidth: "333px",
9250
- minWidth: { md: "333px", lg: "333px", xs: "200px" },
9251
- background: "#fff",
9252
- top: "66px",
9253
- right: "0px",
9254
- position: "absolute"
9255
- },
9256
- children: /* @__PURE__ */ jsxRuntime.jsx(
9257
- material.Box,
9258
- {
9259
- component: "ul",
9260
- sx: {
9261
- margin: "0px",
9262
- padding: "0px 16px 0px 0px",
9263
- listStyle: "none",
9264
- overflow: "hidden",
9265
- overflowY: "auto",
9266
- maxHeight: "300px",
9267
- "& li": {
9268
- borderBottom: "1px solid #EDEDED",
9269
- padding: "16px 0px",
9270
- cursor: "pointer",
9271
- "&:last-child": {
9272
- borderBottom: "0px"
9273
- }
9274
- }
9275
- },
9276
- children: interFaceLangList?.map((lang2, i) => {
9277
- return /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
9278
- material.Stack,
9279
- {
9280
- direction: "row",
9281
- spacing: 2,
9282
- alignItems: "center",
9283
- onClick: () => {
9284
- updateInterfaceLang(lang2);
9285
- setInitialState((p) => ({ ...p, toggles: { ...p.toggles, lang: false } }));
9286
- },
9287
- children: /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsxs(material.Stack, { direction: "row", alignItems: "center", justifyContent: "flex-start", gap: 2, children: [
9288
- /* @__PURE__ */ jsxRuntime.jsx(
9289
- "img",
9290
- {
9291
- src: lang2?.flag,
9292
- alt: lang2?.label,
9293
- style: {
9294
- width: "40px !important",
9295
- height: "25px !important"
9296
- },
9297
- width: 40,
9298
- height: 25
9299
- }
9300
- ),
9301
- /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h4", sx: { fontSize: "16px", fontWeight: "500", m: 0 }, children: t2(lang2?.label) }),
9302
- selectedInterFaceLang?.value === lang2?.value && /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { sx: { color: "#007FC0", fontSize: "30px" } })
9303
- ] }) })
9304
- }
9305
- ) }, i);
9306
- })
9036
+ if (!params.hasOwnProperty(key)) {
9037
+ throw new Error("Missing value for path parameter " + key + ".");
9038
+ }
9039
+ if (!allowedTypes.includes(typeof params[key])) {
9040
+ throw new TypeError("Path parameter " + key + " cannot be of type " + typeof params[key] + ". " + ("Allowed types are: " + allowedTypes.join(", ") + "."));
9041
+ }
9042
+ if (typeof params[key] === "string" && params[key].trim() === "") {
9043
+ throw new Error("Path parameter " + key + " cannot be an empty string.");
9044
+ }
9045
+ delete remainingParams[key];
9046
+ return encodeURIComponent(params[key]);
9047
+ });
9048
+ return { renderedPath, remainingParams };
9049
+ }
9050
+ function join(part1, separator, part2) {
9051
+ var p1 = part1.endsWith(separator) ? part1.slice(0, -separator.length) : part1;
9052
+ var p2 = part2.startsWith(separator) ? part2.slice(separator.length) : part2;
9053
+ return p1 === "" || p2 === "" ? p1 + p2 : p1 + separator + p2;
9054
+ }
9055
+ dist.join = join;
9056
+ function removeNullOrUndef(params) {
9057
+ return Object.keys(params).filter(function(k) {
9058
+ return notNullOrUndefined(params[k]);
9059
+ }).reduce(function(result, k) {
9060
+ result[k] = params[k];
9061
+ return result;
9062
+ }, {});
9063
+ }
9064
+ function notNullOrUndefined(v) {
9065
+ return v !== void 0 && v !== null;
9066
+ }
9067
+ return dist;
9068
+ }
9069
+ var distExports = requireDist();
9070
+ const urlcat = /* @__PURE__ */ getDefaultExportFromCjs(distExports);
9071
+ if (env.VITE_MODULES_SSO_BACKEND_BASE_URL === void 0) {
9072
+ throw new Error("env is not set");
9073
+ }
9074
+ function createAxiosInstance(baseUrl) {
9075
+ return axios.create({
9076
+ baseURL: urlcat(baseUrl, "/api/"),
9077
+ headers: {
9078
+ "Content-Type": "application/json"
9079
+ },
9080
+ withCredentials: true
9081
+ });
9082
+ }
9083
+ async function req(config) {
9084
+ const baseUrl = env.VITE_MODULES_SSO_BACKEND_BASE_URL;
9085
+ const axiosInstance = createAxiosInstance(baseUrl);
9086
+ try {
9087
+ const response = await axiosInstance.request({ ...config });
9088
+ return {
9089
+ remote: SERVER_STATUS.success,
9090
+ data: response?.data?.data
9091
+ };
9092
+ } catch (error) {
9093
+ if (error.response) {
9094
+ const axiosError = error;
9095
+ const errorMessage = axiosError.response?.data?.message || ALERT_MESSAGES.fallbackError;
9096
+ const errorCode = axiosError.response?.status;
9097
+ const errorData = axiosError.response?.data?.data || null;
9098
+ return {
9099
+ status: errorCode,
9100
+ remote: SERVER_STATUS.failure,
9101
+ error: {
9102
+ message: errorMessage,
9103
+ data: errorData
9307
9104
  }
9308
- )
9105
+ };
9309
9106
  }
9310
- ) });
9107
+ throw error;
9108
+ }
9311
9109
  }
9312
- const DropdownMenu = ({ headerMenuArray, initialState }) => {
9313
- const pathname = window.location.pathname;
9314
- const isMobile = material.useMediaQuery("(max-width: 1324px)");
9315
- return /* @__PURE__ */ jsxRuntime.jsx("nav", { style: { backgroundColor: "transparent", color: "#000" }, children: !isMobile ? /* @__PURE__ */ jsxRuntime.jsx("ul", { className: " main_list_Menu desktopMenu", children: headerMenuArray.map((items, index) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "menu-item", style: { listStyle: "none" }, children: [
9316
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: items.value || "", target: items.target, className: `menu-link`, children: items.label }),
9317
- Boolean(items.children.length) && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "submenuData ", children: items.children?.map((child, index2) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: child.value || "", target: child.target, className: "submenu-link", children: child.label }) }, index2) })) })
9318
- ] }, index) })) }) : initialState.toggles.dropDownMenu && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden smallDeviceMenu", id: "mobile-menu", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: " layout_mobile_menu", children: headerMenuArray.map((items, index) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9319
- /* @__PURE__ */ jsxRuntime.jsx(
9320
- "a",
9321
- {
9322
- href: items.value || "",
9323
- className: `bg_main_menu ${pathname === items.value ? "text-customBlue" : "text-[#2C2E35]"}`,
9324
- children: items.label
9325
- },
9326
- index
9327
- ),
9328
- Boolean(items.children.length) && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "submenu_child", children: items.children?.map((items2, index2) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("li", { style: { listStyleType: "none" }, children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: items2.value || "", target: items2.target, className: "submenu_child_link ", children: items2.label }) }, index2) })) })
9329
- ] })) }) }) });
9110
+ const transformNotifications = (itm) => {
9111
+ return {
9112
+ id: itm.id,
9113
+ title: itm.title,
9114
+ date: formatDateUtil(itm.created_at),
9115
+ type: itm.message_type,
9116
+ status: itm.app_access,
9117
+ source: itm.app_access
9118
+ };
9330
9119
  };
9120
+ const transformMenuBuilderData = (itm) => {
9121
+ return {
9122
+ label: itm.name,
9123
+ value: itm.route,
9124
+ target: itm.target,
9125
+ id: itm.id,
9126
+ order: itm.order,
9127
+ children: itm.children?.length ? itm.children.map((data) => transformMenuBuilderData(data)) : []
9128
+ };
9129
+ };
9130
+ async function getDropDownMenuApi(params) {
9131
+ const res = await req({
9132
+ url: urlcat("menu/menus", params),
9133
+ method: "GET"
9134
+ });
9135
+ if (res.remote === SERVER_STATUS.success) {
9136
+ return {
9137
+ remote: SERVER_STATUS.success,
9138
+ data: res?.data?.map(transformMenuBuilderData)
9139
+ };
9140
+ }
9141
+ return res;
9142
+ }
9143
+ async function notificationApi(data) {
9144
+ const res = await req({
9145
+ url: urlcat("/notification/index", data),
9146
+ method: "GET"
9147
+ });
9148
+ if (res.remote === SERVER_STATUS.success) {
9149
+ return {
9150
+ remote: SERVER_STATUS.success,
9151
+ data: res?.data?.pager
9152
+ };
9153
+ }
9154
+ return res;
9155
+ }
9156
+ async function changeUserPasswordApi(payload) {
9157
+ const res = await req({
9158
+ url: `/auth/change-password`,
9159
+ method: "POST",
9160
+ data: payload
9161
+ });
9162
+ if (res.remote === SERVER_STATUS.success) {
9163
+ return {
9164
+ remote: SERVER_STATUS.success,
9165
+ data: res?.data?.pager
9166
+ };
9167
+ }
9168
+ return res;
9169
+ }
9170
+ async function autoLoginApi(id, userDetails) {
9171
+ const response = await req({
9172
+ url: urlcat("/auto-authenticate/:id", { id }),
9173
+ method: "POST"
9174
+ });
9175
+ if (response.remote === "success") {
9176
+ return response;
9177
+ }
9178
+ return response;
9179
+ }
9180
+ const DefaultLang = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAAUABAMAAADqyuLEAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAMFBMVEVHcEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlTPQ5AAAAD3RSTlMA/voEqOZS0ykWvz1nfpVgrjwLAAAgAElEQVR42uydf4xcVRXHb/LqdobdktwJ8Y9GcjMTEY3S90KJQQXTRFukta4ilcQA0xCbIhaKiqDQdsaIyC/LqIjRiD+RomB2YzE2SEsVKAVjuqm2tf5oq0LRNNrclx2nLrXXe+6b3c5O37z77ps3d37sOcmm2253+/re533P+Z77ixCM6HAWezOfv+Obd/9y3W8Pvbx8y22rruBM1IOzwqqrbv/Je//9l12f2HbP18K/FwPDOBZPA+Tct+7Q8i2r8jPIyY8Z/oLfCioohV/9Vbc98q9d27zmn4GBYaJ7i4NPsnc/fWjLhwLOJHK5AgSFaFRA9QfqSzOMiurtK3dtqyCFGAmUL8Dl4nUvb7lCaZv8UHRRyhqE78zg0yDSOpnn3f6BXfdgOsYwLfmc+25cXgwgUtwpyRMxgysOqVTLgNbqI/uDjIwQYsSRvotvvOwKRQ4F+KI1TwNibloMz3vkz1sDBvEuY7RwHKrmu+v3JUilPKj0eGL6GsvDQsEFDGsrr680ZHgMjCbty964XElfTgpfu+g1YVi3J9Vb9pdRBzGa67564lVdFFA+liJ9DXVhAOFH938BdRBjNn7O9ssgSyrpEx0LJmvCvJD25Jb9FUQQY4a+u14FPPRdlnSEMFeA9L7peg8ZxMpPfgw/9ynBBS/kOw3faQhzKhefv3K8fgkYc5a+7NNL63WfLfxmdNCVn1z5mwoyOIdtb+a5T4Ln7Wjd1yokgnlOxfnvl67YwUQ810o/eOIPHQjoS7XjYtYizEEq3rgNi8G5xp/82P4jhR+jootBuULwyt2YiOeW+mW3lwTtnvg1yaCsBmt/qmAmnjPWIwulnzQe3abv9DCJvJDaUQ9VcG6o301FmXvt2l69KS4IUT2KKjgX1K+kSr+eoW+mNyiLwdoyiR8SOMj4gfoVaI8k3+ZicFoFMREPavbdUeKs99Rvtgou/APm4QHF7/6xHlW/JhU8ZzciOIDZ9+1LpfPtWfVrUEFXiCtXYx4eMPwyBwC/Hla/hmVNOZeKJ8qI4MCEzGYfKwpe6O6gh8msQXAjx4IBG4wBwA+KvzxlTPRJcE4LXEx+HBEcAPMhs++rkH153+AX2BEoBTeW0Yz0vfd1drj9UfydYYglgv4x9MN9Ln9DPxCib4q/M0pBzsAPI4F9K3/ZG6Dz15/8wVwtmhdiWQVFsF/l7+Ex8L5M9G1QLv3wQhTB/jS/2Rc4yF8f8xf4YSEeRRHsQ/m7RMpfvr/xqw+NMLFwJxLYd/IHrT/a9/zVm4JshYc9wX7ib+j7nOcHAb8ZEXzjOBLYJ7GYkCcFK9BB4a9eCfJjODrcJ/KXeUWmXzYw+AUISi+yqYIi2A/u49tFkaODxZ8SQVfUXsSGTO/z9xIMfQwYfvWeIOfLkMAeT7/Dx4VPB5E/tZeHKxaVMQ33Mn8Py/TbryNvcUaHZRp+Fgns3fR7AzT/+KDyp6bICLEC03CP8pf9m+B9Nu8vwTxBJjZ6SGBPNp9LokAHmz+1ZMQVU9iU7kH+7nQH0/2GtQSrB5HAHku/zgtd32rNohtm4nEsBHut/PPzXMyNUAtGrsFCsJfKvzGRH/jyb5YbzotJ7Aj2DH+XFu2Vf6zl+V3qVC5urxCs7UQCeyPuhJmn1NKDz+Wjvp6zNQlCFoLCRyvSE/GCte5fsHeQ+EwrBbxKBLsfWesIrkACu28/9nLfTvkHO7sJUf3p1rP9cADdI+/6YxFU0M7lQEfwajTDXeYvM2pp8BeGwZjwl5UJmdcKwCWEZG4qSkG280ZQ7tJFaIa7GsMlWPlhq/XhP1GBY4VbAwhHDmdfKlraCQTeCX6qjAR2T/9GisLaoxZi0dZgs4/WAHrwdTK8T1jqCoEZnhpHArvWfrG18BLmQVX/UV+TEQkgUX9pc0n4VrwImOHaamShO/w9aMn+qunwF5Sn1wTpAFQ7cu21NC9WlgbCn0AausHfU/IZU0vPmK8g3nSi0wKoEHySCXtvxz+xHWOfv7Xct2J/IctVn21od8QAEGZHXFK05I/AHl2OBNqOtZbaf5w3D7vGARDSteoQ2bhCaAi+Dwm0q3/PC9+S/ciLcyte44rweABCj/ywyNmxItwVjyOBNhswvxZ2Rry4fLQbmkYbYgIIHRlLrwkHl34HEmhP//baSW4CktutzaNdcQEEEVwLRsmSBt6KBNrSv8O2hj94mLDEB1CS+wtrpYIrPoIE2uHvryJnZ6xVuuwQWTEAUBFIrb0sVyOBFiJrTf9YPjStmQAI7aLYr4vknbVTLlDUQAv1n3O8Tf3jPJ594TQX/kCNAJQEronbkebtbagODSMksOfrP9j3m8XSv5w4N/RxmgEoCfxVTAJZAeazctTAXva/h0U77efg+BfO4+ifL055oQ/TEEAl2m6cMUN28qn2TlTk6IU7z1++jeHf4CzUa/fyOELJpsrhj9IUQOJlxnic1Mr9ynB7x4qhBna+/5dc/6g68mBqNynpfwRlbnV1qyrAFEBChos+1xPI2GuEPDQq2jhcIrxxhJESf8+3U/+pQ1BrRwm5UJ+CQbAmWs3zNAfQIQviVA6y/BuXWX9zqY0tNkEDkcCO8ZdY/4LiD469IhnXpTEMyGdbzjNOoIAO+UYMI8KZ+5qaTPiSgE2GaVINZI8hLZ3gb03ylm5w+ummcYcs9j7va0mQBuRkhBE3B1Be/h6h5R4ksBwcsbg0+RGLMHx4OfKSfnwp8aBWsKBt6sXg/EKmBYEKd6ripAygM+oLvfK6J5zggNYdRRhFpknrwL/jOpG0497Ew/pK/qrLggfrfUUrgFAAriYpKyDxhhjXS6+UQPgZ8krhmO2EC05hXHgCCUy1/Uwe5An1j8OMZnHNeH1Fh14AoQP4w6jHlwxAh7xT3w2UEvhfp15xkPtLSUWQctffiQSmyd8CnnCVmTrmqnZw5pChr+oFkLOTkQ8vGYDyP7GHM70E+hVvuujNHkgogjBHuroauUmPvxE32fqPQP42lGem9GW1FliKUK0S2cZICCDxsqUY6d/98PQ/vrgugkn+58xntXEkJ60YKiZb/6E28JlqWFDkXahFgOVk/UQ6ASBR3UCtBFZPy28ggkl6glzer8kKtgPTicwYd3kS/JT8VRznNBdFnQDKB/dm0ikAyReFTs64cG8+/felCH452cFj0Mo8hQ3pVBqA2dF4Y/lh5rf2u8YJ9d7rdAIoU+CUrnpvA0AyplVgSqdmtz8zryRafw+zyd6GBKbRgD6caIU3q1d/TiMUJY0AggOecDqngN4C7bskPdCSxm9Rh88m2WoGNPAO5Kf9WJNoAozazeXg7PVE3llaAeTsrdr2RRsAOuRnWidM2anmV3BkLMkUGehnPobNmHYN8L1JJgBS2K/i1Phs+SNkVNNVk3DU9A+snRRMnDGufQmaXZD0Is9LAo3dMAyJHEEC2+Pv3TCF3rz5VxDi0TM2Dz1baNQnTgJuE0CVhHVvwckzbgPZXEywEpVSaEhjtBEjCQaA1SEGYWc7H9bMw5IO5D9x3oq2FJCs50Irgc0tPEedRJGjprUI5W6tjEYkeQyXzAdAVPPv2pBDNEZ0AsioX+40gDAdjGrfgxMh4Gb3mbth1Q70kMDkDRhuXPiosY/HZ4beGmK9RgAlF592Og8gma9rBnLf90IIDNwwNbbCb0CSksZh8wYg5Xlo/oWs5s1oBFAKz2QsrWgTQIeMasy4vJIPOmENqUtLxoUgtAOxGZPQgPxcmKcc6X4nQw8z9b6reexSACdsAEi8EZ0EUn8qvCU6PAr7bTEzDczj/NRk/F1k3IBR5d+G8KMznGL0U4/pQFIAkJBn/GgfIm3KkvB74uwzPpSRMlegFbZigClvfaC9N59rBbBsCUCoBqJLC8bObfFWqo2Jze4LRyucxIBkSqYzsNQBfhOthj81TWj5lN5CbCkg+brm3QrpxMyk4e+4hpUJWGGcl2DKHzluaIDV3JfWZ9mfHT0EJr+76nm2AHRISVNdBItDwu/MkPHhPNIKvwmZMovrTA0wbNG4qNJy4GlPdA9G5ufvEXsK6M3TWXLuey3pHTbdfBqaMT/GMTmT+JZxmgnby7Shoy00AsgmYz+gFAB0pMDz6AtqnBZ4Rk96r6EZBis8gVTFjwWCc8NXPHKjeF0PRsrjEWJRAWFIOFrDKD2n9QUEm09TMytcHccy0MSAGPHHc4xHnN7skKKrEcD/xc9QaQCoBqY1r0Rk7+QGw1N6YEwOyYobhgYESpxq5Pn1Z2kF0CBBpQPgiHA1nZjXnCiTBsfEc5MaxRevxzIwXn0EIyCGo79T45H39nikawyZANV5AMkezUvh80pkm+BhKHyZ0Vv6HiQwDn/zzEZAoP03GX1o7pDGgvhGQwUpAai7KGlDoou2BWZn1UIfaifypS8Ah1zfZK9u0L9TlUj+vAd8nsogXKoAwuyc6LpAV7TBackmGsgjt7zBCGBxRo38HUw7v4BEpxbH1Qng6m4AqGsNaWyIzBXQko6vgbA5+0kkTJeAr4uxjdnstUdXa/gj8yOrLVMBTA1A8kx0FcjYCZ1eDY+ZaCCUgZ9DxqL5u8iorol3QpXGgnAzAUwPwOFoIxw6L7XpdmXGjDRQbfyKEVUACt/ofsbZETm62je0wGkCSNbrpPlm7QubGTXSQJwYk2YBGO+UUu+ByGFgban1f/aupbeOpAq3Us61r19SGSEYENREkRASg7oIMxpAiGTJzpHYMGJhb1h7ViizshkJIc3GZjQjJDaxxGZ2DiNl7Yg/4PkH1xI/wKomjjOJk6bqOi8y6XNOVZ2q29339tpy3+7+6juv75yTEIADmAKl/CFuMobrPhwojXoyw1nz29zycADH/EfZ07zBS4CMAEQCYYpzYBF44sOBM1kCdM35HWaLP4HjD66C+BMgJwCRXOCLcZXgz/HiQOcG3psZ4TfbyqWy8nmRxD31I6ixfVwFnhwAnUoMOh3VGcVuDH38QJcNnDFgQ7Tq4QA6/vuCgD+kGc5+/+NJAnAZC5BIv86LA6WpH8yM8Juuux4OIJn/3EjKQNVTDgD+HJ7WIBVpVIMXB7ps4I0Z2r55rXiUgF3947e0NocDKNA0NV0InQSAxZyBCbreI/2kBQ8OtHesZtrAbzDVcJteAnby5y9o+FsBnSxpzvytESsAkWYpPBX4MiNN7mGwx/fpDHGvv8EjugbQYyOfPkRCkJvFZBlQL4LnTsqnxPe3sE3WBzpt4O9nbuD/X7+iawA99vGJoixBAiS3wiVjwGIbOniuP1PTnnRp2ygiB45LcjMj/CoPDOhNIK7B5k+C+PrAJKAh5dkSA1C/B+aeVHlVEDlwsEHOIrhR2DMGfC0DQ8Wf1/DtIyQJvaMnDUAxBOtx5s1jYt6IwOWSPMzOHveZQP+VV/eXmm491uofUPGHJAGVehD0c3lNsD6EEkXWTb1Hfo2r5Gkmzg08niHv+SdYJmdgHP89pU9cvAx+WxOmTWIGIFKPI6gCXyLws7oiDjS2Rvh0pot5kasjO4CW/3wWAJ0oMMIMa1TkBiA8OtiYU49/9Ql5p/dYFzMzwuNz+2VNdJ7dmJ1HO/T/DHKL5YB90QoAzhkwUvIqFtJnKqrK/HOGvmI8JOAK+dR6LYHUPwMtcHVatIMBiwOQqMEG4dcfufg39W3OCiLPv+cBVQMjZWm81uBCZTj7/t8SLQEguEHMVJXPcS5OqCURY8qZEbbXv6glEO+9K8ugaSMPpEwOQDgTY12FGz4IHB4YoqhjvJl7ZoCpJRCHUy8xr7gNOfdShbYo8jNgcQiGIeqBF1UvUUd72jc6M8Jiu6K6LGv1H/z+93bJ5tsnBiAoC7Tg9CkYimJZEdOBsp52IyycAabhz9qLc785s6AQRpIrDDkACGtibLju91J/Q82rTr0RJqwvfZE0UE/9Vv7oXQN+1KttAiDYO+/rLYjir8RQeGaEqRFwyNIzaCZgYBk4GQBFCf/YPc//TJ1wPO2R8JfECNi+p2rT83+vQhZYeTr2qQEINi8bTxt8MeOdFgpbI7w/tfDTy8QI2MHUd/GtPjRJQpA0AETCEOkbsZO3XLj1ADtTij98adorAfAtb0MBWuDwECQRAIt1xWqDi0FJC4VlHaYJ6sP195r0ilwA7L/xcRW2aVdFuwCowTDE2wZ7bDpzwqypjEP0gPqG3KKfAKdKxgvdMzLgEBZOnAtvBBJDYeuOnE1jGCKKEa0NLnDrN2SBZdSEnjQALLbgE+P/r/WIJvO1wdpPppEBF2uilxy07BGKge2Z328fAOGovfT/xXp4QHIDnYszheNiFjYkzUAEjXOyFlgxaTxzARCpHIakjQa0YTtuVff0GeAtQzLAoXv2oK/poXLPCUBIvWhMFfKSiQsHpKk/mLYIZIU2CCZ00+gKFAPLuHUFiQAowKHlfpqsFwi8S6uI2GN+Z8oIkNYGYkzYijN9G/LoqziDk4oBi5FUPLroV/8nqdZkjfB0zc8Xn5NEMOFDtSEttCrfFq0EIJQKDGwgcBURSp/clCUDtbU2hmYZboWUygWkhY7RIaQFIJQKtAc27CjSho5NWTJQHJFSgOETta9XEugsiRzTnQyAcCowLHJy+WiKG2hP7I+nhwDnSBGI2ymwF3aHddACf9hWAILJS8q43nA30CUDN6fFCIttQ7IKNloN+qI2npSQBd5rKwDBgf5Khb0NN3mR9LrLqVng8DEpMotYKABN5DDR4o90AARVgTJUwy1obqA006IMHNSlITmAwZkBIJ8RpQRMzoBg8BSePSK5gZYVvr03FQAckSyCcwADG8fBaLI6LdoLQCh9ZAOUYAnPiJL1sq/8u1MSgdAcwK9Cb7EIWGAZV4ZLDEB9Hfjp4dGTXtigHHrlube2mwEIrQZi38Wt0GYZvWX402l5ACgGUPgkz4PPzipFGxiytad7F6kGErdTD9hPbcxZ0WIAggmkIFHg82NPmkBm79D7esgSRSQ5np4Ynk1La4GTAlBfAm3wjQhkE7SBlhse9b1Jc4tQAzEqZn4sJAXksMBJAQhKYkygIGH8VkgNENY76rcuS69QLIE09Y8iDiIUSVbxFjitCYaGusb9+n8Qsl9GBs8M68hFacSM2yEgBlAyV30t2g1AASXRQ4shL3Ix6OE3ddnnJk1N6QOJ3Wh7qVmI4DFyfmIAhGywLL8V8fJJuRhLgT1eYSM2CHss7J98FOMJjyAL/KhoOQARGxy1422OUBCx5qfHe+Q+pUQgkZv0oDIIiwVODUDABhsZI2V0fTiKQoH7faXAJYIKyxngKFnQu8D344iBUwMQlPKEdGe+ejgpuhglv9PfFAzBB4kcmQjNJGKJgZMzYHECiRkfRLETZR6yMep3/aTAZUIEIuvY9SnARASOLHQGAAK56MiO5kJQ5uGpqtrrYwBSnOBFYGsk4xZIgd0gPBY4NQDBerB9hKh7UHZi2DjkcR8JcA6fhWXiRZGXqpRKrCwMCNaD1X/jEmGUmciyj6oYkgrGRsDnkbXIE+jjsVjg9AC8BmQyY3uaKVPh7V/0sEt4nvTgVdwGRzFsNl/Wshx3ggGtDW48qnGJmAsjTCCCqnfZaCEIs4gY5hXPpXPg8zEgVM2WZeQrckbY4EzQu2lFn+JqIBO/NgVMwkSmMPIBEBosEqOIeUYFh3gkbEnyRr8ocAHPQbudFTux9wGGYqlY7sjHgMBoJYZIaoh3xdpv0TNh4CEe/TO0BUJKmJBB35MCIJTMjFPEjK9VXBRsIfphnyhwCc9BWwP8NPrQXQbiR8nV75AegJAnIcu3o/8/XhO2FHime0SBeBEuugY8hsYRVEa92RkAgrFUFX+QfrGBG2FTftAfClwmeIAsQzqVUgm6avMDEHqQ8Nakl9ci/kGkqfZ6Q4EjAgGW9+O93lWIONgSCxkAqEEqj05nCsoXqcuHPYEfpRFEcQxq17eBJEz4dsxJMOA8JCqLFzXqAS6L6VF7CK5CkEZ9n+FGzUVUwxA8ZgSgWAAqOixc/jmaDOyNJkGv1njMxTGfE/5qZ0WXGBCoacdX48ZfBZfFWArc7AH+RLFuULavao7E+yLUjvRQdAqAQGuV5MioE/wiS4G96JDDZVjjGhzDO91NNFRgAgB0usbmh3nM0FtabKHF0Z7Isg4wAnTeCMve+OYaPkvuIisDAkVFJndiocTkIb2gQL2IZ9155kFA3TxGPhHdAiA0YIQppfk+apqsF3iv+wQoUQJkmogzD7lNN4uOMSBUDIkds/7SOUcp8Lz/BMi1I0VvAasZ2Mog2QAoaqCqwyMsw9el9YACCQQYLcN/dm0AXtOjomsMCBRD2KS1aIm+8xRIIEC1Zu6wwGJQy5TFg9wAhJQ9ofsr3hSH4KNiOo3AbfwJuSbSXa4ADd1x5xgQjKm4XNr3sWRgx6f26nlsKfA4AuG51xZgsqqicwAEs0oR06I945COU+ABgeK5phJvqNTfKy8AgUQMmxNIWNvcZQrEPcDxfiiWryaWgUYeziRMPgYEEjGSTVpxhMYhXaZAnAD5ij3NLqBF5qbuIAChRAzbkVpCJyV0uEsdJ0Cj2ESPR1mUMFkBOLoCOBVcd/m4Qj9SR3OBAiVAo+TpHtftgEWTjEqYnAAEFDFsTqBbXYqUhDubC9QUAuQaxgm5gJxKmKwMCChi+JxAN7cbDYQ3O4nAdZQA1X227mfQBdzrJABBRQxfjx8qWO+oKEajOkC3GIrtbpALyDx1OxsAgfZgxsySS8X0kgJPDEqAjL4FkAVk6OSeEAMu5nACbfzWSwpEO0E49bagCxg5VHRyAHRNLumdwPEGcYl9qjudi4FHKAFyNl0BLiBvHS4rA0JtfpzJ9d0KpcCHXRuTsIIRIOsobKgQLM87C0Cg0ZlLEzi+flkiIwNdj7DuFgCPMAKsS85lAM3xouStw+VlwNVGz4I1u67fQ0QjlgLf6hYFDlAClGd8A+icdKnxRrx1uLwAFM2SLE6Rt0Blc12bFCMOK5MrB30RLuaqw2UG4AhwAvcZKRDLRlsK7NL2GoEu5WKTAV68v11gkspj0V0AFtcAlS3rg2HTAyRn3if5pbGwilEGOL4OABdwv8sMuAI4gaxHeBXRRluf/cPuEOAQexqlWKsTUL6MP3zLyYBFqZqdwB3OG2ED26T8XmemRutrOAGy7qGYq/LwRH4AQiVGVo0FOivGDc7vCgEWG6XMKfDRt02OoUQTYUCo1epr1kfDtNHMVivlNY8RYMUscTzJ6QJmBSBQY+QWWQxwCvyqIwA8kBgB8ta2wWwZfwY/KwM2qywsMnlvh7Spd2eD3BwiRLUe4B1WQKyanC5gXgACTqCUx6z3W0IpsCOqLESHxT/69VqV0wXMzICAE8g39vriOsQosHzchWT0r2uUAHd4AXEEuIA3Os6AYrlupndmk7iAU+BeBwC4ZbBzxM1KYK5Md5wBASeQvTixi1Lg1fZT4BKBAFm/kxgALmCKraN5AQgozaTi1VkIlAKr9tfj9G52ApxvViKkcAFzMyDweNzVMf1nlAJbv8JQlCVCgIZZ1wO07iRxATMDEBg7xy+0wGqo0jxqOwFexmaNKHZlY7NuPYkLmJsBASeQ3cPQf0NVdMctR+AB1t9yyr0FdFhnzQJmByDkBHJHpUJsYDK6ls/KmsPmza1xFxShNHQSFzA7AzZnAqU65r7jyRWsl3uz1QAcoVuR6neYb9mchk5RCM4PQKjllDkVLYq72NdreX/cgLJ64havrgxIQ3POxp8cAzbnOZlT0aJ4F9/fZeoWN4dorBXEmcUr9X9YEbghVbZ2kMkA8KhxTJvkzcst1xW+V5K9y5DxywxRAnR+S2nuMTbEAWlolaZ0mR2Al6osqWi9sF2hi53bnYlBczAXT1CeMjqyzXlamaiLITcAocYQxkfUYt2UKP5qU7c4E7ONHyCnYzPqbIfP6jfP0GPvCJ4QAxZA1zMbyeviCJ3W+4x1W5uJmcOWMjx/a2v1/T2uF9eYhjapGgnzA7CxO5gzFf3H+oqhfL4WZ2JGRlLwZzlwrX6ieRAIpKE5p6dMFoDXTfpU9Ce1JOHPKaMfthN/A0II8vwZ1uqfFhzwgNLQqcK17AAEc+0ss+dE8RkeAL+kQLPXRvxhOpjXOfAdFgRebk5Dc88FnBwDNtN8/T/urjdGqquKv3Ch3WGB5A7pR3OdqdWkSfuujDHFSKxNLBSFJUbdpGkdok2sbQl+KI1B6+4HQyC1dpJGA8a2fhDxHy4fDFJLC8Fkq1gp0aLVpCyamv6RQu4L2xUqe73nzczO7OzeM+/dd++7j5mkSRNgZ+fO7/3O+Z3zu+dYecpIsFJGlCb98li4pYjFaBImfYRa5cAvWECgvlGqSCMYEAbEEl0beYbCXxgxmvzLi4pYieHXRyI5ACVVD5wNBI7p8/OrAwNA/dYuG8V2ElxXj1iKL6+gy5NGUhBg/ClC+UhmBCJDOdjlwWFA/bDo7AM6AH9JCoDzPDEFnBm9UqYDoBUOJMhQDidmVD8AROYf0jCjIUbhb0wwmpI8ijcwlR/r74NxwIFrkDL0+OAwIDIBNqMhBvCXsAA4zxNzY8HwR0r9lk1oOTDTS9und5goewAgorXKmRaGxPxXoWm/OurI55HhhJZFIjUAYw68JxMH1lnOTgRPDIhsAZjOnf/iYvS5giFwglGZ/gUceAs39sYguZFwN0/RAwARU2o206PSH+n5Ly6yFmxOzLqEbeCFHFjJgsDl+RiV/DNgoJUJGcQWCVbUTfivKUMOFSoCb08tQeY4sCxnxw0RiAwGpO6uUHsBoH5aufGYQB6sCwWlZsTBwssF6obAlXpmBkD1UaryyiFDBCI2kf8NFAD1j5pxwZ0HT0tREaZfW6GGJJhJkC4OnNlqJkX0BrZw9WAx4NJI24wzXUX2a+j/mvOGszqrmQQxxl/TGzN92gCBiB0/c322YABE9hYa+W4JD74iIyPhWEQZskqIDAAEbwxjb9rVIFweQKkAACAASURBVA4HiXlhQKTpbXD5lATkjOK/LN9akWSIuQTpcGAofwKPpbXEyKFfwwsAkfkI6VUICYY+KctZolbcDVldEPwlugzXjwNpKO/hQc2WBqEOZ3n6YUBtKTq9CuFx+ZmKjN9Zcbohy6KMn6V5V05+IG05pp67G9obAJGrcbScuvxSZxWRkTOK1A0ZyZLMzjE6iOEvp5EimEfE4j7xgjAgkXZ6IQTkr6hkjVnxIRfElLVCWvg0kNVWZfRWGgR+BNEgwYAxILIMJVUvJJYfIjv/FciUZWDE0n0gClIkeSKIaJDZgQMgshE0hfWWB8MTskyFFcYoxt0QEoQhk3ZeIIZvHU9Kgvxl++2pAjPg8ihz14fw4Ok6KzNL35coxpSO5ZGwBUDBaFXO/CFIqEX0o0PdzGXzmwNqR/UmvoGvQssDKvxSau3rKsTyrilqC3+tRFB+OhEC0ebAIT5wDKjvOyacRMyDoTtklC79U5SA/H3G/G+uIfhaBpa22hQngvcmCcNkqV6DOG2U+wLgFKJC+r+xOtCn6qKaMv2jgiJfr4gi7zuEyYexIqAitNSEzxQCZ36XAIHa0agurTAeAaj3niW4oaHC70khq2kvjrFQIm1WJUN+5JsBkesyMUfLKK1TVUBFEMIw6adBKiy7LLyGAKg3xPS9F6L+eHhERjQl/tRXISexCEep90lZ6zAfghDygoHlViihJr/YNwyPaa9JuHUKeQIgdv9gpn/xuS7LafsFgkby6+jIKXAk+I3B/Bg2EQt0Okz9MmgNV2T0Kl4SxDSI0wKpLwbUP3H4FVSi1McZpT5SN39Vvng14OjiA9/b4whhSASGzU6wvdWgUxer4UcbCAmSVdqIJNx2yX0BUJ9zCMz9qI7wu/W06reVAM6ME0iyEAr0PSYGLQIKEfGAD9cjg8onBTUMJUEtCWrnYmW8KltcBtQvpNB7L9RJKPpjFWqQCFWaI2DWRJgM8VwKxIqA7b2EK6G2YuKPqQr5S64jQX5Mb8e/cSAZUHE+Tes+U4/v42Mm9Bf71H8GRRYyhM0c8FsKxIuArVmuJPiB2d0/SssYCepHljm043tlQO2YQN2kXhC//5ayYtL7Vfj7IGnn+QItBXqUIEuwIuDcNGv+JXUGJu0SRpWAOajJBBEN0hhIBkRKXou7f9Rv84JR9tecJD/bPvePIzTjuRQ4gUkQyW5vH8SUNLv/x2ISfDVWcj0o0M8KcO3U9QZAvl2nQhbzP6q48f07DOkPhqZMH5p77i8i3QSvl5NWSITYaEeM8tJE2glgXSQo5bfGFyJQbw4pv0sGlAGXaHXXAhpS51U6GbLIzPkHHZAucfExTIYIZ2PI+j+RT2BOwHk7nWAGp5kJg8F1keg/vAeCyFCE8P0DyoD6ylOv/wzOKhYfZs4/EMB3dXd56yEWg7d4Y8A6LkE65WACa8hMbUAUaoI394qRKV8axCMDrtWrkHmVJ3VQw5+SxsZTEMDf6GUahAJnfeEPvQ7MWHckJMEqGZkaIamAOPzo+DwI1t0NrS0sAJUKSeD/UYdUOqkyEWp47w3w17NTF9vAAcUOP+04vh3rEvZUKKEYQ42tkEJUmZy+s0uMDOntma5vC/oDIKJC5p46OKEXxqismt4Ugw7wbE/hgWANYRau9lIKJAQvAvb2aPhvZNnYOy1gs4i88vs2BJFGnOM+iFcG1DvQWnkHnM53JqSsUuObiqzMroz3HuFyLAb7asctR4qAi1xY4cEJw3JgOzCo+PO5ra04rF9Q43x8sT8AIiqkqQTU0Vy3Xijtaz6sDFZJHlpY0a5jpUB23AsAX8Z9Oo2FddETMsN9LBEXBeNUkHB9Iy4HGPhjQH3iQd8jwH5DJyUz1b6tfDucXmSdM38GYRvK/usjBq/FIvB8CRJ0FaTNOTDWwyoVPKigzUf0TYHxwQVgMKY5cxFdIqA96hB9zW/JCrCjn17MZo/LEC+zAq/HIrBY1CTByUWZcSQTLTMZ3dlAGnHOD8MjAPWOLCqD0n2hyJL8NflPnlv8mgciQ/wM6SBTaBdEs8e2NJKNAyEVrAg5c0F60yBeGVCvQuSFsfhsshwu8N9duowfkSHUgyUGN8Lo78wDAjMdErRGqlJPvuzyAAMQuQkogf2yTbyCrRkbdO+MyhAflphlaASWDa75HJk5EH58ueLnTrp3AA7ry5/lrAOHgP82aD3oaN/Vx7zei7gE0Z9hdg6EXFlqc6GtfHABqG8ACZl14Avkfz9F3hmbQUXZuznHYDQCo0lpiwNtjYdYcBTug4FXAE5ZG8SziP79BXoRETFlKXLk+bbjUCtqv9mZCoHWBuQseOvZgQYgMiNLWuA/Ylj28GBLHUENOmgzQnHglCsOFDnURL0yoH4ue2b+29DnIja2j1LkbEuFUU2YPaLvbeU/O+JAhyviCgFAskK4ODYW9ccfejdELzsdRYJPoJ2ZBE/DCVtjEnvf+zQfaAbUV+AzPLXg+U0wm3YlUgrMOwZPYGzM+mtyHryYbU+K1gzIg8EG4EhoP/6WWfQWyfatU5pnDO4TgZM1w36bZVOU7pWHM8gnAGv2VQgY3aK/JBlLy9dEIo37xGEExmaysWQ6gAfftjQse96D+B6pDWwdMP5k34us8x+s6kvym6O1N5ZD9t35TTANTOXxZCgOngpFxXIYjm1xjiHoCYBggyTP72d2GRBm4V1JPOFqCikF0vcVJQJfSvyDVtRTj0zsd57TB++H0yS1gQJg/HHIrn+E0nAxuL78V5GXku8HWh4VQgejuUCq2f3DE7JiVQzD7/WhTV8NXPJg7gCMP8nQqR2Q41apsBl+lfy9pZEYf+gwtDx1MBaB02wvIUHpX3bFMKNV+N1mPnOkyYP8Wgdgk8pv27a/iT5qM2DEtxweCVKMecbGQYrcdDAagSlLkwoornwx/eTYfhCsQp402uRBB7E4RwDGD1Dp+fVQeilbJb84/Jb19ivNC7mJm2MMXmKxKQhiWFoVwyquUMWD6v+mN93fcADCnABYi3/r0tE3ACvVCrVdt4cZoNN/T7snfKwIMRiLwKmtiUoM1y0ngs2NN1X4iTf86o+Nzrd57QCw+cyUtq2vN+FnvW8Z7wS6sjUt/vgzSDsuJ08WmCJtmrPj9WXWuyIdHpR3n3+WBxYzQtcAbD0se7etl83IS+23zeP079ZG+i0fyOUk8GTlQoDLsAhsMLG1FpTOWE4EO0UuxYMK2qMtIrSCQacAbKFv1ys7WIy+ihPPRpz+pZIfnfCH1aJvzwWAF7HLASZzMeIVtrYrgu2TpgqEIXD2zeePNFrfMS8kANtPx96jb9ehqw15nxvbZLwZ982AWKafnHzRt2H9GLMrQYQHP6zLqgt7zFxCCD/7pofPP9v6rmsFA2ALfeToKzsgbxDVqv1Gecf8UjFI/1q/5xAWg3O5m3Q9Wg3faljbhkV69lvDnVjcJEImZPTwX1tMaEqFtgHYfhjWPnZqvxRwu02Bj7o6itj8Iu9tGC9501/HFfnE4Ck7bbiFnc4HpHU13EOEKqWSAJ6bdm56sGFMhTYBOPcM7Dp7oK6ewJj6mLMz6FqExjMQkB6B7u8HkxLqiNhi/oPjekxEhXR4+gKkcVMby9HNk20qVDio5QxAMgc9sleF3aaXDLI+h49gW/3OHA+IEwCIKIcZHXg/OstcFh4M/xOmylLp9NVkQhbDUVHh5J4FkHANwM47lQ6fPfDZ5j9Wv5Nb7LXKAgmX4SIvZCxkDmtr+HaBOLGuZvpk6h/fx9Lv1DMsEpabpWpFPHdvmjzyZFdU7ANEYwDWuoiW7D18amMdgFdh1Zj5mGv0Nb0vUZbwG7+WYjrY+VyKIGRIDvq1jPE9IB+dgJKgcwi2ArICoXor+EDR6M/fmdzDu0hKC0MDANa6f1xp15/ebvEeEF81D+jF6ICrH0r9Zt4xrR9ZnsOsylVuXdm1gPxNmo+XNaJCgGHY4vUbdm5+6bk9T/YEzPloTAbABf9Mydzdh196XWkNGZtKq7HYzQt9rVnv3+RB5qYkP4aoENeDKfgTAmnDWfDjKAZ/vJ4bCc7jwurcW1ZHd25+Z/LIvkV4DF56ALb/Rs9n2vvcQ2c3Hvh82JqpJMpN8OX4CTvLHy3gA7HEUNc7MnJwQ/Bg6I0cSXCeQo7ZsAIPcvyfnB798YXXJh88sntfbV4U0ADwXDda9+1+7PBDr72+EQrL/2fv2kKsOq/wxj1Rx8vAf0oKhcLmjJWQl+7dOYTW9kEfhIK0sSQNA33Rh74UlRFRBuahIwSKrQ9RAsFgwYEKUyRRoRASYtCHEkKr0ac8tJoJxV5eOrJ3MrGKZvfsy5kZJ/Otsy//v/7lnL2fvMzl7P1/e12+9a210q/3Eo4lDfeU0Vwfmj9y/a0uH2x2MoW7hexN1jMfpJMbQcUMwSWv3EqBkh5c719HXxmfvHD+xfk7t68f/B0C4B+vX7/x6fzdPRcmj72Skz0ZkkM1mmPPxi1l0d9CnwXgpdwg3N1ueknGTmpOprZKYG4E2e3EithQpaxhgpw4bsVFuoHC3HJm0G2l39z7SdZuJk4GKqbrznShgOhQN90ch6WAWuswncVNU7H9K6ev80tBrrhH7mRXmzPB6Mv9JeZPI0GCh1WGyuSEWkoKmK5H15jtOMPddLhlrDpcVVqj+gBQScHdUumjrTH66++DzYoCGbU4XSP4++k4ZCgPrOErW22R7vfRigPSB5sUJBBCBP2/OHDcv/iJH24QWKfyG70VONq94rRvRZBA1qH1a8G6RvBH/4hrbh4YYPiFSfLx3T/pSn6X24Zz2Aeb3Bc+RInxTQA/SJMRflJwLVwp9Xf/P07HhEHCPjhZ3GUqCiRrMGZcf7r+J46jJhQszyP5cfzWcQPmL/PB2Bf63zBmAQkG3JgauwvBzf9OINggsGzu+/P9Wipvq164JBtGX5iCAlEGUd43TYWebuDW3UA6cM43Cf7uf7RsvTKnDza3rY8ogxhNvpPH+Mt9sbGupTV2JS3nyXZv1xz8SG9orBji3iM8cGhUhdNJF5E2oWBR5s9g8FekHvxtI97Q3UiUQYx3hHayUDAMG4z1sX/dM/r1fsPwyzRZ3PnApojwwDOG7zf1w2/8M44bC0hbwDj+zq9MBn+FfPBnRozuBE58WDY1JQ/1h1EDQBqA/h8MB3/9OTlTG9RtSSCW++FNDQD7AXDGuPftV5Uw0xnibsXxF99kuNNNDNgvBnye6Shwe1o3Pbms3wa7OykPzDQbM7iqGgtIW0DFtbycCMmUESKG0KKqx1xv3T2/wRh9MawLXUxKQ8aQjCJh6kzkKBuHNsWQfmWQZ5mOgpjRYYSIwSSMGZe/6jUcNwDsB0CmMaUOpQ41MKKDImGMVZ9XqUY3IWDfUsg1LgRifXzoPWDkHRW9n1onABsWpgAPs4sJgESHkH6bRChhTCoQV14vRA3C+l18ATnOSw0oYtZFVjTYBVmY0GsNlEwh9BTSR4aGyhCrXWMQFNqJGHfO5y68rAbAOR8ykZGRdQYi0RemCyjQzUaPuI4jcYvQBGrWh7q4HYlhKOHiNY3eOO+5ONvk5w2A8UsmNcRHUEjUeujwnQf0waHmWalD2AOHC2z36yIWJvQ/O/nnfckIF6szMMzX2fLtO9Hb746gfEzFbOdBiAI1JwbEoniuBU0J/tZDix9fdgL3g2SlZDjaXqvSfRW20qGuU/865TibY/ws2JhAPC1S95y2S4T4a4bNAA4Rb30neepnP55OnJCxDS92A7/WaPcPCz9JVp24HYfwBmwAJAQJkc7yLMX4MC7Kdp6JyLgnxeAbyZohI/v9rMKvlQZ+Cxc/cnqbDC+1EQ9zmM8H3yRwoRMWGwgS5jHf7b6GqIdWnvmlEBy+km75SzddqTVk++Kj6cK7fPlscLONeJgHbDwMsbVI6ZRFBxO4H5OR9wxu+gWeeXI++Y7ncLStnnIIJnFfcgvR0U9S9AUF3sYv+QCIJSp63wNYhws9bz+bB3b2FvI6+Zb7D1I7GGWTwJ9K05cNyExt399fdYIgM/BLxgd8H58giyyGaKzGuVti7IEZWSfHKxx3p0flXtmTbkNoPY2JcS/sixdy27dy8jnmYRYYj+R7EUc17hmoAeAs/HTtfQnmoXtgyWCZ3/xtX4ZB9fREhPlI1hR9b2dL7TrBKokhfBp8Pokohih99AjOdUx14K1+s1vLcq+dFIRnP55NQdg906egUpLvVExc6VS2XNYFTUaQh/H2M5pAojtTX3OAzyp9hRcUY+FwIzm87mP4QboDOl/DK9YSqmW7FBcu/vVVZ3Xbt8jNtlFAsovPBAZXQ+MiFXcrMYXhEZ8HdsZA2N0n73OzM9x4aM+RjDQclTjnKJkolFm+ePvR2+/1AR/Fw3AKsojOEI1C+XUwBFSMpCclxuqX8edezD1548eZniZfGCOibNxbFxZnKcftfIlsvw2ymIfhjMvdYUzEaAMHIcVirDtiMVZB7j8/0bOH9hyLe6awbblmly0Jy33p+PlP3ltusyvWhViJwKRREebBuj4HobzmJGGcS3Wrn72Ddc+88+lshuZwcXmWx2/20jWJ2d9/8dMD+a7OTqfgzYyUD4nNEDHoWDStr6ZCQM6qD5H2lVoP5fZ829lDS1tTVbqChgeEyfjcZJNN/sui8Yup4QuKYy+7D6gNUpyZIdGsoTStztwZSSBhCOKrvAJu8aSHT1zp2cJstRa5iqYu7HrLv3rpazT138VV2W6no++FPMVpAnGZTFMQOIdlryHnqwZdTkUNsJvCMEHi8Mkbd2dfWvzp2b4tbTBMoTe6uP8w/aftU+dvH3h95etQ8pqGRCBbl5hDNexqCgJdHAKykjCw+BnW6ILIQJii0D1z8uCnvfwkDw8X16uWWMIVhsu/I9sdt+y/x893rV4S7rnLfr/epIyVCCRGFmgSy4+ESoASpvu8T5ujHZbjYEcXh3dnj73kr1QGLO4rBA1poddattLwyS+Jto9PvXhn0d+mZq/uFDU8qYn1XJKhLUaDwHPYwnKSMN3nbZh47SyhMDFQb554/+CN+d2zx75uZ2AR9mv56PjU7vnbH75/4s1gaV2bWx97fYh5TiLQoRQxWk4G8zy8JIzD5XHczkq/uOPMyXcOXr8zv3vPhdnJyWNHkAV8bnxy8sKF87vn71z/8MC7v309xzL6sfV9nwBFIG2iNHwQF88DYn7RcMxtQpKY4OUJS7V0r0NoY/quJXP9pGXVDb0eP4ayMlYiEAdpOoJAlwoBd7HeJ2YdzAcCGRxzIJEAfOIrzV5QnsaqCExOxoMEWe183N1JKA456SaCBnyW93G7GIAB7yfxZRCBwVzbYBCIWUBW6TdVeXo8qADc60tQBBKCZR1BINF18jnrXcKQm20qsjQABhOoMY6zNTitxhkLAolCsOff4rzLYAwB0Ns2qABEgizO1uD0gtW4+kzgWCRCDE2pAflGM0hzwbA25H2L9Z3Ebbv1y8E4BFSPeAGIacBbwWACEI4qYY9K4OCCsHZjiK88CXU4h2iBKCXGWlMAhIKs6DErAPHolrrFChxeahN71aYBGceRSXPBLmSm7jM/k0s4CKxXrsUJdsR8j5B1bT0cWADi4hDzS4nH99WM0IMJZVzwXzgdR+7mkTuwAESLo5J5icwcmTJTr4UbMhVzpg83NHBLPyQBkCACeRMzvEer3ogYdz0h9brM+7ThbED/Z8HAAhDpUNipKSzJqlew3SAmBMRdsOzPWpAL3oDfSilBYC3JCjF3wWNmmoKbiIXxbg2sBcREIHtcgqfY19rahbNrdrtzTwoNKMkCQiKwxZ2ZDeMg8KtaP1VKCAgXtbLTgJIACIlAZkmqg4XzYZ0DGoqEqPGpR/1wgAGIX0tmSWqSDyFbVSNGOodDQO4YY70YGlAUADERyP1JYBBYR5Q6JyYEhHLUUP1vgAGIiUD2EAkHgTVKFlCMqn8bZ79rE1Ie+S8PsAsmiEBubgAygdUZO0Loyh4CQl0iPw0oygV/P4qFPBYiCKxsjbESgZsFpHho9lddUhYM00RuJpoIAivHa3j0Az8LGNz0pdCAoizgllAKE03srKn8WaZNibyqRBhtKemeKAAOQ3bqS24AEkFgNSoaD51hLwQThBc/DSgKgLA1mLdnNo+SYBBY7bkMmRP6lz/0WIb4XBwAkWdQ/DYCbtGoSkXjtIa76w/z0OztN8IASMTG7I8Fe8yKy6vnzDV7lr45yEPzTqmWB0DIDvCH6VC6ElaURviCQkAsfGM3xqIA6L4QiaGnoHgvDKsAhqChFX+GhXloC4cuKQbchAn6gN9KaGVNsBqan+QktgJdG2wLOCKHicYNHGEVVTRWQyvWIez9Yu1Tg03DbJbDRBMtbJVU0ZBXVBH7nWG2wcJnEQVAVxAT7aD1iWGVCXoupqEf8x865KG/GHAAwidjgSCF4oEqNouay/Y5/2OOxchRpQEQSVJtlIggZlSFMd6wD1fxTj9M7wyN57UgRxUGwGACBSehY8FOKG1T2vBQDsUf98O5HKG/bdABiJlo/vQMdyZVSImmfROzFioeOSwzWuChhblguDWYeU50eqHqbQXQ4P1LNvJ7OAqUPxyQlgVjJtrCo8Gi1LKCGHcENznN8PsZ2Ppg4zWXBcCt0DnwnxPWI5QXxIxFYlrSU2024qGDQQcgzM/4SyEOoUco+2kCyCmGC/y3BedDKwsfRlgMiBgqK6UQPEm+tGxuGhWCWxaYN1gIscFDSwMg5OgtlEIwFV02C9EuLqx3QeG5jbdBGADR1CYbBSssoSqZheB2P6UsJFedWI4eWhoAIRNtoRTi4FkGZafoETmIhYcMBfne8w0AMRNtA4Bwu3S5LATPHIlsVP9HJPHQwgDoQq2ujVIInI9QtpFt2heUWxGyXytHLisG3CCpFIKPqpzl2qixqmwyt+KXxsqzgCOSSiHJziQNsRv2eVV0NSbDnOMNDQMnJ1oohaT8naehFrIOmXUrzG9wtS1lPK9AAO4QVQohVpcc1vFTokc2bgoWQu43AHQcT1K4jm1XqSzkkm9i5n7la68grlUeANEa0ZYVkhSpWEplIcNa++vqX6KqTdIACP2Dja4QAjsl4iUs8eEfzZtesSgnIw2AVyUVyglBTAnKAvaDhDaCLqg4iq2E2eIAiMSSVhJG3MtRIgvBohorUhiiI2SmASAhyrfCERA9AsX9FVx96G8TdOA2BvAIBCAW5VuJl7C5KJEywjjSBrkurdgkDoBbRdWJnE5cd3sTJeo6biOqGJPUeSgPgHA8jKWQAPnP4s0cuKBshfiFw4dDG73X8mLATixJK5RMtar5QuADV1Z4N2GSS3EAdGAj0MtWPg6c61c4g5jzRdEeokTnEgEISiG2aFI0ISYsXDfYpwS1gXevaVGFEHEAhKUQW88nRsW4Yh6L6C62E/QLK4TIA+BEW1ItznFxFnKqzvPt3pCVHARuA7IV44gDIJJLWoqRcR2joCQQUtmWav9YcXm4AWB2YIi1cCx9nlorDfCOQit1EIJotRSSigPgJlm1OGKpSzGB2F4/lkRs4lKThQn5EgGID9zCGJ8sZkJZSLEFdjgHsaLFwpU4K3UZgRYQt01fs/OBkCKr0KhoGHKFoZ0chKjEOQ0Ak2tjLCtGgR0dxYpx0ONZ0WIRhRk7HSECAQhHuNuRqxF9IYWeEFySaacfhKjEfdUAMLsAUx9aqlzVW9+EJwPa6QdJKoOCRmOJBOA9VIt7YOcJoVJGsWFSqCNOWcqpYNeXldFYEgEIF5nZekJ4e06BNhW4IUlZojWdfZ6s91seAF9TsnwElLMU6Ixzt2hQVDOF2HYiHIEAPI1qcZaiZDwjq8Cq8w2RsNI/JhlmggaA6YVqX5aKwbW2GMMmP2uV1/+zdz67UWxHGG9lrq/BvrY0s2PVmTgbVj0yIuJKWaAoq2yMdJUsY6+yhSfI+A0CvAC8QVhnY94Av4G9ucrS6pZtwBg6/gfY4/6dmTbg75tQtbUlH5/zdZ06VV99hS5ZlOXyAyDXikRREzd1jK/m8iM4l7SgpSqLa3EFj9mieiBygfXVOanDrzXr5uu5c69KnOEVjMUrVeICG5PGc1JR2qNSxRNINhJV4gwBiGGyqhiMjKqxz2BuKxbxu92UJywBiJxxu2fR+Gfw3Be3NH39j8lKe8cSgKteD8eUbvCYZzCPBbRL84s6HiwBCAKKqmJwQmR8nB/jR7Asnt1x0l/0BCB9pLJiERbjyrGnhpVgVSHOrOvVE4AbZuVyLsaNrQZ/IZv6G5hZ378lAKkvrhK9HHlF3bScCpcdctm3VJsF2I4xIKWqeqr6faKPIh3KzX0JlfB6c1yy4zYE4KxbMTjRypjcpM5y5aXKkWhRUSVZDQHIEp6qXGn2Mz6Dk54s0U6y7vYpyZ7lhgD8yaxvK+M2gTGx3E5Rm5Ud5uwK7YYAJBl3kYTnaWYov4qkWdE1Y6MmotksAPhpSVgMXhMtiZ/BSVd2z0yIKjsenZ1bNWVaApAFxDYHZo4jGcyZTYY++5LMSsGWABzapQp4tkbqm5h1ewRzkl/WcGMJQJqmJ3McLBCTWhJf3KpHMHMRZKVgRwBiMViWvk08gxP1aXy6yB7BzEXQRaWOANwwa00/EQ7O2xNLh15y4MdGXIRiKQA4PlLuyj5Trk+ngvcvklT4Nla4PYssAUi5AhWPPfkM5p1lMVxdKOHWFez5CKHTlrF2rySbmZgKKNvae2bad54AxHqRLlnFCkWJk5u5IofmG+4scxHWAoDnsm7kOmTpeqyqJYKnRBYms9tZWWLIEoA/+rERsh14BnP+YnBlHvW1H7ZyZx1jQGRNyigb2BtcJkoIwy8d8nV90bWO6WYJQHyriYTlUwEds2RRGjBfynT/Re7F9TUF4KqZgE7i8sKAjgMJldj1ifSdl0C0KwAxXy+jwyTiUng/crwlY79zil/HRfAEIMlES8OCbss1zVRmGTpSdgAAIABJREFUwliWHa+WAETOhq5gxOLetCbOwuiSSbix+Zu4gi8+Oe3oMERtwTwMcnp09Zyss2PHRfC8gilUyW/J9okcGidVKJDVUSoSwfWj8IDnD5vYCLnw7LBAvdsuaFRSETC9oOMieHpAbE0XxspERwB5Du7tc0yw6rgIlgBENoIyW8DNouutADvJcIdvZT/XdpkhTwDS4QnzpYk8THNy8goMwm++r37y26YAJG0EYcUIR59DYQPFUZVVL9aceByPkImuO13NHIVeyubSLurC9A794lglzcjyEXKz9tsocmnU4bFTuKkiJJRh9gKAk73WhFdFolGgOeNhmIWZ9SPDmAJw1TBYxjzMXisnrtzXu4aPO08AopS2MF0w34Ymm1Dn1WVhcO6nML1lCsAdOz5WIg/TxFJszx+8DgCiNNG7AODFnUJxDke33LgoJGMJG6uOXuZ2ZBhTABJvTUcmbkkSYykFHRcm8V0vhQe8aHBXKPlYzIdpkqzBrKGQ+pmIbB6EB7x4fMu0KOGnSrdqMyFrhdylriOJBzcpLxZPD0jdW/lbv52qG8ce0XQv5Vn7KX/aApDmeisvMMysNL0rbhryThJsrM0A4GTORtjTnWV3KA/TkFlxLPsnxLdfxhV8cVGkYaJ8Q/K1ejm3zGnAnnD9rDjxIjzgZA5ESghEfkEDn7g1gf86jvpHR7fs6QGp7FUpCYHIsLqcCETqjDKGcBxB5eoBbxoSAhlV+e1RVA02+m3FtK7hqBcN2VimAMwMCYF4rzYklztbhR8Zi1ttDgKAl+J9O4G2VCLw8tNo2PXLuHGz4YcA4KhBzl6o5HlkFMR3D1okPIS7OuOYW/AEIGpICNl0LRKBhgM/jwPTp8TG2g8Aju7VFgFQSQjEROCoX8Y8ZlcZ7qPiiZQgYQrAh327Fv5EInD0YuVwX5gGRM0naYXdFYCoj/Xc8rMY3atWxBn98pfCA44adS8oFQK52Xx0VUwdfKMEIPJRH4UHHN0rJAQK82icCBylpCL3Xbv8HUOeuasHpA5WKZ+TSTqjUfyOY08Li4tIEx6eACRCoG5ia5Yopl5KpOF4YWUakPmo2wHASX2NNIhCebNLygJ11zCPztMvXgYAR1e1OOlld72Wdydq9qWhlF1pKZvLM2sBwIkvu30pAKk1+KJn85SXyzrtJDa/bwBS2bUnpURjIuPiJdaGtXCNZjiCz/cRQpulpUTjyMKRzTLUuDYdQmoLwI4jJfq4nD9JJnrwpEULuz6skfJRXQGIAfNr5aI4E32BE02OUlvH4U6vgwDg5CmDUrpZ8DgfGT7jqa3EafTdAGDDe7MwjFeQkjoisLfSd8xDU3K/9z4AeNmobCRt7MZmqZG3EfIGpYuf9Zu+YgxAYqQqe6iPrOhOos5h2VLF49LfBQBbZNzWpIeImejzWzpfO+ahkZGvLW+6AnDDkpM/2JqgWaqzgJwF6ceDM0iVhGhbAKJE5bbnd3HueeEprcQK0VJCtC0An5W157Im2C3MFkrvOvx4tCxZ10fIcmXI3mXt8fMpZq6XSE968LCFxnUAcIaWpd2tuQm0g7EjRPvxDF71DRu9bAEIWVP1fQHlrAu3K3efSR9QLFG+HQCc2NWoI2bMsJx/X7CsgzR8wJaQzQDg5WUtGsqUH1s9gVD5sG/Iu+PqprZA6ArABcumEKyyXcgxUyGk0n47Q0dGvm0MiJL02qYQ5BmcY+lgwXhXC8DCkZFv6wHnS8dkLpcIP1+vyDzWEvI9hzD7ekDi5GupGyxa85kkgdGDuKPvjidFwhWAtF1a8lpCJ/rTUxJ3VBy+3vAMTV0BiM9NcSA1M367Zj1TmPOOwu/GACwcGxiYVvy5QkPCSuKSF7O5DwKAbZIG2q4k7AopfvkEQE8iD5PEdgOATUZpU3EyjdJDnwM8rMSJE76odvIhANiYcLPsSuKO+U9P3IlIqz4HXfe0eQVbAG551rPwcfQ5ybfSt0x3YFPcfgCwKd/xytKPoPTfuTLH0FEhn5vixLUlWwA+9GyLQ/+2N85Hqitxs57VdVsAbnQtOU3smT/+xk3PGg6SucX8IlsAUjJD+5ZM1OIen20oKstpr7oBNjkshQds2i/sSto0/TDOSE0TkaaNNlTcqeL7Cl6uHNO5WXa3SheDeUOXpOvOMD/+KADYImSRr2t23LpmJ2ick7juruW6bAGIk0KkPVycz/10jjOurzrLpjhfAGJbnPiDXRgzw4l718XB68SD7gKAJ+uas2wMxkdumd/qJK86cetFQjVzOwDY6qrTPtowzffxkcsZ9MfaGJBqm93NAGCLq06dtuJCx1lJlbkI2mUnhh3HI6RpXch7eisG4HAMG2F8rU5jRC/KX4QHbLI/IPFOfZD9dKl36FkKZtXt9fCATeuiFoauuDMdr9jX6Sta3ZSJFHNxbGrrAcczP83SGWcxXmcS9RiFrVp2ZfoCEEkl4oPEYvAZU/aeqedmYYQAYLvX5qF2WZhoPiUqIhlG/ngyVayZPgCqYykqtZ2mM8ZWSuwAuBcAbBWzVB/EB4lshJOE7vhasVtIcxAAbJdv2/XeMMSntubPYju7AcBWeSv5F4slmufJG1pdcp2vPW8UXwCuFI7SCMxGOA3yBstlblnxmjcVjfMFINUu1SUtyLN8FMrHLI24mw9bVQ7DAzanO7Y8tTkw03zaXcZNS9rtxNq6Oq/q6wFfWQoMHFmeavCmcTDyfO+Cp+SssQc0PUlmG5ycJNLu1KGrqW6rMQA3TMVhkA5zGs3DT+XZDhLHUpcIpxCAj8UABB93JnMG2aOeabZDPvfCF4D4nFzXHiU1V5wlKFc9hTlw9JR68o/vI8Q1n4Gu+TQ/ZMoiQ3W2/HZ4wOZzflZadpclXHMySaNmY2Gf9S/hAZvPmbQ5xCWFbPCkTASnN2pTNhYKNjwIADbbTGUpj8XV3uPgdEyhzm875Syd6QOgWGEAL7OT2IAKDup++sR2BgBbnrNaHgs1G45dM6bb1GwslgcUL2wKASheGI8KOfoyfENqilwDgC3zBvodWygTOzbnGjig4Of9AGCrhenvDCI2nTBSOUAUv9095zc5A3CxMg3nkRD4KPVEVqfPSbRL7Zp9Abhg2t1D7T2nmZanpWcFm6cOvAwANi+MGJTyjBpV2/LbWaKAmKkB2LccexEAvIIVLJuEN13lC8DwgM2Gsf6SGoBDZtbhOb9WAxD5vS8CgM0LozYuNX2DKX/7nXFcLSUA+57sNmMAupb1kfR8TPnb8iREH30ZAcCWdqP2ZFBi20fvfYbNpCc/kxrOuHscAGyV7dAz6/Ca3eXrWU2ITkhXDwKAsDJXoT16aJzEeUNTecrMVTvdF4CUbhMPWE6kWo5fuqumi0ahiQBgWwD25GdJyeY9XrRcWj0A+PUAqL7NBk8T1Q4C4C35091V6cQXgIWnmAmTi2sOXOXlm86KqdaTMQBXSc5JDUCiXB09KG/UphQeHBPyOgBIRhKph5krANezeVsADk1LNM4ALDwnviBXu37BBeznrp9zALDtpSFXKccty9eyn8opC2jkNUJjAK64AnCRBzUsmLby+Q4dmEIAyr9ZRNlmhn0E6p4kzCkEANF2XMNmvGe3sx8SPcOeAJRH1L4A3DIFYIbyG/ezOdOmON8hnr4AJP5GJc9cEVOxeJ7xA3lgCkB1UsvYA74yTZ1yW9yjVIrQE4DytL6xB7QF4J0aG0axSjdwBeB+AJAA+LDvWb3EwywepMrEpldwAJABWEwfAJenDYByctsUesBKfpir2DD6pDT9aDoBwNYA3HAdlUQAzN+iBlUAMAD4FQ1oEgkAur7c9b0CzgDsugIQaBL5mwzaRfTJ85uuLV7GAPyXLQChSt09AqBpX7pvk6szAEtXAFL3+buMOjbVJX9u81d3SxlXQhCA6oVRlfoYgMW0AfBteEDygM9MtR5Rm6N6l0HqSF7yDwD+XwEQhH56+1S/7slL/gjA2wFAOmYcibWuXtlDEoAhAOpbSZHBo1ZbNI4Bl03ntWb41DjE6HC/c0drCMDb6pUxAMULGzytXAFIyZb3CEC1pFx2w1bwmOf+qFeGzJK/qm21SwCEBE334M9i+wvpzf5evbJfgV+e/129sj81X8G+Vn0gANZw/Ndn9PcN9jifspWVeVdteZfqHVQjqX6nNvKAPfXC+uQBDVbWDMAyz0094BEAoeJayj8aAmBXv7J6ylZma+Vu9u+8DgtTAfAgABimBeAwABimA+DrAGBYADDsOwbgagAwTAfAvQBgmBaARQAwTAfAKgAYpgVgHgAMUwKwjF0I0wGwDA8YprQ8iz0Ik3rA2IQwpQUAwwKAYQHAsLAAYFgAMCwsABgWAAwLCwCGBQDDwgKAYQHAsLAAYFgAMCwsABgWAAwLCwCGTbsFJT9Ma3k0JYWFBwz7jgEYjelhQgCGMkKYFIAhThQWAAwLAIaFSQAYCqlhAcCw7xmAMaYhTAjAmBMS5gnA0nbulO2sON9RXQ4LA5jhsELfyXu+X7Ptlvl+szwt08HAz/ztH2L7TwWfs+uW+X7JPC+4zP+pnr680rxv8onpHZqYbjuwOt9VL+y/5AEZgMVL9fz53wAAlzp3tPYDALDYVm/ZTNUMwN+qF/ZHuDSq99kWAXBbfMyDp/A5L6k9IALwvnzLAIC31N/sIgPwFQHw/kB80Mu4m7YAFG/ZYJm+WfGW0aVRV4fGALwLAHwbAPwfe+eX00aaRfGSHINtyEiFNA/9VGPxNE9VcpSe7nmaHYDEAugdMDuwdwDJBsIO6B0kOyA7IDtAtiZAk6Rr+P/H9u+rKhI4h9bnV7qlL1Wn7nfvueeeSwB8g1mL+JH1GIBb/fn1Sb6rBmA7ArApAN8RABM5AOejbOWIADj2BeBJEgHYEIAb6iJkkSLgUfKeAPhf15LuJEZA+m2bMldnAIQI+IUAWOoBCIdOIwAxAtoCsE0APEm20/J5fTXplwhABGBq+i6hoDyLJhS1fQG4EgGIAHxvCkDih84qyuQdAVCeuELpHgEYAGDfM52i6igEQDl5iQA8igB8bgDEezb7KeHgqCcvoXKPACQAbrlGQEz0VrE+0dNtMQI2B2BuCkDkWtYRgLZsx+RrBOCzi4BbDEDiqG1z/cnXJAIQ3jM09vPdxPNg5+0OBKD8pgMJz+RbjID0QwCqv4wDVBwk1CbW33QRgM3fc27a10fZ825CSq0V+Xt+CQD8M17BzQBooGxaQ9FfglpV+XuOAPxBgcYgAu6h7j55aQvA5fmDLJP/RQA2BaD8YGAAM84/Jss8sWkKwNMIwGY3ncHBNsn+4EOyQAA8Fp+ZTiY/mDEA9wCAn9QHo4Hl7Ldkif72Wf2eAYDjCMC/DgDL35MO/W2ifs/waei/DF8ADuFgH8UH6yIAR0kL/6a+guHT0H8ZvgDcBMsGNQAxypVFIDqqAfgrALCMAKRfDgD8oD1Ya2kcABkCcEf8NLsRgD8m1TqvNS0JjfM9NVwhl7+LH2crAvBHAfA3cQQksvkinx9yhez5OMsiAvCZAZD6vReMBnVJ1IkDA3AnArDhnSG+zNiZ47ypgH1iOXmUZVS6RwA2y5pH4oPRXPpFv/egXz6vmk79OH0B2Ck9P9mkjZKrBEWMBhqeTdMLxRWArY5p0kJOexei02LL1hxm+LxSaj0Al0wBiGPB53MfNE0/1lsjDHNPVssWgNQ9V/MGOJV5MfkWGNkU//ZyT17fNgf8eezJnFKQu5z9fes6mY7qto8RgPMPtuwKQJrKzH4KVChyHz4E4KcIwPkHg4aDHoDItKwnie9gsKvA3BeAtMBErR9KDkOFLs5lqgeDXYcMfQFIB1MrKKnbdjEx37Kdy0z2+5YEpS8AoeMl15Cj4OX8iVHcLlfUU0lgtSMnKJ0BaDreQ5K/83QetVry6TNXqx1fGgbSef0cIc4knTNqNBYnzxzQbnE9ApAA6Dlh2+GhuAIbiAbFO1lur0YAzv+B1Z7aY6CFMe5CJdENDYxoAQibz8TL4nwBCD3/yTcxAFGRf9mkLkPwVP6ghZ39ESPg/C8WmlpqPzGsc68u2c3ABe34PNUtGt8ICF/sithpDwXRVwy5rSZ/4LmpxjcCQs4ibymgIPqSH1rrm2ry256baowBmHo2VdtBqpk7xWpJ9KLnngZfAAJvpQYgrTG+araRt7/eWx14VXlKYwtAYO7VCw9Qj3oZSmwl0dRZUjepfQEI4z3qqg3lgFehedtUkUrFk5zWsgUgJFNq3oo+jKsvoxiYrqrBRSF/RgDO/4FHuZq5pzK3zP7ZCtYoR578pbq16QtAWIaQq/dOokX5ZZKHilR1rkU2+ccRgBBpckv1BjgMXJe5rEhVR5qXY0uBry8Ah6YARDngBdGH3llyHSONuU4iAOf/wEpCzad1QnrUsx9qFdQvesFzytAXgHDViQHIaqxLi4HWkqkgkK1OigjABleduqVFqdSNy88rVz3Wr55WJ74zIaXludie8vpFlqZ6LFO/RVsAkj2gWlVCNMvNFcuLvDyvFLF5sCsAMWVRv8f2pGLqaM3VotJz64AtAKloEz+v4h3kgCtX03q0ZVYvh9m0/KJtr2DyJhLfGOiNtXLVU2WLyg0xAIeWOY1tBCTiXpwzo95vcqWrK1zlMLh77z8RgPPORd5EajYDrIluZivwjlYPX2BvczcCsMm51A69e/2KAEdVykQsPYZPR91asgVgz9QeMM8qUjwaWloRC+9AYBkBCL9FUwCWWbjIZTmM2NSGlLRidcezA6C4p98Ji2FCq+TEJ6fyPNMKLG0BCGOsavkail2u2YyAd4wYgO8tZxxcAUizFWJZHRtz3LR62R9LuxQL3YlOYgSc9wNnDvEIAxtz3NJDQf9A4dHJ6+RLBGCD71U9xNWu0iKELXyVT/StpdeJLQDJGEE7xoo0853clMbm1M3g15aT6bYAhJpN7CTBreDTW74t9/RGIG8O7Z1iC0DYKiC+MHAs/TYyU+weqz0dPD2PbYuQQ09vIrpfb+fOUY2gzvZ7loPBtgBc87SGGaZl1bkG1Aw2TbY+RwDO+4EBgdoaBjmWW8cQbAaL7zrP5Xu2AAQy48qBRfXrYCt4veqJykON5/pRWwBmmWPr/OdxVmWAGhjc1AZvnEzfiQCsfdeJxUPcibsVtreWxpaTwTQyL24RugKQFr6I2dwet4Irj67uxXUt5zJdAdjxNEZoV42lhwoV00tF+12YAhCnMrXHKrbr5HdE1ah7cZaT1q4ApJJN+7TQIDq9y+biSnWxt+am5Zs2BSCRVtr7AqfO73J8OBksJ9EdsxpXANKxxHPpNBN3d+QN72n1Sg4aDNYSC6YAxKE4rawY2Ml7Q78F9eLUc3GHuaFKx7UKhn6WmDVlhuWu7QH14lJt2x8XX0hTU1cAti0blzRwdK9BE7AQ1AJw37G9bgpAmknSvsNAI+ROIh9YaT2SAtBy+ZlrDggTNOKGPrpT3mOHOp6tEFJza1fouEZAUHWOtWnU68qhzIufZysE57y+RgDWvi60+vFAI+RebbRp2QqhRbPa4twVgJAwax8WNkKmbDfIpVe8567tuC3ONQc8sByKO8yrZuJCX89YbBFIdjvHEYCzvzXLoTi6W++Pe5xl+5ZTIT1Hux1XAMKmOHEMIUH+/YG34u3Y0aGNPT8jAOfEmsxvKI7XcE35Py9W+3cojo+ux0UEYN1YI3X6Ruu/qUmVQCtkpHzVOJU0igCcOVbpOJPUq9MICbVCpEw0r15RLhEzBWDHciYJeegpmWzHk4nuOGryPQGINqP5rpIGZB56anlJaclEv3Jcv2cKwGXHkRAyTJpN4/f6tYoVj8Ra/Ko9AUgFm3avFDkTpVNMGiv3tSyS4w5wUwC+sBwJIR562vWFHNrUTDQNhaxHAM7Wm6VhwUY89LSehNd1acU85DimlESbArDtuCkOFzDM0OMoytdqomFeNDuJEXA63R8Ybopjfnl6E2uAiVbu+iSRhLS/aRoBSY8qjSAU12ayeGaipXP1KLI8igCcflSgHpeuu2KH/JnaPLDQK/F7qlKffFMAkrmAMok/O1S1NVaQcVO7c8C9IrVuNQUgEGla8S7JUefIScCfSCtJxVU1xxGAM4RB31CRTzRg+rnuByQmAtuGG0hNAQgW5dIBrhZ1eGfXh6EmWitJXTQctjYFIOhRpa0stEWYHawt3hATLX3XvWdEbokBWPoJogObWmdPxZpoIRHIkmjloSwB2HUURDMNuF4frEoiEDVGyg67JQDR0F3ZNg/QgDMOj7w2XUkEsu/xpwjA+z/qJCiFQwEacDaqoW5BuminYygI9IyAZNArdZNlGnA0+x9bEoGJ4e4LTwC+cNSj5mkDiQuhVbvx3TCz8byCUQ4oTOG7ZeWu6hr3dfp3JQCHmV1e4AnA9sRugBBXwM1lx1mSKvUYphWkJxGA91/fwFCP2mtAAwaIQOlQgeEWcM8IiHJA4ZkGSANu1H+s4g9736/D6RkBYahH2bTE9u58aq+WnbmASbLTeHgCkAz2hEZiKHCZ39xolU0u7Kf6N5Ag8DQCsFauMlFqSWgFISSmaCUovO4KQ+t3TwDuGV4VZRMasK6Z6pPnsXYOgZ4ABDWWMHq0WIx12ihllAqyDPdPeQIQEijhRgsua+d/FcUAjYyEXCYJAjOdHssSgF1DOWAbib35h/q3IQ+DgkAhOekIQFRjCdccFNtpI16lrpvq0z7YZT89liUA8Tnp3l1xkDeLaL8Y8jCtJT/bRUsAkp5YKRtCFoaur4xm64WDcV0/41lLAPYMz1QiDQgVJFhRaR2yCICrrQjAGmyBbqAC3V7mDAVf3dlkp5oqG9q4/SJGwLu/Aaqx3IIyK0zZUFpZcu7ZyWEcAYi7WstRofsmyoYae+RtlJ829Ti/RgDeBSB5Y5XKI1E8W232YKU8jOESUksAbuV2aiycSCIGo7VAPIxwLgn1WKcRgDUuCqU52yayMFgY1beS0Sc3kwjAuz9KlXXmbOQ4eQayUcN/BdbNTwHAd3bOs5YAJGuib7KnhI21dBLIt7KmmH30n5/5uyUAIdwIvYzRF4bvU+ZhhJ3XxUnpRnAZApDuO132zmAKKMRqe5o7vG3ZN2EIQNR+6ryx8DotWaDTyM7tqR7t3+w8TxwBiM4wq7KkAKUIrCPh/eo62rfl5/rkCMAXdmIYliKEzEJwikRHJ3Xs1AiOOSBqEVT3BEsRgtMUqIfRdXRadlpzRwAO7DJllCKEOL2AoaBOjpC7mW8bApBKTqE10Ztx2byrEbJU1SWzbmoERwCiMcdIdSKMZUFmaJHiZvaHDICHbk0mRwDu22kRKJsrQ4U5tk/GuvFSfLbHEYCVX6mwY45FcPApdVCOIBOf+Nk+OQJwaKYZai0wCxNMS3G3l6wMLuyM7xwBSJWaTMbERXA4cKChlqwMZutPlTeCIxFdujnDYBEcDsoNLQWf5NmiGuFDBOD1iZbctAhcBFd8EzQWoutq+028GgJw2U6LsJc384WpeLZnZbAqmPvN/BsCEBUbG7KcIH2QsApjuY71YNeTjQjA6x/p6FQfaaATXDUpn2EZvOOV3+gkYoYAbLudKFAEj8L/51r+ABGNpMKTNYP9AEgtVJkxB03yVI8XcfWiU5YRxfAtAvCWvHgI6fuIB9rHIrhqSmoweVD18pg/2NYlawYbAhBbwSPVO8sfCCN0lKmG7qP91vpeRvmGOeCaWbuyy0XwesXDXWjqqSX8vCMAbwJOavWN8pbCaoVswbsdRD5Ldlo3QwCWZlnKv6ifkVY3UJHCVj3egNo3AvD6xvOq03AmOOCKUFkGl/k/RJ/Ta7N5BzsAYt4kU3Eekj15DZehATA4Ok2q28SXHwBJRyxjLnIUA1aStwFjVVFCwe97PV7BwXemGktnNWoNp0k0CZRpUqmkku1g8csB3VrBGMRqpU1l0+0Oj/2+Uex2EgF4mbe/HXsdCNWotWzWsBus+p66ZnJfPwDS1IKoFYyNuBpFcNBbWpXSll4DD34ABBtj2UbHId3Atax20Stf1owDnl9lWOOXAx7mzV1YHvXKSr9DUMBe+emKCICHXp1OPwAOrR4QatjrVUVnOX/64DbKI6UUXloPPwBSlSa6InCwqGbvIG/uLPi4AES124cIwFCVJkqSi600+y5Z/SF6q2pmrFjvq+nF2QGQOnEqmmCPAFQvJBfvxzjSqQrpMBe3GyNgKOcSTQW/whqk5heBV7hKEojN4PUIwPMfdeI0N1br5RiL4FoHYjWhqArBFy4iJu0AiDfEutVxahcR3Yc5az3eC1/2Uhu5AZBzZEmKgilc/WbukJJIkbriFy+9pR0ASTIuKtLW8ocZY90po/tm/hxEM2jc7+wACJZmKsk41yA1BX2tARKJImYTXAtF/p92OSDOxO0ong67ctStygPNOFHvAZ9w5AFD36emE7fIjbiaRRE3484esdcd41WVqwBIGYrkvgrUIPVzUmrGiczyOcv+GAHIgl1RJy5Qg9S+Pw9yrELMeIYIQOZtNSwV9kEajMnzqlfRqL0X0+oGwBdOM3GBPkiD1vTixKsX0pt8T2vnr54Doom2ZJ0j9kEaaFlC/pa7ijdO3XaNRaAZAHG/mmSGByc6GmGHHX41MYc+CE0rxA2AJJfUHIe1WOMGZoVruZVJW8eqFeIGQCSpFGO0bMz2f/auLjSu4woLX+u3jWEWQmlebrQlmPZlt3VpbVqaPDgNuLWVpjUCQ9lAIZTKIWAiBCapDIUgVykR+MXGlKZFqYoe4kCDcMgvtFVDEiV9CAltLdsPaSlOLDO3iEBIOp25d3e1svwd7d47c2bs3XlS4pX23jvfPT/f+c4ZkXTyUsmw+kLQSe6yB0CCpvcQr+N+kM5sF85C/Ax9RfPv/BSbAgNgJaRCyA5Yxu0kKSdyaT/d6egl91JuDwyAe1BLkg/KDA9X6ww5RBbig1yCfXFeBEeBARDOZvMyTKpmINQQAAAgAElEQVQWQ9/ZUUiKsxAftwVzey/2OCwAwqjLB0WAZQRtiwG3Y3O8zMjC03e+1PUAhKOovLQk4blYSWeVadyY5OXAGkj2e6k2hQXA/oBaktCYpI63Cjcmeam/wnKnl87XsAAIC/dewhPYU95p9op7O31oLLDgw4fiKDAAotFYXq4Gh4Cd0uKooiJ9yPLxjMr1rgcgHI3lIVbC9F2HOQidhfgQxKBSiOoBEJL0Hvap31YOYqG72DK9FNBTDgyAAb2beCxRx+kiYUy9CGLGAhLlhwXAoZCik2lbOQhRC+ncmNp4tWAp5OkuByAeG8G/TdEQkYN0rCEgekv4H3P1KREHTwr5AWBIDNXXoRpaJJ1vOVRkeUivYCnEBxMdlgvuD4ejJ2joHDrSQZyF3Mn/mNFRLF5YyZAAiDsGPXSEQBo6R+IQDUBFlofeTOxoPASkYQEQ6Z88FEJ03mCTOqmIcHozYajtI9cLywUjHpr/YqJdBA2dgy67VAlIFT0E2a5up2GmRTAdIVANnctO6OBCBaSKRgCMn+tyAMI38wT7pcATuvJNF4czsto49JXvRfegiQ4JgLBK7qMQAtXQuSabEjOyEg/dkDDUebqrLSA8q5q/YxWnrUrkMxPTMR5zxP2ksejoh90NwJFwBPl4MKDI1b2ID930MCYQ8eI++NagYkDEQ/NPLSGUCDld5g48ZoZ/11GPgIeKU0gAxC8mv2QEKxHytadQg7bYW+Ogq/HQfBgUAEFows9DEw1xeU8UwoIYwT6RAAbbHpjooFxwODz0YGJNjt940LC0J9iDQIJumOtqANZC4aGJ2dAi5wgfLG7wIUqFTPRrXZ0Fh8NDw7ls+UeqjSQBiVJrwUzBCwmAaC6H4OahCTFq7tH2BBXNHwT2XQsl2g4JgHh2LDsPDa1VEdZuGusRLgeS7nngG0KygEgnyc5DYwFzgboFphb5DwyBhBe/JDUgAML50PyDYYgQML81ttjmWXhBJpr9SkIC4KujYfDQRAhYQLtCUNH8nUkjwRCBIblgMB+aPzLeSYSABa4FaqzZg0DIRPNLUkMC4HQg3AAVAhahJKkuE+Zdh0w0+5jekACoQuGhcQgoihyqi1XR7KEXpFzZJanhADCY+hAVAiZFetigZ/fABAIm2kPZPRwAIhpQcB/lTbGARabYEseOsJeD4RgybiIwIBcM26WZNUK4EKyEKOShxiy2Ghe8R8REs0svwwEgGhjBr5KEJYuCk1yoYQvcLxnKs/ij0XAACKY4cuvEKS1gwe3BU8/Zg0DERIuPuxeA6Jg47plNWAtYMEKizn1gDgLhdA72BsSAYkBIAz7NHB7hELAoTLBz5zbzaDqH5B7UEBAAEQ3IPbeTCgGLdVASOlfu7uB9kAi8p0sBSNCAz7FexwARAhZFySARBDLPZ64EQgSGA8BdgUQl/UQIWNBPEuAWzBsfjQWiCAzHBSMaUDA7p3cEDgELR6N44EfMq8SDc6K5FYHBABCqAbnlqJU4tjmXrU10y4RXCIWJQGZGMhwAguGUkleOGt2WYLa4OEfWnzjR2eRYXwuk8BmOC4bVyS+zWsC7IQljYZBa9HnrDe9510jirwVxT2MZiGEAmgfW+CTDEwlEn4FFe1byBBgESt5QA0tSnYztjzCKSADeGLtOnsiwCmJo4rASDkNAaugRb7aPWS/LvH9UN3QtFOTp2aWjK6tr+xcXF6amJo+hgUC7x6emFhfn96+tvvXQizOnrsehZVRQ1DznxhBq/MRGmZQKAi+zmnoUDNiZEXgd7qIzMy8eXVk7sDDZEmiVNNpN/g+ed/rOy1g2Xtnk8PH9axceOn/y1OavcRuLMncpEAM0rGRDFM3NrMtHlc/it9mKvX2zRy/uX5h8oHKdrE2UG2sUWcBS8xNCNCCZ/lA6PDV/dfn8qRYUVm2YhiDkGefchoBkEMhKgCDtRxHaK9owR9FpjbwDk9mDMy+1bGBpY0G+q/Wpy5ZfSCE5aubzZL85vgmHxYwh5qU+Y9wVY6BchoBkezrvrF54hrH4QkHw7VtaubLwwMbfS2Gj4SPbwNu2S8Z1HNavXqhk/Pih5ReaIMz7CCEzz0sD9jsOAcnZv7z5PiQCO06Gmruu/e27C5W6uyxlsBO2oLc5Y8v+sP6KSpq/aWt46ELDGEa5TOE5VJv8IiMAq7gOZ+k4BSoIFJxVsAgTgZ1Y+uZmn125MvUDmeYUMsOeddgBJJovq3vL8fkL5/OaQhUEDahi5/YJB4Gsp3ZhIrBd3iuq73F0euniMxp4OqWVjShPKr5lvHJqDSs6Zdb/feTgxMnOUfi5IBpVd8E6nLKll6JmFLEe3boX8R9tvWkNy3d2Jc009GMrGfDFsfK1NA7NJWQ/j8+/90L9Ott8H3dZcQjFSZjYcQhIBoHxfwMgArcXndWxF82u3JcFfHW7J5XvFddz5fSNWH92+WS11VRvsy0qgOGUmISxdqKWaQwJY0oWirpLZBdifTe15TtmnooxfD7tHqBuGqZw97PLc20ZQijG4hxOSTQN2dACNhlgPPiDk4hBvAPxyOvbuPelKzWzXTI1fLFQ4a16VJj+fOSjn24PQnhSMGuJHpMwFkm66quSAeUF4g3kdDLT9623M6LFWD4Zq5CXNJYw3dHbH33vxMYt3HCNIRqQsVuMImEslinw5A9eWTSqPd0o7M6sx/DSP2pZzNdmHSMIS1gqVzJDeL5KBISx09J4myuOY1ftIC17OYSDQE4iBhOBW4iHdM+GX7qvlpm+0ZsCe62pScmEhLEaf/b19M6r7XMCrE3BFAljs3GcGBET/40PgEh/tJmHyWzf3ofvzaobN4vp28pXG0NYitcPpgHh9fEgZmEYqTGKhLE5OgMmXMw9aUNwSGWLtTcbNfzwfeaVEdr0CXXTLhnriNDc8e2ZHdzsigdhPHKCzwLijnS7BMkuouDMqYgBrcFNHqbheVUKvkDz3U5pwpSf0XawuskX4wH5fC0y0YAkLJNNijiCBT/e/vQxkodJ4ffEldpNGfbRAaEx57sP/rHFFWMWhtEi7CBIGLuRwCVCdHg/X9KPHrpQGfrOvj1t0Dd6U4Z9dGZcNjtwx3u/aGIQsTCcbdK4HUnKhAnqUvANQ4RuJx2GEr38TCojHb2lwNcSDxpXnDz6Zh2CKBzhC8oJdsQ2LHT+CXuPOTsQYOBduTz755q+61TPp27JlQlb9Ru4/v0XiISMU4w1gkkY6z27xIQOvkGBkHpQ8e408Au90lGcnEnDQXXkn3OFtWk2IiLCACq7Q/Oo74rZFOC4M1OqpHyLBX6YHyxr75v8S7ZfFXK1sFWyJ8XacH6YiGEshkBBVulWN35bwsG4s7o4bxlE2bZKVDWOsxgCBFldtowZBL2hjGKs6lOSQ4q1fTWOMe+qvlOJe/gjscl4QgNRBhFqznYgQFTjEs6XrgfAbfwzlxjLMCM8dbhs3YaJGNsZD7GQIKu3miwMV12gejflgR20ahBjMCt3cqXBO5OeBaQtIN+QQhyUOWlWI7WvXJ0h0UDPBW/ngpm8EdEp5EglShAxfAqgSIkeyMiyseKLhoipWA7q0RTiY77yz3TPAtIWkGsyVnQJ0/6ORrYQHaDiU56brva90yMCyVX61DwlhjWER3I46pUkeEftg+cY7tqY9Us9ANIANKPZOOZTDxIe2JEkkai8xAyNMPqpDr9cU7IHMmrFav3fcxwQxDmpkq7mZVSIFjzXKkjjV351TKku0BsUrNIp9fGHfa79cDRM7ISriUEUESOlc/g9OaZk+ebv8nCdBUtRVuqT111DkJICOmvVHaR88D1uve/AvUoloz37144NLFWU+tGDTv0wYYzcDSugFNjCoShQP8ehN3RkO9o9iquCXLQoVaR67IQ7CEYR5YHdJQRjbD0orS9bX9/zNaXKPefbiSMu62zkuxlxwO2BhTtK5KsJzkIql13B78lzSpRFz/t25odFyWEoWH0EOyOZ/M8V7EkBjhMfrJ/e0Psm+Os5384dsQkFf37CCQKjmCqDOJSm1IhJDOsu4Be9UlG94C9/KKiSD6sOILgzkQQJ404OUX2V+l7bPlhb1G//TsZl0eOe84aChpL5yp/SQIbPA7usRu8kpnFZ9sH6tR1+Q4lSj/krxgrq6OWxOctGkPLAbiXZBP9t2Qfrm/j1OaWTuYCcbyzIY2zkxr+HlI3ofPjjv9s1giNUO5yjbHTbCqC06YNN8vFXpcLIfdNDjponFW4HwNYPBnL1JRk/bjUZeQSL8R3ycen6JsH/2PPBxvxNKzkqYu/GLjuwMN8fKTUR69Us6nzYqhEk68CuVQHUOBprPlhHf9r8mRFXnrBXSk/JbP2fyV2Hx6cW5w+trV54a/mX6MT0Pyy/tbK69sGBxanJww9UNgVj2Z/0g0IzbFUpe5HgCJUDO9ZFRdeIThQ79WCT/E7zU3/1CM4AZeOL18fn11aXJ87PnNk41bUv+g4C4OWWysOeMzOzS0dX1w5M1jY+0Tz+lf3mShX1ia10mFJiOVeGkiMJbfhgbf5+Zswf6xbF2QGCja9MDh+fv7r84snri9L1tRMB8J7GJ/o2F8HSk4gXDleaFik7GpGZFFTq91UbtTnSA0vHZxVHAwoXQ5LEBv4GfqujPy74ZaeolusHxGjoHT90YWLm1FbYtbzWEQZg66eaUOxrGJ59M0srHyxUNiJEwZiopJHgHQ9aQOAgmQPf3+d4UWeDFfbB+um8YpJfnugvPRZmtP5Vd2nonZ/bBB90kW0BcIvtbP7b8KyGYf14bMl3bpgZqyXlf4pLZC4RHtj9wObqb4gUvGgGtKdv+H3tft1vSBrwlRp2b33+o4mT1Vaw0G9J5wDc+pej00srV45lv5gFhgx3LbUbfnyuGAKjIcoDMwyoxiM60mGpBfCvc7Rv6OzD/U6kx8DEdbt3dWKuiY/2Lj43AFvMazXzysNLFw9MxnVT6D7u1SZf5yI/KZaL9GMAmJEc7ifT1CpucnB95c+bg1mEe8uX8XpHDr7ZsHtRu+CzAsCGj89cSnT6pXefyQLQ1BI6RaGQZZV8rxACr1EkYPxa1TX+KEGCEJ8Vcb9/MaJ74dQA1DmW9eMHJ8yT2lON9nTskKwAcMMrZz888XYWFmpL6NQF6Pevon48lzsXMUNqPQkR2pDiFJjRobPfc4b8c2n6/s/d1YVWdtTxYWcTk90kMLdPgjpm1xeh9cxuBBW1LopflJIFi9aleANW6EvZPuiC9iN52FZaum4eKhQ/2n0pVipu3goi7CoWsYUmrFKtLymIlKI0zCFp3HR3x5lzb7I32Tv/+TjzcXKGQktJcu6d85vf/L9/fZvvR//ddjZceC8OAHufYts5ef1XfZswJhFWIcElXwSy44APTNLMhiugdgA/L1yaf+e68YJ/O9RXymuXVY+b8bfEQwOwfyX3fveJv71QxCVCFRLk5ZvhoyCphAMZmIr2mpMlj40KPkeBX0/1r7p3f/vakxXX4hlWZwOiAHAAg8/+vhJ7EtG0xjhVQWk/Q3BCHwdONi38INQS6hcHGr8SyfslvOdy8FN3P7DrvmsgAPsorP718z+9oJ4RSW2x8oalIej+caG50CKVXsIM2JJ3FLvz3+GLMbzfm9x36o0nQ6EvNgD7n1L+8+yDX60SJlF4kPCCry95IFA/F1rwyKWAg3cwwMLO86IZ+lyXTAfPjPI+9218/43K5Zhhob5/bADevI77itsx1MdUbnjTPTE3xYF3z1PpdMJNoZdd8Xc2uPnXU7VS//XYa4sDF9v+AWCfCJnE4Nvb9mDoPeqI8h1HBLJLwA1MUikWGQbTOHni0h/9XXDzr6/r1+c+HHo8QCIA7tA27vFgJ3B3VmUIvuT41SnkA6fTbAMLwlw8IYnVVyT+Am6sqm7pqEDGPZWyacCbNwcAe8eHoU8/+OUqUxI2Y0w7BT3jxIFQIQznnKUCIHQHU3rCAX/jqyKoyFaf/L5191IM7ssAwJ1DNPb6D3oY5CEtlULcwRxckVUC+cDJhIrBO5jQ9+zxNzYr3d+Q12/1dh57IBL3ZQLg9lF64p+K2oNuF58Wn7AOx8BpuBRDSgdOAnAHi0WH8Mt0WHlfyk+pAaHx0JcHgNWBQpUmN+VhzeWO2FqwRCCYhkuqG20oin3IEn+j88GzH8W3t99V6wBYlU4g9NOwWlGcHlGZYbsPDqXhSLobGMFtAYRYpuMmujx4fEv64NHHI2cDYIXB84EDpqpKdXPO6uGTQBBQJL2BEV4mQD5YWH2fySJC60eCitysAFQzGiNkhjcvW3Agu8SbcgObhjPcZkHGz4mSkODZ3xRyzXkBGF4qipMO3TAjEOMCuIF50hvY0BxvU5Z4p2p9i1HoEb8kNycA8QQnETbNCoFQPzpPGIXux6KhD2OeEhOH/xQILrSbAQ/FkAvl8l2YEQgGAXnJ0gIQOg7mUOCdKggap9oyfk1uTgDGUuy24MDPQhotaX1gZBiTbpzPoPgvzkby8nq7GXC1iLNvigPnIASy5wGzXyS/gcG6aDgUiNFUXf5Tv655D2Sj3QDsEl0KqOaRVhwIIrALuSBliVKvg1BzCl8H8DdZl/8472gDiPFb83MCUGnmuu+JdRXH5hLwvqEgYLJKrMEFOOXyDr6sxd9EUY//aDX5WO+FnGgzAA9CPki9gUcqHri1AHidUB1C8AHhFncwVJuorQrEaLRby/+V2zQtxOa72px8cbTNV/CxUluF8e68qt+vcbUoaZH1Rc17gwZyRFSHAz1ZsDp7Q2NOjHZ5wWtcvqRDRfmVRW08lneu4fYCkC1Pa00PNH5/UU2VpXU48AYbun3sAOSCJOoHvsUqBWc0DI3HsbGL8v713qGeAtVvFuUf0qmG8fia9TkZcF6z57xclxAYf7Wr5rqTOhx4bXiF6sUCvIFXMuDP0KE3LBzC8Kx//Ytq9CiEeHQBI8zYJaKlgoX2AnBMS/zkfYwleanR7jWEfRQHfnPYg6FmpEQTOW5dE+AdPKQigaFVMU1oHePvnu/2i61GtMZQ8RZrKwDxlNYH6Y2kmMF9Xdsap5y+OMR6goJughZXc9zAiIFTGoZ9qO95819PfG9zR3wPehVH28uAx03HTu3O0xfViGPqu9GF+NdeBBpcEGJX/hQegMfAAtmNWxzgH9fA37b8KDNeRp3YSaF8AGSnp42Gh9qh+7v+Ej/Kzrk8xAWBbuD1LPgztQjc4oZMiY5fQ4MSnFLG365SZ11KQEQ3SDIy4Lxu/wYTQErgW5qCviJnhBebC3vO8DyUAKTFR3EeBEKzCqVrvscNmaAl99wRJbn3l92V9my5yOWF5AOgnvbLXcGnGSXz6KvxzaULc2O3Kwy7IFwssEwAHCmt3RA2Nl96XQpE3QnlXXtFR9nzPJcXkg2AgOFLd1vcuC90S7xavqQrfPueLAgUBCTXM8HPMK96lxvC8JpfALCiv+8s7YEfggrjYgom52XAA6V1GaTcr7F/C7+ZTyoY8+sBRwR0Qayb0KIsMEFYDmZD/iB8CqAr+tv8xxDheX1pcHQvJBsAAR9kSCG4/B/n5v1IkNNpsWLnbDq04cZYhirtCzsO8M+8HOCK/h7VaJzp7aHNtjLgvN7uHQrYSvXChwQJHXRE5oEsiMsgggivAuxTIeQj2z84KTru+CNqeo4K/Q1vtJzVv43FdgLwM/ozNzwQIjfu6Ur4grjvPd1prv0k6ILkKIQZOGOGTr3LOw4IJ570x7Du0dpkXGQvJBcApQ8CJOI0u4Tw333cYU5KcW/fglqF3l2qsby6Bfcqb5cprrlXAHKY/qBkXOxcSDYGPK7/xid1vyO37xc+6j/qjfWobQJ2QehVnBWBF8FCbdUbgtHjonB1gHnl/EJyFvqYROyKrFwA1NdigZEnaQm+rUjQGYHFhjID1SUHBgHj98GCmwLVifGeasOkc7uCPH5HRPkfeMiL1iISkSuysjFgV5sHAWPvchN/Uogjzi+hV9E0LqAsCNR8kT8dJz/eVs8AdMVfpxAfMw4w1uel4vaFZAKgvh/EeOIYOvxF5xIZZQb+ELER8O0lkGc1LbhdWbpIq9yR/S21lfVRMR63RzAXAx7U2xymyKfczJ4KuKsZOAfaWFnTcDahQMmO731KOGZACJ8WG28Oj/1Z2uT0ahsBqE0+Wnhdcjd/2XUNCRJarINpYPkT13ITIEbgyBou4efE/JX3u75kgT99h1jk7vRcANT2pFs9WF7Da67zUCRjFlAaOP1EGOdQIKXcKQJYCcs/YqUihYH69I02ArAAuhBs9guhV4XbRLxqAABtbhDQIhTI3SKAyvxTqvJ2L7Kr706fY20DIB7VJr8tmyIlAs8VboagZA/op7MHAfuhwGBjTpX5t2Ut3wPFxS60jwEP1Y97Vpq44UTRbEeRxr6DR1zDLHrCL8QdC/bCFXqrPGqfah4AArN57X2uGTR2JdxgKOthzJHdELhczC3694iLiCjghdxoHwOuFQGiTvJc/lkEGo3Ms1YCDq7TIaZ2ci7dj7tc8AdEZknMgcWZbEDgyzrE3SUCz4oww+FVprUZAIRjRfZVuBt/ddTO0zYmEbrC2gVAPKk95Y4+P0Of7waRx6A5RmINX/O1pyYSJZiy5KoeCkTGTraNAUeCRT1ZGIEgCeGVhuAPQQo6lvfvtFhfYI7vD2hMIhHL8rMAkJ3WhpCdYyFhJNI432oK/mq7IZRMiw97KMjrIxMxy/LzMOB8ES7mhNH4FSUSWdMFOYkbg8DlWm4I4YW4D7njD48Chnm8JHkOAIIOl1fU/RVR1goIGgeBJ10Ha4QCq/DfGb/ndkmGgpgsDKgPOZGO3198uV5AkOZsRhqCBH83RPHfS8iPzfUz4yMmiXIAEDB3PSsvGHqqDgdykWUmoH5/fCmw4r+veeIPBX8tjb2CoaPm+c7Q2RocSJrjglTrsK8bovjv6774gy4m3q4rWIQ3Nhh6RnjPi2+SC1ItPzek4r93vPGnr8gShEQLRedQTNdLxNXoP2D+ikFNKIUOkQ3p8V+d4ARNH4rOwYDaMLSoN6D+OU8OpKmluWziVO5fpB7/IbAiK14oOgMA9WHouj2ofhwoCXClYfjzyYbwuvwHzYuKF4rOwYBapq/dhS8RSD0AuNU0/HlkQ9Tkq5r400+riNibmR6AUBi65hySnh1IXE33prkgap3m3Jn/Xqz70HHgzVxoDwMeAs7ZQt0//owzB/KSLzYOf2jSjQLVyKaHUe1zpG1bjaccnB6AepXgAJYGm3lKDSJzIkD6PmrgmnXJhijn60x9/OlnZMWb3Z6BAbVbG8LXYuhlt+EpgBZlzuXUG6JkP25HAShKPyMr2pjA9ADUGxoiRLSJoT86CQgReqOJBIjGqfUdrOqfr4fAH1QoTCONCUwOQDzF45Z+VxJW3MEFudBIAKLztsFopQSgEwZ1fTkAOdzWEgbEX+CRaZ6Nz9rPkCflBmKNBOCorRsiHWBInDuQeRSrHiH9FaxvPQhm6DqoaNDig7iZDAgPcx28N4pgVizQLjt8cvd+BKCe5UO5+theR6h5aeCba4rbaHEpEYAvBSNxvV5IrNa41AAE7FwerDMXKyU1KwuqYZWoe6JyFplt5YA8HAx/0NjGSIo1yRnwAHDGgg3BsdWSbGIaeDAoYv4KpBQfCvlM7Ygi3rnWDgBqZfFE2DFgy8KioISQ9ebiD1tEYggvtlhAIxYYlMrLdgCw0B6xMuQRY3jWXKOvYjC4uQhk5001MZzScg6HZV39BRVlgntiAALFqIEFKdjhwhhIa8ZIwDqRGC5OBI0igSb6yTYwIHTCgsbalSNCjQT4cdxoBK4aamI4vTdwFFMfio5UlJoYgMBMhNDZRoweNzAgL2OrMdeOxBgokNNvBAYF1s8t4xttYEC9lxW83oKNcMPba14p/i2RGEN1Iw99hMBQdIxRvWkBCIx/4KHHU6mq4v1YB7MLDofgSIw0Iv4X+JH6UDSPMkExMQOOpPt6yoekcBD6Omr8MgxJIKEpEApFRzEC0wIQMgFpYIKXBEhgAqQnGo8/dtxIgaHLafVGUhQjMDEDpvt22ESApHm9SEPWuMENkRS4lM5NjGAEJgUgntDze+hMz2ETAVL60D4AILuUmAIxZCWd3O8MqP9yoXWR8SUTAZYbjO0DBI6aKXAuLEnwpEZgUgCyZZKq2mfUSIDFVYz2w1rmJgoMfHcUSY3AtAyoNwFDSwEsGwmwuYWAu9ekmQJXgh4l/eyyGOnglACE2D2sGAqbMBCgCO89xlp4Dc7H8dDhpGPa1rgYRmBSBgRMwLCitHjVQIANEeayWge5kQLfCkiBQNcYJ9fwfgYgZAIGnULMpowEmF8b2H6Z8nGUBs1iYv34xgg1gUkZUGvehq5EmDVVkTS6Enrv+kApTHQetKxx7f/sXd9rHccVHjyyfK90Jdhb6OtEKZSWFHZiOTVuUiKal/ZJhkBpqItUQyj0RQFDcZ6uEhoKfbFbmhe/2FAo5Okq/Qfktpg+SvStTzL0DxCzlaWgRJru7LVTt/Gec2b27N7duzt/gHR35pvvnPOdHxNX2BhSIQChWjPWSgS9gNXRqZp2o+esEcbnEef0tPwR3mU0hlTJgJcBF5B19s0owgiwAVm45xBxEfVoWcuy5pJ8ojhrMgDz43vWN5H1a4jXbqPotEkEKGWM9LeoJGF0YXpAPQL7w5kVAnDVAllGxvmH/TjG6ohr3Qrygiv1O4wCeVWlcb4TGD9uLgCB8J51AixWhWCjMt8+K4UCscoep6vv8OE9vyjVsD9ZUx0AU99WVZFknMf6Mes5EhWBBEqBnLoSUJTKXrdeIQOux5UUo+4ZlACfiKat19FblfAJS0BRKv+7hZUBEHgGhbUYdckio0VTAvyGbBwCd3EKPOJrkIOcwAdNZcD80dCMVRbSadBYLxxnxFjVwh0LRjVa7wJOIHfrTlUATD+qChdwAZNgTI0HskFrC4EwJB0AABj9SURBVKXAiK/AEXICT5rKgKO4/EpbKUcRSoB1bwbOo0CFUWD87QqcQMVcklUVAOUgPz0bRWzf9PsEJ8DPRCPXHq4u8UkxI8AJfKmZDHihChdwMfWU0Gbg7WYCcGDxu8UlxUBOIHM2rjIAAnk4viozlCXq+ioIUV9CZwVy1UZDESNvNq4yE5x/f9lcQL2EzgQ03F2MFa43cApUpzxSDOgEspZuVgbAuQSYOcLjAlIkmAYTID4ry9VG32KiwHwlkLlyqSIA5r/PxecC6qtYoNhoAszak5DvU1GyzXVe+U7gaRMZcByXrgJeiyN8oGiDCTCjQDQOYfpAwAnkfbq1GgC6qVilJ4K38ImojSbAzAuM8DiE5cB6QO0ca29cRQx4MYnKHjtHiEAaToC0KJ8pJQyUjkRnsmkA1AdRybkdQgTSeAKkUGD6jbfKdgJZhZhqALgKKAhMY0qv4gO9m9OMXoQCmeKQ/MYQXiGmGgBCIgyPC9iL0VeCTdJ0AnTpEFzpjI85jHAf8No5hZhKAAhWwnDEVFJsJW0gQLwohm9WTH53MGtFTDUMCFTCsKhKGpfIsnFEzQfgPCHUilmEujfzkc5ZEVMFAKFKGCZdfYwSQ3PLYPwpUL3DcGhLQPkSY0VMJQx4ARBhWBzajw2BAM32LABwEed6NbQc73flD1LhnGVWCQABd4JlKMy8XUFyILb+ryJRD2yXQvZnDHFI/igpw9iaVAEAIVWd4y5JcYC/axolT+6KmVg9/BnQ1N1l6A+5CAkx7zWJAS8lUKNz8QhkAT8SY+O3xYysDxL8ETxV/LoBjwpxlnBWAEBgLGB6lfaLK1YbaA4kdYue6BnBn+zH+Du0TgwsU7swpkkmGKhF5Zh4uGXQd51ThL4nZ4UB8eFLk6mphf/PHUCIYUuGVABAIA3CQOXZNFSUAJs1DgvzeUcRIQ45KXx+V/KdQL724PIBCKRBOCp7Vkd4BMI9QnTaFLhAoUD1ecFIWELZOLbxJhUwIPDenipaiiXFn3EJ0DAPUZ4+BY4JXi9Dh9IhcHJqvykABBT14klFvYRLgNxj5Guw5izu9qr4tOgJAiNtI645baUDUN83gCdROA83Jhhgp8vO1nJvhxACr28VM8JQCpWtM6R8BgT6q4rm4TIDrFACTGr/MLW/WcFmgLkAr7gRzveejGIqZC8bgHLemtLycK4RmEKAx2Lm1p6hfHhBltJbQBEJ05C7sgGoXwVi+cJ5OIIB5p1eW5uFl2VlkfArxYzwAqCgMc1KLd0E5ze3FH11QooP8QjYJeE+EzO4dnEKdGUxhWJVMIvP1ExWMgDBfsyCdY2kCNiNzburZxCA/Zjy8UXlaEiI4SkKLJsBLySliTCSYoBTnrglZ5EBKQk59/XFGkQul+lAVQJAwALbYukc+SnlBNjm9dROiXFqtCVEwo/LEmJ4JiSUC0A3ZamshPYyOgtwkoRbm0kCTClwzhI8YBU/2S7yX0aQDb5efwa8mED9zUVEmGsbFAM8exr08w4aRQMw6osCJgBK5BtzXn8AHuZbyUKjNqXYI0TAM6lBPx+EEbZAJbaIoZkDGYSjo7ZMAKYWWJVUCbNgY9QDmpFW4Py1hdZGZ15wshPuhfShmRYcNrhcBgQscPph4TqSXowJMphVQ6ZxeTVdhHEQWXV0EVMJlLOz2OByAbgOWeAieaLDBI+AswZZOcsAFFcpQkDqh/wk3A0EWpNY4uAyAQha4ALvLkrxESkCdhLMTC9SYaDT4sMTIoiO8ZKsMwD1BcgCF3h5dskSTI8rA1ybbQLM+hEUxRU+uRu8E1AulSEfXKoJhn57eDuS7o8oDuBsSzDP1gFpK0yBx1yhek6GfHCZAATywCk8wscC7hnKtU9dn0058wCcJ6kB6V58EuoGgoN94n/L+gJQ3wd/+oNQv+cexQGcFAS3YH1Auo2pGxh6G/UoLimSLJ0Bx5AFtoE1KnpAcgDTYynel9iEdY3kj0Q2PtVhCITag11BU30BOAB2xkSB/pmW48Ti+n/WidkKAIorlHyIi8hC62KWE2hSYNGunvIAmN4cyAJfDzTAPyftd3o1z0U7AEgZzeQ2JLFvBe5IDIhphV8ZKpEBN4DfHShhSvE9QhfIJAO62Q74CT1P84lVHJgX11ugDV6rKwDnIAscKiDNx5Tr3poIZLI+pMQhqRGOT8PUQKAzxEbquK4A3MrXj2wUfy1MARwnRAN8wvZ8fQMWKQ5xbmCYGgg9slGwqK5EAPbBNFxgN8ieiQn4a0MO5H/u5bKlbItTA98PcQOh+Xqm6KzK0gB4KTHM8hFVAXSNcGeiTUvu0RyT0KQwMGE0XM8oGYDyAIBK4GARWgq4kOra0LVoI0OxDCo+2fbfGdmHbfBODQEIFsLYIPlS90aJoRhgw/JMQbPWxyRxyl3gcxFwNyE2UWH+fNkAfBVi7bB+zEND2uTZbYSD1jrNCKdu4De5bXCx7tqyTDCQQAwaiiXFTZoDyDIYr3lxyIDoHqthQFmC7MER5eP6AXDZgOJlgCt8xa5Q7rizMsftI0BBmhM22fwQPRr26I/rB0BIBAwa7zqwJK3LsrxQ0MhIeETcIBOf+DcpQc09xaTAcgAIhU3pjfG2wC4AIV1w14i51kb8UcXA1A006si3MAaxwfF1WS8AakgEtP4+g84CEOL9PhMtXVukMqFsZpZ3RgRU1Yw5qhsDAt1wQRb4r4Q5WE8lQLMjWwrA3gbVSxna275uMmKDH9YLgANWCyzFb4gBiJNjb4nWrgWiTmDUiv2XHwJBG1yoKrAMAIKVgN5RuxTLdkjDX+qNnLcxAn62UQdURzkrzfLbKNAGJ+Evd5UBQKkgEdC7hHGgaBmQSQ6uvQRInRcxKc062WHUogtUJJQBQDAE8bXAenFEKsGaGOD3RavXAi0SnoTCfsWBsLARHdUJgOtRZLlUaC3XiQGwK4I5kq3GnzPCtEjYhcJnXllhuQedqgl+OKkEAL5hwRjYK3OoxR4xAM4M8MN2A1CIxTgiusvR0P7Yj10BG5yeeOi0W34A6l0D/lK/F6rftSs0/nMG+B3R+kWNhDPF6rYPUCTMK6FttvwA7FuwDsFPMvqtJd7oLAKWrccfPRJOnXGlfuQRCkugNynLhtSEAfVFKATxqoWW4g+pdxGRDfBmB0Che9RI2GWN7L4HAqEus/SPndQEgGIM3UCfB56kWLLU69xFwF/uGml27NPYNU42PRC4AZq2wP5MdgAi94TeDyzFIE4i4l66MaAd/022bc8QZatMDqQLp/oOZI2UOqsHAA+gEMRrqCtdAOwM8POrt5FQjXDqYJ9uk//wEsItm3UA4LyFLTDdVe2NqQJgVoT1xw55z9YyNRLO6hI8BOlxDJ5tkBLDDEC9m4AEaLeJf1X316kVCFkV9Fl7c8BfXZ+SjbCTA8+p1YH6TfBww5QYXgBKUIOxHoM65SFZALTZc0CdAf7vWh1TI+GMA6kpEbjVMT2Ft+W0AahfAzUYcqSkxQGd/1yr11rHf89v34Asn2Yc+B1qUu4Q4oQoSIlhNsEjiPvJpaha/IXOf61tQ4Ii4Y/IbmBKCy+TEQiWmRirHsjpAlAvgE/3RMSEoRaPqBWAE+o/7eD3Fa4iK6g2ytLCpJMBS2LCamJ4GXAcRbZwIYwW76bfElm6AvNwtUPc/+0huTQwo64V+ysaAqFuR1cT83i6AJwDe1OJaTgtfmGH5OvrHMDbnQF+wVnQnejsutM4cBmEtRtLO1UAHoJPKNPe1XH4o/Nf0ZfQZtgNvGmVzy4SOXAEqhzG7E8TgEugh0ATAR3+6O5LpsDsdArMC0927LGP7sqTEHgflAKV/4M4nADcA/k5ovy4zP568J8atrQPnVeLoXPgIkYym9MD4Hfh36biNXb+i4x9pXMA89Y9ajH509KYFIE4XqDuOEeBx9MD4BZIgBQR0JP/3LU96nAGmSTltZn2Bs6BCwl8yr4UyAfAeTALR2le1uLvPvzn7lvS1cAA+9kf+Wxn6geqG3hws4HYueNpAXALvhoU7+CRH/+lDuBbHcyg5eUGpme0Yn+GovoOKHWkFLgzHQC+DhNgFJ1T8OfDf6kD+PXOAcTdQC8OtGca2dMB4uqrz6cDwF2YALHXMaXo/8OuePBf5gB28EPdQEsuqsz29GV7fhdB4CF4Sr5Dy7kACIfn7n1qjeDv0Iv/HKQ7B5DgBvqogZO88NE2/DcvIVTjFwhzARAOga2KwRBEit66J/+l8V2nAFJiQ2WM170e2tMdmANjhGu8AmEmAM7bIj9KisWxl7OSpYB/2jmAhPP1SgpnRzW0T/4GyTH6TmJg0/RF9QBEnuqJwOd0tJgf2RUfSzF58KJbJATepNcGPuPA5J8AAiXONg+rBuAADoHhEESL72/43VI34K5LAZPXuo8e7axLFNsfQn/wAA5DvDo0eQB4APsZLgsC/LVfW7Pic0etG/G53wGLGogsbhAHLH7psQ9j+yeRf2RwNsRR4H6lANRLCCerOP9tOC1+meLPWOtnJD7pHED6WrKJ8bvgKQfeAOSYEWLwPJ6rZwCgdHWAKkwakkI+sknktT3ZmPfO/vq4gfc8XRw3M8HJMTkQ0JdRCiR3hzAAUC/ABGjzq8Sk6P3AJl4eSthDF21fN62fkbEqGtqTzf+0d/4hclVXHL9w2+1MkxXegH+0II95WNoKm/dgSqtN+48U00YxIA2F1mT2jxSpjSlIgmWRzlBL8EeUAa212PSPYskfSbpLExq1JqatRpMiBjEpRrESmhgUCfeRYWBavL3nvre7Mzvz9r5738ydN7PngHHNxs3M3M/7nh/33nOSUpGbVS7PaaWVwOwAUlJzFM9D0l2QKP119D4axjAB0Q4DUw9a6YpzmonJ8M9UPi/1wNIBKOCvFbX2xMtSAdlfdT093wABBiYg+gQWtA7GxAVBnx9MSEVUUb8QlbotAAuK3cakFuri2XpRpB+6HwsmIGZx4HqumQrDR+3zbQlnE1bfEIZ+3f+1BCB9edW7wNA4qBn05a94DtJfTf6cULO1MVr8cX9N4671UihXhn05GmhXYqBfY7qG3VkBDNYrLl8l1GACsm4LL2mmvzAM2GzkNxolx3RT4eh0DASCQe9Pq/qqZb+WylFlBJAqR3WzsN9lOAj/9E6/RO+K+e0G8mdof9Mn0HFKLlwVqehWYuTUNGpBAb+hun3a73ROhVCoPjt6MUmUAM9i/GeaiFDtVDgOBG9c6PU6tygX3gnrwwew4CuKKP12pgNSuMhD7adRjjg7iwlItlRY+6F3HeGGT/dkw4ozMTIPSdMzKhOAVHERhPdrHSyepd9Vuacd/skdYEyAM9mUH2q7HRkI9m4Nq87EyLa1Z+lwAQymVbPJhAB+0MPfvZx7uuFf1MjuR8hQtkTkOh4afPLM8fm1hZUIvsmYqmLbHrYCKjtxuiuK0CKfWneVh47Bp+CW+A2YAGcl8FGdxjvLy8jKvHllBYHTKgkUcKjbBmQAkJI/M9VLcLt7Foqvn6hC9YXr61/ofoo7wNntGNcPfuTWsMu31bsLMldVEpjGCWcAUDpgVRjQ6pY/WXw24E/8JLeNfaAHkIiQv2s0n+3Oht3WO10i+Bm1/vhfHKYLnldlILALRzvlb3/NJPuNDqg1ZxGfgRD4b264BCXOH2x0iuC8SkrE978yPAB/qTzp7XT0gwH5O8Ph7Iv+m4cCYHgSE+DBEFjcol8OXCoJdopg8HnlOVcRuJ8dFoDTXMU/65gMJ/79rXn9vd/Ferwvkmnkb0BWqDHfIAqSIsjcB+vLCNZUA9oFAq3Vt65MAYTGNyqYnDCMR5eIl1B4jZsU/2L9499D/gZYDqyGhisBuQiIYLQ1F3xOyQCD2TDB4AGUI/FcJf1fjf60eLmP13RvHnXon8N/jtQMshiz3meuw40IhEhw28IiglWlBMopasGgAaTkm+rLpiCAMX7rLkH0Z8YfbIDgCawBEzjNDTUwigSbt8mgXjEceukA8WotVMwADKbUUwCEAH4hSj7IjqobmkV/mpN80Ia6JbIUCbq8fVouLVVKIHe4316lgGsEYEC3hFz5F4csytn3zpsmv/EGyAzyN3h7ihtsC3eIIP8F+OHVZ7Mt1WL+N2gFfJMrwQcBpOB9P+Tm8qc3zRFNk0DXdFWECAoED4l8OIUEgoYkj3IxAJCS36QoZQoBFK+vuIPz0Fj+uOY8WzSNciB9VKsfbc/enMed1mVCPstYCl6Tj9HpA0hlBVBJlOuKFPhETdZeTN8l6N+1BsIyJDtmroHgWAWCvP06qal/BLTymR2cAk6lajXCWmTfPODnGj9lsldd2gnXaNoaSH6cRQNBHoQf3v4WS0Nr4k6+NoBBYT5VDcmduQTe1/wRk/rXrmMBeogE3pNFA+NQMGRpljJMCuV1AQzI1XTt5sQbyxD8xfrXWkD+hqyBTgYNBGnzuJtyMfsPZtcEUJ7mSUUV456b5a2B/iF/OddAeVqapV3OvgM59QCERyblhprrZHtjqH/joYE6G1r9htFpAShHaTHXxstF/bNHYDYNTO2t3b4DOXUADOA8t6XHRd2rHW1wXti8UqZ5qKmXQA0Ag2yFI938F/mzGQfakJV4IGdgrID3mG8fGtT/kD9rBB4zPhujr4F3ryAwLYA0IK/aChaiaT3Inz0CX7SmgWV+Q6Or00xKAOUot5KlUMFD/mwT+CtwblY0MGr4pgtgRTZTs6J/cPlKOS8PbdAEPmV6X0ffvbHmPzrccBoAoZtLjZftxH/iEZlB+uwT+Hv9brXGAT6/fZnAFAAK/nZwbuX5iAZUIA+jsOmqpTWGTjMbFhZvlSgBhAttF426uRhtLfp9y+VoFmzKlpcTKuNcf4VE66wCUPzyRM1WpRIKRQeRhNGYHFlasuOF4WrdhiPRrZLVABTfJxsvZrjRoRsduPy7qH+jI7Bw1d5S+254qCH8cCUZwIpw0sUzvhNaCQ2E+1WMCUUbOoH0LUsFwehqXXhbnZBkAEXwt6vKHTvPhCz/tU4iBaMlkLxmK9wXIlhmvHn4yHVJAH6w8UKV85Id+ZNhQXsBGRh5OeaopYIg5CJwsYnv6f+3MfcHcKbUsZJ9ROnvBiw/54HA/b6lZFhOA/NW+75npTK5WBq6O0D+cmAVKMeULC08qKCTpICOLfWLiuMHMf3Ii4lkuGQn8M+HQfgX9psHhTaqVOSctUAwB+bAAYlZ1L9cEXiUWwsER2xy9+PTOvKXs1Tk2xYDwZHy50bD8ND95o1AOc7FcScdPxH+sSvIX05r0hMfCMLhq/ZJdL/5JDA4ausUwMiyD8HfDIZ/+XXD6w3HuoyJ/4UhjLej+80zgYVz0ODHmUz8nDJvnUb+8l6P8UU2PIEEyux3ewPdb84JDMjX522dj7Gd/YL7reAa59wqhP7LaLxzzuUPs98xcsMnhBueIBFcHruIqzsuucilCRLBnpmLaLknkMLesDcRIsji0dsBRf7GKheZunUiRDAaNPYxCRC/cXPD9N5sIw/yE/3NLKD7HU8R/APP2Pd75CevQP6uYPFlbEXwhAsnZMYUQSYn62yro/yNsQjKdNjWTY2B7/zKWdsY/Y13Ony8mnH8y6jOXTllzg81KMrf2IvgBTfbAKzRJB8Cvxtn0fuOv4n4/ekt45UPsyj5eDfqdYQ2/skI9Esbn1CQMehCc7iB+E2QCBbPyDHQ+b8ywmT/D779BYI7v5MUChIytUkgmPutEeF8RfB30zuI3+QlI+TpWzmMG85xQhypX/PjBpaeJxHBgDz+R+iellcVhP5vAr87Asx9JzYUpMerXHZQc3Opfi5nd9QJJh+THArSHTWpgk4eY7/wcB2d74SrICXF4zUZC+bHE8eZLzv0EKrfWlDBgOy6Xyy3lxdHLOiD2E+oX4Cp7xpJiOnxeSjK5CAYFOJX8gV+lzH2W1vpCNm3iY8+GIxb/n75coCx39pSQVjtZy/4gODIZBDED/D7/usBqt/a9MSFV+4HGRzJLjGInwuh3xFCAlS/NemIBYLFfR/yKBq06YsZi8Xvpncb8QtBW7PBYGHXHmDCs7ZDwqK0V4jfT0D8kL61HgwGdO9HwJ5XHr4OLmkf3/1PFD+0uDIo/nlpUxVKcgLCIcaDjoj7QPvYHFRdkD60Dk9Mbn4JCjMyHhzCLglIn+NJ7fvh+UcI4ofWm5GQ4n2b7+IyLx7sNgncL5fSx8O589Bhl2Lai9YvHBQM7n27JpnxQAkzYyjndwnl8+E/mn/66UNw0grxQ0vSQYnGxjciIRQhoYgJzd0xXC4SHMuvv7T7vReWMUdDS9RBGZrRZ+/7qMpjKSyDimmAKFUPsl0v+l+au88/36AY96GlhrAizyQ/s/M/B+5aTGA9z1OnJ1GVxVuUPc6vn7vz1CPRQUSED02PQWnFh3e+faC6RJiky1uhiDLDdSSiUaoR6d7cJ6eef5LGrh3pQzMJCWNu6GM739/8wFa/S+06fG7n75e2zj0n0Au6wko0tEzJcWS3PPPYX3a+8f53Nh/Ys9XjHQrobX1g7rk7P3nv1F8f/u2TfQBGS7L/A11hB75itfRMAAAAAElFTkSuQmCC";
9331
9181
  const Us = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAA1CAMAAACA7r40AAAA/FBMVEWyIjNPN2Y8O27///8/PnBOTXxycpY9PG9RUX5HR3dIR3dLSnlPTny4uMpWVYFFRHVwb5VlZIx7e52DgqOIh6aIiKc+PXBJSHhTUn9hYYqyIjReXohgX4lYV4Lr6/C2tcjPdYB0c5haWYRYV4Nra5GJiac+PW/FxdTHYG1RUH3eoajltbtOTXvty89BQHHg3+hSUX6GYoC6usyVlbFycZa7u8yUk6+sq8FCQXO0tMe1tMhiYYpMS3pDQnNvbpTExNN8fJ7GxdTGxtWCgqLHx9WXlrLXi5SYl7Kiobrg4Oiiorrn5u3n5+2jo7ukpLvw8PTx8fX09Pf19firqsC5sMNxAAAAAnRSTlPQ9qN1Xw4AAAGlSURBVHhe7ZXFiiRBFEVjznvp5W7t7j3u7m7//y8D1dAMGbnI4jW5KOpsgjibCxFcrrtVEmcBGAGQJHB98d3EgEM/ygsg/nwRAy15rxQ4Ywh3JQX49hVgKA/Ad1hDkkGTMSQJjGkOEmo133FmwAEQyl8FfSj3gFgkzjsQAw6AZ796AP2fGcDBS8/ZQ7ZQlJ2d+bEFqp6zhuh9Cf9/pDtKkTs04KBTD4jgx3eICOodoshz1p7M6UUAUQ+Ap2Pf2UMI5UBBX18/Ut7ZQ84Jui10QKsbcA7dt77jxIBDt+sxMNzrD4HL+rZS4Iw9iTZkCjRFmsBUHkcUOGMI7dkpKezuQsrprM3zR76zN572ekdBX623gaONJ0d5B5sGHAA1+QTwRQJgX2Q/7+w9GZGlDZKERpoxgkbDc8s0WscGSo+WGMiNVlgwWuFNjdafPsDe7wzg3RvP2UNCFGVtbX6EoOo7PhgoO1rGnswHiquB4mqgfIcxpBTGkNslMf2JVMAShRxXgJtUwBKFbFbAqicL4U4qYNWThXCHFbDqyUK4swpY9WQhXBX8A2rVjaQ6HWXmAAAAAElFTkSuQmCC";
9182
+ const IMAGES = {
9183
+ Us,
9184
+ DefaultLang
9185
+ };
9332
9186
  const DangerDialog = ({
9333
9187
  open,
9334
9188
  setInitialState,
@@ -9928,226 +9782,282 @@ function ViewProfileDialog({ userData, setInitialState, isOpen }) {
9928
9782
  userData?.email
9929
9783
  ] }),
9930
9784
  /* @__PURE__ */ jsxRuntime.jsx(
9931
- material.Box,
9785
+ material.Box,
9786
+ {
9787
+ dangerouslySetInnerHTML: {
9788
+ __html: userData?.certBio || ""
9789
+ }
9790
+ }
9791
+ ),
9792
+ /* @__PURE__ */ jsxRuntime.jsx(material.Divider, {}),
9793
+ /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h5", sx: { fontSize: "16px", fontWeight: "500" }, children: "Description" })
9794
+ ] }),
9795
+ /* @__PURE__ */ jsxRuntime.jsx(material.Stack, { direction: "row", alignItems: "center", flexWrap: "wrap", spacing: 0.5, useFlexGap: true, children: userData?.certOfferToHelp })
9796
+ ] })
9797
+ ] }) })
9798
+ ] }),
9799
+ " "
9800
+ ]
9801
+ }
9802
+ );
9803
+ }
9804
+ const useFormikWithDefaultsProps = (props) => {
9805
+ return useFormik({
9806
+ validateOnChange: false,
9807
+ validateOnBlur: false,
9808
+ ...props
9809
+ });
9810
+ };
9811
+ function ChangePasswordDialog({ isOpen, email, t: t2, setInitialState }) {
9812
+ const formik = useFormikWithDefaultsProps({
9813
+ initialValues: { newPassword: "", passwordConfirmation: "" },
9814
+ validationSchema: ResetPasswordValidationUtil(t2),
9815
+ onSubmit: async (val, { setSubmitting }) => {
9816
+ try {
9817
+ setSubmitting(true);
9818
+ const payload = {
9819
+ email,
9820
+ password: val.newPassword,
9821
+ password_confirmation: val.passwordConfirmation
9822
+ };
9823
+ const res = await changeUserPasswordApi(payload);
9824
+ if (res.remote === "success") {
9825
+ toast.success(t2(TRANSLATION_PREFIX.toast + "Password changed successfully."));
9826
+ handleCloseUtil(setInitialState);
9827
+ }
9828
+ } catch (err) {
9829
+ toast.error(err.message || t2(ALERT_MESSAGES.fallbackError));
9830
+ }
9831
+ }
9832
+ });
9833
+ return /* @__PURE__ */ jsxRuntime.jsx(
9834
+ material.Dialog,
9835
+ {
9836
+ fullWidth: false,
9837
+ sx: { "& .MuiPaper-root": { maxWidth: "600px", borderRadius: "12px" } },
9838
+ onClose: () => handleCloseUtil(setInitialState),
9839
+ open: isOpen,
9840
+ "aria-labelledby": "draggable-dialog-title",
9841
+ children: /* @__PURE__ */ jsxRuntime.jsx("form", { onSubmit: formik.handleSubmit, children: /* @__PURE__ */ jsxRuntime.jsx(ChangePasswordStyled, { children: /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { pr: { xs: 0, lg: 8 }, p: 2 }, children: [
9842
+ /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h6", sx: { display: "flex", alignItems: "center" }, className: "Heading", children: "Change Password" }),
9843
+ /* @__PURE__ */ jsxRuntime.jsx(
9844
+ material.Box,
9845
+ {
9846
+ sx: {
9847
+ p: 2,
9848
+ border: "1px solid #EDEDED",
9849
+ borderRadius: "16px",
9850
+ mt: 2
9851
+ },
9852
+ children: /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { container: true, spacing: 2, children: [
9853
+ /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { item: true, xs: 12, lg: 6, children: [
9854
+ /* @__PURE__ */ jsxRuntime.jsx(
9855
+ LabeledInput,
9856
+ {
9857
+ type: "password",
9858
+ label: t2("New password"),
9859
+ fullWidth: true,
9860
+ size: "small",
9861
+ ...formik.getFieldProps("newPassword")
9862
+ }
9863
+ ),
9864
+ /* @__PURE__ */ jsxRuntime.jsx(ErrorMessage, { formik, fieldName: "newPassword" })
9865
+ ] }),
9866
+ /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { item: true, xs: 12, lg: 6, children: [
9867
+ /* @__PURE__ */ jsxRuntime.jsx(
9868
+ LabeledInput,
9932
9869
  {
9933
- dangerouslySetInnerHTML: {
9934
- __html: userData?.certBio || ""
9935
- }
9870
+ type: "password",
9871
+ label: t2("Confirm new password"),
9872
+ fullWidth: true,
9873
+ size: "small",
9874
+ ...formik.getFieldProps("passwordConfirmation")
9936
9875
  }
9937
9876
  ),
9938
- /* @__PURE__ */ jsxRuntime.jsx(material.Divider, {}),
9939
- /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h5", sx: { fontSize: "16px", fontWeight: "500" }, children: "Description" })
9877
+ /* @__PURE__ */ jsxRuntime.jsx(ErrorMessage, { formik, fieldName: "passwordConfirmation" })
9940
9878
  ] }),
9941
- /* @__PURE__ */ jsxRuntime.jsx(material.Stack, { direction: "row", alignItems: "center", flexWrap: "wrap", spacing: 0.5, useFlexGap: true, children: userData?.certOfferToHelp })
9879
+ /* @__PURE__ */ jsxRuntime.jsx(material.Grid, { item: true, xs: 12, lg: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
9880
+ Button,
9881
+ {
9882
+ isLoading: formik.isSubmitting,
9883
+ className: "invite",
9884
+ sx: { width: "auto !important" },
9885
+ type: "submit",
9886
+ disabled: formik.isSubmitting,
9887
+ btnTitle: t2("Change Password")
9888
+ }
9889
+ ) })
9942
9890
  ] })
9943
- ] }) })
9944
- ] }),
9945
- " "
9946
- ]
9891
+ }
9892
+ )
9893
+ ] }) }) })
9947
9894
  }
9948
9895
  );
9949
9896
  }
9950
- var dist = {};
9951
- var hasRequiredDist;
9952
- function requireDist() {
9953
- if (hasRequiredDist) return dist;
9954
- hasRequiredDist = 1;
9955
- var __assign2 = dist && dist.__assign || function() {
9956
- __assign2 = Object.assign || function(t) {
9957
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9958
- s = arguments[i];
9959
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
9960
- t[p] = s[p];
9961
- }
9962
- return t;
9963
- };
9964
- return __assign2.apply(this, arguments);
9965
- };
9966
- Object.defineProperty(dist, "__esModule", { value: true });
9967
- dist.join = dist.subst = dist.query = void 0;
9968
- function urlcat2(baseUrlOrTemplate, pathTemplateOrParams, maybeParams) {
9969
- if (maybeParams === void 0) {
9970
- maybeParams = {};
9971
- }
9972
- if (typeof pathTemplateOrParams === "string") {
9973
- var baseUrl = baseUrlOrTemplate;
9974
- var pathTemplate = pathTemplateOrParams;
9975
- var params = maybeParams;
9976
- return urlcatImpl(pathTemplate, params, baseUrl);
9897
+ const AppMenus = ({ menuItems, setInitialState, t: t2, appName, router }) => {
9898
+ const handleRedirection2 = (appName2, url2, type) => {
9899
+ if (router && appName2 === APP_NAMES.sso && type === "tab") {
9900
+ router.push(url2);
9977
9901
  } else {
9978
- var baseTemplate = baseUrlOrTemplate;
9979
- var params = pathTemplateOrParams;
9980
- return urlcatImpl(baseTemplate, params);
9981
- }
9982
- }
9983
- dist.default = urlcat2;
9984
- function urlcatImpl(pathTemplate, params, baseUrl) {
9985
- var _a = path(pathTemplate, params), renderedPath = _a.renderedPath, remainingParams = _a.remainingParams;
9986
- var cleanParams = removeNullOrUndef(remainingParams);
9987
- var renderedQuery = query(cleanParams);
9988
- var pathAndQuery = join(renderedPath, "?", renderedQuery);
9989
- return baseUrl ? join(baseUrl, "/", pathAndQuery) : pathAndQuery;
9990
- }
9991
- function query(params) {
9992
- return new URLSearchParams(params).toString();
9993
- }
9994
- dist.query = query;
9995
- function subst(template, params) {
9996
- var renderedPath = path(template, params).renderedPath;
9997
- return renderedPath;
9998
- }
9999
- dist.subst = subst;
10000
- function path(template, params) {
10001
- var remainingParams = __assign2({}, params);
10002
- var allowedTypes = ["boolean", "string", "number"];
10003
- var renderedPath = template.replace(/:\w+/g, function(p) {
10004
- var key = p.slice(1);
10005
- if (/^\d+$/.test(key)) {
10006
- return p;
10007
- }
10008
- if (!params.hasOwnProperty(key)) {
10009
- throw new Error("Missing value for path parameter " + key + ".");
10010
- }
10011
- if (!allowedTypes.includes(typeof params[key])) {
10012
- throw new TypeError("Path parameter " + key + " cannot be of type " + typeof params[key] + ". " + ("Allowed types are: " + allowedTypes.join(", ") + "."));
10013
- }
10014
- if (typeof params[key] === "string" && params[key].trim() === "") {
10015
- throw new Error("Path parameter " + key + " cannot be an empty string.");
9902
+ if (type === "app") {
9903
+ window.open(`${url2}?source=${appName2}`, "_blank");
9904
+ } else {
9905
+ if (router) {
9906
+ router.push(`${url2}?source=${appName2}`);
9907
+ } else {
9908
+ window.open(`${url2}?source=${appName2}`, "_blank");
9909
+ }
10016
9910
  }
10017
- delete remainingParams[key];
10018
- return encodeURIComponent(params[key]);
10019
- });
10020
- return { renderedPath, remainingParams };
10021
- }
10022
- function join(part1, separator, part2) {
10023
- var p1 = part1.endsWith(separator) ? part1.slice(0, -separator.length) : part1;
10024
- var p2 = part2.startsWith(separator) ? part2.slice(separator.length) : part2;
10025
- return p1 === "" || p2 === "" ? p1 + p2 : p1 + separator + p2;
10026
- }
10027
- dist.join = join;
10028
- function removeNullOrUndef(params) {
10029
- return Object.keys(params).filter(function(k) {
10030
- return notNullOrUndefined(params[k]);
10031
- }).reduce(function(result, k) {
10032
- result[k] = params[k];
10033
- return result;
10034
- }, {});
10035
- }
10036
- function notNullOrUndefined(v) {
10037
- return v !== void 0 && v !== null;
10038
- }
10039
- return dist;
10040
- }
10041
- var distExports = requireDist();
10042
- const urlcat = /* @__PURE__ */ getDefaultExportFromCjs(distExports);
10043
- if (env.VITE_MODULES_SSO_BACKEND_BASE_URL === void 0) {
10044
- throw new Error("env is not set");
10045
- }
10046
- function createAxiosInstance(baseUrl) {
10047
- return axios.create({
10048
- baseURL: urlcat(baseUrl, "/api/"),
10049
- headers: {
10050
- "Content-Type": "application/json"
9911
+ }
9912
+ };
9913
+ return /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setInitialState), children: /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { p: 2 }, children: /* @__PURE__ */ jsxRuntime.jsx(material.Grid, { container: true, rowGap: 3, children: menuItems?.length > 0 && menuItems?.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
9914
+ material.Grid,
9915
+ {
9916
+ onClick: () => handleRedirection2(appName, item.link, item.type),
9917
+ item: true,
9918
+ md: 4,
9919
+ xs: 6,
9920
+ style: { cursor: "pointer", textDecoration: "none" },
9921
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsxs(
9922
+ material.Box,
9923
+ {
9924
+ className: "dashboard_Boxs",
9925
+ sx: {
9926
+ marginTop: "10px",
9927
+ textAlign: "center",
9928
+ borderRadius: "16px",
9929
+ "& svg": {
9930
+ margin: "0 auto",
9931
+ width: "25px",
9932
+ height: "25px"
9933
+ }
9934
+ },
9935
+ children: [
9936
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { children: /* @__PURE__ */ jsxRuntime.jsx(
9937
+ "img",
9938
+ {
9939
+ width: 34,
9940
+ height: 34,
9941
+ style: { margin: "0px auto", width: "34px", height: "34px" },
9942
+ src: item.icon,
9943
+ alt: ""
9944
+ }
9945
+ ) }),
9946
+ /* @__PURE__ */ jsxRuntime.jsx(
9947
+ material.Typography,
9948
+ {
9949
+ sx: {
9950
+ fontSize: "12.5px",
9951
+ color: "#252525",
9952
+ fontWeight: 500
9953
+ },
9954
+ children: t2(item.name)
9955
+ }
9956
+ )
9957
+ ]
9958
+ }
9959
+ ) })
10051
9960
  },
10052
- withCredentials: true
10053
- });
10054
- }
10055
- async function req(config) {
10056
- const baseUrl = env.VITE_MODULES_SSO_BACKEND_BASE_URL;
10057
- const axiosInstance = createAxiosInstance(baseUrl);
10058
- try {
10059
- const response = await axiosInstance.request({ ...config });
10060
- return {
10061
- remote: SERVER_STATUS.success,
10062
- data: response?.data?.data
10063
- };
10064
- } catch (error) {
10065
- if (error.response) {
10066
- const axiosError = error;
10067
- const errorMessage = axiosError.response?.data?.message || ALERT_MESSAGES.fallbackError;
10068
- const errorCode = axiosError.response?.status;
10069
- const errorData = axiosError.response?.data?.data || null;
10070
- return {
10071
- status: errorCode,
10072
- remote: SERVER_STATUS.failure,
10073
- error: {
10074
- message: errorMessage,
10075
- data: errorData
9961
+ index
9962
+ )) }) }) });
9963
+ };
9964
+ const DropdownMenu = ({ headerMenuArray, initialState }) => {
9965
+ const pathname = window.location.pathname;
9966
+ const isMobile = material.useMediaQuery("(max-width: 1324px)");
9967
+ return /* @__PURE__ */ jsxRuntime.jsx("nav", { style: { backgroundColor: "transparent", color: "#000" }, children: !isMobile ? /* @__PURE__ */ jsxRuntime.jsx("ul", { className: " main_list_Menu desktopMenu", children: headerMenuArray.map((items, index) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("li", { className: "menu-item", style: { listStyle: "none" }, children: [
9968
+ /* @__PURE__ */ jsxRuntime.jsx("a", { href: items.value || "", target: items.target, className: `menu-link`, children: items.label }),
9969
+ Boolean(items.children.length) && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "submenuData ", children: items.children?.map((child, index2) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: child.value || "", target: child.target, className: "submenu-link", children: child.label }) }, index2) })) })
9970
+ ] }, index) })) }) : initialState.toggles.dropDownMenu && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden smallDeviceMenu", id: "mobile-menu", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: " layout_mobile_menu", children: headerMenuArray.map((items, index) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9971
+ /* @__PURE__ */ jsxRuntime.jsx(
9972
+ "a",
9973
+ {
9974
+ href: items.value || "",
9975
+ className: `bg_main_menu ${pathname === items.value ? "text-customBlue" : "text-[#2C2E35]"}`,
9976
+ children: items.label
9977
+ },
9978
+ index
9979
+ ),
9980
+ Boolean(items.children.length) && /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "submenu_child", children: items.children?.map((items2, index2) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("li", { style: { listStyleType: "none" }, children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: items2.value || "", target: items2.target, className: "submenu_child_link ", children: items2.label }) }, index2) })) })
9981
+ ] })) }) }) });
9982
+ };
9983
+ function Language({
9984
+ interFaceLangList,
9985
+ updateInterfaceLang,
9986
+ selectedInterFaceLang,
9987
+ setInitialState,
9988
+ t: t2
9989
+ }) {
9990
+ return /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setInitialState), children: /* @__PURE__ */ jsxRuntime.jsx(
9991
+ material.Box,
9992
+ {
9993
+ sx: {
9994
+ p: 2,
9995
+ zIndex: "99999999 !important",
9996
+ borderRadius: "16px",
9997
+ border: "1px solid #EDEDED",
9998
+ boxShadow: "0px 12px 16px -4px #1A191914",
9999
+ maxWidth: "333px",
10000
+ minWidth: { md: "333px", lg: "333px", xs: "200px" },
10001
+ background: "#fff",
10002
+ top: "66px",
10003
+ right: "0px",
10004
+ position: "absolute"
10005
+ },
10006
+ children: /* @__PURE__ */ jsxRuntime.jsx(
10007
+ material.Box,
10008
+ {
10009
+ component: "ul",
10010
+ sx: {
10011
+ margin: "0px",
10012
+ padding: "0px 16px 0px 0px",
10013
+ listStyle: "none",
10014
+ overflow: "hidden",
10015
+ overflowY: "auto",
10016
+ maxHeight: "300px",
10017
+ "& li": {
10018
+ borderBottom: "1px solid #EDEDED",
10019
+ padding: "16px 0px",
10020
+ cursor: "pointer",
10021
+ "&:last-child": {
10022
+ borderBottom: "0px"
10023
+ }
10024
+ }
10025
+ },
10026
+ children: interFaceLangList?.map((lang2, i) => {
10027
+ return /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
10028
+ material.Stack,
10029
+ {
10030
+ direction: "row",
10031
+ spacing: 2,
10032
+ alignItems: "center",
10033
+ onClick: () => {
10034
+ updateInterfaceLang(lang2);
10035
+ setInitialState((p) => ({ ...p, toggles: { ...p.toggles, lang: false } }));
10036
+ },
10037
+ children: /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsxs(material.Stack, { direction: "row", alignItems: "center", justifyContent: "flex-start", gap: 2, children: [
10038
+ /* @__PURE__ */ jsxRuntime.jsx(
10039
+ "img",
10040
+ {
10041
+ src: lang2?.flag || IMAGES.DefaultLang,
10042
+ alt: lang2?.label,
10043
+ style: {
10044
+ width: "40px !important",
10045
+ height: "25px !important"
10046
+ },
10047
+ width: 40,
10048
+ height: 25
10049
+ }
10050
+ ),
10051
+ /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h4", sx: { fontSize: "16px", fontWeight: "500", m: 0 }, children: t2(lang2?.label) }),
10052
+ selectedInterFaceLang?.value === lang2?.value && /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { sx: { color: "#007FC0", fontSize: "30px" } })
10053
+ ] }) })
10054
+ }
10055
+ ) }, i);
10056
+ })
10076
10057
  }
10077
- };
10058
+ )
10078
10059
  }
10079
- throw error;
10080
- }
10081
- }
10082
- const transformNotifications = (itm) => {
10083
- return {
10084
- id: itm.id,
10085
- title: itm.title,
10086
- date: formatDateUtil(itm.created_at),
10087
- type: itm.message_type,
10088
- status: itm.app_access,
10089
- source: itm.app_access
10090
- };
10091
- };
10092
- const transformMenuBuilderData = (itm) => {
10093
- return {
10094
- label: itm.name,
10095
- value: itm.route,
10096
- target: itm.target,
10097
- id: itm.id,
10098
- order: itm.order,
10099
- children: itm.children?.length ? itm.children.map((data) => transformMenuBuilderData(data)) : []
10100
- };
10101
- };
10102
- async function getDropDownMenuApi(params) {
10103
- const res = await req({
10104
- url: urlcat("menu/menus", params),
10105
- method: "GET"
10106
- });
10107
- if (res.remote === SERVER_STATUS.success) {
10108
- return {
10109
- remote: SERVER_STATUS.success,
10110
- data: res?.data?.map(transformMenuBuilderData)
10111
- };
10112
- }
10113
- return res;
10114
- }
10115
- async function notificationApi(data) {
10116
- const res = await req({
10117
- url: urlcat("/notification/index", data),
10118
- method: "GET"
10119
- });
10120
- if (res.remote === SERVER_STATUS.success) {
10121
- return {
10122
- remote: SERVER_STATUS.success,
10123
- data: res?.data?.pager
10124
- };
10125
- }
10126
- return res;
10127
- }
10128
- async function changeUserPasswordApi(payload) {
10129
- const res = await req({
10130
- url: `/auth/change-password`,
10131
- method: "POST",
10132
- data: payload
10133
- });
10134
- if (res.remote === SERVER_STATUS.success) {
10135
- return {
10136
- remote: SERVER_STATUS.success,
10137
- data: res?.data?.pager
10138
- };
10139
- }
10140
- return res;
10141
- }
10142
- async function autoLoginApi(id, userDetails) {
10143
- const response = await req({
10144
- url: urlcat("/auto-authenticate/:id", { id }),
10145
- method: "POST"
10146
- });
10147
- if (response.remote === "success") {
10148
- return response;
10149
- }
10150
- return response;
10060
+ ) });
10151
10061
  }
10152
10062
  /*! *****************************************************************************
10153
10063
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -10641,168 +10551,260 @@ const Notification = ({ setInitialState, notificationAccessApps, initialState, t
10641
10551
  }
10642
10552
  ) });
10643
10553
  };
10644
- const AppMenus = ({ menuItems, setInitialState, t: t2, appName, router }) => {
10645
- const handleRedirection2 = (appName2, url2, type) => {
10646
- if (router && appName2 === APP_NAMES.sso && type === "tab") {
10554
+ const SubHeaderStyled = material.styled(material.AppBar)(() => ({
10555
+ // "@media screen and (max-width:1920px) and (min-width:1600px)": {
10556
+ // "& .submenu": {
10557
+ // width: "84% !important",
10558
+ // },
10559
+ // },
10560
+ // "@media screen and (max-width:1600px) and (min-width:1440px)": {
10561
+ // "& .submenu": {
10562
+ // width: "82% !important",
10563
+ // },
10564
+ // },
10565
+ // "@media screen and (max-width:5000px) and (min-width:2560px)": {
10566
+ // "& .submenu": {
10567
+ // width: "89% !important",
10568
+ // },
10569
+ // },
10570
+ "& ": {
10571
+ background: "#fff",
10572
+ color: "#000",
10573
+ height: "70px",
10574
+ width: "100vw",
10575
+ fontFamily: "Inter, sans-serif",
10576
+ position: "fixed",
10577
+ zIndex: "999",
10578
+ // left: "255px",
10579
+ right: "0px",
10580
+ top: "0px"
10581
+ },
10582
+ "& .submenu": {
10583
+ display: "flex",
10584
+ justifyContent: "space-between",
10585
+ alignItems: "center",
10586
+ margin: "0px",
10587
+ fontFamily: "Inter, sans-serif"
10588
+ },
10589
+ "& .profile": {
10590
+ position: "absolute",
10591
+ right: "0px",
10592
+ top: "66px",
10593
+ background: "#fff",
10594
+ width: "250px",
10595
+ borderRadius: "16px",
10596
+ zIndex: "999",
10597
+ boxShadow: "0px 4px 6px -2px #1A191908",
10598
+ fontFamily: "Inter, sans-serif",
10599
+ border: "1px solid #EDEDED",
10600
+ "& ul": {
10601
+ margin: "0px",
10602
+ padding: "0px 16px 16px",
10603
+ listStyle: "none",
10604
+ "& li": {
10605
+ padding: "10px 0px",
10606
+ borderBottom: "1px solid #E9E9E9",
10607
+ cursor: "pointer",
10608
+ "&:last-child": { borderBottom: "0px" }
10609
+ }
10610
+ }
10611
+ },
10612
+ "& .notification": {
10613
+ display: "flex",
10614
+ alignItems: "center",
10615
+ fontFamily: "Inter, sans-serif"
10616
+ },
10617
+ "& .notification h6,p": {
10618
+ margin: "10px",
10619
+ fontFamily: "Inter, sans-serif"
10620
+ },
10621
+ "& .total": {
10622
+ border: "1px solid #C9C9C9",
10623
+ borderRadius: "6px",
10624
+ padding: "4px 8px 4px 8px",
10625
+ color: "#666666",
10626
+ fontSize: "14px",
10627
+ fontWeight: "500",
10628
+ display: "flex",
10629
+ fontFamily: "Inter, sans-serif"
10630
+ }
10631
+ }));
10632
+ const UserProfile = ({ t: t2, userData, setInitialState, extraMenuOptions, router }) => {
10633
+ const [state, setState] = React.useState({ toggles: { userProfile: false } });
10634
+ const handleRedirection2 = (appName, url2) => {
10635
+ if (router && appName === APP_NAMES.sso) {
10647
10636
  router.push(url2);
10648
10637
  } else {
10649
- if (type === "app") {
10650
- window.open(`${url2}?source=${appName2}`, "_blank");
10651
- } else {
10652
- if (router) {
10653
- router.push(`${url2}?source=${appName2}`);
10654
- } else {
10655
- window.open(`${url2}?source=${appName2}`, "_blank");
10656
- }
10657
- }
10638
+ window.open(url2, "_blank");
10658
10639
  }
10659
10640
  };
10660
- return /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setInitialState), children: /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { p: 2 }, children: /* @__PURE__ */ jsxRuntime.jsx(material.Grid, { container: true, rowGap: 3, children: menuItems?.length > 0 && menuItems?.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
10661
- material.Grid,
10662
- {
10663
- onClick: () => handleRedirection2(appName, item.link, item.type),
10664
- item: true,
10665
- md: 4,
10666
- xs: 6,
10667
- style: { cursor: "pointer", textDecoration: "none" },
10668
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsxs(
10669
- material.Box,
10641
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10642
+ /* @__PURE__ */ jsxRuntime.jsxs(
10643
+ material.Box,
10644
+ {
10645
+ sx: {
10646
+ display: "flex",
10647
+ alignItems: "center",
10648
+ cursor: "pointer",
10649
+ width: "auto",
10650
+ height: "auto"
10651
+ },
10652
+ "data-toggle-name": "userProfile",
10653
+ onClick: (e) => handleOpenUtil(e, setState),
10654
+ children: [
10655
+ /* @__PURE__ */ jsxRuntime.jsx(material.Avatar, { src: userData?.userprofile, sx: { width: "40px", height: "40px" } }),
10656
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { margin: "2px 0px 0px 2px" }, children: /* @__PURE__ */ jsxRuntime.jsx(SVG.Dawn, {}) })
10657
+ ]
10658
+ }
10659
+ ),
10660
+ state.toggles.userProfile && /* @__PURE__ */ jsxRuntime.jsx(material.ClickAwayListener, { onClickAway: () => handleCloseUtil(setState), children: /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { className: "profile", children: [
10661
+ /* @__PURE__ */ jsxRuntime.jsxs(
10662
+ material.Stack,
10670
10663
  {
10671
- className: "dashboard_Boxs",
10664
+ direction: "row",
10665
+ spacing: 1,
10666
+ alignItems: "center",
10672
10667
  sx: {
10673
- marginTop: "10px",
10674
- textAlign: "center",
10675
- borderRadius: "16px",
10676
- "& svg": {
10677
- margin: "0 auto",
10678
- width: "25px",
10679
- height: "25px"
10680
- }
10668
+ borderBottom: "1px solid #EDEDED",
10669
+ p: 2,
10670
+ zIndex: "99999999 !important"
10681
10671
  },
10682
10672
  children: [
10683
- /* @__PURE__ */ jsxRuntime.jsx(material.Box, { children: /* @__PURE__ */ jsxRuntime.jsx(
10684
- "img",
10685
- {
10686
- width: 34,
10687
- height: 34,
10688
- style: { margin: "0px auto", width: "34px", height: "34px" },
10689
- src: item.icon,
10690
- alt: ""
10691
- }
10692
- ) }),
10693
- /* @__PURE__ */ jsxRuntime.jsx(
10694
- material.Typography,
10673
+ /* @__PURE__ */ jsxRuntime.jsx(material.Avatar, { src: userData?.userprofile, sx: { width: "55px", height: "55px" }, children: userData?.fullName.trim().split(/\s+/).map((part) => part[0].toUpperCase()).join("") }),
10674
+ /* @__PURE__ */ jsxRuntime.jsxs(
10675
+ material.Box,
10695
10676
  {
10696
10677
  sx: {
10697
- fontSize: "12.5px",
10698
- color: "#252525",
10699
- fontWeight: 500
10678
+ flex: 1,
10679
+ whiteSpace: "normal",
10680
+ wordBreak: "break-all"
10700
10681
  },
10701
- children: t2(item.name)
10682
+ children: [
10683
+ /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h4", sx: { fontSize: "16px", fontWeight: "500", m: 0 }, children: userData?.fullName }),
10684
+ /* @__PURE__ */ jsxRuntime.jsxs(material.Typography, { component: "span", sx: { m: 0, fontSize: "14px", color: "#666666" }, children: [
10685
+ truncateValUtil(userData?.email || ""),
10686
+ " ",
10687
+ /* @__PURE__ */ jsxRuntime.jsx("br", {}),
10688
+ Boolean(userData?.role) && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
10689
+ "(",
10690
+ userData?.role,
10691
+ ")"
10692
+ ] })
10693
+ ] })
10694
+ ]
10702
10695
  }
10703
10696
  )
10704
10697
  ]
10705
10698
  }
10706
- ) })
10707
- },
10708
- index
10709
- )) }) }) });
10710
- };
10711
- const useFormikWithDefaultsProps = (props) => {
10712
- return useFormik({
10713
- validateOnChange: false,
10714
- validateOnBlur: false,
10715
- ...props
10716
- });
10717
- };
10718
- function ChangePasswordDialog({ isOpen, email, t: t2, setInitialState }) {
10719
- const formik = useFormikWithDefaultsProps({
10720
- initialValues: { newPassword: "", passwordConfirmation: "" },
10721
- validationSchema: ResetPasswordValidationUtil(t2),
10722
- onSubmit: async (val, { setSubmitting }) => {
10723
- try {
10724
- setSubmitting(true);
10725
- const payload = {
10726
- email,
10727
- password: val.newPassword,
10728
- password_confirmation: val.passwordConfirmation
10729
- };
10730
- const res = await changeUserPasswordApi(payload);
10731
- if (res.remote === "success") {
10732
- toast.success(t2(TRANSLATION_PREFIX.toast + "Password changed successfully."));
10733
- handleCloseUtil(setInitialState);
10734
- }
10735
- } catch (err) {
10736
- toast.error(err.message || t2(ALERT_MESSAGES.fallbackError));
10737
- }
10738
- }
10739
- });
10740
- return /* @__PURE__ */ jsxRuntime.jsx(
10741
- material.Dialog,
10742
- {
10743
- fullWidth: false,
10744
- sx: { "& .MuiPaper-root": { maxWidth: "600px", borderRadius: "12px" } },
10745
- onClose: () => handleCloseUtil(setInitialState),
10746
- open: isOpen,
10747
- "aria-labelledby": "draggable-dialog-title",
10748
- children: /* @__PURE__ */ jsxRuntime.jsx("form", { onSubmit: formik.handleSubmit, children: /* @__PURE__ */ jsxRuntime.jsx(ChangePasswordStyled, { children: /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: { pr: { xs: 0, lg: 8 }, p: 2 }, children: [
10749
- /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "h6", sx: { display: "flex", alignItems: "center" }, className: "Heading", children: "Change Password" }),
10750
- /* @__PURE__ */ jsxRuntime.jsx(
10751
- material.Box,
10699
+ ),
10700
+ /* @__PURE__ */ jsxRuntime.jsxs("ul", { children: [
10701
+ extraMenuOptions.components,
10702
+ extraMenuOptions.isViewProfile && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
10703
+ material.Stack,
10752
10704
  {
10753
- sx: {
10754
- p: 2,
10755
- border: "1px solid #EDEDED",
10756
- borderRadius: "16px",
10757
- mt: 2
10758
- },
10759
- children: /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { container: true, spacing: 2, children: [
10760
- /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { item: true, xs: 12, lg: 6, children: [
10761
- /* @__PURE__ */ jsxRuntime.jsx(
10762
- LabeledInput,
10763
- {
10764
- type: "password",
10765
- label: t2("New password"),
10766
- fullWidth: true,
10767
- size: "small",
10768
- ...formik.getFieldProps("newPassword")
10769
- }
10770
- ),
10771
- /* @__PURE__ */ jsxRuntime.jsx(ErrorMessage, { formik, fieldName: "newPassword" })
10772
- ] }),
10773
- /* @__PURE__ */ jsxRuntime.jsxs(material.Grid, { item: true, xs: 12, lg: 6, children: [
10774
- /* @__PURE__ */ jsxRuntime.jsx(
10775
- LabeledInput,
10776
- {
10777
- type: "password",
10778
- label: t2("Confirm new password"),
10779
- fullWidth: true,
10780
- size: "small",
10781
- ...formik.getFieldProps("passwordConfirmation")
10782
- }
10783
- ),
10784
- /* @__PURE__ */ jsxRuntime.jsx(ErrorMessage, { formik, fieldName: "passwordConfirmation" })
10785
- ] }),
10786
- /* @__PURE__ */ jsxRuntime.jsx(material.Grid, { item: true, xs: 12, lg: 12, children: /* @__PURE__ */ jsxRuntime.jsx(
10787
- Button,
10705
+ direction: "row",
10706
+ spacing: 1,
10707
+ alignItems: "center",
10708
+ onClick: () => setInitialState((p) => ({ ...p, toggles: { ...p.toggles, viewProfile: true } })),
10709
+ sx: { color: "#1A1919", cursor: "pointer", textDecoration: "none" },
10710
+ children: [
10711
+ /* @__PURE__ */ jsxRuntime.jsx(SVG.CheckedPerson, {}),
10712
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
10713
+ material.Typography,
10788
10714
  {
10789
- isLoading: formik.isSubmitting,
10790
- className: "invite",
10791
- sx: { width: "auto !important" },
10792
- type: "submit",
10793
- disabled: formik.isSubmitting,
10794
- btnTitle: t2("Change Password")
10715
+ variant: "h4",
10716
+ sx: {
10717
+ fontSize: "16px",
10718
+ fontWeight: "400",
10719
+ m: 0
10720
+ },
10721
+ children: t2("View Profile")
10795
10722
  }
10796
10723
  ) })
10797
- ] })
10724
+ ]
10798
10725
  }
10799
- )
10800
- ] }) }) })
10801
- }
10802
- );
10803
- }
10804
- const IMAGES = {
10805
- Us
10726
+ ) }),
10727
+ extraMenuOptions.isEditProfile && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
10728
+ material.Stack,
10729
+ {
10730
+ direction: "row",
10731
+ spacing: 1,
10732
+ alignItems: "center",
10733
+ onClick: () => handleRedirection2(userData?.appName, SSO_ROUTES(userData?.appName).editProfile),
10734
+ sx: { color: "#1A1919", textDecoration: "none" },
10735
+ children: [
10736
+ /* @__PURE__ */ jsxRuntime.jsx(SVG.UserEdit, {}),
10737
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
10738
+ material.Typography,
10739
+ {
10740
+ variant: "h4",
10741
+ sx: {
10742
+ fontSize: "16px",
10743
+ fontWeight: "400",
10744
+ m: 0
10745
+ },
10746
+ children: t2("Edit Profile")
10747
+ }
10748
+ ) })
10749
+ ]
10750
+ }
10751
+ ) }),
10752
+ extraMenuOptions.isChangePassword && /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
10753
+ material.Stack,
10754
+ {
10755
+ direction: "row",
10756
+ spacing: 1,
10757
+ alignItems: "center",
10758
+ onClick: () => setInitialState((p) => ({ ...p, toggles: { ...p.toggles, changePassword: true } })),
10759
+ sx: { cursor: "pointer", textDecoration: "none" },
10760
+ children: [
10761
+ /* @__PURE__ */ jsxRuntime.jsx(SVG.CheckedPerson, {}),
10762
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
10763
+ material.Typography,
10764
+ {
10765
+ variant: "h4",
10766
+ sx: {
10767
+ color: "#1A1919",
10768
+ fontSize: "16px",
10769
+ fontWeight: "400",
10770
+ m: 0
10771
+ },
10772
+ children: t2("Change Password")
10773
+ }
10774
+ ) })
10775
+ ]
10776
+ }
10777
+ ) }),
10778
+ /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsxs(
10779
+ material.Stack,
10780
+ {
10781
+ direction: "row",
10782
+ spacing: 1,
10783
+ alignItems: "center",
10784
+ onClick: () => setInitialState?.((p) => ({
10785
+ ...p,
10786
+ toggles: { ...p.toggles, logout: true }
10787
+ })),
10788
+ children: [
10789
+ /* @__PURE__ */ jsxRuntime.jsx(SVG.Logout, {}),
10790
+ /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
10791
+ material.Typography,
10792
+ {
10793
+ variant: "h4",
10794
+ sx: {
10795
+ fontSize: "16px",
10796
+ fontWeight: "400",
10797
+ m: 0
10798
+ },
10799
+ children: t2("Logout")
10800
+ }
10801
+ ) })
10802
+ ]
10803
+ }
10804
+ ) })
10805
+ ] })
10806
+ ] }) })
10807
+ ] });
10806
10808
  };
10807
10809
  const Header = ({
10808
10810
  router,
@@ -10971,7 +10973,7 @@ const Header = ({
10971
10973
  width: 40,
10972
10974
  height: 30,
10973
10975
  alt: "lang",
10974
- src: selectedInterFaceLang?.flag || IMAGES.Us
10976
+ src: selectedInterFaceLang?.flag || IMAGES.DefaultLang
10975
10977
  }
10976
10978
  ),
10977
10979
  /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: { margin: "2px 0px 0px 2px" }, children: /* @__PURE__ */ jsxRuntime.jsx(SVG.Dawn, {}) })
@@ -11404,7 +11406,7 @@ const App = () => {
11404
11406
  appAccess: [
11405
11407
  {
11406
11408
  name: "Tools",
11407
- icon: "https://cert-6seconds.s3.us-west-2.amazonaws.com/uploads/dashboard/tools.svg",
11409
+ icon: "",
11408
11410
  link: "https://tools.6seconds.org",
11409
11411
  type: "app"
11410
11412
  },
@@ -11439,7 +11441,7 @@ const App = () => {
11439
11441
  id: 1,
11440
11442
  label: "Chinese",
11441
11443
  value: "zh",
11442
- flag: "https://cert-6seconds.s3.us-west-2.amazonaws.com/uploads/flags/1736568764.png"
11444
+ flag: ""
11443
11445
  },
11444
11446
  {
11445
11447
  id: 1,
@@ -11458,7 +11460,7 @@ const App = () => {
11458
11460
  id: 1,
11459
11461
  label: "Chinese",
11460
11462
  value: "zh",
11461
- flag: "https://cert-6seconds.s3.us-west-2.amazonaws.com/uploads/flags/1736568764.png"
11463
+ flag: ""
11462
11464
  },
11463
11465
  logo: /* @__PURE__ */ jsxRuntime.jsx(Logo, {}),
11464
11466
  isNotification: true,