@nibssplc/cams-sdk-react 0.0.1-beta.65 → 0.0.1-beta.66

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../../node_modules/tslib/tslib.es6.js","../src/hooks/useCAMSAuth.ts","../src/hooks/useCAMSMSALAuth.ts","../src/hooks/useCAMSPopupAuth.ts","../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/components/CAMSProvider.tsx","../src/components/ProtectedRoute.tsx","../src/components/CAMSMSALProvider.tsx","../src/components/ClientOnly.tsx","../src/context/CAMSContext.tsx","../src/components/UnifiedCAMSProvider.tsx","../../../node_modules/zod/v4/core/core.js","../../../node_modules/zod/v4/core/util.js","../../../node_modules/zod/v4/core/errors.js","../../../node_modules/zod/v4/core/parse.js","../../../node_modules/@hookform/resolvers/zod/dist/zod.mjs","../src/lib/utils.ts","../src/components/ui/input-otp.tsx","../src/components/ui/form.tsx","../src/components/ui/card.tsx","../src/components/GenericOTP.tsx","../src/assets/images/OTPAuthentication.svg","../src/assets/images/microsoftauthenticator.svg","../src/components/ui/button.tsx","../src/components/ui/dialog.tsx","../../../node_modules/ldrs/dist/react/Waveform.js","../../../node_modules/style-inject/dist/style-inject.es.js","../src/components/Loading.tsx","../src/components/AuthSuccessAnimation.tsx","../src/utils/DeviceID.ts","../src/hooks/useOTPHandler.tsx","../src/components/MFAOptions.tsx","../src/components/LoginButton.tsx","../src/components/MFAGate.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { useState, useCallback, useRef, useEffect } from \"react\";\nimport {\n CAMSSessionManager,\n CAMSConfig,\n CAMSError,\n Profile,\n isPopupWindow,\n initializePopupAuth,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSAuthOptions {\n appCode: string;\n storageKey?: string;\n onAuthSuccess?: (token: string) => void;\n onAuthError?: (error: CAMSError) => void;\n onTokenExpired?: () => void;\n autoClose?: boolean;\n idleTimeout?: number;\n}\n\nexport interface UseCAMSAuthReturn {\n login: (config: CAMSConfig) => Promise<void>;\n logout: () => Promise<void>;\n isAuthenticated: boolean;\n isLoading: boolean;\n error: CAMSError | null;\n token: string | null;\n profile: Profile | null;\n appCode: string;\n storageKey: string;\n}\n\nexport function useCAMSAuth(\n options: UseCAMSAuthOptions = {\n appCode: \"\",\n storageKey: \"CAMS-AUTH-SDK\",\n }\n): UseCAMSAuthReturn {\n const [isAuthenticated, setIsAuthenticated] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const [error, setError] = useState<CAMSError | null>(null);\n const [token, setToken] = useState<string>(\"\");\n const [profile, setProfile] = useState<Profile | null>(null);\n\n const sessionManagerRef = useRef<CAMSSessionManager | null>(null);\n\n useEffect(() => {\n // Only initialize on client side\n if (typeof window === \"undefined\") return;\n\n // Initialize popup auth handler if in popup\n if (isPopupWindow()) {\n initializePopupAuth();\n }\n\n sessionManagerRef.current ??= new CAMSSessionManager(\n localStorage,\n options.storageKey || \"CAMS-SDK\",\n {\n onAuthSuccess: (res: any) => {\n setToken(res.userProfile.tokens.Bearer);\n setIsAuthenticated(true);\n setIsLoading(false);\n options.onAuthSuccess?.(res.userProfile.tokens.Bearer);\n },\n onAuthError: (error: CAMSError) => {\n setError(error);\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n setIsLoading(false);\n options.onAuthError?.(error);\n },\n onTokenExpired: () => {\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n options.onTokenExpired?.();\n },\n }\n );\n\n // Check initial auth state (skip if in popup)\n if (!isPopupWindow()) {\n const initialAuth = sessionManagerRef.current.isAuthenticated();\n setIsAuthenticated(initialAuth);\n if (initialAuth) {\n setToken(sessionManagerRef.current.getAccessToken() ?? \"\");\n sessionManagerRef.current.getProfile().then(setProfile);\n }\n }\n }, [options.storageKey]);\n\n const login = useCallback(\n async (config: CAMSConfig) => {\n if (!sessionManagerRef.current) return;\n\n setIsLoading(true);\n setError(null);\n\n try {\n const loginConfig: CAMSConfig = {\n ...config,\n // autoClose: options.autoClose ?? config.autoClose,\n idleTimeout: options.idleTimeout ?? config.idleTimeout,\n };\n await sessionManagerRef.current.login(loginConfig);\n // State updates are handled by onAuthSuccess callback\n const userProfile = await sessionManagerRef.current.getProfile();\n setProfile(userProfile);\n } catch (err) {\n setError(err as CAMSError);\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n } finally {\n setIsLoading(false);\n }\n },\n [options.idleTimeout]\n );\n\n const logout = useCallback(async () => {\n if (!sessionManagerRef.current) return;\n\n await sessionManagerRef.current.logout();\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n setError(null);\n }, []);\n\n return {\n login,\n logout,\n isAuthenticated,\n isLoading,\n error,\n token,\n profile,\n appCode: options.appCode,\n storageKey: options.storageKey || \"CAMS-SDK\",\n };\n}\n","import { useState, useCallback, useEffect } from \"react\";\nimport { useMsal, useAccount } from \"@azure/msal-react\";\nimport { InteractionStatus } from \"@azure/msal-browser\";\nimport {\n CAMSError,\n CAMSErrorType,\n Logger,\n CAMSMFAAuthenticator,\n MFAConfig,\n MFAResponse,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSMSALAuthOptions {\n onAuthSuccess?: (token: string) => void;\n onAuthError?: (error: CAMSError) => void;\n onTokenExpired?: () => void;\n scopes?: string[];\n storageKey?: string;\n prompt?: string;\n messageOrigin?: string;\n appCode: string;\n allowedOrigins?: string[];\n MFAEndpoint?: string;\n}\n\nexport interface UseCAMSMSALAuthReturn {\n login: () => Promise<void>;\n logout: () => Promise<void>;\n storageKey: string;\n isAuthenticated: boolean;\n isLoading: boolean;\n error: CAMSError | null;\n idToken: string;\n accessToken: string;\n appCode: string;\n mfaAuthenticator: CAMSMFAAuthenticator | null;\n requiresMFA: boolean;\n completeMFA: (\n code: string,\n type: \"EmailOTP\" | \"AuthenticatorCode\"\n ) => Promise<MFAResponse>;\n sendEmailOTP: () => Promise<boolean>;\n}\n\nexport function useCAMSMSALAuth(\n options: UseCAMSMSALAuthOptions\n): UseCAMSMSALAuthReturn {\n const storageKey = options.storageKey || \"CAMS-MSAL-AUTH-SDK\";\n const { instance, inProgress, accounts } = useMsal();\n const account = useAccount(accounts[0] || {});\n\n const [error, setError] = useState<CAMSError | null>(null);\n const [idToken, setIdToken] = useState<string>(\"\");\n const [accessToken, setAccessToken] = useState<string>(\"\");\n const [mfaAuthenticator, setMfaAuthenticator] =\n useState<CAMSMFAAuthenticator | null>(null);\n const [requiresMFA, setRequiresMFA] = useState<boolean>(false);\n\n const isLoading = inProgress !== InteractionStatus.None;\n const isAuthenticated = !!account && !!accessToken && !requiresMFA;\n\n const scopes = options.scopes || [\"openid\", \"profile\", \"email\"];\n\n const isTokenValid = (token: string): boolean => {\n try {\n const payload = JSON.parse(atob(token.split(\".\")[1]));\n return payload.exp * 1000 > Date.now();\n } catch {\n return false;\n }\n };\n\n useEffect(() => {\n if (typeof window !== \"undefined\" && !accessToken) {\n const stored = localStorage.getItem(storageKey);\n if (stored) {\n try {\n const {\n accessToken,\n idToken,\n requiresMFA: storedRequiresMFA,\n isAuthenticated: storedIsAuthenticated,\n } = JSON.parse(stored);\n if (accessToken && isTokenValid(accessToken)) {\n setAccessToken(accessToken);\n setIdToken(idToken);\n\n // Restore MFA state\n if (storedRequiresMFA && !storedIsAuthenticated) {\n const mfaConfig: MFAConfig = {\n accessToken,\n idToken,\n appCode: options.appCode,\n provider: \"MSAL\",\n apiEndpoint: options.MFAEndpoint,\n };\n const authenticator = new CAMSMFAAuthenticator(mfaConfig);\n setMfaAuthenticator(authenticator);\n setRequiresMFA(true);\n }\n\n console.log(\"App Code >>>\", options.appCode);\n console.log(\"MFA Endpoint >>>\", options.MFAEndpoint);\n } else {\n localStorage.removeItem(storageKey);\n }\n } catch {}\n } else if (account) {\n // Storage cleared but MSAL account exists - clear MSAL state\n instance.logoutRedirect().catch(() => {});\n }\n }\n }, [accessToken, account, instance, options.storageKey]);\n\n // useEffect(() => {\n // const handleRedirect = async () => {\n // try {\n // const response = await instance.handleRedirectPromise();\n\n // if (response) {\n // const account = response.account;\n // instance.setActiveA ccount(account);\n\n // const tokenResponse = await instance.acq uireTokenSilent({\n // scopes,\n // account,\n // });\n\n // setToken(tokenResponse.accessToken);\n // setAccessToken(tokenResponse.accessToken);\n // setIdToken(tokenResponse.idTo ken);\n\n // options.onAuthSuccess?.(tokenR esponse.accessToken);\n\n // if (\n // typeof window !== \"undefined\" &&\n // process.env.NODE_ENV !== \"test\"\n // ) {\n // window.location.href = options.mfaUrl!;\n // }\n // }\n // } catch (err) {\n // console.error(\"Redirect handling failed:\", err);\n // }\n // };\n\n // handleRedirect();\n // }, []);\n\n const login = useCallback(async () => {\n setError(null);\n\n try {\n const response = await instance.loginPopup({\n scopes,\n prompt: options.prompt || \"login\",\n });\n Logger.debug(\"Login Token response:\", {\n accessToken: response.accessToken,\n idToken: response.idToken,\n });\n setAccessToken(response.accessToken);\n setIdToken(response.idToken);\n\n // Initialize MFA authenticator\n const mfaConfig: MFAConfig = {\n accessToken: response.accessToken,\n idToken: response.idToken,\n appCode: options.appCode,\n provider: \"MSAL\",\n apiEndpoint: options.MFAEndpoint,\n };\n\n const authenticator = new CAMSMFAAuthenticator(mfaConfig);\n setMfaAuthenticator(authenticator);\n setRequiresMFA(true);\n\n // Don't persist as authenticated until MFA is complete\n if (typeof window !== \"undefined\") {\n localStorage.setItem(\n storageKey,\n JSON.stringify({\n isAuthenticated: false,\n requiresMFA: true,\n accessToken: response.accessToken,\n idToken: response.idToken,\n })\n );\n }\n\n options.onAuthSuccess?.(response.accessToken);\n } catch (err: any) {\n // Handle user cancellation gracefully\n if (err.errorCode === \"user_cancelled\") {\n Logger.info(\"User cancelled login\");\n setError(null); // Don't treat cancellation as an error\n return;\n }\n\n // If popup is blocked\n if (\n err.errorCode === \"popup_window_error\" ||\n err.message?.includes(\"popup\")\n ) {\n const camsError = new CAMSError(\n CAMSErrorType.POPUP_BLOCKED,\n \"Popup blocked by browser. Please allow popups and try again.\"\n );\n setError(camsError);\n options.onAuthError?.(camsError);\n return;\n }\n\n const camsError = new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"Login failed: \" + err.message || err\n );\n setError(camsError);\n options.onAuthError?.(camsError);\n }\n }, [instance, scopes, options]);\n\n const completeMFA = useCallback(\n async (\n code: string,\n type: \"EmailOTP\" | \"AuthenticatorCode\"\n ): Promise<MFAResponse> => {\n if (!mfaAuthenticator) {\n throw new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"MFA Authenticator not initialized\"\n );\n }\n\n try {\n const mfaResponse = await mfaAuthenticator.verifyOTP(code, type);\n\n if (mfaResponse.isAuthenticated) {\n setRequiresMFA(false);\n\n // Update storage with complete authentication\n if (typeof window !== \"undefined\") {\n localStorage.setItem(\n storageKey,\n JSON.stringify({\n isAuthenticated: true,\n requiresMFA: false,\n accessToken,\n idToken,\n userProfile: mfaResponse,\n })\n );\n }\n }\n\n return mfaResponse;\n } catch (error) {\n setError(error as CAMSError);\n throw error;\n }\n },\n [mfaAuthenticator, accessToken, idToken, storageKey]\n );\n\n const sendEmailOTP = useCallback(async (): Promise<boolean> => {\n if (!mfaAuthenticator) {\n return false;\n }\n return await mfaAuthenticator.sendEmailOTP();\n }, [mfaAuthenticator]);\n\n const logout = useCallback(async () => {\n try {\n await instance.logoutRedirect();\n\n setAccessToken(\"\");\n setIdToken(\"\");\n setError(null);\n setMfaAuthenticator(null);\n setRequiresMFA(false);\n if (typeof window !== \"undefined\") {\n localStorage.removeItem(storageKey);\n }\n } catch (err: any) {\n const camsError = new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"Logout failed: \" + err\n );\n setError(camsError);\n }\n }, [instance, storageKey]);\n\n return {\n login,\n logout,\n storageKey,\n isAuthenticated,\n isLoading,\n error,\n idToken,\n accessToken,\n appCode: options.appCode,\n mfaAuthenticator,\n requiresMFA,\n completeMFA,\n sendEmailOTP,\n };\n}\n","import { useEffect, useCallback } from \"react\";\nimport {\n CAMSSessionManager,\n Profile,\n isPopupWindow,\n initializePopupAuth,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSPopupAuthOptions {\n storageKey?: string;\n targetOrigin?: string;\n onAuthComplete?: (profile: Profile) => void;\n onAuthError?: (error: any) => void;\n}\n\nexport interface UseCAMSPopupAuthReturn {\n completeAuth: (profile: Profile) => void;\n errorAuth: (error: any) => void;\n isPopup: boolean;\n}\n\n/**\n * Hook for handling authentication in popup windows\n * This should be used by the popup app to complete authentication\n */\nexport function useCAMSPopupAuth(\n options: UseCAMSPopupAuthOptions = {}\n): UseCAMSPopupAuthReturn {\n const { storageKey = \"CAMS-SDK\", targetOrigin, onAuthComplete, onAuthError } = options;\n\n useEffect(() => {\n if (typeof window === \"undefined\" || !isPopupWindow()) return;\n\n // Initialize popup auth handler\n initializePopupAuth(targetOrigin);\n\n // Set up global handlers for the popup app\n const globalHandlers = (window as any).__CAMS_POPUP_AUTH__;\n if (globalHandlers) {\n const originalCompleteAuth = globalHandlers.completeAuth;\n const originalErrorAuth = globalHandlers.errorAuth;\n\n globalHandlers.completeAuth = (profile: Profile) => {\n onAuthComplete?.(profile);\n originalCompleteAuth(profile);\n };\n\n globalHandlers.errorAuth = (error: any) => {\n onAuthError?.(error);\n originalErrorAuth(error);\n };\n }\n }, [targetOrigin, onAuthComplete, onAuthError]);\n\n const completeAuth = useCallback((profile: Profile) => {\n if (!isPopupWindow()) {\n console.warn(\"completeAuth called outside of popup window\");\n return;\n }\n\n const sessionManager = new CAMSSessionManager(localStorage, storageKey);\n sessionManager.completePopupAuth(profile, targetOrigin);\n }, [storageKey, targetOrigin]);\n\n const errorAuth = useCallback((error: any) => {\n if (!isPopupWindow()) {\n console.warn(\"errorAuth called outside of popup window\");\n return;\n }\n\n const sessionManager = new CAMSSessionManager(localStorage, storageKey);\n sessionManager.errorPopupAuth(error, targetOrigin);\n }, [storageKey, targetOrigin]);\n\n return {\n completeAuth,\n errorAuth,\n isPopup: isPopupWindow(),\n };\n}","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n source,\n self,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n self,\n source,\n getOwner(),\n maybeKey,\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_ELEMENT_TYPE &&\n node._store &&\n (node._store.validated = 1);\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import React, {\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Profile } from '@nibssplc/cams-sdk';\nimport { useCAMSAuth, UseCAMSAuthReturn, UseCAMSAuthOptions } from '../hooks/useCAMSAuth';\n\ninterface CAMSContextValue extends UseCAMSAuthReturn {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n}\n\nconst CAMSContext = createContext<CAMSContextValue | null>(null);\n\nexport interface CAMSProviderProps extends UseCAMSAuthOptions {\n children: React.ReactNode;\n}\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(Date.now() + days * 864e5).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\n\n\nexport function CAMSProvider({\n children,\n ...authOptions\n}: Readonly<CAMSProviderProps>) {\n const auth = useCAMSAuth(authOptions);\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") {\n return null;\n }\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n // Load profile from storage on mount\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n\n\n // Persist profile separately\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1);\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n // Enhanced logout that also clears profile\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n const value = useMemo(\n () => ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n }),\n [auth, userProfile]\n );\n\n return (\n <CAMSContext.Provider value={value}>\n {children}\n </CAMSContext.Provider>\n );\n}\n\nexport function useCAMSContext(): CAMSContextValue {\n const context = useContext(CAMSContext);\n if (!context) {\n throw new Error('useCAMSContext must be used within a CAMSProvider');\n }\n return context;\n}","import React, { ReactNode } from 'react';\nimport { useCAMSContext } from './CAMSProvider';\n\nexport interface ProtectedRouteProps {\n children: ReactNode;\n fallback?: ReactNode;\n redirectTo?: string;\n}\n\nexport function ProtectedRoute({ children, fallback, redirectTo }: ProtectedRouteProps) {\n const { isAuthenticated, isLoading } = useCAMSContext();\n\n if (isLoading) {\n return fallback || <div>Loading...</div>;\n }\n\n if (!isAuthenticated) {\n if (redirectTo && typeof window !== 'undefined') {\n window.location.href = redirectTo;\n return null;\n }\n return fallback || <div>Access denied. Please log in.</div>;\n }\n\n return <>{children}</>;\n}","import React, {\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { MsalProvider } from \"@azure/msal-react\";\nimport { PublicClientApplication, Configuration } from \"@azure/msal-browser\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport {\n useCAMSMSALAuth,\n UseCAMSMSALAuthReturn,\n UseCAMSMSALAuthOptions,\n} from \"../hooks/useCAMSMSALAuth\";\n\ninterface CAMSMSALContextValue extends UseCAMSMSALAuthReturn {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n}\n\nconst CAMSMSALContext = createContext<CAMSMSALContextValue | null>(null);\n\nexport interface CAMSMSALProviderProps extends UseCAMSMSALAuthOptions {\n children: React.ReactNode;\n msalConfig: Configuration;\n msalInstance?: PublicClientApplication;\n}\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(Date.now() + days * 864e5).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\nconst isTokenValid = (token: string): boolean => {\n try {\n const payload = JSON.parse(atob(token.split(\".\")[1]));\n return payload.exp * 1000 > Date.now();\n } catch {\n return false;\n }\n};\n\nfunction CAMSMSALProviderInner({\n children,\n ...authOptions\n}: Readonly<Omit<CAMSMSALProviderProps, \"msalConfig\" | \"msalInstance\">>) {\n const auth = useCAMSMSALAuth(authOptions);\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") {\n return null;\n }\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n // Load profile from storage on mount\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n // const storedProfile = localStorage.get Item(profileStorageKey);\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n // Persist tokens and profile\n useEffect(() => {\n if (\n auth.accessToken &&\n isTokenValid(auth.accessToken) &&\n typeof window !== \"undefined\"\n ) {\n localStorage.setItem(\n auth.storageKey,\n JSON.stringify({\n accessToken: auth.accessToken,\n idToken: auth.idToken,\n appCode: auth.appCode\n })\n );\n }\n }, [auth.accessToken, auth.idToken, auth.storageKey]);\n\n // Persist profile separately\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1); // Store for 1 day\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n // Enhanced logout that also clears profile\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n const value = useMemo(\n () => ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n }),\n [auth, userProfile]\n );\n\n return (\n <CAMSMSALContext.Provider value={value}>\n {children}\n </CAMSMSALContext.Provider>\n );\n}\n\nexport function CAMSMSALProvider(props: Readonly<CAMSMSALProviderProps>) {\n const { msalConfig, msalInstance } = props;\n const instance = msalInstance || new PublicClientApplication(msalConfig);\n\n return (\n <MsalProvider instance={instance}>\n <CAMSMSALProviderInner {...props} />\n </MsalProvider>\n );\n}\n\nexport function useCAMSMSALContext(): CAMSMSALContextValue {\n const context = useContext(CAMSMSALContext);\n if (!context) {\n throw new Error(\n \"useCAMSMSALContext must be used within a CAMSMSALProvider\"\n );\n }\n return context;\n}\n","\"use client\";\n\nimport { useEffect, useState } from \"react\";\n\ninterface ClientOnlyProps {\n children: React.ReactNode;\n fallback?: React.ReactNode;\n}\n\nconst ClientOnly = ({ children, fallback = null }: ClientOnlyProps) => {\n const [hasMounted, setHasMounted] = useState(false);\n\n useEffect(() => {\n setHasMounted(true);\n }, []);\n\n if (!hasMounted) {\n return <>{fallback}</>;\n }\n\n return <>{children}</>;\n};\n\nexport default ClientOnly;","import { createContext, useContext } from \"react\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport {\n UseCAMSAuthReturn,\n} from \"../hooks/useCAMSAuth\";\nimport {\n UseCAMSMSALAuthReturn,\n} from \"../hooks/useCAMSMSALAuth\";\n\ntype AuthMode = \"REGULAR\" | \"MSAL\";\n\ninterface BaseCAMSContextValue {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n authMode: AuthMode;\n}\n\ninterface RegularCAMSContextValue\n extends BaseCAMSContextValue,\n UseCAMSAuthReturn {\n authMode: \"REGULAR\";\n}\n\ninterface MSALCAMSContextValue\n extends BaseCAMSContextValue,\n UseCAMSMSALAuthReturn {\n authMode: \"MSAL\";\n}\n\nexport type CAMSContextValue = RegularCAMSContextValue | MSALCAMSContextValue;\n\nexport const CAMSContext = createContext<CAMSContextValue | null>(null);\n\nexport function useCAMSContext(): CAMSContextValue {\n const context = useContext(CAMSContext);\n if (!context) {\n throw new Error(\"useCAMSContext must be used within a UnifiedCAMSProvider\");\n }\n return context;\n}\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { z } from \"zod\";\nimport { MsalProvider } from \"@azure/msal-react\";\nimport { PublicClientApplication, Configuration } from \"@azure/msal-browser\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport { useCAMSAuth, UseCAMSAuthOptions } from \"../hooks/useCAMSAuth\";\nimport {\n useCAMSMSALAuth,\n UseCAMSMSALAuthOptions,\n} from \"../hooks/useCAMSMSALAuth\";\nimport {\n CAMSContext,\n CAMSContextValue,\n useCAMSContext,\n} from \"../context/CAMSContext\";\nimport ClientOnly from \"./ClientOnly\";\n\nconst GuidSchema = z.uuid(\"appCode must be a valid GUID\");\n\ninterface BaseProviderProps {\n children: React.ReactNode;\n appCode: string;\n}\n\ninterface RegularProviderProps\n extends BaseProviderProps,\n Omit<UseCAMSAuthOptions, \"appCode\"> {\n mode: \"REGULAR\";\n}\n\ninterface MSALProviderProps extends BaseProviderProps, Omit<UseCAMSMSALAuthOptions, 'MFAEndpoint'> {\n mode: \"MSAL\";\n msalConfig: Configuration;\n msalInstance?: PublicClientApplication;\n}\n\ntype UnifiedCAMSProviderProps = RegularProviderProps | MSALProviderProps;\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(\n Date.now() + days * 24 * 60 * 60 * 1000\n ).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\nfunction CAMSProviderInner(props: UnifiedCAMSProviderProps) {\n return (\n <ClientOnly fallback={<div>Loading...</div>}>\n <CAMSProviderCore {...props} />\n </ClientOnly>\n );\n}\n\nfunction CAMSProviderCore(props: UnifiedCAMSProviderProps) {\n const { children, mode, appCode } = props;\n\n // Always call both hooks to satisfy Rules of Hooks\n const regularAuth = useCAMSAuth(\n mode === \"REGULAR\"\n ? ({ ...props, appCode } as UseCAMSAuthOptions)\n : { appCode: \"\" }\n );\n const msalAuth = useCAMSMSALAuth(\n mode === \"MSAL\"\n ? ({ ...props, appCode } as UseCAMSMSALAuthOptions)\n : { appCode: \"\" }\n );\n\n const auth = mode === \"REGULAR\" ? regularAuth : msalAuth;\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") return null;\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1);\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n // Handle MFA completion for MSAL mode\n useEffect(() => {\n if (\n mode === \"MSAL\" &&\n \"requiresMFA\" in auth &&\n !auth.requiresMFA &&\n auth.isAuthenticated &&\n !userProfile\n ) {\n // MFA completed, extract profile from stored data\n const storedData = getCookie(auth.storageKey);\n if (storedData) {\n try {\n const parsed = JSON.parse(storedData);\n if (parsed.userProfile) {\n setUserProfile(parsed.userProfile);\n }\n } catch {}\n }\n }\n }, [mode, auth, userProfile]);\n\n const value = useMemo(\n () =>\n ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n authMode: mode,\n } as CAMSContextValue),\n [auth, userProfile, mode, mode === \"MSAL\" && \"requiresMFA\" in auth ? auth.requiresMFA : null]\n );\n\n return <CAMSContext.Provider value={value}>{children}</CAMSContext.Provider>;\n}\n\nexport function UnifiedCAMSProvider(props: UnifiedCAMSProviderProps) {\n // Validate appCode is a valid GUID\n const appCodeValidation = GuidSchema.safeParse(props.appCode);\n if (!appCodeValidation.success) {\n throw new Error(\n `Invalid appCode: ${appCodeValidation.error.issues[0].message}`\n );\n }\n\n if (props.mode === \"MSAL\") {\n const { msalConfig, msalInstance } = props;\n const instance = msalInstance || new PublicClientApplication(msalConfig);\n\n return (\n <MsalProvider instance={instance}>\n <CAMSProviderCore {...props} />\n </MsalProvider>\n );\n }\n\n return (\n <ClientOnly fallback={<div>Loading...</div>}>\n <CAMSProviderCore {...props} />\n </ClientOnly>\n );\n}\n\n// Backward compatibility exports\nexport const CAMSProvider = (props: Omit<RegularProviderProps, \"mode\">) => (\n <UnifiedCAMSProvider {...props} mode=\"REGULAR\" />\n);\n\nexport const CAMSMSALProvider = (props: Omit<MSALProviderProps, \"mode\">) => (\n <UnifiedCAMSProvider {...props} mode=\"MSAL\" />\n);\n\n// Export useCAMSContext\nexport { useCAMSContext };\n","/** A special constant with type `never` */\nexport const NEVER = Object.freeze({\n status: \"aborted\",\n});\nexport /*@__NO_SIDE_EFFECTS__*/ function $constructor(name, initializer, params) {\n function init(inst, def) {\n var _a;\n Object.defineProperty(inst, \"_zod\", {\n value: inst._zod ?? {},\n enumerable: false,\n });\n (_a = inst._zod).traits ?? (_a.traits = new Set());\n inst._zod.traits.add(name);\n initializer(inst, def);\n // support prototype modifications\n for (const k in _.prototype) {\n if (!(k in inst))\n Object.defineProperty(inst, k, { value: _.prototype[k].bind(inst) });\n }\n inst._zod.constr = _;\n inst._zod.def = def;\n }\n // doesn't work if Parent has a constructor with arguments\n const Parent = params?.Parent ?? Object;\n class Definition extends Parent {\n }\n Object.defineProperty(Definition, \"name\", { value: name });\n function _(def) {\n var _a;\n const inst = params?.Parent ? new Definition() : this;\n init(inst, def);\n (_a = inst._zod).deferred ?? (_a.deferred = []);\n for (const fn of inst._zod.deferred) {\n fn();\n }\n return inst;\n }\n Object.defineProperty(_, \"init\", { value: init });\n Object.defineProperty(_, Symbol.hasInstance, {\n value: (inst) => {\n if (params?.Parent && inst instanceof params.Parent)\n return true;\n return inst?._zod?.traits?.has(name);\n },\n });\n Object.defineProperty(_, \"name\", { value: name });\n return _;\n}\n////////////////////////////// UTILITIES ///////////////////////////////////////\nexport const $brand = Symbol(\"zod_brand\");\nexport class $ZodAsyncError extends Error {\n constructor() {\n super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`);\n }\n}\nexport class $ZodEncodeError extends Error {\n constructor(name) {\n super(`Encountered unidirectional transform during encode: ${name}`);\n this.name = \"ZodEncodeError\";\n }\n}\nexport const globalConfig = {};\nexport function config(newConfig) {\n if (newConfig)\n Object.assign(globalConfig, newConfig);\n return globalConfig;\n}\n","// functions\nexport function assertEqual(val) {\n return val;\n}\nexport function assertNotEqual(val) {\n return val;\n}\nexport function assertIs(_arg) { }\nexport function assertNever(_x) {\n throw new Error();\n}\nexport function assert(_) { }\nexport function getEnumValues(entries) {\n const numericValues = Object.values(entries).filter((v) => typeof v === \"number\");\n const values = Object.entries(entries)\n .filter(([k, _]) => numericValues.indexOf(+k) === -1)\n .map(([_, v]) => v);\n return values;\n}\nexport function joinValues(array, separator = \"|\") {\n return array.map((val) => stringifyPrimitive(val)).join(separator);\n}\nexport function jsonStringifyReplacer(_, value) {\n if (typeof value === \"bigint\")\n return value.toString();\n return value;\n}\nexport function cached(getter) {\n const set = false;\n return {\n get value() {\n if (!set) {\n const value = getter();\n Object.defineProperty(this, \"value\", { value });\n return value;\n }\n throw new Error(\"cached value already set\");\n },\n };\n}\nexport function nullish(input) {\n return input === null || input === undefined;\n}\nexport function cleanRegex(source) {\n const start = source.startsWith(\"^\") ? 1 : 0;\n const end = source.endsWith(\"$\") ? source.length - 1 : source.length;\n return source.slice(start, end);\n}\nexport function floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepString = step.toString();\n let stepDecCount = (stepString.split(\".\")[1] || \"\").length;\n if (stepDecCount === 0 && /\\d?e-\\d?/.test(stepString)) {\n const match = stepString.match(/\\d?e-(\\d?)/);\n if (match?.[1]) {\n stepDecCount = Number.parseInt(match[1]);\n }\n }\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = Number.parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = Number.parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / 10 ** decCount;\n}\nconst EVALUATING = Symbol(\"evaluating\");\nexport function defineLazy(object, key, getter) {\n let value = undefined;\n Object.defineProperty(object, key, {\n get() {\n if (value === EVALUATING) {\n // Circular reference detected, return undefined to break the cycle\n return undefined;\n }\n if (value === undefined) {\n value = EVALUATING;\n value = getter();\n }\n return value;\n },\n set(v) {\n Object.defineProperty(object, key, {\n value: v,\n // configurable: true,\n });\n // object[key] = v;\n },\n configurable: true,\n });\n}\nexport function objectClone(obj) {\n return Object.create(Object.getPrototypeOf(obj), Object.getOwnPropertyDescriptors(obj));\n}\nexport function assignProp(target, prop, value) {\n Object.defineProperty(target, prop, {\n value,\n writable: true,\n enumerable: true,\n configurable: true,\n });\n}\nexport function mergeDefs(...defs) {\n const mergedDescriptors = {};\n for (const def of defs) {\n const descriptors = Object.getOwnPropertyDescriptors(def);\n Object.assign(mergedDescriptors, descriptors);\n }\n return Object.defineProperties({}, mergedDescriptors);\n}\nexport function cloneDef(schema) {\n return mergeDefs(schema._zod.def);\n}\nexport function getElementAtPath(obj, path) {\n if (!path)\n return obj;\n return path.reduce((acc, key) => acc?.[key], obj);\n}\nexport function promiseAllObject(promisesObj) {\n const keys = Object.keys(promisesObj);\n const promises = keys.map((key) => promisesObj[key]);\n return Promise.all(promises).then((results) => {\n const resolvedObj = {};\n for (let i = 0; i < keys.length; i++) {\n resolvedObj[keys[i]] = results[i];\n }\n return resolvedObj;\n });\n}\nexport function randomString(length = 10) {\n const chars = \"abcdefghijklmnopqrstuvwxyz\";\n let str = \"\";\n for (let i = 0; i < length; i++) {\n str += chars[Math.floor(Math.random() * chars.length)];\n }\n return str;\n}\nexport function esc(str) {\n return JSON.stringify(str);\n}\nexport const captureStackTrace = (\"captureStackTrace\" in Error ? Error.captureStackTrace : (..._args) => { });\nexport function isObject(data) {\n return typeof data === \"object\" && data !== null && !Array.isArray(data);\n}\nexport const allowsEval = cached(() => {\n // @ts-ignore\n if (typeof navigator !== \"undefined\" && navigator?.userAgent?.includes(\"Cloudflare\")) {\n return false;\n }\n try {\n const F = Function;\n new F(\"\");\n return true;\n }\n catch (_) {\n return false;\n }\n});\nexport function isPlainObject(o) {\n if (isObject(o) === false)\n return false;\n // modified constructor\n const ctor = o.constructor;\n if (ctor === undefined)\n return true;\n // modified prototype\n const prot = ctor.prototype;\n if (isObject(prot) === false)\n return false;\n // ctor doesn't have static `isPrototypeOf`\n if (Object.prototype.hasOwnProperty.call(prot, \"isPrototypeOf\") === false) {\n return false;\n }\n return true;\n}\nexport function shallowClone(o) {\n if (isPlainObject(o))\n return { ...o };\n if (Array.isArray(o))\n return [...o];\n return o;\n}\nexport function numKeys(data) {\n let keyCount = 0;\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n keyCount++;\n }\n }\n return keyCount;\n}\nexport const getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return \"undefined\";\n case \"string\":\n return \"string\";\n case \"number\":\n return Number.isNaN(data) ? \"nan\" : \"number\";\n case \"boolean\":\n return \"boolean\";\n case \"function\":\n return \"function\";\n case \"bigint\":\n return \"bigint\";\n case \"symbol\":\n return \"symbol\";\n case \"object\":\n if (Array.isArray(data)) {\n return \"array\";\n }\n if (data === null) {\n return \"null\";\n }\n if (data.then && typeof data.then === \"function\" && data.catch && typeof data.catch === \"function\") {\n return \"promise\";\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return \"map\";\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return \"set\";\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return \"date\";\n }\n // @ts-ignore\n if (typeof File !== \"undefined\" && data instanceof File) {\n return \"file\";\n }\n return \"object\";\n default:\n throw new Error(`Unknown data type: ${t}`);\n }\n};\nexport const propertyKeyTypes = new Set([\"string\", \"number\", \"symbol\"]);\nexport const primitiveTypes = new Set([\"string\", \"number\", \"bigint\", \"boolean\", \"symbol\", \"undefined\"]);\nexport function escapeRegex(str) {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n}\n// zod-specific utils\nexport function clone(inst, def, params) {\n const cl = new inst._zod.constr(def ?? inst._zod.def);\n if (!def || params?.parent)\n cl._zod.parent = inst;\n return cl;\n}\nexport function normalizeParams(_params) {\n const params = _params;\n if (!params)\n return {};\n if (typeof params === \"string\")\n return { error: () => params };\n if (params?.message !== undefined) {\n if (params?.error !== undefined)\n throw new Error(\"Cannot specify both `message` and `error` params\");\n params.error = params.message;\n }\n delete params.message;\n if (typeof params.error === \"string\")\n return { ...params, error: () => params.error };\n return params;\n}\nexport function createTransparentProxy(getter) {\n let target;\n return new Proxy({}, {\n get(_, prop, receiver) {\n target ?? (target = getter());\n return Reflect.get(target, prop, receiver);\n },\n set(_, prop, value, receiver) {\n target ?? (target = getter());\n return Reflect.set(target, prop, value, receiver);\n },\n has(_, prop) {\n target ?? (target = getter());\n return Reflect.has(target, prop);\n },\n deleteProperty(_, prop) {\n target ?? (target = getter());\n return Reflect.deleteProperty(target, prop);\n },\n ownKeys(_) {\n target ?? (target = getter());\n return Reflect.ownKeys(target);\n },\n getOwnPropertyDescriptor(_, prop) {\n target ?? (target = getter());\n return Reflect.getOwnPropertyDescriptor(target, prop);\n },\n defineProperty(_, prop, descriptor) {\n target ?? (target = getter());\n return Reflect.defineProperty(target, prop, descriptor);\n },\n });\n}\nexport function stringifyPrimitive(value) {\n if (typeof value === \"bigint\")\n return value.toString() + \"n\";\n if (typeof value === \"string\")\n return `\"${value}\"`;\n return `${value}`;\n}\nexport function optionalKeys(shape) {\n return Object.keys(shape).filter((k) => {\n return shape[k]._zod.optin === \"optional\" && shape[k]._zod.optout === \"optional\";\n });\n}\nexport const NUMBER_FORMAT_RANGES = {\n safeint: [Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER],\n int32: [-2147483648, 2147483647],\n uint32: [0, 4294967295],\n float32: [-3.4028234663852886e38, 3.4028234663852886e38],\n float64: [-Number.MAX_VALUE, Number.MAX_VALUE],\n};\nexport const BIGINT_FORMAT_RANGES = {\n int64: [/* @__PURE__*/ BigInt(\"-9223372036854775808\"), /* @__PURE__*/ BigInt(\"9223372036854775807\")],\n uint64: [/* @__PURE__*/ BigInt(0), /* @__PURE__*/ BigInt(\"18446744073709551615\")],\n};\nexport function pick(schema, mask) {\n const currDef = schema._zod.def;\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const newShape = {};\n for (const key in mask) {\n if (!(key in currDef.shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n newShape[key] = currDef.shape[key];\n }\n assignProp(this, \"shape\", newShape); // self-caching\n return newShape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function omit(schema, mask) {\n const currDef = schema._zod.def;\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const newShape = { ...schema._zod.def.shape };\n for (const key in mask) {\n if (!(key in currDef.shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n delete newShape[key];\n }\n assignProp(this, \"shape\", newShape); // self-caching\n return newShape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function extend(schema, shape) {\n if (!isPlainObject(shape)) {\n throw new Error(\"Invalid input to extend: expected a plain object\");\n }\n const checks = schema._zod.def.checks;\n const hasChecks = checks && checks.length > 0;\n if (hasChecks) {\n throw new Error(\"Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.\");\n }\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const _shape = { ...schema._zod.def.shape, ...shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function safeExtend(schema, shape) {\n if (!isPlainObject(shape)) {\n throw new Error(\"Invalid input to safeExtend: expected a plain object\");\n }\n const def = {\n ...schema._zod.def,\n get shape() {\n const _shape = { ...schema._zod.def.shape, ...shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n checks: schema._zod.def.checks,\n };\n return clone(schema, def);\n}\nexport function merge(a, b) {\n const def = mergeDefs(a._zod.def, {\n get shape() {\n const _shape = { ...a._zod.def.shape, ...b._zod.def.shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n get catchall() {\n return b._zod.def.catchall;\n },\n checks: [], // delete existing checks\n });\n return clone(a, def);\n}\nexport function partial(Class, schema, mask) {\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const oldShape = schema._zod.def.shape;\n const shape = { ...oldShape };\n if (mask) {\n for (const key in mask) {\n if (!(key in oldShape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n // if (oldShape[key]!._zod.optin === \"optional\") continue;\n shape[key] = Class\n ? new Class({\n type: \"optional\",\n innerType: oldShape[key],\n })\n : oldShape[key];\n }\n }\n else {\n for (const key in oldShape) {\n // if (oldShape[key]!._zod.optin === \"optional\") continue;\n shape[key] = Class\n ? new Class({\n type: \"optional\",\n innerType: oldShape[key],\n })\n : oldShape[key];\n }\n }\n assignProp(this, \"shape\", shape); // self-caching\n return shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function required(Class, schema, mask) {\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const oldShape = schema._zod.def.shape;\n const shape = { ...oldShape };\n if (mask) {\n for (const key in mask) {\n if (!(key in shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n // overwrite with non-optional\n shape[key] = new Class({\n type: \"nonoptional\",\n innerType: oldShape[key],\n });\n }\n }\n else {\n for (const key in oldShape) {\n // overwrite with non-optional\n shape[key] = new Class({\n type: \"nonoptional\",\n innerType: oldShape[key],\n });\n }\n }\n assignProp(this, \"shape\", shape); // self-caching\n return shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\n// invalid_type | too_big | too_small | invalid_format | not_multiple_of | unrecognized_keys | invalid_union | invalid_key | invalid_element | invalid_value | custom\nexport function aborted(x, startIndex = 0) {\n if (x.aborted === true)\n return true;\n for (let i = startIndex; i < x.issues.length; i++) {\n if (x.issues[i]?.continue !== true) {\n return true;\n }\n }\n return false;\n}\nexport function prefixIssues(path, issues) {\n return issues.map((iss) => {\n var _a;\n (_a = iss).path ?? (_a.path = []);\n iss.path.unshift(path);\n return iss;\n });\n}\nexport function unwrapMessage(message) {\n return typeof message === \"string\" ? message : message?.message;\n}\nexport function finalizeIssue(iss, ctx, config) {\n const full = { ...iss, path: iss.path ?? [] };\n // for backwards compatibility\n if (!iss.message) {\n const message = unwrapMessage(iss.inst?._zod.def?.error?.(iss)) ??\n unwrapMessage(ctx?.error?.(iss)) ??\n unwrapMessage(config.customError?.(iss)) ??\n unwrapMessage(config.localeError?.(iss)) ??\n \"Invalid input\";\n full.message = message;\n }\n // delete (full as any).def;\n delete full.inst;\n delete full.continue;\n if (!ctx?.reportInput) {\n delete full.input;\n }\n return full;\n}\nexport function getSizableOrigin(input) {\n if (input instanceof Set)\n return \"set\";\n if (input instanceof Map)\n return \"map\";\n // @ts-ignore\n if (input instanceof File)\n return \"file\";\n return \"unknown\";\n}\nexport function getLengthableOrigin(input) {\n if (Array.isArray(input))\n return \"array\";\n if (typeof input === \"string\")\n return \"string\";\n return \"unknown\";\n}\nexport function issue(...args) {\n const [iss, input, inst] = args;\n if (typeof iss === \"string\") {\n return {\n message: iss,\n code: \"custom\",\n input,\n inst,\n };\n }\n return { ...iss };\n}\nexport function cleanEnum(obj) {\n return Object.entries(obj)\n .filter(([k, _]) => {\n // return true if NaN, meaning it's not a number, thus a string key\n return Number.isNaN(Number.parseInt(k, 10));\n })\n .map((el) => el[1]);\n}\n// Codec utility functions\nexport function base64ToUint8Array(base64) {\n const binaryString = atob(base64);\n const bytes = new Uint8Array(binaryString.length);\n for (let i = 0; i < binaryString.length; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n return bytes;\n}\nexport function uint8ArrayToBase64(bytes) {\n let binaryString = \"\";\n for (let i = 0; i < bytes.length; i++) {\n binaryString += String.fromCharCode(bytes[i]);\n }\n return btoa(binaryString);\n}\nexport function base64urlToUint8Array(base64url) {\n const base64 = base64url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n const padding = \"=\".repeat((4 - (base64.length % 4)) % 4);\n return base64ToUint8Array(base64 + padding);\n}\nexport function uint8ArrayToBase64url(bytes) {\n return uint8ArrayToBase64(bytes).replace(/\\+/g, \"-\").replace(/\\//g, \"_\").replace(/=/g, \"\");\n}\nexport function hexToUint8Array(hex) {\n const cleanHex = hex.replace(/^0x/, \"\");\n if (cleanHex.length % 2 !== 0) {\n throw new Error(\"Invalid hex string length\");\n }\n const bytes = new Uint8Array(cleanHex.length / 2);\n for (let i = 0; i < cleanHex.length; i += 2) {\n bytes[i / 2] = Number.parseInt(cleanHex.slice(i, i + 2), 16);\n }\n return bytes;\n}\nexport function uint8ArrayToHex(bytes) {\n return Array.from(bytes)\n .map((b) => b.toString(16).padStart(2, \"0\"))\n .join(\"\");\n}\n// instanceof\nexport class Class {\n constructor(..._args) { }\n}\n","import { $constructor } from \"./core.js\";\nimport * as util from \"./util.js\";\nconst initializer = (inst, def) => {\n inst.name = \"$ZodError\";\n Object.defineProperty(inst, \"_zod\", {\n value: inst._zod,\n enumerable: false,\n });\n Object.defineProperty(inst, \"issues\", {\n value: def,\n enumerable: false,\n });\n inst.message = JSON.stringify(def, util.jsonStringifyReplacer, 2);\n Object.defineProperty(inst, \"toString\", {\n value: () => inst.message,\n enumerable: false,\n });\n};\nexport const $ZodError = $constructor(\"$ZodError\", initializer);\nexport const $ZodRealError = $constructor(\"$ZodError\", initializer, { Parent: Error });\nexport function flattenError(error, mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of error.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n}\nexport function formatError(error, _mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\" && issue.errors.length) {\n issue.errors.map((issues) => processError({ issues }));\n }\n else if (issue.code === \"invalid_key\") {\n processError({ issues: issue.issues });\n }\n else if (issue.code === \"invalid_element\") {\n processError({ issues: issue.issues });\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(error);\n return fieldErrors;\n}\nexport function treeifyError(error, _mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const result = { errors: [] };\n const processError = (error, path = []) => {\n var _a, _b;\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\" && issue.errors.length) {\n // regular union error\n issue.errors.map((issues) => processError({ issues }, issue.path));\n }\n else if (issue.code === \"invalid_key\") {\n processError({ issues: issue.issues }, issue.path);\n }\n else if (issue.code === \"invalid_element\") {\n processError({ issues: issue.issues }, issue.path);\n }\n else {\n const fullpath = [...path, ...issue.path];\n if (fullpath.length === 0) {\n result.errors.push(mapper(issue));\n continue;\n }\n let curr = result;\n let i = 0;\n while (i < fullpath.length) {\n const el = fullpath[i];\n const terminal = i === fullpath.length - 1;\n if (typeof el === \"string\") {\n curr.properties ?? (curr.properties = {});\n (_a = curr.properties)[el] ?? (_a[el] = { errors: [] });\n curr = curr.properties[el];\n }\n else {\n curr.items ?? (curr.items = []);\n (_b = curr.items)[el] ?? (_b[el] = { errors: [] });\n curr = curr.items[el];\n }\n if (terminal) {\n curr.errors.push(mapper(issue));\n }\n i++;\n }\n }\n }\n };\n processError(error);\n return result;\n}\n/** Format a ZodError as a human-readable string in the following form.\n *\n * From\n *\n * ```ts\n * ZodError {\n * issues: [\n * {\n * expected: 'string',\n * code: 'invalid_type',\n * path: [ 'username' ],\n * message: 'Invalid input: expected string'\n * },\n * {\n * expected: 'number',\n * code: 'invalid_type',\n * path: [ 'favoriteNumbers', 1 ],\n * message: 'Invalid input: expected number'\n * }\n * ];\n * }\n * ```\n *\n * to\n *\n * ```\n * username\n * ✖ Expected number, received string at \"username\n * favoriteNumbers[0]\n * ✖ Invalid input: expected number\n * ```\n */\nexport function toDotPath(_path) {\n const segs = [];\n const path = _path.map((seg) => (typeof seg === \"object\" ? seg.key : seg));\n for (const seg of path) {\n if (typeof seg === \"number\")\n segs.push(`[${seg}]`);\n else if (typeof seg === \"symbol\")\n segs.push(`[${JSON.stringify(String(seg))}]`);\n else if (/[^\\w$]/.test(seg))\n segs.push(`[${JSON.stringify(seg)}]`);\n else {\n if (segs.length)\n segs.push(\".\");\n segs.push(seg);\n }\n }\n return segs.join(\"\");\n}\nexport function prettifyError(error) {\n const lines = [];\n // sort by path length\n const issues = [...error.issues].sort((a, b) => (a.path ?? []).length - (b.path ?? []).length);\n // Process each issue\n for (const issue of issues) {\n lines.push(`✖ ${issue.message}`);\n if (issue.path?.length)\n lines.push(` → at ${toDotPath(issue.path)}`);\n }\n // Convert Map to formatted string\n return lines.join(\"\\n\");\n}\n","import * as core from \"./core.js\";\nimport * as errors from \"./errors.js\";\nimport * as util from \"./util.js\";\nexport const _parse = (_Err) => (schema, value, _ctx, _params) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };\n const result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise) {\n throw new core.$ZodAsyncError();\n }\n if (result.issues.length) {\n const e = new (_params?.Err ?? _Err)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())));\n util.captureStackTrace(e, _params?.callee);\n throw e;\n }\n return result.value;\n};\nexport const parse = /* @__PURE__*/ _parse(errors.$ZodRealError);\nexport const _parseAsync = (_Err) => async (schema, value, _ctx, params) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };\n let result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise)\n result = await result;\n if (result.issues.length) {\n const e = new (params?.Err ?? _Err)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())));\n util.captureStackTrace(e, params?.callee);\n throw e;\n }\n return result.value;\n};\nexport const parseAsync = /* @__PURE__*/ _parseAsync(errors.$ZodRealError);\nexport const _safeParse = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? { ..._ctx, async: false } : { async: false };\n const result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise) {\n throw new core.$ZodAsyncError();\n }\n return result.issues.length\n ? {\n success: false,\n error: new (_Err ?? errors.$ZodError)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),\n }\n : { success: true, data: result.value };\n};\nexport const safeParse = /* @__PURE__*/ _safeParse(errors.$ZodRealError);\nexport const _safeParseAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };\n let result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise)\n result = await result;\n return result.issues.length\n ? {\n success: false,\n error: new _Err(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),\n }\n : { success: true, data: result.value };\n};\nexport const safeParseAsync = /* @__PURE__*/ _safeParseAsync(errors.$ZodRealError);\nexport const _encode = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _parse(_Err)(schema, value, ctx);\n};\nexport const encode = /* @__PURE__*/ _encode(errors.$ZodRealError);\nexport const _decode = (_Err) => (schema, value, _ctx) => {\n return _parse(_Err)(schema, value, _ctx);\n};\nexport const decode = /* @__PURE__*/ _decode(errors.$ZodRealError);\nexport const _encodeAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _parseAsync(_Err)(schema, value, ctx);\n};\nexport const encodeAsync = /* @__PURE__*/ _encodeAsync(errors.$ZodRealError);\nexport const _decodeAsync = (_Err) => async (schema, value, _ctx) => {\n return _parseAsync(_Err)(schema, value, _ctx);\n};\nexport const decodeAsync = /* @__PURE__*/ _decodeAsync(errors.$ZodRealError);\nexport const _safeEncode = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _safeParse(_Err)(schema, value, ctx);\n};\nexport const safeEncode = /* @__PURE__*/ _safeEncode(errors.$ZodRealError);\nexport const _safeDecode = (_Err) => (schema, value, _ctx) => {\n return _safeParse(_Err)(schema, value, _ctx);\n};\nexport const safeDecode = /* @__PURE__*/ _safeDecode(errors.$ZodRealError);\nexport const _safeEncodeAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _safeParseAsync(_Err)(schema, value, ctx);\n};\nexport const safeEncodeAsync = /* @__PURE__*/ _safeEncodeAsync(errors.$ZodRealError);\nexport const _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {\n return _safeParseAsync(_Err)(schema, value, _ctx);\n};\nexport const safeDecodeAsync = /* @__PURE__*/ _safeDecodeAsync(errors.$ZodRealError);\n","import{validateFieldsNatively as r,toNestErrors as e}from\"@hookform/resolvers\";import{appendErrors as o}from\"react-hook-form\";import*as n from\"zod/v4/core\";function t(r,e){try{var o=r()}catch(r){return e(r)}return o&&o.then?o.then(void 0,e):o}function s(r,e){for(var n={};r.length;){var t=r[0],s=t.code,i=t.message,a=t.path.join(\".\");if(!n[a])if(\"unionErrors\"in t){var u=t.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:s};if(\"unionErrors\"in t&&t.unionErrors.forEach(function(e){return e.errors.forEach(function(e){return r.push(e)})}),e){var c=n[a].types,f=c&&c[t.code];n[a]=o(a,e,n,s,f?[].concat(f,t.message):t.message)}r.shift()}return n}function i(r,e){for(var n={};r.length;){var t=r[0],s=t.code,i=t.message,a=t.path.join(\".\");if(!n[a])if(\"invalid_union\"===t.code&&t.errors.length>0){var u=t.errors[0][0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:s};if(\"invalid_union\"===t.code&&t.errors.forEach(function(e){return e.forEach(function(e){return r.push(e)})}),e){var c=n[a].types,f=c&&c[t.code];n[a]=o(a,e,n,s,f?[].concat(f,t.message):t.message)}r.shift()}return n}function a(o,a,u){if(void 0===u&&(u={}),function(r){return\"_def\"in r&&\"object\"==typeof r._def&&\"typeName\"in r._def}(o))return function(n,i,c){try{return Promise.resolve(t(function(){return Promise.resolve(o[\"sync\"===u.mode?\"parse\":\"parseAsync\"](n,a)).then(function(e){return c.shouldUseNativeValidation&&r({},c),{errors:{},values:u.raw?Object.assign({},n):e}})},function(r){if(function(r){return Array.isArray(null==r?void 0:r.issues)}(r))return{values:{},errors:e(s(r.errors,!c.shouldUseNativeValidation&&\"all\"===c.criteriaMode),c)};throw r}))}catch(r){return Promise.reject(r)}};if(function(r){return\"_zod\"in r&&\"object\"==typeof r._zod}(o))return function(s,c,f){try{return Promise.resolve(t(function(){return Promise.resolve((\"sync\"===u.mode?n.parse:n.parseAsync)(o,s,a)).then(function(e){return f.shouldUseNativeValidation&&r({},f),{errors:{},values:u.raw?Object.assign({},s):e}})},function(r){if(function(r){return r instanceof n.$ZodError}(r))return{values:{},errors:e(i(r.issues,!f.shouldUseNativeValidation&&\"all\"===f.criteriaMode),f)};throw r}))}catch(r){return Promise.reject(r)}};throw new Error(\"Invalid input: not a Zod schema\")}export{a as zodResolver};\n//# sourceMappingURL=zod.module.js.map\n","import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","\"use client\"\n\nimport * as React from \"react\"\nimport { OTPInput, OTPInputContext } from \"input-otp\"\nimport { MinusIcon } from \"lucide-react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string\n}) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center gap-2 has-disabled:opacity-50\",\n containerClassName\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n )\n}\n\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\"flex items-center\", className)}\n {...props}\n />\n )\n}\n\nfunction InputOTPSlot({\n index,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n index: number\n}) {\n const inputOTPContext = React.useContext(OTPInputContext)\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {}\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive}\n className={cn(\n \"data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]\",\n className\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n )\n}\n\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n )\n}\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator }\n","\"use client\"\n\nimport * as React from \"react\"\nimport * as LabelPrimitive from \"@radix-ui/react-label\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport {\n Controller,\n FormProvider,\n useFormContext,\n useFormState,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n} from \"react-hook-form\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Label } from \"./label\"\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName\n}\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue\n)\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext)\n const itemContext = React.useContext(FormItemContext)\n const { getFieldState } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error(\"useFormField should be used within <FormField>\")\n }\n\n const { id } = itemContext\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<\"div\">) {\n const id = React.useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div\n data-slot=\"form-item\"\n className={cn(\"grid gap-2\", className)}\n {...props}\n />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { error, formItemId } = useFormField()\n\n return (\n <Label\n data-slot=\"form-label\"\n data-error={!!error}\n className={cn(\"data-[error=true]:text-destructive\", className)}\n htmlFor={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n const { formDescriptionId } = useFormField()\n\n return (\n <p\n data-slot=\"form-description\"\n id={formDescriptionId}\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<\"p\">) {\n const { error, formMessageId } = useFormField()\n const body = error ? String(error?.message ?? \"\") : props.children\n\n if (!body) {\n return null\n }\n\n return (\n <p\n data-slot=\"form-message\"\n id={formMessageId}\n className={cn(\"text-destructive text-sm\", className)}\n {...props}\n >\n {body}\n </p>\n )\n}\n\nexport {\n useFormField,\n Form,\n FormItem,\n FormLabel,\n FormControl,\n FormDescription,\n FormMessage,\n FormField,\n}","import * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Card({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card\"\n className={cn(\n \"bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\"leading-none font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"flex items-center px-6 [.border-t]:pt-6\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n","// components/GenericOTPVerifier.tsx\nimport { z } from \"zod\";\nimport { REGEXP_ONLY_DIGITS } from \"input-otp\";\nimport { RectangleEllipsis } from \"lucide-react\";\nimport { useForm } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport {\n InputOTP,\n InputOTPGroup,\n InputOTPSlot,\n} from \"./ui/input-otp\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormMessage,\n} from \"./ui/form\";\nimport { Card, CardContent, CardHeader, CardTitle } from \"./ui/card\";\n\ninterface GenericOTPProps {\n value: string;\n setValue: (v: string) => void;\n setLoading?: React.Dispatch<React.SetStateAction<boolean>>;\n isDisabled: boolean;\n onChangeOTP: (val: string) => void;\n fieldName: \"AuthenticatorCode\" | \"EmailOTP\";\n attemptCount?: number;\n remainingAttempts?: number;\n isMaxAttemptsReached?: boolean;\n}\n\nexport const GenericOTPVerifier = ({\n value,\n setValue,\n setLoading,\n onChangeOTP,\n fieldName = \"EmailOTP\",\n attemptCount = 0,\n remainingAttempts = 3,\n isMaxAttemptsReached = false,\n}: GenericOTPProps) => {\n const Schema = z.object({\n [fieldName]: z.string().min(6, {\n message: \"One Time Password must be 6 characters.\",\n }),\n });\n\n const form = useForm<z.infer<typeof Schema>>({\n resolver: zodResolver(Schema),\n defaultValues: { [fieldName]: \"\" },\n });\n\n return (\n <Card className=\"relative rounded space-y-4 p-0 m-0 py-8 space-x-6\">\n <CardHeader className=\"flex items-center justify-center flex-col gap-2 mt-2 text-center mb-8\">\n <div className=\"w-16 h-16 bg-gradient-to-br from-lime-400 via-green-500 to-emerald-600 rounded-xl flex items-center justify-center text-white text-2xl mb-6 group-hover:scale-110 transition-transform duration-300\">\n <RectangleEllipsis />\n </div>\n <CardTitle className=\"font-bold text-emerald-700 text-2xl\">\n One-Time-Password (OTP)\n </CardTitle>\n {attemptCount > 0 && (\n <div className={`text-sm mt-2 ${\n isMaxAttemptsReached ? 'text-red-600' : 'text-orange-600'\n }`}>\n {isMaxAttemptsReached \n ? 'Maximum attempts reached. Please try again later.' \n : `Attempt ${attemptCount}/3 - ${remainingAttempts} attempts remaining`\n }\n </div>\n )}\n </CardHeader>\n\n <CardContent className=\"space-y-6\">\n <Form {...form}>\n <form className=\"flex items-center justify-center my-4 \">\n <FormField\n control={form.control}\n name={fieldName}\n render={() => (\n <FormItem className=\"flex items-center justify-center flex-col gap-y-1 space-y-4\">\n <FormControl>\n <InputOTP\n maxLength={6}\n value={value}\n disabled={isMaxAttemptsReached}\n onChange={(authenticationValue) => {\n setValue(authenticationValue);\n\n if (authenticationValue.length === 6 && !isMaxAttemptsReached) {\n setLoading?.(true);\n onChangeOTP(authenticationValue);\n }\n }}\n pattern={REGEXP_ONLY_DIGITS}\n >\n <InputOTPGroup className=\"space-x-2\">\n {[...Array(6)].map((_, idx) => (\n <InputOTPSlot\n key={idx + 1}\n className={`border border-l-2 ${\n isMaxAttemptsReached ? 'opacity-50 cursor-not-allowed' : ''\n }`}\n index={idx}\n />\n ))}\n </InputOTPGroup>\n </InputOTP>\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n </form>\n {/* <div className=\"flex flex-col gap-3 items-center justify-center\">\n <Button\n className=\"bg-emerald-700 px-12 py-4 mt-8 space-y-6\"\n onClick={submitOTP}\n disabled={isDisabled}\n >\n {isDisabled\n ? `Resend Code? Retry in ${formattedTime}`\n : \"Resend Code\"}\n </Button>\n </div> */}\n </Form>\n </CardContent>\n </Card>\n );\n};\n","export default \"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20500%20500%22%3E%3Cg%20id%3D%22freepik--Floor--inject-87%22%3E%3Cellipse%20id%3D%22freepik--floor--inject-87%22%20cx%3D%22252.61%22%20cy%3D%22347.39%22%20rx%3D%22236.94%22%20ry%3D%22140.58%22%20style%3D%22fill%3A%23f5f5f5%22%3E%3C%2Fellipse%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Shadows--inject-87%22%3E%3Cellipse%20id%3D%22freepik--Shadow--inject-87%22%20cx%3D%22435.94%22%20cy%3D%22370.25%22%20rx%3D%2241.53%22%20ry%3D%2223.98%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fellipse%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M200.57%2C451.64%2C49.4%2C364.36c-5.74-3.32-5.74-8.74%2C0-12.06L278.92%2C219.81a9.51%2C9.51%2C0%2C0%2C1%2C8.6%2C0L447.9%2C312.4c.68.4.68%2C1%2C0%2C1.42L209.17%2C451.64A9.57%2C9.57%2C0%2C0%2C1%2C200.57%2C451.64Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Clouds--inject-87%22%3E%3Cg%20id%3D%22freepik--clouds--inject-87%22%3E%3Cpath%20d%3D%22M103.23%2C53.2l-9.41%2C5.43c0-.42.08-.84.08-1.25V54.66c0-4.86-3.41-6.82-7.61-4.4a14.77%2C14.77%2C0%2C0%2C0-4.54%2C4.36c-.69-6.1-5.48-8.37-11.29-5-6.29%2C3.63-11.39%2C12.46-11.39%2C19.72v4.08a10.65%2C10.65%2C0%2C0%2C0%2C1%2C4.72l-7.82%2C4.52A9.32%2C9.32%2C0%2C0%2C0%2C48%2C90c0%2C2.69%2C1.89%2C3.78%2C4.22%2C2.44l51-29.46a9.32%2C9.32%2C0%2C0%2C0%2C4.22-7.31C107.45%2C52.94%2C105.56%2C51.85%2C103.23%2C53.2Z%22%20style%3D%22fill%3A%23ebebeb%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M160.23%2C63.12l-7.11%2C4.1a7.42%2C7.42%2C0%2C0%2C0%2C.06-.94v-2c0-3.67-2.57-5.15-5.74-3.32A11.14%2C11.14%2C0%2C0%2C0%2C144%2C64.2c-.52-4.6-4.13-6.32-8.52-3.79-4.74%2C2.74-8.59%2C9.41-8.59%2C14.89v3.08a8%2C8%2C0%2C0%2C0%2C.73%2C3.56l-5.9%2C3.41a7.06%2C7.06%2C0%2C0%2C0-3.19%2C5.52c0%2C2%2C1.43%2C2.85%2C3.19%2C1.84l38.5-22.23A7.07%2C7.07%2C0%2C0%2C0%2C163.41%2C65C163.41%2C62.93%2C162%2C62.11%2C160.23%2C63.12Z%22%20style%3D%22fill%3A%23ebebeb%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Plants--inject-87%22%3E%3Cg%20id%3D%22freepik--plants--inject-87%22%3E%3Cpath%20d%3D%22M66.33%2C325.21s.74-17.56-5.74-32.3-17-24.94-27.83-27.53-21.34%2C6.13-10.66%2C14.93%2C30.49%2C19.17%2C36%2C46.68Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M66.33%2C325.21s.74-17.56-5.74-32.3-17-24.94-27.83-27.53-21.34%2C6.13-10.66%2C14.93%2C30.49%2C19.17%2C36%2C46.68Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M63.81%2C320.22h.12a.6.6%2C0%2C0%2C0%2C.44-.72C57.24%2C289.08%2C37%2C273.67%2C27.3%2C269.78a.58.58%2C0%2C0%2C0-.77.33.6.6%2C0%2C0%2C0%2C.33.77c9.51%2C3.82%2C29.34%2C18.95%2C36.35%2C48.88A.6.6%2C0%2C0%2C0%2C63.81%2C320.22Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M46%2C352.16c1.65%2C5.32%2C5.67%2C8.22%2C11.12%2C9.28%2C3.47.67%2C9%2C0%2C12-2.17%2C4.08-3%2C5.46-5.2%2C6.31-8.15a49.38%2C49.38%2C0%2C0%2C0%2C1.77-12.06c.1-3-1.52-5.62-2.74-7.35a22.6%2C22.6%2C0%2C0%2C0-2.12-2.35c-.83-.89-1.76-1.66-2.64-2.49a9.56%2C9.56%2C0%2C0%2C1-2.8-4c-.68-2.21%2C0-4.59%2C0-6.9A10.56%2C10.56%2C0%2C0%2C0%2C58.77%2C306a48.74%2C48.74%2C0%2C0%2C0-6.91-1.22c-3.47-.32-7.21.69-10.59-.37s-6.31-2.78-9.77-3.44c-3.62-.69-7.64-.14-10.47%2C2.37a6.52%2C6.52%2C0%2C0%2C0-2.41%2C5.63c.38%2C2.32%2C2.36%2C4%2C4.24%2C5.4s3.93%2C2.92%2C4.55%2C5.18c1.24%2C4.56-4%2C9.14-2.55%2C13.64a7.38%2C7.38%2C0%2C0%2C0%2C4.1%2C4.09%2C47.72%2C47.72%2C0%2C0%2C0%2C4.65%2C1.68%2C18.69%2C18.69%2C0%2C0%2C0%2C2.31.42c2.27.26%2C4.66.78%2C6.37%2C2.43C45%2C344.36%2C44.89%2C348.59%2C46%2C352.16Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M57.31%2C325a.68.68%2C0%2C0%2C0-.17-.21c-10.25-12.92-25.5-18.47-30.59-19.31a.54.54%2C0%2C0%2C0-.61.44.54.54%2C0%2C0%2C0%2C.44.61c4.82.79%2C19%2C5.91%2C29%2C17.71a29%2C29%2C0%2C0%2C0-23%2C3.35.52.52%2C0%2C0%2C0-.12.73.53.53%2C0%2C0%2C0%2C.44.22.57.57%2C0%2C0%2C0%2C.3-.1%2C28.12%2C28.12%2C0%2C0%2C1%2C23.58-2.77c.41.13%2C1.05%2C1.4%2C1.3%2C1.75.48.68.94%2C1.37%2C1.38%2C2.06a44.7%2C44.7%2C0%2C0%2C1%2C2.4%2C4.34%2C43.78%2C43.78%2C0%2C0%2C1%2C1.95%2C4.77c.22.63%2C1%2C4.51%2C1.48%2C4.55a.63.63%2C0%2C0%2C0%2C.59-.51c.32-1.36-.77-3.53-1.22-4.8a44.12%2C44.12%2C0%2C0%2C0-2-4.77A46.14%2C46.14%2C0%2C0%2C0%2C60%2C328.85c-.42-.67-.86-1.32-1.32-2A13.72%2C13.72%2C0%2C0%2C1%2C57.31%2C325Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Device--inject-87%22%3E%3Cg%20id%3D%22freepik--Laptop--inject-87%22%3E%3Cpath%20d%3D%22M62.88%2C357.26c0%2C3.49%2C2.6%2C7.82%2C5.82%2C9.68l126.85%2C73.25a12.88%2C12.88%2C0%2C0%2C0%2C11.66%2C0l223.37-129c3.22-1.85%2C5.83-6.19%2C5.83-9.67s-2.61-7.82-5.83-9.68L303.73%2C218.62a12.86%2C12.86%2C0%2C0%2C0-11.65%2C0L68.7%2C347.58C65.48%2C349.44%2C62.87%2C353.77%2C62.88%2C357.26Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M68.7%2C354.31l126.85%2C73.26a12.94%2C12.94%2C0%2C0%2C0%2C11.66%2C0l223.37-129c3.22-1.86%2C3.22-4.87%2C0-6.73L303.73%2C218.62a12.86%2C12.86%2C0%2C0%2C0-11.65%2C0L68.7%2C347.58C65.48%2C349.44%2C65.48%2C352.45%2C68.7%2C354.31Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M201.38%2C429v12.61a11.84%2C11.84%2C0%2C0%2C1-5.82-1.39L68.7%2C366.94c-3.22-1.86-5.83-6.19-5.83-9.68%2C0-3.27%2C2.3-7.28%2C5.24-9.3-2.61%2C1.87-2.41%2C4.62.59%2C6.35l126.86%2C73.26A11.85%2C11.85%2C0%2C0%2C0%2C201.38%2C429Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M57.41%2C347.79c-3-1.74-2.85-4.68-2.85-8.4V164.18a12.89%2C12.89%2C0%2C0%2C1%2C5.83-10.1l223.37-129c3.22-1.86%2C8.28-1.95%2C11.3-.21s2.85%2C4.69%2C2.85%2C8.4V208.53a12.9%2C12.9%2C0%2C0%2C1-5.82%2C10.09L68.7%2C347.58C65.48%2C349.44%2C60.43%2C349.54%2C57.41%2C347.79Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M297.9%2C33.31c0-3.71-2.61-5.21-5.82-3.37L68.7%2C158.92a11.85%2C11.85%2C0%2C0%2C0-4.12%2C4.35l-8.31-4.83h0a11.88%2C11.88%2C0%2C0%2C1%2C4.12-4.36l223.37-129C287%2C23.26%2C292%2C23.17%2C295%2C24.91S297.9%2C29.6%2C297.9%2C33.31Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M68%2C347.94c-3.21%2C1.5-7.79%2C1.48-10.6-.15-3-1.74-2.85-4.68-2.85-8.4V164.17a11.68%2C11.68%2C0%2C0%2C1%2C1.71-5.73l8.31%2C4.81v0A11.92%2C11.92%2C0%2C0%2C0%2C62.87%2C169V344.22C62.87%2C347.67%2C65.12%2C349.21%2C68%2C347.94Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M71.84%2C165.63%2C287.2%2C41.33c1.93-1.12%2C3.49-.21%2C3.49%2C2v158a7.71%2C7.71%2C0%2C0%2C1-3.49%2C6L71.84%2C331.66c-1.94%2C1.11-3.5.21-3.5-2V171.69A7.72%2C7.72%2C0%2C0%2C1%2C71.84%2C165.63Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M71.84%2C165.63%2C287.2%2C41.33c1.93-1.12%2C3.49-.21%2C3.49%2C2v158a7.71%2C7.71%2C0%2C0%2C1-3.49%2C6L71.84%2C331.66c-1.94%2C1.11-3.5.21-3.5-2V171.69A7.72%2C7.72%2C0%2C0%2C1%2C71.84%2C165.63Z%22%20style%3D%22opacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M84.82%2C347.93%2C292.16%2C228.22a6.44%2C6.44%2C0%2C0%2C1%2C5.83%2C0l3.45%2C1.9c1.61.93%2C1.61%2C2.43%2C0%2C3.36L94.07%2C353.17a6.42%2C6.42%2C0%2C0%2C1-5.82%2C0l-3.42-1.88C83.22%2C350.36%2C83.22%2C348.86%2C84.82%2C347.93Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M101.09%2C357.6%2C308.42%2C237.89a6%2C6%2C0%2C0%2C1%2C5.33-.29l54%2C31.16c1.33.77%2C1.1%2C2.15-.51%2C3.07L160.12%2C391.38a6%2C6%2C0%2C0%2C1-5.33.3l-54.2-31C99.26%2C359.9%2C99.48%2C358.53%2C101.09%2C357.6Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M280.75%2C288.17l6.49-3.75c.28-.16.3-.4.06-.54l-6.22-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C280.75%2C288.17Zm-9.48-13L264.78%2C279c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C271.27%2C275.2Zm-21%2C12.11-11%2C6.34c-.28.16-.3.41-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l11-6.34c.28-.16.3-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C250.3%2C287.31Zm11.48-6.63-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.22-3.58A1%2C1%2C0%2C0%2C0%2C261.78%2C280.68Zm-25.47%2C14.7-6.49%2C3.75c-.27.16-.3.4%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C236.31%2C295.38Zm-9.48%2C5.48-6.5%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C226.83%2C300.86Zm24.34%2C14.63%2C6.49-3.75c.28-.15.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C251.17%2C315.49ZM241.68%2C321l6.49-3.75c.28-.16.3-.4.06-.54L242%2C313.09a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.41-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C241.68%2C321Zm-9.49%2C5.48%2C6.49-3.75c.28-.16.31-.4.06-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C232.19%2C326.45Zm-9.48%2C5.48%2C6.49-3.75c.27-.16.3-.4.05-.55L223%2C324.05a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C222.71%2C331.93Zm48.55-38.28%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C271.26%2C293.65ZM260.66%2C310l14.48-8.37c.27-.16.3-.4.05-.54l-15.08-8.71a1%2C1%2C0%2C0%2C0-.94%2C0l-7.49%2C4.33c-.28.16-.3.4-.06.54l8%2C4.61c.24.14.22.39-.06.55l-6%2C3.46c-.28.16-.3.4-.06.54l6.21%2C3.59A1.1%2C1.1%2C0%2C0%2C0%2C260.66%2C310Zm-43.32-3.68-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C217.34%2C306.34Zm-9.49%2C5.48-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C207.85%2C311.82Zm-52.5%2C58.48a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41-.05.55ZM132%2C355.64l-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C132%2C355.64Zm12%2C11a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.1%2C1.1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.41%2C0%2C.55Zm26.18%2C5.89%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C170.16%2C372.51ZM159.72%2C378a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.06-.54L161%2C370.11a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55Zm-18.29-27.86-6.49%2C3.75c-.27.16-.3.4-.05.55L141.1%2C358a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C141.43%2C350.16Zm47.44-27.39-6.49%2C3.75c-.27.16-.3.4%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C188.87%2C322.77Zm-38%2C21.92-6.49%2C3.74c-.28.16-.3.41-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C150.92%2C344.69Zm47.44-27.39L191.87%2C321c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C198.36%2C317.3Zm-19%2C10.95-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C179.39%2C328.25Zm-9.49%2C5.48-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C169.9%2C333.73Zm-9.49%2C5.48L153.92%2C343c-.28.16-.3.41-.06.55l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.15.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C160.41%2C339.21Zm43.32%2C3.67%2C6.49-3.75c.28-.15.3-.4.06-.54L204.07%2C335a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C203.73%2C342.88Zm88.51-79.79-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C292.24%2C263.09Zm-11.48%2C6.63-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1.07%2C1.07%2C0%2C0%2C0%2C280.76%2C269.72Zm21-12.1-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C301.73%2C257.62Zm-52.44%2C48.71%2C6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C249.29%2C306.33Zm62.87-54.22a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55ZM213.22%2C337.4l6.49-3.74c.27-.16.3-.41%2C0-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C213.22%2C337.4Zm116.35-67.17%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C329.57%2C270.23Zm-18.36.35%2C6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C311.21%2C270.58ZM321%2C257.23a1%2C1%2C0%2C0%2C0-.94%2C0L313.6%2C261c-.28.16-.3.4-.06.54l6.21%2C3.59a1.1%2C1.1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55Zm2-1.16%2C15.08%2C8.71a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-15.09-8.71a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75C322.81%2C255.69%2C322.79%2C255.93%2C323%2C256.07Zm-21.91%2C12.15-6.5%2C3.74c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C301.12%2C268.22Zm-71.41%2C41.22-6.5%2C3.75c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C229.71%2C309.44Zm89.43-33.7a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54ZM239.19%2C304l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C239.19%2C304Zm-74.36%2C60.86a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.27-.16.3-.41%2C0-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-11-11.56L147.31%2C357c-.28.15-.3.4-.06.54l6.22%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C153.8%2C353.27Zm21.47%2C6.05%2C6.49-3.75c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C175.27%2C359.32Zm9.48-5.48%2C6.49-3.75c.28-.16.31-.4.06-.54L185.09%2C346a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C184.75%2C353.84Zm9.49-5.48%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C194.24%2C348.36Zm-31-.57-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C163.29%2C347.79Zm9.49-5.48-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C172.78%2C342.31Zm37.95-21.91-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.1%2C1.1%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.41%2C0-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C210.73%2C320.4Zm-9.49%2C5.48-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.22-3.58A1%2C1%2C0%2C0%2C0%2C201.24%2C325.88Zm19-11-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C220.22%2C314.92Zm-37.95%2C21.91-6.5%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C182.27%2C336.83Zm9.48-5.47-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C191.75%2C331.36ZM179.64%2C367l6.5-3.74c.27-.16.3-.41.05-.55L180%2C359.16a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C179.64%2C367Zm-50-2.36-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L116%2C364.87c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74C129.83%2C365.06%2C129.86%2C364.81%2C129.61%2C364.67ZM142%2C367.78l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-10%2C5.77c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l10-5.77C142.2%2C368.16%2C142.22%2C367.92%2C142%2C367.78Zm-21.64-10.19L114.13%2C354a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l8-4.62C120.56%2C358%2C120.59%2C357.73%2C120.34%2C357.59Zm6.13-3.54a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55Zm26.88%2C17.41-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-12.49%2C7.21c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0L153.29%2C372C153.57%2C371.84%2C153.59%2C371.6%2C153.35%2C371.46Zm4.38%2C7.71-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-8%2C4.61c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61C158%2C379.56%2C158%2C379.32%2C157.73%2C379.17ZM197%2C313.33a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.15.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55Zm-19%2C10.95a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55ZM136%2C348.58a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54Zm51.57-29.78a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0L195%2C315c.27-.16.3-.4%2C0-.54l-6.21-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55Zm-19%2C11a1%2C1%2C0%2C0%2C0%2C.94%2C0L176%2C326c.28-.16.3-.4.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4%2C0%2C.54Zm-6.16%2C49.8a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-10%2C5.77c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l10-5.76c.28-.16.3-.41.06-.55Zm-7.46-41.94a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-9.49%2C5.48a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L139.29%2C339c-.28.16-.3.4-.06.54Zm192.72-65a1%2C1%2C0%2C0%2C0-.94%2C0l-16%2C9.22c-.28.16-.3.4-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l16-9.23c.27-.16.3-.4.05-.54Zm-21%2C12.11a1%2C1%2C0%2C0%2C0-.94%2C0L309.76%2C294c-.28.16-.31.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.4.06-.54ZM189.13%2C361.56l6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1.07%2C1.07%2C0%2C0%2C0%2C189.13%2C361.56Zm109.08-60.42a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55Zm49.44-28.54a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55Zm15.7-1.9L348.27%2C262a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.15-.3.4-.05.54L355.86%2C275a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75C363.57%2C271.09%2C363.59%2C270.84%2C363.35%2C270.7ZM262.76%2C321.61a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61c.28-.16.3-.41.06-.55Zm24-13.84a1%2C1%2C0%2C0%2C0-.94%2C0l-10%2C5.77c-.28.16-.3.4-.06.54L282%2C317.7a1.1%2C1.1%2C0%2C0%2C0%2C.95%2C0l10-5.77c.28-.16.3-.4.06-.55Zm-45.94%2C26.52a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-53.43%2C30.84c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l53.43-30.85c.28-.16.3-.4.06-.54Zm-56.43%2C32.58a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-8%2C4.62c-.28.16-.31.4-.06.54l6.21%2C3.59a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l8-4.62c.28-.16.3-.4.06-.54ZM251.77%2C328a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.62c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l8-4.61c.27-.16.3-.4.05-.54Zm-78.4%2C45.26a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l8-4.61c.27-.16.3-.41.05-.55Zm100.37-57.94a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.27.16-.3.4-.05.54L271%2C324a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61c.28-.16.3-.41.06-.55Zm34-19.61a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54ZM329%2C280.83l6.5-3.75c.27-.16.3-.4.05-.54L329.29%2C273a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C329%2C280.83Zm-38.71%2C1.86%2C6.49-3.75c.27-.15.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C290.24%2C282.69Zm-25.21%2C35%2C19-11c.28-.16.3-.41.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-19%2C10.95c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C265%2C317.73Zm53.49-31.39a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.4.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-7.93-5.16%2C6.5-3.74c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C310.59%2C281.18Zm-55%2C42%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C255.55%2C323.21Zm42-24.76a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54ZM208.11%2C350.6l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0L201%2C346.5c-.28.16-.3.4-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C208.11%2C350.6Zm9.49-5.48%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0L210.5%2C341c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C217.6%2C345.12Zm-19%2C11%2C6.49-3.75c.28-.16.3-.4.06-.55L199%2C348.2a1.06%2C1.06%2C0%2C0%2C0-1%2C0L191.52%2C352c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C198.62%2C356.08Zm37.95-21.91%2C6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1.07%2C1.07%2C0%2C0%2C0%2C236.57%2C334.17Zm-9.49%2C5.47%2C6.49-3.74c.28-.16.31-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L220%2C335.55c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C227.08%2C339.64Zm19-10.95%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0L239%2C324.59c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C246.06%2C328.69Zm51.77-76.21a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-1.66-1a1%2C1%2C0%2C0%2C0-.94%2C0L296.24%2C251c-.28.16-.3.41-.06.55Zm-47.15%2C29.86a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54L252%2C274.43a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55Zm19-10.95a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54ZM239.09%2C289a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm21.07-12.17a1%2C1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4%2C0-.54L261.44%2C269a1%2C1%2C0%2C0%2C0-.94%2C0L254%2C272.73c-.28.16-.3.41-.06.55ZM220.11%2C300a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-1%2C0L214%2C295.86c-.28.16-.3.4-.06.54Zm9.49-5.48a1.1%2C1.1%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.4.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm49.26-31.07a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-1.65-.95a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54ZM307.32%2C247a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-1.65-1a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54Zm13.05%2C7.53a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54Zm18.07%2C20.81%2C6.49-3.75c.28-.16.31-.4.06-.54l-6.21-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C338.44%2C275.35ZM288.35%2C258a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-1.66-1a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55Zm-77.72%2C47.5a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41-.05.55Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22238.71%20354.4%20240.04%20355.17%20275.39%20375.57%20338.26%20339.27%20339.57%20338.53%20302.89%20317.35%20238.71%20354.4%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpolygon%3E%3Cpolygon%20points%3D%22240.04%20355.17%20275.39%20375.57%20338.26%20339.27%20302.89%20318.86%20240.04%20355.17%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpolygon%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Window--inject-87%22%3E%3Cg%20id%3D%22freepik--window--inject-87%22%3E%3Cg%20id%3D%22freepik--window--inject-87%22%3E%3Cpath%20d%3D%22M90.55%2C340.63a4.12%2C4.12%2C0%2C0%2C1-1.83.56%2C4.63%2C4.63%2C0%2C0%2C1-2.68-.47%2C5%2C5%2C0%2C0%2C1-2.19-4V207.37l4.38%2C2.53V339.28c0%2C1.06.53%2C1.67%2C1.29%2C1.67A2.25%2C2.25%2C0%2C0%2C0%2C90.55%2C340.63Z%22%20style%3D%22fill%3A%23f0f0f0%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C211.68a5.16%2C5.16%2C0%2C0%2C1-2.32%2C4L90.55%2C340.63c-1.28.74-2.33.14-2.33-1.35V194.74l6.42-3.7c1.28-.74%2C3.37-12%2C4.66-12.79l55.59-32.1c1.3-.74%2C4.33%2C7.6%2C5.61%2C6.86L309%2C67.13V211.68Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M307.9%2C69V211.68a4.1%2C4.1%2C0%2C0%2C1-1.79%2C3.1L90%2C339.7a1%2C1%2C0%2C0%2C1-.5.17c-.21%2C0-.21-.56-.21-.59V195.36L95.18%2C192c.93-.54%2C1.51-2.35%2C2.81-7a34.61%2C34.61%2C0%2C0%2C1%2C1.93-5.82L155%2C147.32a25.13%2C25.13%2C0%2C0%2C1%2C1.75%2C2.8c1.5%2C2.64%2C2.34%2C4%2C3.56%2C4a1.38%2C1.38%2C0%2C0%2C0%2C.71-.19L307.9%2C69M155.43%2C147.08h0M100%2C179.1h0m209-112L160.5%2C153a.34.34%2C0%2C0%2C1-.17.05c-1.31%2C0-4-7-5.26-7a.41.41%2C0%2C0%2C0-.18.05L99.3%2C178.25C98%2C179%2C95.92%2C190.3%2C94.64%2C191l-6.42%2C3.7V339.28c0%2C1.06.53%2C1.67%2C1.29%2C1.67a2.1%2C2.1%2C0%2C0%2C0%2C1-.32l216.1-124.91a5.16%2C5.16%2C0%2C0%2C0%2C2.32-4V67.13Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M86%2C201.91A5%2C5%2C0%2C0%2C1%2C83.85%2C198V179.77a5.15%2C5.15%2C0%2C0%2C1%2C2.34-4L302.27%2C50.81a4.38%2C4.38%2C0%2C0%2C1%2C6.7%2C3.87v18.2a5.13%2C5.13%2C0%2C0%2C1-2.32%2C4L90.55%2C201.83A5%2C5%2C0%2C0%2C1%2C86%2C201.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C54.3c-.16-1.2-1.14-1.64-2.3-1L90.55%2C178.25A4.89%2C4.89%2C0%2C0%2C0%2C88.9%2C180l-4.37-2.53a4.78%2C4.78%2C0%2C0%2C1%2C1.65-1.74L302.28%2C50.82A4.34%2C4.34%2C0%2C0%2C1%2C309%2C54.3Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M88.9%2C180a4.73%2C4.73%2C0%2C0%2C0-.68%2C2.29V209.9l-4.38-2.53v-27.6c0-.1%2C0-.19%2C0-.28a4.71%2C4.71%2C0%2C0%2C1%2C.09-.58%2C5.15%2C5.15%2C0%2C0%2C1%2C.59-1.44Z%22%20style%3D%22opacity%3A0.1%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C54.68V67.13L160.5%2C153c-1.28.74-2.32.14-2.32-1.35V147c0-1.49-1.05-2.09-2.34-1.35L99.3%2C178.25a5.15%2C5.15%2C0%2C0%2C0-2.34%2C4V187a5.15%2C5.15%2C0%2C0%2C1-2.32%2C4l-6.42%2C3.7V182.29a5.17%2C5.17%2C0%2C0%2C1%2C2.33-4L306.65%2C53.33C307.93%2C52.59%2C309%2C53.19%2C309%2C54.68Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.05%2C62.49c1.62-.94%2C2.93-.18%2C2.93%2C1.69a6.47%2C6.47%2C0%2C0%2C1-2.93%2C5.08c-1.62.94-2.94.18-2.94-1.69A6.48%2C6.48%2C0%2C0%2C1%2C298.05%2C62.49Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M287.49%2C68.58c1.62-.94%2C2.93-.18%2C2.93%2C1.69a6.49%2C6.49%2C0%2C0%2C1-2.93%2C5.08c-1.62.93-2.93.18-2.93-1.69A6.47%2C6.47%2C0%2C0%2C1%2C287.49%2C68.58Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M276.93%2C74.66c1.62-.93%2C2.93-.17%2C2.93%2C1.7a6.49%2C6.49%2C0%2C0%2C1-2.93%2C5.08c-1.62.93-2.93.17-2.93-1.7A6.49%2C6.49%2C0%2C0%2C1%2C276.93%2C74.66Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C67.13V82.29L88.22%2C209.9V194.74L93%2C192c1.28-.75%2C1.71-1.88%2C2.33-4L97%2C182.29c.51-2%2C1.05-3.3%2C2.34-4l55.59-32.1c1.3-.74%2C2.3-.82%2C3.29.8l2%2C3.62c.73%2C1.26%2C1.1%2C2%2C2.38%2C1.26Z%22%20style%3D%22fill%3A%23e6e6e6%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%2288.22%20194.74%2088.22%20209.9%2083.84%20207.37%2083.84%20192.22%2088.22%20194.74%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M98.91%2C195.83%2C95.25%2C198l1.4-2.69a.65.65%2C0%2C0%2C0%2C0-.65c-.1-.13-.29%2C0-.41.2l-2%2C3.81v0a.58.58%2C0%2C0%2C0%2C0%2C.14.08.08%2C0%2C0%2C0%2C0%2C0%2C.75.75%2C0%2C0%2C0%2C0%2C.2.43.43%2C0%2C0%2C0%2C0%2C.17l0%2C0a.22.22%2C0%2C0%2C0%2C0%2C.08h0l2%2C1.52a.17.17%2C0%2C0%2C0%2C.19%2C0%2C.53.53%2C0%2C0%2C0%2C.22-.28c.11-.25.1-.53%2C0-.62l-1.4-1.08%2C3.66-2.11a.78.78%2C0%2C0%2C0%2C.3-.62C99.21%2C195.87%2C99.07%2C195.74%2C98.91%2C195.83Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M102%2C194.07l3.66-2.11-1.4-1.07a.61.61%2C0%2C0%2C1%2C0-.63c.11-.25.3-.37.42-.28l2%2C1.53h0a.22.22%2C0%2C0%2C1%2C0%2C.08l0%2C0a.79.79%2C0%2C0%2C1%2C0%2C.17%2C1.5%2C1.5%2C0%2C0%2C1%2C0%2C.2s0%2C0%2C0%2C0a.58.58%2C0%2C0%2C1%2C0%2C.14v0l-2%2C3.82a.62.62%2C0%2C0%2C1-.2.22.16.16%2C0%2C0%2C1-.22%2C0%2C.69.69%2C0%2C0%2C1%2C0-.65l1.4-2.69L102%2C195c-.17.09-.3%2C0-.3-.29A.75.75%2C0%2C0%2C1%2C102%2C194.07Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M114%2C183.53c0-.22-.22-.19-.31.05l-.51%2C1.23c-.85-.1-1.89.74-2.58%2C2.22-.91%2C1.92-.91%2C4.19%2C0%2C5.06a1.3%2C1.3%2C0%2C0%2C0%2C1.64.1%2C4.54%2C4.54%2C0%2C0%2C0%2C1.64-2%2C.6.6%2C0%2C0%2C0%2C0-.64c-.11-.11-.3%2C0-.41.24-.68%2C1.43-1.78%2C2.07-2.46%2C1.42s-.67-2.35%2C0-3.78c.48-1%2C1.18-1.62%2C1.78-1.66l-.38.92c-.1.24%2C0%2C.47.15.37l1.49-1a.52.52%2C0%2C0%2C0%2C.17-.41Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M153.29%2C153.07l1.33-2.82a.85.85%2C0%2C0%2C0%2C0-.88c-.15-.16-.41%2C0-.57.33l-1.33%2C2.82-1.33-1.28c-.16-.16-.42%2C0-.58.33a.88.88%2C0%2C0%2C0%2C0%2C.87l1.34%2C1.29-1.34%2C2.82a.9.9%2C0%2C0%2C0%2C0%2C.88.23.23%2C0%2C0%2C0%2C.29%2C0%2C.81.81%2C0%2C0%2C0%2C.29-.35l1.33-2.82%2C1.33%2C1.28a.22.22%2C0%2C0%2C0%2C.29%2C0%2C.8.8%2C0%2C0%2C0%2C.28-.35.85.85%2C0%2C0%2C0%2C0-.88Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M118.82%2C187v-4.72a5.18%2C5.18%2C0%2C0%2C1%2C2.33-4L293.53%2C78.63c1.29-.74%2C2.33-.14%2C2.33%2C1.35v4.71a5.14%2C5.14%2C0%2C0%2C1-2.33%2C4L121.15%2C188.35C119.87%2C189.09%2C118.82%2C188.49%2C118.82%2C187Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M290.36%2C89.09a.46.46%2C0%2C0%2C1-.21%2C0%2C.62.62%2C0%2C0%2C1-.35-.7l.23-1.92-.9-.64a.69.69%2C0%2C0%2C1-.25-.52%2C1.06%2C1.06%2C0%2C0%2C1%2C.39-.82l1.37-1a.32.32%2C0%2C0%2C0%2C.06-.11l.61-2a.86.86%2C0%2C0%2C1%2C.69-.65.56.56%2C0%2C0%2C1%2C.54.32h0l.51%2C1.1%2C1.16-.45a.54.54%2C0%2C0%2C1%2C.61.14.84.84%2C0%2C0%2C1%2C0%2C1l-1%2C1.86a.36.36%2C0%2C0%2C0%2C0%2C.11l.23%2C1.68a1%2C1%2C0%2C0%2C1-.29.84.64.64%2C0%2C0%2C1-.54.21l-1.12-.14-1.21%2C1.54A.69.69%2C0%2C0%2C1%2C290.36%2C89.09Zm-.66-3.89.89.65a.63.63%2C0%2C0%2C1%2C.24.64l-.15%2C1.27.81-1a.7.7%2C0%2C0%2C1%2C.62-.29l1.11.14a.27.27%2C0%2C0%2C0%2C0-.13L293%2C84.77a1%2C1%2C0%2C0%2C1%2C.12-.6l.87-1.63-.89.34a.55.55%2C0%2C0%2C1-.71-.28l-.41-.86-.54%2C1.78a1%2C1%2C0%2C0%2C1-.34.51l-1.37%2C1.06A.29.29%2C0%2C0%2C0%2C289.7%2C85.2Zm2.31%2C2Zm-1.89-.74Zm1.69-5.2Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3Cg%20style%3D%22opacity%3A0.5%22%3E%3Cpath%20d%3D%22M298.61%2C78.06a.81.81%2C0%2C0%2C1-.7-.41.8.8%2C0%2C0%2C1%2C.29-1.1l6.56-3.78a.8.8%2C0%2C1%2C1%2C.81%2C1.39L299%2C78A.86.86%2C0%2C0%2C1%2C298.61%2C78.06Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.61%2C81.85a.81.81%2C0%2C0%2C1-.7-.41.8.8%2C0%2C0%2C1%2C.29-1.1l6.56-3.79a.81.81%2C0%2C0%2C1%2C.81%2C1.4L299%2C81.74A.86.86%2C0%2C0%2C1%2C298.61%2C81.85Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.61%2C85.63a.8.8%2C0%2C0%2C1-.41-1.5l6.56-3.79a.81.81%2C0%2C0%2C1%2C.81%2C1.4L299%2C85.53A.85.85%2C0%2C0%2C1%2C298.61%2C85.63Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Shield--inject-87%22%3E%3Cg%20id%3D%22freepik--shield--inject-87%22%3E%3Cpath%20d%3D%22M208.38%2C156.24c-4.59%2C4.12-8.55%2C3.9-11%2C2-2.48%2C4.76-6.44%2C9.55-11%2C10.73L183.72%2C176s1.4%2C1.62%2C1.4%2C5.48a19.26%2C19.26%2C0%2C0%2C1-.64%2C4.8%2C25.41%2C25.41%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C7.74%2C7.74%2C0%2C0%2C0%2C2.87%2C2.87l-4-2.29a8%2C8%2C0%2C0%2C1-3-3%2C12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.35%2C25.35%2C0%2C0%2C1%2C1.1-7.18%2C19.32%2C19.32%2C0%2C0%2C0%2C.65-4.8c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.17%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.13%2C11-2Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M194.68%2C156.69l-1.45-.84A6.31%2C6.31%2C0%2C0%2C0%2C194.68%2C156.69Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.8%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M204.25%2C153.86c-3.77%2C3.39-7.12%2C3.84-9.57%2C2.83l2.68%2C1.55c2.47%2C1.9%2C6.43%2C2.12%2C11-2Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.85%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M193.23%2C155.85c-2.48%2C4.77-6.44%2C9.56-11%2C10.73l4.13%2C2.39c4.58-1.18%2C8.54-6%2C11-10.73Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.65%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22182.21%20166.58%20179.59%20173.65%20183.72%20176.04%20186.34%20168.97%20182.21%20166.58%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.55%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M184.81%2C199.89a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.26%2C19.26%2C0%2C0%2C0%2C.64-4.8c0-3.86-1.4-5.48-1.4-5.48l-4.13-2.39s1.41%2C1.62%2C1.41%2C5.49a19.32%2C19.32%2C0%2C0%2C1-.65%2C4.8%2C25.35%2C25.35%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C8%2C8%2C0%2C0%2C0%2C3%2C3l4%2C2.29A7.74%2C7.74%2C0%2C0%2C1%2C184.81%2C199.89Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M184.81%2C199.89a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.26%2C19.26%2C0%2C0%2C0%2C.64-4.8c0-3.86-1.4-5.48-1.4-5.48l-4.13-2.39s1.41%2C1.62%2C1.41%2C5.49a19.32%2C19.32%2C0%2C0%2C1-.65%2C4.8%2C25.35%2C25.35%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C8%2C8%2C0%2C0%2C0%2C3%2C3l4%2C2.29A7.74%2C7.74%2C0%2C0%2C1%2C184.81%2C199.89Z%22%20style%3D%22opacity%3A0.05%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M197.36%2C204.74c-6.85.07-10.77-1.74-12.55-4.85a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.24%2C19.24%2C0%2C0%2C0%2C.65-4.79c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.18%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.12%2C11-2l2.62%2C4a19.87%2C19.87%2C0%2C0%2C0-1.41%2C7.11%2C11.69%2C11.69%2C0%2C0%2C0%2C.65%2C4%2C14%2C14%2C0%2C0%2C1%2C1.09%2C5.92%2C23.71%2C23.71%2C0%2C0%2C1-1.42%2C8C208.13%2C190.57%2C204.21%2C196.9%2C197.36%2C204.74Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M197.36%2C204.74c-6.85.07-10.77-1.74-12.55-4.85a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.24%2C19.24%2C0%2C0%2C0%2C.65-4.79c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.18%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.12%2C11-2l2.62%2C4a19.87%2C19.87%2C0%2C0%2C0-1.41%2C7.11%2C11.69%2C11.69%2C0%2C0%2C0%2C.65%2C4%2C14%2C14%2C0%2C0%2C1%2C1.09%2C5.92%2C23.71%2C23.71%2C0%2C0%2C1-1.42%2C8C208.13%2C190.57%2C204.21%2C196.9%2C197.36%2C204.74Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.75%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M187.57%2C200.48c1.81%2C1.59%2C4.81%2C2.43%2C9%2C2.48l-2.66-1.52A19.35%2C19.35%2C0%2C0%2C1%2C187.57%2C200.48Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.8%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22207.63%20159.71%20209.01%20160.5%20207.96%20158.87%20207.36%20159.29%20207.63%20159.71%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M207.18%2C171.24a13.41%2C13.41%2C0%2C0%2C1-.75-4.64%2C21.74%2C21.74%2C0%2C0%2C1%2C1.2-6.89l-.27-.42a11.12%2C11.12%2C0%2C0%2C1-6.12%2C2%2C8%2C8%2C0%2C0%2C1-3.2-.65c-1.88%2C3.18-5.43%2C8-10.34%2C9.73l-2%2C5.43a12.12%2C12.12%2C0%2C0%2C1%2C1.21%2C5.69%2C20.6%2C20.6%2C0%2C0%2C1-.7%2C5.22c0%2C.22-.11.43-.16.65a21.92%2C21.92%2C0%2C0%2C0-.88%2C6.1%2C10.7%2C10.7%2C0%2C0%2C0%2C1.19%2C5.51%2C6.05%2C6.05%2C0%2C0%2C0%2C1.73%2C1.88%2C17.87%2C17.87%2C0%2C0%2C0%2C7.08%2C1.27c6-6.95%2C9.93-13%2C11.68-18.14a22%2C22%2C0%2C0%2C0%2C1.33-7.45%2C11.89%2C11.89%2C0%2C0%2C0-.82-4.86C207.29%2C171.55%2C207.23%2C171.39%2C207.18%2C171.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M187.7%2C170.41l-2%2C5.43a12.12%2C12.12%2C0%2C0%2C1%2C1.21%2C5.69%2C20.6%2C20.6%2C0%2C0%2C1-.7%2C5.22c0%2C.22-.11.43-.16.65a21.92%2C21.92%2C0%2C0%2C0-.88%2C6.1%2C10.7%2C10.7%2C0%2C0%2C0%2C1.19%2C5.51%2C6.05%2C6.05%2C0%2C0%2C0%2C1.73%2C1.88%2C17.87%2C17.87%2C0%2C0%2C0%2C7.08%2C1.27v-20l2.88-.87V160.68a32.06%2C32.06%2C0%2C0%2C1-2.88%2C4.11A17.6%2C17.6%2C0%2C0%2C1%2C187.7%2C170.41Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M202.1%2C174.77a.91.91%2C0%2C0%2C0-.11-.16l0%2C0a1.18%2C1.18%2C0%2C0%2C0-.29-.23l-1-.56a2.25%2C2.25%2C0%2C0%2C0-.55-.21l-.35-.05v-2.85a3.4%2C3.4%2C0%2C0%2C0-1.48-3.1%2C3%2C3%2C0%2C0%2C0-3.13.2%2C8.22%2C8.22%2C0%2C0%2C0-3.66%2C6.59v3.36l-1.92%2C1.1-.16.11-.05%2C0h0a.71.71%2C0%2C0%2C0-.27.53v11.52a.77.77%2C0%2C0%2C0%2C0%2C.15.89.89%2C0%2C0%2C0%2C.37.47l.1.07.47.27.5.28a1.78%2C1.78%2C0%2C0%2C0%2C.61.22%2C2.59%2C2.59%2C0%2C0%2C0%2C1.75-.22l8.73-5a.84.84%2C0%2C0%2C0%2C.49-.68V175A.68.68%2C0%2C0%2C0%2C202.1%2C174.77Zm-8.68-.39a6.37%2C6.37%2C0%2C0%2C1%2C2.72-5%2C1.33%2C1.33%2C0%2C0%2C1%2C1.24-.2%2C1.67%2C1.67%2C0%2C0%2C1%2C.54%2C1.47v3.36l-2.48%2C1.43-2%2C1.17Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--Padlock--inject-87%22%3E%3Cpath%20d%3D%22M203.18%2C175.55a.82.82%2C0%2C0%2C0-.49-.68l-1-.56a2.65%2C2.65%2C0%2C0%2C0-2.36%2C0l-8.73%2C5a.83.83%2C0%2C0%2C0-.49.68h0v11.53h0a.82.82%2C0%2C0%2C0%2C.49.68l1%2C.56a2.61%2C2.61%2C0%2C0%2C0%2C2.37%2C0l8.72-5a.82.82%2C0%2C0%2C0%2C.49-.68h0V175.55Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M191.6%2C181.27l-1-.55a.73.73%2C0%2C0%2C1%2C0-1.37l8.73-5a2.65%2C2.65%2C0%2C0%2C1%2C2.36%2C0l1%2C.56a.71.71%2C0%2C0%2C1%2C0%2C1.36l-8.72%2C5A2.61%2C2.61%2C0%2C0%2C1%2C191.6%2C181.27Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M192.79%2C181.55v11.53a2.43%2C2.43%2C0%2C0%2C1-1.19-.28l-1-.56a.81.81%2C0%2C0%2C1-.49-.68V180a.83.83%2C0%2C0%2C0%2C.49.69l1%2C.55A2.43%2C2.43%2C0%2C0%2C0%2C192.79%2C181.55Z%22%20style%3D%22opacity%3A0.1%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M199.14%2C187.26l-2.09%2C1.2.32-3.77a1%2C1%2C0%2C0%2C1-.4-.92%2C2.71%2C2.71%2C0%2C0%2C1%2C1.12-2.16c.63-.35%2C1.13%2C0%2C1.13.86a2.83%2C2.83%2C0%2C0%2C1-.41%2C1.39Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22199.14%20187.26%20197.25%20186.17%20197.05%20188.46%20199.14%20187.26%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M198.09%2C181.61a2.52%2C2.52%2C0%2C0%2C0-1%2C1.28l1.68%2C1h0a2.83%2C2.83%2C0%2C0%2C0%2C.41-1.39C199.22%2C181.64%2C198.72%2C181.26%2C198.09%2C181.61Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M200.82%2C175.81h0V171.2a3.38%2C3.38%2C0%2C0%2C0-1.48-3.1%2C3%2C3%2C0%2C0%2C0-3.12.19%2C8.22%2C8.22%2C0%2C0%2C0-3.67%2C6.59v4.64h0a.47.47%2C0%2C0%2C0%2C.28.38%2C1.48%2C1.48%2C0%2C0%2C0%2C1.33%2C0%2C.45.45%2C0%2C0%2C0%2C.28-.38h0v-4.64a6.37%2C6.37%2C0%2C0%2C1%2C2.72-4.95%2C1.33%2C1.33%2C0%2C0%2C1%2C1.24-.2%2C1.66%2C1.66%2C0%2C0%2C1%2C.54%2C1.47v4.61h0a.45.45%2C0%2C0%2C0%2C.28.38%2C1.48%2C1.48%2C0%2C0%2C0%2C1.33%2C0%2C.45.45%2C0%2C0%2C0%2C.27-.38Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cpath%20d%3D%22M129.34%2C253c.13-.07.23-.08.3%2C0a.69.69%2C0%2C0%2C1%2C.14.25l2.12%2C8.23a.58.58%2C0%2C0%2C1%2C0%2C.2.66.66%2C0%2C0%2C1-.06.27.35.35%2C0%2C0%2C1-.15.18l-1.23.71c-.13.08-.22.09-.28%2C0a.32.32%2C0%2C0%2C1-.1-.18l-.27-1.09L127.26%2C263l-.28%2C1.41a.81.81%2C0%2C0%2C1-.1.3.6.6%2C0%2C0%2C1-.28.29l-1.22.71a.13.13%2C0%2C0%2C1-.16%2C0%2C.28.28%2C0%2C0%2C1-.06-.2%2C1%2C1%2C0%2C0%2C1%2C0-.24l2.12-10.68a2.07%2C2.07%2C0%2C0%2C1%2C.15-.41.69.69%2C0%2C0%2C1%2C.29-.34Zm-1.58%2C7.47%2C1.58-.91-.79-3.15Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M133%2C254a.8.8%2C0%2C0%2C1%2C.08-.33.5.5%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.79a1.81%2C1.81%2C0%2C0%2C0%2C.18.93c.13.19.33.2.62%2C0a1.37%2C1.37%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14V252a.78.78%2C0%2C0%2C1%2C.07-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v7a.8.8%2C0%2C0%2C1-.08.33.46.46%2C0%2C0%2C1-.18.22l-1.13.65a.14.14%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-.34a3.15%2C3.15%2C0%2C0%2C1-.19.43%2C2.27%2C2.27%2C0%2C0%2C1-.27.44%2C3.16%2C3.16%2C0%2C0%2C1-.39.44%2C2.69%2C2.69%2C0%2C0%2C1-.52.38c-.63.36-1.13.38-1.5%2C0a3.12%2C3.12%2C0%2C0%2C1-.57-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M142%2C253.1a.85.85%2C0%2C0%2C0%2C.09.47c.07.09.18.09.33%2C0l.77-.45a.14.14%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.51a.8.8%2C0%2C0%2C1-.08.33.45.45%2C0%2C0%2C1-.19.23l-.92.53a1.81%2C1.81%2C0%2C0%2C1-.83.28.89.89%2C0%2C0%2C1-.64-.21%2C1.53%2C1.53%2C0%2C0%2C1-.41-.7%2C3.73%2C3.73%2C0%2C0%2C1-.15-1.15v-2.52l-.72.42a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-1.51a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l.72-.41v-2.45a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v2.44l1.1-.63a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.51a.73.73%2C0%2C0%2C1-.08.33.44.44%2C0%2C0%2C1-.18.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M150%2C251.14a.8.8%2C0%2C0%2C1-.08.33.47.47%2C0%2C0%2C1-.19.22l-1.22.71c-.08%2C0-.14%2C0-.19%2C0a.33.33%2C0%2C0%2C1-.08-.24v-3.8a1.59%2C1.59%2C0%2C0%2C0-.2-.91c-.14-.18-.35-.19-.65%2C0a1.44%2C1.44%2C0%2C0%2C0-.63.76%2C3%2C3%2C0%2C0%2C0-.2%2C1.15v3.79a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.22.71a.16.16%2C0%2C0%2C1-.19%2C0%2C.36.36%2C0%2C0%2C1-.08-.24V244.3a.76.76%2C0%2C0%2C1%2C.08-.33.41.41%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.2a4.51%2C4.51%2C0%2C0%2C1%2C.51-.91%2C2.76%2C2.76%2C0%2C0%2C1%2C.81-.76%2C1.91%2C1.91%2C0%2C0%2C1%2C.86-.29.87.87%2C0%2C0%2C1%2C.67.24%2C1.71%2C1.71%2C0%2C0%2C1%2C.43.81A5.62%2C5.62%2C0%2C0%2C1%2C150%2C247Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M153.07%2C246.71a1.23%2C1.23%2C0%2C0%2C0%2C.09.53.43.43%2C0%2C0%2C0%2C.21.23.38.38%2C0%2C0%2C0%2C.28%2C0%2C1.88%2C1.88%2C0%2C0%2C0%2C.3-.12%2C2%2C2%2C0%2C0%2C0%2C.46-.36%2C2%2C2%2C0%2C0%2C0%2C.29-.42%2C1.37%2C1.37%2C0%2C0%2C1%2C.16-.26.46.46%2C0%2C0%2C1%2C.16-.14l1.27-.73q.21-.12.21.21a2.26%2C2.26%2C0%2C0%2C1-.14.63%2C5.76%2C5.76%2C0%2C0%2C1-.46%2C1%2C6.85%2C6.85%2C0%2C0%2C1-.79%2C1.13%2C4.5%2C4.5%2C0%2C0%2C1-1.16%2C1%2C2.26%2C2.26%2C0%2C0%2C1-1.12.37%2C1.09%2C1.09%2C0%2C0%2C1-.83-.32%2C2%2C2%2C0%2C0%2C1-.51-1%2C6.65%2C6.65%2C0%2C0%2C1-.17-1.6%2C8.85%2C8.85%2C0%2C0%2C1%2C.17-1.71%2C6.57%2C6.57%2C0%2C0%2C1%2C.51-1.57%2C5.63%2C5.63%2C0%2C0%2C1%2C.83-1.33%2C4.26%2C4.26%2C0%2C0%2C1%2C1.12-1%2C2%2C2%2C0%2C0%2C1%2C1.21-.33%2C1.23%2C1.23%2C0%2C0%2C1%2C.82.48%2C2.54%2C2.54%2C0%2C0%2C1%2C.46%2C1.05%2C6.6%2C6.6%2C0%2C0%2C1%2C.14%2C1.36v.42a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23Zm.88-3.38a1.46%2C1.46%2C0%2C0%2C0-.62.73%2C3%2C3%2C0%2C0%2C0-.26%2C1l1.76-1a1.2%2C1.2%2C0%2C0%2C0-.26-.7C154.43%2C243.18%2C154.22%2C243.17%2C154%2C243.33Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M163.15%2C243.54a.8.8%2C0%2C0%2C1-.08.33.42.42%2C0%2C0%2C1-.19.22l-1.22.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-3.8a1.51%2C1.51%2C0%2C0%2C0-.2-.91c-.14-.18-.35-.19-.64%2C0a1.42%2C1.42%2C0%2C0%2C0-.64.76%2C3%2C3%2C0%2C0%2C0-.2%2C1.15v3.79a.8.8%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-1.23.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.35.35%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.18-.68a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v.35c.05-.13.12-.28.19-.43a3.21%2C3.21%2C0%2C0%2C1%2C.29-.46%2C4.88%2C4.88%2C0%2C0%2C1%2C.38-.43%2C3.38%2C3.38%2C0%2C0%2C1%2C.51-.38%2C2%2C2%2C0%2C0%2C1%2C.86-.29.87.87%2C0%2C0%2C1%2C.67.24%2C1.71%2C1.71%2C0%2C0%2C1%2C.43.81%2C5.2%2C5.2%2C0%2C0%2C1%2C.16%2C1.44Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M167%2C238.67a.92.92%2C0%2C0%2C0%2C.09.48q.1.12.33%2C0l.77-.45c.08%2C0%2C.14%2C0%2C.19%2C0a.33.33%2C0%2C0%2C1%2C.08.24v1.52a.8.8%2C0%2C0%2C1-.08.33.42.42%2C0%2C0%2C1-.19.22l-.92.54a1.94%2C1.94%2C0%2C0%2C1-.83.28.94.94%2C0%2C0%2C1-.64-.22%2C1.49%2C1.49%2C0%2C0%2C1-.41-.69%2C3.84%2C3.84%2C0%2C0%2C1-.15-1.16v-2.52l-.72.42a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24V235.9a.67.67%2C0%2C0%2C1%2C.08-.33.54.54%2C0%2C0%2C1%2C.18-.23l.72-.41v-2.45a.8.8%2C0%2C0%2C1%2C.08-.33.42.42%2C0%2C0%2C1%2C.19-.22l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.52a.8.8%2C0%2C0%2C1-.08.33.46.46%2C0%2C0%2C1-.18.22l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M171.54%2C230.07a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.22.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24Zm0%2C8.62a.8.8%2C0%2C0%2C1-.08.33.45.45%2C0%2C0%2C1-.19.23l-1.22.71c-.08%2C0-.14%2C0-.19%2C0a.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.14.14%2C0%2C0%2C1%2C.19%2C0%2C.3.3%2C0%2C0%2C1%2C.08.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M174.7%2C232.85c0%2C.15%2C0%2C.33%2C0%2C.53s0%2C.37%2C0%2C.52a.94.94%2C0%2C0%2C0%2C.27.71c.15.13.36.12.62%2C0a1.47%2C1.47%2C0%2C0%2C0%2C.49-.42%2C2.26%2C2.26%2C0%2C0%2C0%2C.28-.56%2C1.69%2C1.69%2C0%2C0%2C1%2C.11-.27.4.4%2C0%2C0%2C1%2C.17-.19l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C5.12%2C5.12%2C0%2C0%2C1-.13.78%2C4.92%2C4.92%2C0%2C0%2C1-.41%2C1.16%2C5.85%2C5.85%2C0%2C0%2C1-.78%2C1.25%2C4.6%2C4.6%2C0%2C0%2C1-1.27%2C1.07%2C2.39%2C2.39%2C0%2C0%2C1-1%2C.35%2C1.31%2C1.31%2C0%2C0%2C1-.83-.21%2C1.72%2C1.72%2C0%2C0%2C1-.56-.77A3.61%2C3.61%2C0%2C0%2C1%2C173%2C235c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.26%2C6.26%2C0%2C0%2C1%2C.23-1.56%2C6.8%2C6.8%2C0%2C0%2C1%2C.56-1.41%2C6%2C6%2C0%2C0%2C1%2C.83-1.17%2C4.38%2C4.38%2C0%2C0%2C1%2C1-.83%2C2.15%2C2.15%2C0%2C0%2C1%2C1.27-.39%2C1.18%2C1.18%2C0%2C0%2C1%2C.78.34%2C1.45%2C1.45%2C0%2C0%2C1%2C.41.68%2C3%2C3%2C0%2C0%2C1%2C.13.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.74a.15.15%2C0%2C0%2C1-.17%2C0%2C.58.58%2C0%2C0%2C1-.11-.15.46.46%2C0%2C0%2C0-.28-.24.7.7%2C0%2C0%2C0-.49.15%2C1.48%2C1.48%2C0%2C0%2C0-.62.68A2.49%2C2.49%2C0%2C0%2C0%2C174.7%2C232.85Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M179.17%2C232.47a4%2C4%2C0%2C0%2C1%2C.5-1.92%2C6.47%2C6.47%2C0%2C0%2C1%2C1.6-1.87l1.14-1a.81.81%2C0%2C0%2C0-.13-.52c-.08-.1-.23-.1-.44%2C0a1.12%2C1.12%2C0%2C0%2C0-.34.3%2C2.1%2C2.1%2C0%2C0%2C0-.18.28%2C1.07%2C1.07%2C0%2C0%2C1-.17.24.86.86%2C0%2C0%2C1-.18.14l-1.24.71c-.07%2C0-.12%2C0-.16%2C0a.25.25%2C0%2C0%2C1%2C0-.21%2C2.75%2C2.75%2C0%2C0%2C1%2C.19-.84%2C6.14%2C6.14%2C0%2C0%2C1%2C.48-1%2C6.5%2C6.5%2C0%2C0%2C1%2C.73-.95%2C4.21%2C4.21%2C0%2C0%2C1%2C.92-.74%2C2.47%2C2.47%2C0%2C0%2C1%2C1-.37%2C1%2C1%2C0%2C0%2C1%2C.72.2%2C1.36%2C1.36%2C0%2C0%2C1%2C.43.7%2C4.13%2C4.13%2C0%2C0%2C1%2C.13%2C1.13v4.54a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24V232a4.52%2C4.52%2C0%2C0%2C1-.58%2C1%2C2.81%2C2.81%2C0%2C0%2C1-.91.79%2C1.58%2C1.58%2C0%2C0%2C1-.75.25.73.73%2C0%2C0%2C1-.54-.18%2C1.15%2C1.15%2C0%2C0%2C1-.34-.55A2.88%2C2.88%2C0%2C0%2C1%2C179.17%2C232.47Zm2.23-.94a1.54%2C1.54%2C0%2C0%2C0%2C.4-.34%2C2.76%2C2.76%2C0%2C0%2C0%2C.32-.49%2C3%2C3%2C0%2C0%2C0%2C.21-.59%2C2.47%2C2.47%2C0%2C0%2C0%2C.08-.6l-.9.72a2.43%2C2.43%2C0%2C0%2C0-.42.5%2C1.09%2C1.09%2C0%2C0%2C0-.16.56q0%2C.28.12.33A.44.44%2C0%2C0%2C0%2C181.4%2C231.53Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M188.06%2C226.51a.8.8%2C0%2C0%2C0%2C.1.48c.06.09.17.09.32%2C0l.78-.45a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v1.51a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-.93.53a1.78%2C1.78%2C0%2C0%2C1-.83.28.9.9%2C0%2C0%2C1-.64-.21%2C1.62%2C1.62%2C0%2C0%2C1-.41-.7%2C3.8%2C3.8%2C0%2C0%2C1-.14-1.15V225.1l-.73.41a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.8.8%2C0%2C0%2C1%2C.08-.33.44.44%2C0%2C0%2C1%2C.18-.23l.73-.42v-2.44a.78.78%2C0%2C0%2C1%2C.07-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.35.35%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v1.51a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M192.36%2C224a1.25%2C1.25%2C0%2C0%2C0%2C.08.53.5.5%2C0%2C0%2C0%2C.21.24.44.44%2C0%2C0%2C0%2C.28%2C0%2C1.34%2C1.34%2C0%2C0%2C0%2C.3-.12%2C1.82%2C1.82%2C0%2C0%2C0%2C.47-.36%2C1.92%2C1.92%2C0%2C0%2C0%2C.28-.42%2C2.24%2C2.24%2C0%2C0%2C1%2C.16-.26.57.57%2C0%2C0%2C1%2C.16-.14l1.27-.73c.15-.08.22%2C0%2C.22.21a2.39%2C2.39%2C0%2C0%2C1-.15.63%2C6.46%2C6.46%2C0%2C0%2C1-.45%2C1%2C6.94%2C6.94%2C0%2C0%2C1-.8%2C1.13%2C4.5%2C4.5%2C0%2C0%2C1-1.16.95%2C2.23%2C2.23%2C0%2C0%2C1-1.12.37%2C1.09%2C1.09%2C0%2C0%2C1-.83-.32%2C2.21%2C2.21%2C0%2C0%2C1-.51-1%2C6.65%2C6.65%2C0%2C0%2C1-.17-1.6%2C8.85%2C8.85%2C0%2C0%2C1%2C.17-1.71%2C7.6%2C7.6%2C0%2C0%2C1%2C.51-1.57%2C5.63%2C5.63%2C0%2C0%2C1%2C.83-1.33%2C4.43%2C4.43%2C0%2C0%2C1%2C1.12-1%2C2%2C2%2C0%2C0%2C1%2C1.22-.33%2C1.23%2C1.23%2C0%2C0%2C1%2C.81.48%2C2.42%2C2.42%2C0%2C0%2C1%2C.46%2C1%2C6%2C6%2C0%2C0%2C1%2C.14%2C1.36v.42a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23Zm.87-3.38a1.46%2C1.46%2C0%2C0%2C0-.62.73%2C3.07%2C3.07%2C0%2C0%2C0-.25%2C1l1.75-1a1.27%2C1.27%2C0%2C0%2C0-.25-.7C193.71%2C220.5%2C193.51%2C220.49%2C193.23%2C220.65Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M202.18%2C223.9a2.63%2C2.63%2C0%2C0%2C1-.1.3.46.46%2C0%2C0%2C1-.19.22l-1.27.74a.13.13%2C0%2C0%2C1-.17%2C0%2C.32.32%2C0%2C0%2C1-.07-.22s0-.07%2C0-.11l.74-3.11-2-5.9a.28.28%2C0%2C0%2C1%2C0-.1.59.59%2C0%2C0%2C1%2C.07-.29.42.42%2C0%2C0%2C1%2C.16-.2l1.28-.74c.08%2C0%2C.14%2C0%2C.18%2C0a.5.5%2C0%2C0%2C1%2C.1.19L202%2C218l1.07-4.52a1.25%2C1.25%2C0%2C0%2C1%2C.1-.29.54.54%2C0%2C0%2C1%2C.18-.23l1.29-.74a.13.13%2C0%2C0%2C1%2C.17%2C0%2C.29.29%2C0%2C0%2C1%2C.07.21.36.36%2C0%2C0%2C1%2C0%2C.11Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M211%2C211.86c0%2C.15%2C0%2C.34%2C0%2C.57s0%2C.43%2C0%2C.58a6.37%2C6.37%2C0%2C0%2C1-.21%2C1.48%2C7.08%2C7.08%2C0%2C0%2C1-.54%2C1.41%2C5.67%2C5.67%2C0%2C0%2C1-.82%2C1.22%2C4.35%2C4.35%2C0%2C0%2C1-1.08.89%2C2.17%2C2.17%2C0%2C0%2C1-1.07.35%2C1.16%2C1.16%2C0%2C0%2C1-.82-.27%2C1.74%2C1.74%2C0%2C0%2C1-.54-.79%2C3.67%2C3.67%2C0%2C0%2C1-.21-1.23c0-.14%2C0-.33%2C0-.57s0-.43%2C0-.58a5.84%2C5.84%2C0%2C0%2C1%2C.2-1.47%2C6.85%2C6.85%2C0%2C0%2C1%2C.54-1.41%2C6.17%2C6.17%2C0%2C0%2C1%2C.83-1.23%2C4.31%2C4.31%2C0%2C0%2C1%2C1.07-.9%2C2.34%2C2.34%2C0%2C0%2C1%2C1.08-.35%2C1.32%2C1.32%2C0%2C0%2C1%2C.83.28%2C1.65%2C1.65%2C0%2C0%2C1%2C.53.79A3.76%2C3.76%2C0%2C0%2C1%2C211%2C211.86ZM207.43%2C215a.94.94%2C0%2C0%2C0%2C.27.73c.15.13.36.11.62%2C0A1.55%2C1.55%2C0%2C0%2C0%2C209%2C215a2.55%2C2.55%2C0%2C0%2C0%2C.27-1.05c0-.15%2C0-.33%2C0-.52s0-.36%2C0-.5a1%2C1%2C0%2C0%2C0-.27-.74.55.55%2C0%2C0%2C0-.63%2C0%2C1.61%2C1.61%2C0%2C0%2C0-.62.69%2C2.55%2C2.55%2C0%2C0%2C0-.27%2C1.05c0%2C.16%2C0%2C.33%2C0%2C.52S207.42%2C214.84%2C207.43%2C215Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M212.33%2C208.15a.67.67%2C0%2C0%2C1%2C.08-.33.46.46%2C0%2C0%2C1%2C.18-.22l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v3.8a1.66%2C1.66%2C0%2C0%2C0%2C.19.92c.12.19.33.2.61%2C0a1.36%2C1.36%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14v-3.8a.8.8%2C0%2C0%2C1%2C.08-.33.46.46%2C0%2C0%2C1%2C.18-.22l1.23-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v7a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.13.65a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-.35a4%2C4%2C0%2C0%2C1-.19.43%2C3.68%2C3.68%2C0%2C0%2C1-.28.45%2C3.78%2C3.78%2C0%2C0%2C1-.38.43%2C2.8%2C2.8%2C0%2C0%2C1-.53.39c-.63.36-1.13.37-1.5%2C0a3.13%2C3.13%2C0%2C0%2C1-.56-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M222.58%2C201.83a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v1.52a.67.67%2C0%2C0%2C1-.08.33.54.54%2C0%2C0%2C1-.18.23l-.89.51a2%2C2%2C0%2C0%2C0-.89%2C1.89v3.69a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.14-.65a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v.35a4.78%2C4.78%2C0%2C0%2C1%2C.54-.86%2C2.71%2C2.71%2C0%2C0%2C1%2C.75-.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M226%2C205.42a4%2C4%2C0%2C0%2C1%2C.49-1.92%2C6.63%2C6.63%2C0%2C0%2C1%2C1.6-1.87l1.14-1a.81.81%2C0%2C0%2C0-.13-.52c-.08-.1-.23-.1-.43%2C0a1.17%2C1.17%2C0%2C0%2C0-.35.3%2C2.1%2C2.1%2C0%2C0%2C0-.18.28.83.83%2C0%2C0%2C1-.17.24.86.86%2C0%2C0%2C1-.18.14l-1.24.71a.14.14%2C0%2C0%2C1-.16%2C0%2C.25.25%2C0%2C0%2C1%2C0-.21%2C3.09%2C3.09%2C0%2C0%2C1%2C.19-.84%2C5.13%2C5.13%2C0%2C0%2C1%2C.49-1%2C5.35%2C5.35%2C0%2C0%2C1%2C.73-1%2C3.79%2C3.79%2C0%2C0%2C1%2C.92-.74%2C2.44%2C2.44%2C0%2C0%2C1%2C1-.37%2C1%2C1%2C0%2C0%2C1%2C.72.2%2C1.29%2C1.29%2C0%2C0%2C1%2C.43.7%2C4.1%2C4.1%2C0%2C0%2C1%2C.14%2C1.13v4.54a.8.8%2C0%2C0%2C1-.08.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24V205a4.18%2C4.18%2C0%2C0%2C1-.58%2C1%2C2.94%2C2.94%2C0%2C0%2C1-.91.79%2C1.58%2C1.58%2C0%2C0%2C1-.74.25.75.75%2C0%2C0%2C1-.55-.18%2C1.15%2C1.15%2C0%2C0%2C1-.34-.55A3.25%2C3.25%2C0%2C0%2C1%2C226%2C205.42Zm2.22-.94a1.54%2C1.54%2C0%2C0%2C0%2C.4-.34%2C2.76%2C2.76%2C0%2C0%2C0%2C.32-.49%2C3%2C3%2C0%2C0%2C0%2C.21-.59%2C2.06%2C2.06%2C0%2C0%2C0%2C.08-.6l-.9.72a2.43%2C2.43%2C0%2C0%2C0-.42.5%2C1.09%2C1.09%2C0%2C0%2C0-.16.56q0%2C.28.12.33A.44.44%2C0%2C0%2C0%2C228.25%2C204.48Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M234.13%2C198.53c0%2C.16%2C0%2C.34%2C0%2C.54s0%2C.37%2C0%2C.51a1%2C1%2C0%2C0%2C0%2C.27.72c.15.13.36.12.62%2C0a1.47%2C1.47%2C0%2C0%2C0%2C.49-.42%2C2.26%2C2.26%2C0%2C0%2C0%2C.28-.56%2C2.33%2C2.33%2C0%2C0%2C1%2C.11-.28.42.42%2C0%2C0%2C1%2C.17-.18l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C6.05%2C6.05%2C0%2C0%2C1-.53%2C1.94%2C6.64%2C6.64%2C0%2C0%2C1-.79%2C1.25A4.78%2C4.78%2C0%2C0%2C1%2C235%2C202.6a2.48%2C2.48%2C0%2C0%2C1-1%2C.35%2C1.26%2C1.26%2C0%2C0%2C1-.83-.22%2C1.63%2C1.63%2C0%2C0%2C1-.56-.76%2C3.65%2C3.65%2C0%2C0%2C1-.23-1.3c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.19%2C6.19%2C0%2C0%2C1%2C.23-1.56%2C7.12%2C7.12%2C0%2C0%2C1%2C.56-1.42%2C6.22%2C6.22%2C0%2C0%2C1%2C.83-1.16%2C4.33%2C4.33%2C0%2C0%2C1%2C1-.83%2C2.24%2C2.24%2C0%2C0%2C1%2C1.27-.4%2C1.34%2C1.34%2C0%2C0%2C1%2C.79.34%2C1.55%2C1.55%2C0%2C0%2C1%2C.4.69%2C2.93%2C2.93%2C0%2C0%2C1%2C.13.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.73c-.07%2C0-.13%2C0-.17%2C0a.4.4%2C0%2C0%2C1-.11-.14.46.46%2C0%2C0%2C0-.28-.24.73.73%2C0%2C0%2C0-.49.14%2C1.55%2C1.55%2C0%2C0%2C0-.62.69A2.49%2C2.49%2C0%2C0%2C0%2C234.13%2C198.53Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M240.47%2C194.87c0%2C.15%2C0%2C.33%2C0%2C.53s0%2C.37%2C0%2C.52a1%2C1%2C0%2C0%2C0%2C.27.72c.15.12.36.11.62%2C0a1.37%2C1.37%2C0%2C0%2C0%2C.49-.42%2C2%2C2%2C0%2C0%2C0%2C.28-.56%2C1.69%2C1.69%2C0%2C0%2C1%2C.11-.27.46.46%2C0%2C0%2C1%2C.17-.19l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C4.81%2C4.81%2C0%2C0%2C1-.12.78%2C6%2C6%2C0%2C0%2C1-.41%2C1.16%2C6.34%2C6.34%2C0%2C0%2C1-.79%2C1.25%2C4.46%2C4.46%2C0%2C0%2C1-1.27%2C1.07%2C2.35%2C2.35%2C0%2C0%2C1-1%2C.35%2C1.31%2C1.31%2C0%2C0%2C1-.83-.21%2C1.74%2C1.74%2C0%2C0%2C1-.56-.76%2C3.71%2C3.71%2C0%2C0%2C1-.23-1.31c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.26%2C6.26%2C0%2C0%2C1%2C.23-1.56%2C6.8%2C6.8%2C0%2C0%2C1%2C.56-1.41%2C6%2C6%2C0%2C0%2C1%2C.83-1.17%2C4.59%2C4.59%2C0%2C0%2C1%2C1-.83%2C2.16%2C2.16%2C0%2C0%2C1%2C1.27-.39%2C1.22%2C1.22%2C0%2C0%2C1%2C.79.34%2C1.64%2C1.64%2C0%2C0%2C1%2C.41.68%2C2.9%2C2.9%2C0%2C0%2C1%2C.12.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.74a.15.15%2C0%2C0%2C1-.17%2C0%2C.58.58%2C0%2C0%2C1-.11-.15.44.44%2C0%2C0%2C0-.28-.24.75.75%2C0%2C0%2C0-.49.14%2C1.67%2C1.67%2C0%2C0%2C0-.62.69A2.49%2C2.49%2C0%2C0%2C0%2C240.47%2C194.87Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M250.36%2C189.11c0%2C.15%2C0%2C.34%2C0%2C.57s0%2C.43%2C0%2C.59a6.28%2C6.28%2C0%2C0%2C1-.21%2C1.47%2C6.64%2C6.64%2C0%2C0%2C1-.54%2C1.41%2C5.43%2C5.43%2C0%2C0%2C1-.82%2C1.22%2C4.14%2C4.14%2C0%2C0%2C1-1.08.89%2C2.17%2C2.17%2C0%2C0%2C1-1.07.35%2C1.23%2C1.23%2C0%2C0%2C1-.83-.26%2C1.9%2C1.9%2C0%2C0%2C1-.53-.8%2C3.91%2C3.91%2C0%2C0%2C1-.22-1.22c0-.15%2C0-.34%2C0-.57s0-.43%2C0-.59a6.36%2C6.36%2C0%2C0%2C1%2C.21-1.47%2C7.08%2C7.08%2C0%2C0%2C1%2C.54-1.41%2C5.77%2C5.77%2C0%2C0%2C1%2C.83-1.23%2C4.31%2C4.31%2C0%2C0%2C1%2C1.07-.9%2C2.2%2C2.2%2C0%2C0%2C1%2C1.08-.34%2C1.31%2C1.31%2C0%2C0%2C1%2C.83.27%2C1.7%2C1.7%2C0%2C0%2C1%2C.53.79A3.76%2C3.76%2C0%2C0%2C1%2C250.36%2C189.11Zm-3.54%2C3.13a1%2C1%2C0%2C0%2C0%2C.27.74c.15.12.36.11.62%2C0a1.63%2C1.63%2C0%2C0%2C0%2C.63-.69%2C2.5%2C2.5%2C0%2C0%2C0%2C.27-1c0-.16%2C0-.34%2C0-.53s0-.35%2C0-.5a1%2C1%2C0%2C0%2C0-.27-.73c-.16-.13-.37-.11-.63%2C0a1.58%2C1.58%2C0%2C0%2C0-.62.68%2C2.55%2C2.55%2C0%2C0%2C0-.27%2C1.05%2C4.27%2C4.27%2C0%2C0%2C0%2C0%2C.52A3.78%2C3.78%2C0%2C0%2C0%2C246.82%2C192.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M251.72%2C185.41a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.8a1.7%2C1.7%2C0%2C0%2C0%2C.19.93c.12.19.32.2.61%2C0a1.33%2C1.33%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14v-3.79a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v7a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-1.13.65a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.07-.24v-.34l-.19.43a3.59%2C3.59%2C0%2C0%2C1-.28.44%2C3.1%2C3.1%2C0%2C0%2C1-.39.43%2C2.71%2C2.71%2C0%2C0%2C1-.52.39c-.63.36-1.13.38-1.5%2C0a3.13%2C3.13%2C0%2C0%2C1-.56-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M263.62%2C185.52a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-3.79a1.63%2C1.63%2C0%2C0%2C0-.2-.92c-.14-.18-.36-.18-.65%2C0a1.55%2C1.55%2C0%2C0%2C0-.64.76%2C3.19%2C3.19%2C0%2C0%2C0-.2%2C1.15v3.8a.78.78%2C0%2C0%2C1-.07.33.53.53%2C0%2C0%2C1-.19.22l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.18-.68a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v.34c.06-.13.12-.27.2-.43a3.68%2C3.68%2C0%2C0%2C1%2C.28-.45%2C3.16%2C3.16%2C0%2C0%2C1%2C.39-.44%2C2.58%2C2.58%2C0%2C0%2C1%2C.51-.37%2C2.07%2C2.07%2C0%2C0%2C1%2C.86-.3.87.87%2C0%2C0%2C1%2C.66.24%2C1.81%2C1.81%2C0%2C0%2C1%2C.44.82%2C5.67%2C5.67%2C0%2C0%2C1%2C.15%2C1.44Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M267.48%2C180.65a.8.8%2C0%2C0%2C0%2C.1.48c.06.09.17.09.32%2C0l.78-.45a.14.14%2C0%2C0%2C1%2C.18%2C0c.06%2C0%2C.08.12.08.24v1.51a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-.93.53a1.78%2C1.78%2C0%2C0%2C1-.83.28.87.87%2C0%2C0%2C1-.64-.22%2C1.53%2C1.53%2C0%2C0%2C1-.41-.69%2C4.15%2C4.15%2C0%2C0%2C1-.14-1.15v-2.52l-.72.41a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.73.73%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l.72-.42v-2.44a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24V177a.78.78%2C0%2C0%2C1-.07.33.5.5%2C0%2C0%2C1-.19.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Code--inject-87%22%3E%3Cg%20id%3D%22freepik--Numbers--inject-87%22%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M165.5%2C265.65a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.71%2C3.71%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.75%2C3.75%2C0%2C0%2C0-1.68%2C2.92v39.13a3.75%2C3.75%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.92Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M136.39%2C316.14a3.75%2C3.75%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.13c-.79.3-1.39-.14-1.39-1.1V279.74a3.49%2C3.49%2C0%2C0%2C1%2C.49-1.66l-4.73-2.73a3.36%2C3.36%2C0%2C0%2C0-.5%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M165.45%2C265.17c-.2-.72-.85-.94-1.63-.5l-21%2C12.16a3.34%2C3.34%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.45%2C3.45%2C0%2C0%2C1%2C1.19-1.26l21-12.15a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.79A3.77%2C3.77%2C0%2C0%2C1%2C165.45%2C265.17Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M158.21%2C276.18a.38.38%2C0%2C0%2C1%2C.49%2C0%2C.86.86%2C0%2C0%2C1%2C.2.63v2.59a4%2C4%2C0%2C0%2C1-.1.86c-.07.31-.17.73-.31%2C1.25l-5.9%2C24.38a5.37%2C5.37%2C0%2C0%2C1-.27.8%2C1.17%2C1.17%2C0%2C0%2C1-.47.57l-2.12%2C1.22a.35.35%2C0%2C0%2C1-.48%2C0%2C.8.8%2C0%2C0%2C1-.2-.62%2C2.75%2C2.75%2C0%2C0%2C1%2C.07-.52l5.93-24.43-8%2C4.61a.36.36%2C0%2C0%2C1-.48%2C0%2C.83.83%2C0%2C0%2C1-.21-.63v-2.78a1.94%2C1.94%2C0%2C0%2C1%2C.21-.86%2C1.18%2C1.18%2C0%2C0%2C1%2C.48-.59Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M199.66%2C245.92A3.74%2C3.74%2C0%2C0%2C0%2C198%2C243l-1.37-.79a3.71%2C3.71%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.91v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.77%2C3.77%2C0%2C0%2C0%2C3.37%2C0L198%2C288a3.75%2C3.75%2C0%2C0%2C0%2C1.68-2.92Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M170.55%2C296.42a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.13c-.79.3-1.4-.14-1.4-1.1V260a3.4%2C3.4%2C0%2C0%2C1%2C.5-1.66L171%2C255.63a3.45%2C3.45%2C0%2C0%2C0-.49%2C1.65Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M199.6%2C245.45c-.19-.72-.85-.95-1.62-.5l-21%2C12.16a3.26%2C3.26%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.42%2C3.42%2C0%2C0%2C1%2C1.18-1.26l21-12.15a3.75%2C3.75%2C0%2C0%2C1%2C3.36%2C0L198%2C243A3.72%2C3.72%2C0%2C0%2C1%2C199.6%2C245.45Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M181.52%2C263.78a2%2C2%2C0%2C0%2C1%2C.21-.87%2C1.27%2C1.27%2C0%2C0%2C1%2C.48-.59l9.57-5.52a.38.38%2C0%2C0%2C1%2C.49%2C0%2C.86.86%2C0%2C0%2C1%2C.2.63v2.78a2%2C2%2C0%2C0%2C1-.2.86%2C1.33%2C1.33%2C0%2C0%2C1-.49.6l-7.15%2C4.12-.28%2C5.18a7%2C7%2C0%2C0%2C1%2C1.36-1.29q.67-.46%2C1.11-.72a6.64%2C6.64%2C0%2C0%2C1%2C2.65-.94%2C3%2C3%2C0%2C0%2C1%2C2.11.52%2C4.24%2C4.24%2C0%2C0%2C1%2C1.4%2C2%2C10.57%2C10.57%2C0%2C0%2C1%2C.51%2C3.58%2C19.32%2C19.32%2C0%2C0%2C1-.52%2C4.6%2C16.41%2C16.41%2C0%2C0%2C1-1.43%2C3.76%2C12.28%2C12.28%2C0%2C0%2C1-2.13%2C2.91%2C11.93%2C11.93%2C0%2C0%2C1-2.59%2C2%2C7.54%2C7.54%2C0%2C0%2C1-3%2C1.12%2C3.09%2C3.09%2C0%2C0%2C1-2.09-.5%2C3.65%2C3.65%2C0%2C0%2C1-1.24-1.75%2C8.46%2C8.46%2C0%2C0%2C1-.47-2.65%2C1.6%2C1.6%2C0%2C0%2C1%2C.19-.88%2C1.38%2C1.38%2C0%2C0%2C1%2C.49-.58l2.06-1.19a.43.43%2C0%2C0%2C1%2C.46%2C0%2C.77.77%2C0%2C0%2C1%2C.28.53%2C2.49%2C2.49%2C0%2C0%2C0%2C.49%2C1.19%2C1.36%2C1.36%2C0%2C0%2C0%2C.76.46%2C1.88%2C1.88%2C0%2C0%2C0%2C1-.11%2C7%2C7%2C0%2C0%2C0%2C1.12-.53%2C6%2C6%2C0%2C0%2C0%2C2.34-2.57%2C8.29%2C8.29%2C0%2C0%2C0%2C.89-3.84%2C2.86%2C2.86%2C0%2C0%2C0-.89-2.43%2C2.08%2C2.08%2C0%2C0%2C0-2.34.14%2C5.75%2C5.75%2C0%2C0%2C0-1.94%2C1.7c-.18.27-.35.5-.51.71a1.69%2C1.69%2C0%2C0%2C1-.58.51l-2.34%2C1.36a.38.38%2C0%2C0%2C1-.49%2C0%2C.85.85%2C0%2C0%2C1-.2-.62Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M131.29%2C285.37a3.73%2C3.73%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.73%2C3.73%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M102.18%2C335.87a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.79.3-1.39-.15-1.39-1.11V299.46a3.41%2C3.41%2C0%2C0%2C1%2C.49-1.66l-4.74-2.73a3.49%2C3.49%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M131.23%2C284.89c-.19-.71-.84-.94-1.62-.49l-21%2C12.15a3.29%2C3.29%2C0%2C0%2C0-1.19%2C1.26l-4.73-2.74a3.4%2C3.4%2C0%2C0%2C1%2C1.18-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.8A3.67%2C3.67%2C0%2C0%2C1%2C131.23%2C284.89Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M124%2C295.9a.36.36%2C0%2C0%2C1%2C.48%2C0%2C.86.86%2C0%2C0%2C1%2C.21.63v2.59a4.64%2C4.64%2C0%2C0%2C1-.1.86c-.07.31-.17.73-.31%2C1.26l-5.91%2C24.38a4.67%2C4.67%2C0%2C0%2C1-.26.8%2C1.15%2C1.15%2C0%2C0%2C1-.47.56l-2.12%2C1.22a.36.36%2C0%2C0%2C1-.48%2C0%2C.83.83%2C0%2C0%2C1-.21-.63%2C3.07%2C3.07%2C0%2C0%2C1%2C.08-.51l5.93-24.44-8%2C4.62a.35.35%2C0%2C0%2C1-.48%2C0%2C.8.8%2C0%2C0%2C1-.21-.62v-2.79a2%2C2%2C0%2C0%2C1%2C.21-.86%2C1.22%2C1.22%2C0%2C0%2C1%2C.48-.59Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M256.58%2C213.06a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.75%2C3.75%2C0%2C0%2C0-3.36%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.69%2C3.69%2C0%2C0%2C0%2C3.36%2C0l21-12.15a3.73%2C3.73%2C0%2C0%2C0%2C1.69-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M227.48%2C263.56a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.8.3-1.4-.15-1.4-1.11V227.15a3.52%2C3.52%2C0%2C0%2C1%2C.49-1.66L228%2C222.76a3.38%2C3.38%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M256.53%2C212.58c-.2-.71-.85-.94-1.62-.49l-21%2C12.15a3.39%2C3.39%2C0%2C0%2C0-1.18%2C1.25L228%2C222.76a3.42%2C3.42%2C0%2C0%2C1%2C1.19-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.38.8A3.67%2C3.67%2C0%2C0%2C1%2C256.53%2C212.58Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M245.3%2C238a8.57%2C8.57%2C0%2C0%2C0%2C1-2.49%2C10.56%2C10.56%2C0%2C0%2C0%2C.22-1.93%2C3.61%2C3.61%2C0%2C0%2C0-.64-2.35c-.42-.5-1.13-.47-2.11.1a4.83%2C4.83%2C0%2C0%2C0-2.05%2C2.24%2C12%2C12%2C0%2C0%2C0-.93%2C3.24%2C2.42%2C2.42%2C0%2C0%2C1-.31.95%2C1.42%2C1.42%2C0%2C0%2C1-.46.52l-2%2C1.16a.42.42%2C0%2C0%2C1-.49%2C0c-.15-.11-.21-.33-.19-.66a16.56%2C16.56%2C0%2C0%2C1%2C.58-3.67%2C18.21%2C18.21%2C0%2C0%2C1%2C1.36-3.52%2C15.67%2C15.67%2C0%2C0%2C1%2C2-3%2C9.61%2C9.61%2C0%2C0%2C1%2C2.47-2.11%2C4.73%2C4.73%2C0%2C0%2C1%2C2.78-.8%2C3%2C3%2C0%2C0%2C1%2C1.93%2C1%2C5.15%2C5.15%2C0%2C0%2C1%2C1.13%2C2.17%2C10.52%2C10.52%2C0%2C0%2C1%2C.37%2C2.86c0%2C.65%2C0%2C1.29-.07%2C1.91a11%2C11%2C0%2C0%2C1-.36%2C2%2C20.31%2C20.31%2C0%2C0%2C1-.81%2C2.31%2C31.73%2C31.73%2C0%2C0%2C1-1.43%2C2.88L242.55%2C250l7.08-4.08a.36.36%2C0%2C0%2C1%2C.48%2C0%2C.83.83%2C0%2C0%2C1%2C.21.63v2.78a1.91%2C1.91%2C0%2C0%2C1-.21.86%2C1.38%2C1.38%2C0%2C0%2C1-.48.6l-11.89%2C6.86a.38.38%2C0%2C0%2C1-.49%2C0%2C.86.86%2C0%2C0%2C1-.2-.63v-2.39a3.52%2C3.52%2C0%2C0%2C1%2C.26-1.31%2C6.1%2C6.1%2C0%2C0%2C1%2C.43-.93Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M290.74%2C193.34a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.73%2C3.73%2C0%2C0%2C0-1.69%2C2.92v39.14a3.73%2C3.73%2C0%2C0%2C0%2C1.69%2C2.91l1.37.79a3.69%2C3.69%2C0%2C0%2C0%2C3.36%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M261.63%2C243.84a3.73%2C3.73%2C0%2C0%2C0%2C1.69%2C2.91l1.37.79a3.73%2C3.73%2C0%2C0%2C0%2C3.07.14c-.79.3-1.39-.15-1.39-1.11V207.43a3.49%2C3.49%2C0%2C0%2C1%2C.49-1.66L262.13%2C203a3.4%2C3.4%2C0%2C0%2C0-.5%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M290.69%2C192.86c-.2-.71-.85-.94-1.63-.5l-21%2C12.16a3.42%2C3.42%2C0%2C0%2C0-1.19%2C1.25L262.13%2C203a3.34%2C3.34%2C0%2C0%2C1%2C1.19-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.8A3.72%2C3.72%2C0%2C0%2C1%2C290.69%2C192.86Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M284.7%2C213.38c0%2C.49%2C0%2C1%2C0%2C1.63v3.69c0%2C.6%2C0%2C1.15%2C0%2C1.66a32.22%2C32.22%2C0%2C0%2C1-.45%2C4.47%2C17.87%2C17.87%2C0%2C0%2C1-1.17%2C4%2C13.73%2C13.73%2C0%2C0%2C1-2.08%2C3.43%2C11.53%2C11.53%2C0%2C0%2C1-3.15%2C2.62%2C5.93%2C5.93%2C0%2C0%2C1-3.15%2C1%2C2.79%2C2.79%2C0%2C0%2C1-2.08-1%2C6.37%2C6.37%2C0%2C0%2C1-1.17-2.7%2C22.3%2C22.3%2C0%2C0%2C1-.45-4c0-1-.05-2.09-.05-3.36s0-2.4.05-3.42a33.28%2C33.28%2C0%2C0%2C1%2C.45-4.51%2C18.91%2C18.91%2C0%2C0%2C1%2C1.17-4.1%2C14.4%2C14.4%2C0%2C0%2C1%2C2.08-3.49%2C11.25%2C11.25%2C0%2C0%2C1%2C3.15-2.67%2C6.1%2C6.1%2C0%2C0%2C1%2C3.15-1%2C2.74%2C2.74%2C0%2C0%2C1%2C2.08%2C1%2C6.09%2C6.09%2C0%2C0%2C1%2C1.17%2C2.69A22.41%2C22.41%2C0%2C0%2C1%2C284.7%2C213.38Zm-10.26%2C12.7a8%2C8%2C0%2C0%2C0%2C.88%2C3.87c.5.74%2C1.34.77%2C2.53.08a5.72%2C5.72%2C0%2C0%2C0%2C2.54-3%2C15.67%2C15.67%2C0%2C0%2C0%2C.87-4.87c0-1%2C.05-2.12.05-3.33s0-2.29-.05-3.26a7.89%2C7.89%2C0%2C0%2C0-.87-3.86c-.51-.74-1.35-.77-2.54-.09a5.7%2C5.7%2C0%2C0%2C0-2.53%2C3%2C16%2C16%2C0%2C0%2C0-.88%2C4.88c0%2C1-.05%2C2.12-.05%2C3.32S274.41%2C225.11%2C274.44%2C226.08Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M324.9%2C173.62a3.75%2C3.75%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M295.79%2C224.12a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.79.3-1.4-.15-1.4-1.11V187.71a3.4%2C3.4%2C0%2C0%2C1%2C.5-1.66l-4.74-2.73a3.49%2C3.49%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M324.84%2C173.14c-.19-.71-.84-.94-1.62-.5l-21%2C12.16a3.34%2C3.34%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.32%2C3.32%2C0%2C0%2C1%2C1.18-1.25l21-12.16a3.75%2C3.75%2C0%2C0%2C1%2C3.36%2C0l1.38.8A3.67%2C3.67%2C0%2C0%2C1%2C324.84%2C173.14Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M206.5%2C256.14l10-5.79a2.35%2C2.35%2C0%2C0%2C1%2C2.16%2C0l1.9%2C1.1a2.37%2C2.37%2C0%2C0%2C1%2C1.08%2C1.87v2.19a2.4%2C2.4%2C0%2C0%2C1-1.08%2C1.88l-10%2C5.78a2.37%2C2.37%2C0%2C0%2C1-2.17%2C0l-1.89-1.09a2.41%2C2.41%2C0%2C0%2C1-1.09-1.88V258A2.38%2C2.38%2C0%2C0%2C1%2C206.5%2C256.14Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M210.23%2C263.3a2.31%2C2.31%2C0%2C0%2C1-1.83-.13l-1.9-1.09a2.4%2C2.4%2C0%2C0%2C1-1.08-1.88V258a2.27%2C2.27%2C0%2C0%2C1%2C.31-1.07l4.06%2C2.35a2.26%2C2.26%2C0%2C0%2C0-.31%2C1.06v2.2C209.48%2C263.11%2C209.79%2C263.39%2C210.23%2C263.3Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M209.48%2C262.55v-2.19a2.4%2C2.4%2C0%2C0%2C1%2C1.08-1.88l10-5.79c.6-.34%2C1.08-.06%2C1.08.63v2.19a2.4%2C2.4%2C0%2C0%2C1-1.08%2C1.88l-10%2C5.78C210%2C263.52%2C209.48%2C263.24%2C209.48%2C262.55Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Character--inject-87%22%3E%3Cg%20id%3D%22freepik--character--inject-87%22%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M435.9%2C298.69a12.82%2C12.82%2C0%2C0%2C0-5.32-6.82L400%2C274.21a31.09%2C31.09%2C0%2C0%2C0-5.7-.37c-6.73.21-13.15%2C2.82-19.18%2C5.81-13.69%2C6.81-27.68%2C11.65-40.29%2C20.42-1.6%2C1.12-6%2C3.79-3.48%2C6.53a8.12%2C8.12%2C0%2C0%2C0%2C5.43%2C2.06c4-.31%2C11.9-6.68%2C10.65-4.8a6.84%2C6.84%2C0%2C0%2C0-1.07%2C3.62%2C2.63%2C2.63%2C0%2C0%2C0%2C1.51%2C2.39c1.1.37%2C1.58-1.88%2C2.06-3.15a11.8%2C11.8%2C0%2C0%2C1%2C4.57-5.69%2C15.74%2C15.74%2C0%2C0%2C1%2C10.94-1.91%2C47.11%2C47.11%2C0%2C0%2C1%2C10.78%2C3.48c5.74%2C2.38%2C9.6%2C3.7%2C15.05%2C6.67%2C2.52%2C1.37%2C9.59%2C5.78%2C10%2C6.26.61.73.48%2C5.89.55%2C6.83l.36%2C5.27%2C28.42-16.41a12.62%2C12.62%2C0%2C0%2C0%2C4.85-5.62c0-.23.08-.47.11-.7A31.5%2C31.5%2C0%2C0%2C0%2C435.9%2C298.69Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M414.33%2C332.12c-.8.67-1.72%2C1.46-1.73%2C2.41a9.62%2C9.62%2C0%2C0%2C0%2C2%2C5.65c1.75%2C2.37%2C2.6%2C6.6%2C2.66%2C9.42s-.46%2C9.93%2C2.76%2C13.1%2C11.6%2C5.51%2C12.17.35-7.45-26.16-7.45-26.16Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M418.7%2C336a77.21%2C77.21%2C0%2C0%2C1%2C2.23%2C11.48c.42%2C4.24%2C1.32%2C7.3%2C3.31%2C8.65s5.17%2C1.49%2C4.3-1.46-3.83-17.74-3.83-17.74Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.14%2C262.38s15.95%2C9.54%2C23.64%2C14.82%2C15%2C10.43%2C16.22%2C14.14c1.3%2C3.93-.11%2C12.78-1.95%2C21.24s-5.39%2C23.64-5.39%2C23.64l-20-38.48-22.29-18.52Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M409%2C294.89l-19.94-13.61%2C10.09-18.9s14.78%2C8.5%2C25.69%2C15.8c8.84%2C5.91%2C15.16%2C10.51%2C15.21%2C14.37s-1.42%2C17.12-3.63%2C22.62c0%2C0-8.72%2C2.86-16.36-.53Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M409%2C294.89l-19.94-13.61%2C10.09-18.9s14.78%2C8.5%2C25.69%2C15.8c8.84%2C5.91%2C15.16%2C10.51%2C15.21%2C14.37s-1.42%2C17.12-3.63%2C22.62c0%2C0-8.72%2C2.86-16.36-.53Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.6000000000000001%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M426.47%2C302.8c-1.76-5.75-6.94-9.27-11.44-12.78-3.57-2.8-12.17-9.08-15.68-11.67a9.31%2C9.31%2C0%2C0%2C0%2C.61-5.58c-1.88%2C4.93-3.16%2C6.08-3.16%2C6.08l22.39%2C20.89%2C13.54%2C32.05S428.23%2C308.54%2C426.47%2C302.8Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M430.75%2C363.28c-.74.38-.83%2C2.11-.9%2C3.37s-1.16%2C2.8.45%2C4.94%2C4.66%2C2.64%2C6.85%2C5.55%2C5.47%2C8.21%2C12.26%2C9.31%2C11.81-1.37%2C13-3.43-.06-3.91-4.48-6.15c-4.69-2.39-6-3.1-6-3.1Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M437.31%2C349.11s3.69%2C8.83%2C5.86%2C12.86a47.51%2C47.51%2C0%2C0%2C0%2C9.12%2C11.26c.79.76%2C2.56%2C2.14%2C3.21%2C2.75a1.29%2C1.29%2C0%2C0%2C1%2C.05%2C2c-1.32%2C1.53-7.47%2C2.45-11.18.18s-7.57-6.88-9.84-8.77l-3-2.53a2.81%2C2.81%2C0%2C0%2C1-.95-2.6c0-.27.1-.6.15-1%2C.29-2-3.12-10-3.12-10Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M361.41%2C267c-.92%2C5.48-2.66%2C11.07.62%2C17.79%2C3.17%2C6.5%2C12.24%2C11.81%2C22.17%2C16.41%2C8.22%2C3.81%2C20.32%2C9.28%2C22.75%2C10.09s2.8%2C2.2%2C2.89%2C6.67%2C2.32%2C11.6%2C8.12%2C20.23a214.64%2C214.64%2C0%2C0%2C1%2C11.52%2C19.84s7%2C.77%2C10.14-3.58c0%2C0-14.36-47.87-16.89-53.49s-26.14-22.32-26.14-22.32a31.13%2C31.13%2C0%2C0%2C0%2C2.55-16.28Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.87%2C309.15s-18-7.58-28.74-14.28c-14.79-9.18-12-18-10.5-27.49l38.51-5c2.27%2C10.32-2.14%2C16.37-2.14%2C16.37l13.75%2C10.38c7.16%2C5.51%2C12%2C8.6%2C13.45%2C13.15s6.11%2C21.7%2C6.11%2C21.7a27.68%2C27.68%2C0%2C0%2C1-17%2C6.09s-3.35-5.43-3.89-9.38.33-7.07-1.29-7.93S404.37%2C311.11%2C399.87%2C309.15Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.87%2C309.15s-18-7.58-28.74-14.28c-14.79-9.18-12-18-10.5-27.49l38.51-5c2.27%2C10.32-2.14%2C16.37-2.14%2C16.37l13.75%2C10.38c7.16%2C5.51%2C12%2C8.6%2C13.45%2C13.15s6.11%2C21.7%2C6.11%2C21.7a27.68%2C27.68%2C0%2C0%2C1-17%2C6.09s-3.35-5.43-3.89-9.38.33-7.07-1.29-7.93S404.37%2C311.11%2C399.87%2C309.15Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.6000000000000001%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M385.49%2C212.51a43.09%2C43.09%2C0%2C0%2C1%2C8.49%2C0%2C15.37%2C15.37%2C0%2C0%2C1%2C5.81%2C2.36C404.5%2C218%2C415.5%2C227%2C422.34%2C232.15c0%2C0%2C5.76-2.89%2C9.66-5.27%2C3.49-2.13%2C5.33%2C12-1%2C15.94-6.92%2C4.31-7.83%2C4.3-12.83%2C1.75-5.26-2.68-15.76-9.38-20.09-12.1Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M422.34%2C232.15c-2.33%2C1.41-3.69%2C5.58-3.69%2C5.58s-.41-4.42%2C2.82-6.24Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M444.84%2C216.55h0l-1-.7h0a1.07%2C1.07%2C0%2C0%2C0-1%2C0l-9.92%2C4a3.78%2C3.78%2C0%2C0%2C0-2.05%2C2.42L426%2C244.39a1%2C1%2C0%2C0%2C0%2C.26%2C1.07h0l1.07.73h0a1.08%2C1.08%2C0%2C0%2C0%2C1%2C0l9.92-4a3.81%2C3.81%2C0%2C0%2C0%2C2.05-2.42c1-4.35%2C3.94-17.78%2C4.91-22.13A1%2C1%2C0%2C0%2C0%2C444.84%2C216.55Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M432.91%2C221.27a3.68%2C3.68%2C0%2C0%2C0-1%2C1.7L427%2C245.09a1%2C1%2C0%2C0%2C0%2C.22%2C1.06l-1-.68h0a1%2C1%2C0%2C0%2C1-.26-1.07l4.9-22.13a3.72%2C3.72%2C0%2C0%2C1%2C.92-1.61Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M427%2C245.1%2C431.9%2C223a3.82%2C3.82%2C0%2C0%2C1%2C2.06-2.42l9.92-4c.92-.37%2C1.49.12%2C1.28%2C1.09-1%2C4.35-3.94%2C17.78-4.91%2C22.13a3.81%2C3.81%2C0%2C0%2C1-2.05%2C2.42l-9.92%2C4C427.36%2C246.55%2C426.79%2C246.06%2C427%2C245.1Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M444.05%2C222.64c2-.71%2C3.35%2C1.36%2C3.44%2C5.15s-1.68%2C10.93-7.62%2C9.55c-2.31-.53-4.18-4.2-1.92-6a39%2C39%2C0%2C0%2C0%2C5.24-4.8Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M401.77%2C263.88%2C397.13%2C259l-1.95-5.19-1-9.61c5.36-3.47%2C7.32-10%2C5.2-15.07a33.52%2C33.52%2C0%2C0%2C0-6-9.41c-4.2-4.85-6.3-6.47-7.9-7.25-2.2-.18-3.84-.15-3.84-.15s-9.15.73-12.95%2C1.27a64.19%2C64.19%2C0%2C0%2C0-6.62%2C1.28c2.88%2C4.05%2C4.34%2C11.3%2C2.27%2C17.48a10.22%2C10.22%2C0%2C0%2C1-7.27%2C7.1s.59%2C9.22.93%2C13.84c.55%2C7.33.35%2C13.33%2C1.2%2C23.69%2C8.6%2C3.17%2C22.4.9%2C32.07-4.21C400.79%2C267.79%2C401.77%2C263.88%2C401.77%2C263.88Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M386%2C244.37a15.92%2C15.92%2C0%2C0%2C1-18.13-.63%2C10.89%2C10.89%2C0%2C0%2C0%2C8.9%2C5.57C384.46%2C249.59%2C386%2C244.37%2C386%2C244.37Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M386.13%2C169.17a4.87%2C4.87%2C0%2C0%2C1-1.55-.21%2C28.2%2C28.2%2C0%2C0%2C0-6.1-1.29A22%2C22%2C0%2C0%2C0%2C368.16%2C169a19.31%2C19.31%2C0%2C0%2C0-11.46%2C12.8c-1.78%2C6.62.52%2C12.8%2C4.32%2C17.71%2C2%2C2.57%2C5.64%2C5.07%2C7.09%2C6.08l1.37-1.5a15.38%2C15.38%2C0%2C0%2C0%2C7.53%2C1.63c2.52-.07%2C5%2C.26%2C7.41-.78a10.05%2C10.05%2C0%2C0%2C0%2C5.67-6.32%2C12.51%2C12.51%2C0%2C0%2C1%2C.88-2.76%2C9.73%2C9.73%2C0%2C0%2C1%2C2.24-2.29%2C16.76%2C16.76%2C0%2C0%2C0%2C5.52-10.23%2C6.24%2C6.24%2C0%2C0%2C0-.3-3.51%2C2.91%2C2.91%2C0%2C0%2C0-2.81-1.81%2C12.61%2C12.61%2C0%2C0%2C0%2C1.56-4.11%2C4.33%2C4.33%2C0%2C0%2C0-1.38-4%2C6.05%2C6.05%2C0%2C0%2C0-3.63-.91h-.31c-1.28%2C0-2.57%2C0-3.85%2C0C387.37%2C169.09%2C386.75%2C169.16%2C386.13%2C169.17Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M388.64%2C176.51c2.35%2C1.27%2C5.75%2C5.3%2C5.61%2C17.43-.12%2C10.05-3.33%2C13.26-5%2C14.05s-4.14.67-7.29.27l-.22%2C4.31c7.67%2C5.56%2C9.59%2C12.33%2C2.5%2C11.66-9-.85-16-8.7-16-9.5L368%2C201.25a4.32%2C4.32%2C0%2C0%2C1-5.06-1c-2.3-2.65-3-6.58-1.09-8.7s5.19-1.37%2C6.77.79c0%2C0%2C4.16-.1%2C10.67-4S387.28%2C181.29%2C388.64%2C176.51Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M368.66%2C192.3l-.07%2C4.85h0a3.45%2C3.45%2C0%2C0%2C0%2C3.5-3.4l.08-5.8Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M393%2C187.21l-3-1.14a1.53%2C1.53%2C0%2C0%2C1%2C2-.95A1.67%2C1.67%2C0%2C0%2C1%2C393%2C187.21Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M381.35%2C200.3l4.51.9a2.21%2C2.21%2C0%2C0%2C1-2.62%2C1.84A2.42%2C2.42%2C0%2C0%2C1%2C381.35%2C200.3Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22385.25%20189.42%20385.87%20197.84%20389.97%20196.57%20385.25%20189.42%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M382%2C208.26c-3.32-.3-10.2-2-11.36-4.62a7%2C7%2C0%2C0%2C0%2C2.52%2C3.33c2.1%2C1.66%2C8.72%2C3.67%2C8.72%2C3.67Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M381.81%2C192.38a1.38%2C1.38%2C0%2C1%2C1-1.37-1.37A1.37%2C1.37%2C0%2C0%2C1%2C381.81%2C192.38Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Ccircle%20cx%3D%22390.88%22%20cy%3D%22191.3%22%20r%3D%221.37%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fcircle%3E%3Cpath%20d%3D%22M363.52%2C171.67c-4.75%2C3.3-8%2C7.55-8.95%2C18.69-.72%2C8.51%2C1.21%2C14%2C3.28%2C16.24s10.89%2C7.74%2C14.9%2C4.41a5.86%2C5.86%2C0%2C0%2C1-3.48-3.12%2C18.55%2C18.55%2C0%2C0%2C1-1.21-5.77s-4.08.06-5.72-1.73-3.33-9.42-3-13.18C359.77%2C182.8%2C363.52%2C171.67%2C363.52%2C171.67Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M368.66%2C192.3s-.9-7.6%2C2.46-13%2C9.72-10%2C15-10.14c0%2C0-3.72-2.59-10.16-1.62%2C0%2C0-12.39%2C4.5-9.6%2C23A5.85%2C5.85%2C0%2C0%2C1%2C368.66%2C192.3Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M362.08%2C214.91c-5.49%2C1.41-9.89%2C2.83-11.72%2C8.21-1%2C2.8-2.58%2C32.31-2.77%2C37s-.24%2C29.77-.58%2C30.59c-.7%2C1.7-7.73%2C4.72-10.17%2C6.23a19.74%2C19.74%2C0%2C0%2C0-5.72%2C5.35c-1.09%2C1.68%2C2.7%2C4.38%2C6.15%2C4.15%2C2-.14%2C9.36-5.09%2C12-5.33%2C1.7-.15-1.12%2C2.94-1.22%2C5.37-.08%2C1.76%2C1.52%2C2.3%2C1.93%2C1.31.52-1.24%2C4-5.44%2C5-6.72%2C1.48-1.76%2C3.93-5.42%2C3.93-8.89%2C0-4.48.59-14.91%2C2-29.79%2C1.17-12.48%2C2.14-21.86%2C2.14-21.86A37%2C37%2C0%2C0%2C0%2C366%2C227%2C17.67%2C17.67%2C0%2C0%2C0%2C362.08%2C214.91Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--speech-bubbles--inject-87%22%3E%3Cg%20id%3D%22freepik--speech-bubble--inject-87%22%3E%3Cg%20id%3D%22freepik--speech-bubble--inject-87%22%3E%3Cpath%20d%3D%22M433.88%2C166.3a.52.52%2C0%2C0%2C1-.22-.22L430.89%2C156v-2.64l8.14-3.18v2.63l-1%2C2.85%2C4.84-2.79.29%2C1.63-2.88%2C14.71a.62.62%2C0%2C0%2C1-.88.33Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M433.88%2C166.3a.52.52%2C0%2C0%2C1-.22-.22L430.89%2C156v-2.64l8.14-3.18v2.63l-1%2C2.85%2C4.84-2.79.29%2C1.63-2.88%2C14.71a.62.62%2C0%2C0%2C1-.88.33Z%22%20style%3D%22opacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M442.89%2C152.87l.29%2C1.63-2.88%2C14.71a.6.6%2C0%2C0%2C1-1.09.1l-3.13-10.71.36-2Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M460.76%2C98.78a5.83%2C5.83%2C0%2C0%2C0-2.63-4.56h0a5.83%2C5.83%2C0%2C0%2C0-5.27%2C0l-38.28%2C21.87a5.83%2C5.83%2C0%2C0%2C0-2.63%2C4.56v42.88a5.83%2C5.83%2C0%2C0%2C0%2C2.63%2C4.57h0a5.83%2C5.83%2C0%2C0%2C0%2C5.27%2C0l38.52-22c2.37-1.35%2C2.39-2.71%2C2.39-4.39Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M412%2C163.53a5.83%2C5.83%2C0%2C0%2C0%2C2.63%2C4.57h0a5.9%2C5.9%2C0%2C0%2C0%2C4.82.22c-1.24.47-2.18-.24-2.18-1.75V123.69a5.31%2C5.31%2C0%2C0%2C1%2C.77-2.59l-5.27-3a5.31%2C5.31%2C0%2C0%2C0-.77%2C2.59Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M460.68%2C98c-.31-1.12-1.33-1.47-2.55-.77l-38.28%2C21.87a5.21%2C5.21%2C0%2C0%2C0-1.86%2C2l-5.26-3a5.42%2C5.42%2C0%2C0%2C1%2C1.85-2l38.27-21.87a5.91%2C5.91%2C0%2C0%2C1%2C5.28%2C0h0A5.82%2C5.82%2C0%2C0%2C1%2C460.68%2C98Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.5%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20id%3D%22freepik--Key--inject-87%22%20d%3D%22M427.36%2C129.76a4.51%2C4.51%2C0%2C0%2C1%2C1.7-3.61c.95-.54%2C1.71.19%2C1.71%2C1.64a4.47%2C4.47%2C0%2C0%2C1-1.71%2C3.61C428.12%2C131.94%2C427.36%2C131.21%2C427.36%2C129.76Zm-2.56%2C1.56c0%2C2.84.86%2C4.87%2C2.21%2C5.72l0%2C0%2C.08%2C0%2C.15.09.17.07.17.07.21.06.16%2C0a3%2C3%2C0%2C0%2C0%2C1.12%2C0%2C2.33%2C2.33%2C0%2C0%2C0%2C.36-.08%2C3%2C3%2C0%2C0%2C0%2C.39-.13%2C5.17%2C5.17%2C0%2C0%2C0%2C.72-.34c1.89-1.1%2C3.57-3.47%2C4.63-6.25%2C0-.07.05-.14.07-.21a16.59%2C16.59%2C0%2C0%2C0%2C.6-2l3.18-1.83.63-2.63%2C1.9-1.1%2C1.54%2C1.37%2C1.23-.71%2C1.12-1.91%2C1.95-1.17.74.89%2C2.2-1.28%2C2.24-4.72v-2.47l-16.47%2C9.51a7.32%2C7.32%2C0%2C0%2C0-.58-1.8l-.15-.28c-.11-.19-.22-.36-.34-.53s-.12-.15-.19-.22l-.16-.18-.06%2C0a2.06%2C2.06%2C0%2C0%2C0-.4-.33c-.07-.06-.15-.1-.22-.15l-.1%2C0a3.38%2C3.38%2C0%2C0%2C0-3.36.27c-2.71%2C1.57-5%2C5.76-5.61%2C10A15.6%2C15.6%2C0%2C0%2C0%2C424.8%2C131.32Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--numbers--inject-87%22%3E%3Cpath%20d%3D%22M420.74%2C160a2.9%2C2.9%2C0%2C0%2C1%2C.06-.4l2.37-10.81-2.41%2C1.39c-.12.07-.21%2C0-.26-.05a1.69%2C1.69%2C0%2C0%2C1-.08-.62v-.29a2.62%2C2.62%2C0%2C0%2C1%2C.08-.71.6.6%2C0%2C0%2C1%2C.26-.35l3.88-2.24c.06%2C0%2C.13.11.21.44a3.57%2C3.57%2C0%2C0%2C1%2C.13.92%2C1%2C1%2C0%2C0%2C1%2C0%2C.24L422.44%2C159a.83.83%2C0%2C0%2C1-.21.39%2C2%2C2%2C0%2C0%2C1-.44.33l-.41.24C421%2C160.24%2C420.74%2C160.25%2C420.74%2C160Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M426.46%2C156.72a2.3%2C2.3%2C0%2C0%2C1%2C.07-.4l2.36-10.8-2.41%2C1.39c-.11.07-.2.05-.25-.06a1.44%2C1.44%2C0%2C0%2C1-.08-.61v-.3a2.2%2C2.2%2C0%2C0%2C1%2C.08-.7.62.62%2C0%2C0%2C1%2C.25-.36l3.89-2.24q.09%2C0%2C.21.45a3.93%2C3.93%2C0%2C0%2C1%2C.12.91.9.9%2C0%2C0%2C1%2C0%2C.24l-2.52%2C11.49a.83.83%2C0%2C0%2C1-.21.39%2C1.92%2C1.92%2C0%2C0%2C1-.43.32l-.42.24C426.68%2C156.93%2C426.46%2C156.94%2C426.46%2C156.72Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M432.34%2C153.4c-.38%2C0-.57-.21-.57-.56a2.56%2C2.56%2C0%2C0%2C1%2C.1-.55%2C5.35%2C5.35%2C0%2C0%2C1%2C.25-.74.8.8%2C0%2C0%2C1%2C.26-.42.86.86%2C0%2C0%2C1%2C.24%2C0%2C1.49%2C1.49%2C0%2C0%2C0%2C.48%2C0%2C1.62%2C1.62%2C0%2C0%2C0%2C.61-.22%2C1.71%2C1.71%2C0%2C0%2C0%2C.69-.88%2C3.8%2C3.8%2C0%2C0%2C0%2C.25-1.45%2C2.18%2C2.18%2C0%2C0%2C0-.26-1.29c-.17-.22-.46-.22-.86%2C0l-1.06.61q-.24.14-.33%2C0a.84.84%2C0%2C0%2C1-.09-.49l.22-5.26a1.42%2C1.42%2C0%2C0%2C1%2C.13-.61.79.79%2C0%2C0%2C1%2C.34-.36l3-1.73c.12-.07.21%2C0%2C.26.05a1.69%2C1.69%2C0%2C0%2C1%2C.08.62v.46a1.75%2C1.75%2C0%2C0%2C1-.08.58.57.57%2C0%2C0%2C1-.26.31l-2%2C1.13-.11%2C2.54.17-.09c.81-.47%2C1.43-.53%2C1.86-.19s.64%2C1.22.64%2C2.62A7.5%2C7.5%2C0%2C0%2C1%2C436%2C150a5.89%2C5.89%2C0%2C0%2C1-1%2C1.8%2C4.52%2C4.52%2C0%2C0%2C1-1.25%2C1.1A2.7%2C2.7%2C0%2C0%2C1%2C432.34%2C153.4Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M437.5%2C146.77a1.66%2C1.66%2C0%2C0%2C1-.08-.62V146a2.54%2C2.54%2C0%2C0%2C1%2C.08-.7.53.53%2C0%2C0%2C1%2C.25-.35l1.92-1.11c.11-.07.2-.05.25.06a1.69%2C1.69%2C0%2C0%2C1%2C.08.62v.12a2.54%2C2.54%2C0%2C0%2C1-.08.7.56.56%2C0%2C0%2C1-.25.35l-1.92%2C1.11C437.63%2C146.9%2C437.55%2C146.88%2C437.5%2C146.77Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M441%2C148.09a5.07%2C5.07%2C0%2C0%2C1-.1-.92.69.69%2C0%2C0%2C1%2C0-.28l2.45-6.9a10.11%2C10.11%2C0%2C0%2C0%2C.34-1.14%2C3.84%2C3.84%2C0%2C0%2C0%2C.1-.85c0-.4-.08-.66-.24-.77s-.38-.08-.65.07a2%2C2%2C0%2C0%2C0-.52.45%2C6.48%2C6.48%2C0%2C0%2C0-.49.67%2C1.61%2C1.61%2C0%2C0%2C1-.29.38c-.17.1-.32%2C0-.45-.16a1.19%2C1.19%2C0%2C0%2C1-.2-.66%2C2.5%2C2.5%2C0%2C0%2C1%2C.69-1.56%2C5.64%2C5.64%2C0%2C0%2C1%2C1.52-1.31q1.11-.65%2C1.71-.12a2.55%2C2.55%2C0%2C0%2C1%2C.61%2C1.95%2C8.87%2C8.87%2C0%2C0%2C1-.6%2C3l-1.95%2C5.54%2C2.26-1.31c.13-.07.21%2C0%2C.26.06a1.44%2C1.44%2C0%2C0%2C1%2C.08.61v.3a2.2%2C2.2%2C0%2C0%2C1-.08.7.55.55%2C0%2C0%2C1-.26.36l-4%2C2.32C441.11%2C148.56%2C441%2C148.42%2C441%2C148.09Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M447.28%2C143.54a11.44%2C11.44%2C0%2C0%2C1-.57-4.28%2C17.77%2C17.77%2C0%2C0%2C1%2C.57-4.92%2C4.17%2C4.17%2C0%2C0%2C1%2C1.73-2.6c.77-.45%2C1.35-.24%2C1.73.61a11.36%2C11.36%2C0%2C0%2C1%2C.57%2C4.26%2C17.82%2C17.82%2C0%2C0%2C1-.57%2C4.92%2C4.21%2C4.21%2C0%2C0%2C1-1.73%2C2.61C448.23%2C144.59%2C447.66%2C144.39%2C447.28%2C143.54Zm2.06-1.95a5.89%2C5.89%2C0%2C0%2C0%2C.19-1.34c0-.62.06-1.5.06-2.65s0-2-.06-2.58a3.49%2C3.49%2C0%2C0%2C0-.19-1.12c-.08-.17-.19-.22-.33-.13a.85.85%2C0%2C0%2C0-.34.52%2C7.34%2C7.34%2C0%2C0%2C0-.19%2C1.34c0%2C.62-.06%2C1.51-.06%2C2.65s0%2C2%2C.06%2C2.58a4.18%2C4.18%2C0%2C0%2C0%2C.19%2C1.12c.08.17.2.22.34.14A.9.9%2C0%2C0%2C0%2C449.34%2C141.59Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M453.61%2C141.34a1.83%2C1.83%2C0%2C0%2C1-.91.06c-.25-.06-.37-.26-.37-.6a2.66%2C2.66%2C0%2C0%2C1%2C.09-.54%2C6.41%2C6.41%2C0%2C0%2C1%2C.21-.7.74.74%2C0%2C0%2C1%2C.25-.39.38.38%2C0%2C0%2C1%2C.24%2C0%2C2%2C2%2C0%2C0%2C0%2C.52.1%2C1.23%2C1.23%2C0%2C0%2C0%2C.57-.19%2C1.9%2C1.9%2C0%2C0%2C0%2C.76-.88%2C3.24%2C3.24%2C0%2C0%2C0%2C.28-1.4%2C1.67%2C1.67%2C0%2C0%2C0-.29-1.16c-.2-.18-.51-.14-.95.11l-.39.22c-.12.07-.21.05-.26-.05a1.69%2C1.69%2C0%2C0%2C1-.08-.62V135a2.54%2C2.54%2C0%2C0%2C1%2C.08-.7.59.59%2C0%2C0%2C1%2C.26-.36l.29-.17a2%2C2%2C0%2C0%2C0%2C.79-.85%2C2.49%2C2.49%2C0%2C0%2C0%2C.29-1.21%2C1.46%2C1.46%2C0%2C0%2C0-.21-.91c-.14-.16-.35-.17-.62%2C0a1.58%2C1.58%2C0%2C0%2C0-.48.39%2C3.9%2C3.9%2C0%2C0%2C0-.34.46%2C1%2C1%2C0%2C0%2C1-.22.28c-.11.07-.23%2C0-.36-.26a1.54%2C1.54%2C0%2C0%2C1-.2-.73%2C2%2C2%2C0%2C0%2C1%2C.59-1.27%2C5.5%2C5.5%2C0%2C0%2C1%2C1.41-1.15c.65-.37%2C1.16-.39%2C1.55-.07a2.44%2C2.44%2C0%2C0%2C1%2C.57%2C1.88%2C5.2%2C5.2%2C0%2C0%2C1-.28%2C1.71%2C4.29%2C4.29%2C0%2C0%2C1-.77%2C1.42v.07a1.08%2C1.08%2C0%2C0%2C1%2C1%2C.63%2C3.73%2C3.73%2C0%2C0%2C1%2C.33%2C1.72%2C7.08%2C7.08%2C0%2C0%2C1-.65%2C3.06%2C4.34%2C4.34%2C0%2C0%2C1-1.7%2C2A5.08%2C5.08%2C0%2C0%2C1%2C453.61%2C141.34Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20fill%3D%22%23228BE6%22%20version%3D%221.1%22%20baseProfile%3D%22basic%22%20id%3D%22%26%23x421%3B%26%23x43B%3B%26%23x43E%3B%26%23x439%3B_1%22%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2050%2050%22%20%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20marker-start%3D%22none%22%20marker-end%3D%22none%22%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M25.001%2C48.001c-9.877%2C0-19-14.025-19-26c0-7.007%2C7.025-9%2C19-9c11.975%2C0%2C19%2C1.993%2C19%2C9C44.001%2C33.975%2C34.878%2C48.001%2C25.001%2C48.001z%22%20%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M12.009%2C14.495c0.235-6.781%2C5.185-12.495%2C12.992-12.495c7.805%2C0%2C12.756%2C5.713%2C12.991%2C12.495%22%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M17.205%2C13.394c0.761-3.087%2C3.597-6.393%2C7.796-6.393c4.197%2C0%2C7.033%2C3.307%2C7.795%2C6.393%22%2F%3E%3Cpath%20marker-start%3D%22none%22%20marker-end%3D%22none%22%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M24.995%2C17.011c3.304%2C0%2C5.987%2C2.681%2C5.987%2C5.984c0%2C3.303-2.683%2C5.984-5.987%2C5.984c-3.304%2C0-5.987-2.681-5.987-5.984%20C19.009%2C19.693%2C21.691%2C17.011%2C24.995%2C17.011z%22%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M37.017%2C41.054c-2.4-4.805-6.885-8.041-12.016-8.041c-5.133%2C0-9.617%2C3.235-12.017%2C8.04%22%2F%3E%3C%2Fsvg%3E\"","import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 has-[>svg]:px-3\",\n sm: \"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5\",\n lg: \"h-10 rounded-md px-6 has-[>svg]:px-4\",\n icon: \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant,\n size,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n","\"use client\"\n\nimport * as React from \"react\"\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { XIcon } from \"lucide-react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Dialog({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />\n}\n\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />\n}\n\nfunction DialogPortal({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />\n}\n\nfunction DialogClose({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n >\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n )\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n}","import{jsx as e,jsxs as s}from\"react/jsx-runtime\";var a=\"container_f782f4\",i=\"inner_37f4c9\",c=\"bar_409d0f\";const r=({size:r=35,color:l=\"black\",speed:d=1,stroke:o=3.5})=>e(\"div\",{className:a,style:{\"--uib-size\":r+\"px\",\"--uib-color\":l,\"--uib-speed\":d+\"s\",\"--uib-stroke\":o+\"px\"},children:s(\"div\",{className:i,children:[e(\"div\",{className:c}),e(\"div\",{className:c}),e(\"div\",{className:c}),e(\"div\",{className:c})]})});export{r as default};\n//# sourceMappingURL=Waveform.js.map\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","\"use client\";\n\nimport \"ldrs/waveform\";\nimport { Waveform } from \"ldrs/react\";\nimport \"ldrs/react/Waveform.css\";\n\nconst LoadingSpinner = ({ loadingText }: { loadingText?: string }) => {\n return (\n <div className=\"flex flex-col justify-center items-center\">\n <script\n type=\"module\"\n defer\n src=\"https://cdn.jsdelivr.net/npm/ldrs/dist/auto/waveform.js\"\n />\n\n <Waveform size=\"35\" stroke=\"3.5\" speed=\"1\" color=\"green\" />\n\n {loadingText && (\n <p className=\"text-center font-semibold mt-3\">Loading...</p>\n )}\n </div>\n );\n};\n\nexport default LoadingSpinner;\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { CheckCircle } from \"lucide-react\";\n\ninterface AuthSuccessAnimationProps {\n onComplete?: () => void;\n}\n\nexport const AuthSuccessAnimation = ({ onComplete }: AuthSuccessAnimationProps) => {\n return (\n <motion.div\n initial={{ opacity: 0, scale: 0.8 }}\n animate={{ opacity: 1, scale: 1 }}\n transition={{ duration: 0.5, ease: \"easeOut\" }}\n className=\"flex flex-col items-center justify-center space-y-6 p-8\"\n onAnimationComplete={onComplete}\n >\n <motion.div\n initial={{ scale: 0 }}\n animate={{ scale: 1 }}\n transition={{ delay: 0.2, duration: 0.6, type: \"spring\", stiffness: 200 }}\n >\n <CheckCircle className=\"w-20 h-20 text-green-500\" />\n </motion.div>\n \n <motion.div\n initial={{ y: 20, opacity: 0 }}\n animate={{ y: 0, opacity: 1 }}\n transition={{ delay: 0.4, duration: 0.5 }}\n className=\"text-center space-y-2\"\n >\n <h2 className=\"text-2xl font-bold text-green-600\">Authentication Successful!</h2>\n <p className=\"text-gray-600\">Redirecting you to the application...</p>\n </motion.div>\n \n <motion.div\n initial={{ width: 0 }}\n animate={{ width: \"100%\" }}\n transition={{ delay: 0.8, duration: 2 }}\n className=\"h-1 bg-green-500 rounded-full max-w-xs\"\n />\n </motion.div>\n );\n};","// Function to parse userAgent and generate a device ID\nexport const GenerateDeviceId = (): string => {\n if (typeof window === \"undefined\" || !window.navigator) {\n return \"unknown-device\";\n }\n\n const userAgent = window.navigator.userAgent;\n let deviceId = \"\";\n\n // Parse browser, version, OS, and device type\n const browserMatch = Array.from(userAgent.matchAll(/(Chrome|Firefox|Safari|Edge|Opera)\\/([\\d.]+)/ig));\n const osMatch = Array.from(userAgent.matchAll(/\\(([^)]+)\\)/g));\n const isMobile = /Mobile|Android|iPhone|iPad/i.test(userAgent);\n\n // Browser info\n if (browserMatch.length > 0) {\n const [, browserName, browserVersion] = browserMatch[0];\n const majorVersion = browserVersion.split(\".\")[0];\n deviceId += `${browserName}-${majorVersion}`;\n } else {\n deviceId += \"UnknownBrowser\";\n }\n\n // OS info\n if (osMatch.length > 0) {\n const osInfo = osMatch[0][1]\n .split(\";\")[0]\n .trim()\n .replace(/[\\s/()]/g, \"_\");\n deviceId += `_${osInfo}`;\n } else {\n deviceId += \"_UnknownOS\";\n }\n\n // Device type\n deviceId += isMobile ? \"_Mobile\" : \"_Desktop\";\n\n // Add a simple hash of userAgent for uniqueness\n const hash = btoa(userAgent).slice(0, 8);\n deviceId += `_${hash}`;\n\n return deviceId.replace(/[^a-zA-Z0-9-_]/g, \"_\") ?? \"unknown-device\";\n};","\"use client\";\n\nimport { useState, useCallback, useMemo } from \"react\";\nimport axios from \"axios\";\nimport { GenerateDeviceId } from \"../utils/DeviceID\";\n\nexport const useOTPHandler = ({\n provider,\n accessToken,\n idToken,\n appCode,\n authenticationType,\n MFAEndpoint,\n onAuthComplete,\n}: {\n provider: string;\n accessToken: string;\n idToken: string;\n appCode: string;\n authenticationType: \"AuthenticatorCode\" | \"EmailOTP\" | null;\n MFAEndpoint?: string;\n onAuthComplete: (state: boolean, data: UserValidatedResponse | null) => void;\n}) => {\n const [loading, setLoading] = useState(false);\n const [attemptCount, setAttemptCount] = useState(0);\n const [isMaxAttemptsReached, setIsMaxAttemptsReached] = useState(false);\n const MAX_ATTEMPTS = 3;\n\n const handleSubmitOTP = useMemo(\n () => async (authenticationValue: string) => {\n if (isMaxAttemptsReached) {\n onAuthComplete(false, {\n message: \"Maximum attempts reached\",\n } as UserValidatedResponse);\n return false;\n }\n\n try {\n setLoading(true);\n const currentAttempt = attemptCount + 1;\n setAttemptCount(currentAttempt);\n\n if (authenticationType === null) return false;\n\n const { data: response } = await axios.post(\n MFAEndpoint || \"/api/auth/verify-mfa\",\n {\n provider,\n accessToken,\n idToken,\n authenticationType,\n MFACode: authenticationValue,\n appCode,\n },\n {\n headers: {\n \"X-Device-ID\": GenerateDeviceId(),\n },\n timeout: 605000,\n }\n );\n\n if (response) {\n onAuthComplete(true, response);\n return true;\n } else {\n if (currentAttempt >= MAX_ATTEMPTS) {\n setIsMaxAttemptsReached(true);\n onAuthComplete(false, {\n message: \"Maximum attempts reached\",\n } as UserValidatedResponse);\n } else {\n onAuthComplete(false, response);\n }\n return false;\n }\n } catch (error) {\n console.error(error);\n\n const currentAttempt = attemptCount + 1;\n if (currentAttempt >= MAX_ATTEMPTS) {\n setIsMaxAttemptsReached(true);\n onAuthComplete(false, error as UserValidatedResponse);\n } else {\n onAuthComplete(false, error as UserValidatedResponse);\n }\n\n onAuthComplete(false, error as UserValidatedResponse);\n return false;\n } finally {\n setLoading(false);\n }\n },\n [\n accessToken,\n idToken,\n authenticationType,\n onAuthComplete,\n MFAEndpoint,\n attemptCount,\n isMaxAttemptsReached,\n ]\n );\n\n const resetAttempts = useCallback(() => {\n setAttemptCount(0);\n setIsMaxAttemptsReached(false);\n }, []);\n\n return {\n handleSubmitOTP,\n loading,\n setLoading,\n attemptCount,\n isMaxAttemptsReached,\n resetAttempts,\n remainingAttempts: MAX_ATTEMPTS - attemptCount,\n };\n};\n","\"use client\";\n\nimport { useState } from \"react\";\nimport { GenericOTPVerifier } from \"./GenericOTP\";\nimport { Mail, Shield, ShieldCheck, ShieldClose } from \"lucide-react\";\nimport OTPAuthenticationImg from \"../assets/images/OTPAuthentication.svg\";\nimport MicrosoftAuthenticatorImg from \"../assets/images/microsoftauthenticator.svg\";\nimport {\n Card,\n CardContent,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"../components/ui/card\";\nimport { Button } from \"./ui/button\";\nimport { Dialog, DialogTitle, DialogContent, DialogHeader } from \"./ui/dialog\";\nimport LoadingSpinner from \"./Loading\";\nimport { toast } from \"sonner\";\nimport { AuthSuccessAnimation } from \"./AuthSuccessAnimation\";\nimport { useCAMSContext } from \"../context/CAMSContext\";\nimport { useOTPHandler } from \"../hooks/useOTPHandler\";\n\ninterface MFAOptionsProps {\n onComplete?: (success: boolean) => void;\n MFAEndpoint?: string;\n}\n\nconst MFAOptions = ({ onComplete, MFAEndpoint }: MFAOptionsProps = {}) => {\n const [value, setValue] = useState(\"\");\n const [otpVisible, setOtpVisible] = useState<boolean>(false);\n const [showSuccessAnimation, setShowSuccessAnimation] =\n useState<boolean>(false);\n const [authType, setAuthType] = useState<\n \"AuthenticatorCode\" | \"EmailOTP\" | null\n >(null);\n const [lastOTPCode, setLastOTPCode] = useState<string>(\"\");\n\n const context = useCAMSContext();\n const { sendEmailOTP, completeMFA } =\n context.authMode === \"MSAL\" && \"sendEmailOTP\" in context\n ? context\n : { sendEmailOTP: null, completeMFA: null };\n\n const accessToken = context.authMode === \"MSAL\" ? context.accessToken : \"\";\n const idToken = context.authMode === \"MSAL\" ? context.idToken : \"\";\n\n const {\n handleSubmitOTP,\n loading,\n setLoading,\n attemptCount,\n remainingAttempts,\n isMaxAttemptsReached,\n resetAttempts,\n } = useOTPHandler({\n accessToken: accessToken || \"\",\n idToken: idToken || \"\",\n provider: \"MSAL\",\n appCode: context.appCode || \"\",\n authenticationType: authType,\n MFAEndpoint,\n onAuthComplete: async (state, data) => {\n if (state) {\n // Call completeMFA to update context state\n if (completeMFA && authType && lastOTPCode) {\n try {\n await completeMFA(lastOTPCode, authType);\n } catch (error) {\n console.error(\"Failed to complete MFA:\", error);\n }\n }\n setShowSuccessAnimation(true);\n toast.success(\n <div className=\"flex items-center gap-2 text-sm text-green-600 bg-green-50 p-3 rounded-lg\">\n <ShieldCheck className=\"w-4 h-4\" />\n <span>Multi-Factor Authentication Successful</span>\n </div>\n );\n setTimeout(() => onComplete?.(true), 2000);\n } else {\n toast.error(\n <div className=\"flex items-center gap-2 text-sm text-red-600 bg-red-50 p-3 rounded-lg\">\n <ShieldClose className=\"w-4 h-4\" />\n <span>{data?.message || \"Invalid code. Please try again.\"}</span>\n </div>\n );\n if (isMaxAttemptsReached) {\n setTimeout(() => onComplete?.(false), 1000);\n }\n }\n },\n });\n\n const handleGoBack = () => {\n setAuthType(null);\n setOtpVisible(false);\n setValue(\"\");\n resetAttempts();\n };\n\n // Show success animation if authentication is successful\n if (showSuccessAnimation) {\n return (\n <div className=\"flex justify-center items-center h-dvh\">\n <Card className=\"mx-auto space-y-6 p-6 bg-white rounded-lg shadow-md\">\n <AuthSuccessAnimation\n onComplete={() => {\n // Animation completed, can add additional logic here if needed\n }}\n />\n </Card>\n </div>\n );\n }\n\n let content: React.JSX.Element = <></>;\n\n if (!authType) {\n content = (\n <div className=\"space-y-4\">\n <p className=\"text-sm text-gray-600 text-center mb-6\">\n Choose your preferred authentication method:\n </p>\n <div className=\"flex flex-col gap-3\">\n <Button\n variant=\"outline\"\n className=\"w-full flex items-center justify-start gap-3 p-4 h-auto border-2 hover:border-[#506f4a] hover:bg-[#506f4a]/5 transition-all\"\n onClick={async () => {\n resetAttempts();\n setAuthType(\"EmailOTP\");\n setOtpVisible(true);\n if (sendEmailOTP) {\n setLoading(true);\n const success = await sendEmailOTP();\n setLoading(false);\n if (success) {\n toast.success(\n <div className=\"flex items-center gap-2 text-sm text-green-600 bg-green-50 p-3 rounded-lg\">\n <ShieldCheck className=\"w-4 h-4\" />\n <span>OTP sent to your email address</span>\n </div>\n );\n }\n }\n }}\n // disabled={true}\n >\n <Mail className=\"w-5 h-5\" />\n <div className=\"text-left\">\n <div className=\"font-medium\">Email OTP</div>\n <div className=\"text-sm text-gray-500\">\n Send code to your email\n </div>\n </div>\n </Button>\n\n <Button\n variant=\"outline\"\n className=\"w-full flex items-center justify-start gap-3 p-4 h-auto border-2 hover:border-[#506f4a] hover:bg-[#506f4a]/5 transition-all\"\n onClick={() => {\n resetAttempts();\n setAuthType(\"AuthenticatorCode\");\n setOtpVisible(true);\n }}\n >\n <img\n src={MicrosoftAuthenticatorImg}\n alt=\"Authenticator\"\n className=\"rounded-full\"\n width={24}\n height={24}\n onError={() => <Shield />}\n />\n <div className=\"text-left\">\n <div className=\"font-medium\">Authenticator App</div>\n <div className=\"text-sm text-gray-500\">Use Authenticator App</div>\n </div>\n </Button>\n </div>\n </div>\n );\n } else if (authType === \"EmailOTP\") {\n content = (\n <Dialog\n open={otpVisible}\n onOpenChange={() => {\n setAuthType(null);\n setOtpVisible(false);\n setValue(\"\");\n }}\n >\n <DialogHeader>\n <DialogTitle>Email OTP</DialogTitle>\n </DialogHeader>\n <DialogContent className=\"sm:max-w-[425px]\">\n <div className=\"space-y-4\">\n <GenericOTPVerifier\n value={value}\n setValue={setValue}\n isDisabled={loading || isMaxAttemptsReached}\n onChangeOTP={(code) => {\n setLastOTPCode(code);\n return handleSubmitOTP(code);\n }}\n fieldName=\"EmailOTP\"\n attemptCount={attemptCount}\n remainingAttempts={remainingAttempts}\n isMaxAttemptsReached={isMaxAttemptsReached}\n />\n <Button\n variant=\"ghost\"\n className=\"w-full text-sm\"\n onClick={handleGoBack}\n >\n ← Choose different method\n </Button>\n </div>\n </DialogContent>\n </Dialog>\n );\n } else if (authType === \"AuthenticatorCode\") {\n content = (\n <Dialog open={otpVisible} onOpenChange={handleGoBack}>\n <DialogHeader>\n <DialogTitle>Authenticator App</DialogTitle>\n </DialogHeader>\n <DialogContent className=\"sm:max-w-[425px]\">\n {loading ? (\n <div className=\"p-3 flex justify-center items-center\">\n <LoadingSpinner />\n </div>\n ) : (\n <div className=\"space-y-4\">\n <p className=\"text-sm text-gray-600 text-center\">\n Enter the 6-digit Code from your Authenticator app\n </p>\n <GenericOTPVerifier\n value={value}\n setValue={setValue}\n isDisabled={loading || isMaxAttemptsReached}\n onChangeOTP={(code) => {\n setLastOTPCode(code);\n return handleSubmitOTP(code);\n }}\n fieldName=\"AuthenticatorCode\"\n attemptCount={attemptCount}\n remainingAttempts={remainingAttempts}\n isMaxAttemptsReached={isMaxAttemptsReached}\n />\n </div>\n )}\n </DialogContent>\n </Dialog>\n );\n }\n\n return (\n <div className=\"flex justify-center items-center h-dvh\">\n <Card className=\"mx-auto space-y-6 p-6 bg-white rounded-lg shadow-md\">\n <CardHeader>\n <div className=\"flex justify-center items\">\n <img\n src={OTPAuthenticationImg}\n alt=\"NIBSS Logo\"\n width={365}\n height={365}\n />\n </div>\n\n <CardTitle className=\"text-3xl font-bold mb-6 text-center\">\n Two-Factor Authentication\n </CardTitle>\n <CardTitle className=\"text-gray-300 text-base -tracking-wide text-center\">\n Your Microsoft account has been validated. Please complete\n two-factor authentication to continue.\n </CardTitle>\n </CardHeader>\n\n <CardContent className=\"max-w-[80%]\">{content}</CardContent>\n\n <CardFooter className=\"flex items-center justify-center mt-6 space-x-2 text-gray-400 text-sm\">\n <ShieldCheck className=\"w-4 h-4 text-[#506f4a] pulse-glow\" />\n <span>Powered By NIBSS</span>\n </CardFooter>\n </Card>\n </div>\n );\n};\n\nexport default MFAOptions;\n","\"use client\";\n\nimport { useCAMSContext } from \"./UnifiedCAMSProvider\";\nimport { Button } from \"./ui/button\";\n\nconst LoginButton = () => {\n const context = useCAMSContext();\n const { login, isLoading, error, authMode } = context;\n\n const handleLogin = () => {\n if (authMode === \"MSAL\") {\n (login as () => Promise<void>)();\n } else {\n // For regular mode, you'd need to provide CAMSConfig\n console.warn(\"Regular CAMS login requires configuration\");\n }\n };\n\n return (\n <div className=\"flex items-center justify-center flex-col items-center gap-4 p-6 h-dvh\">\n <Button onClick={handleLogin} disabled={isLoading} className=\"p-3 min-w-[200px]\">\n {isLoading ? 'Logging in...' : 'Login with Microsoft'}\n </Button>\n {error && (\n <p className=\"text-red-600 text-sm text-center\">\n Error: {error.message}\n </p>\n )}\n </div>\n );\n};\n\nexport default LoginButton;","\"use client\";\n\nimport { useCAMSContext } from \"./UnifiedCAMSProvider\";\nimport MFAOptions from \"./MFAOptions\";\nimport LoginButton from \"./LoginButton\";\nimport z from \"zod\";\n\ninterface MFAGateProps {\n children: React.ReactNode;\n fallback?: React.ReactNode;\n loginComponent?: React.ComponentType;\n MFAEndpoint?: string;\n}\n\nconst MFAEndpointUrlSchema = z.url(\"MFAEndpoint must be a valid URL\");\n\nconst MFAGate = ({\n children,\n fallback,\n loginComponent: LoginComponent,\n MFAEndpoint,\n}: MFAGateProps) => {\n const context = useCAMSContext();\n\n const urlValidation = MFAEndpointUrlSchema.safeParse(MFAEndpoint);\n if (!urlValidation.success) {\n throw new Error(\n `Invalid MFAEndpoint: ${urlValidation.error.issues[0].message}`\n );\n }\n\n // Only apply MFA gate for MSAL mode\n if (context.authMode !== \"MSAL\") {\n return <>{children}</>;\n }\n\n const { requiresMFA, isAuthenticated, isLoading } = context;\n\n if (isLoading) {\n return fallback || <div>Loading...</div>;\n }\n\n if (requiresMFA) {\n return (\n <MFAOptions\n MFAEndpoint={MFAEndpoint}\n onComplete={(success) => {\n if (!success) {\n console.error(\"MFA authentication failed\");\n }\n }}\n />\n );\n }\n\n if (!isAuthenticated) {\n return fallback || (LoginComponent ? <LoginComponent /> : <LoginButton />);\n }\n\n return <>{children}</>;\n};\n\nexport default MFAGate;\n"],"names":["require$$0","jsxRuntimeModule","require$$1","CAMSContext","useCAMSContext","_jsx","_Fragment","setCookie","getCookie","deleteCookie","util.jsonStringifyReplacer","core.$ZodAsyncError","util.finalizeIssue","core.config","util.captureStackTrace","errors.$ZodRealError","o","i","a","r","e","n.parse","n.parseAsync","n.$ZodError","_jsxs","zodResolver","s","Waveform","z"],"mappings":"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","x_google_ignoreList":[0,4,5,6,13,14,15,16,17,27,28]}
1
+ {"version":3,"file":"index.esm.js","sources":["../../../node_modules/tslib/tslib.es6.js","../src/hooks/useCAMSAuth.ts","../src/hooks/useCAMSMSALAuth.ts","../src/hooks/useCAMSPopupAuth.ts","../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/components/CAMSProvider.tsx","../src/components/ProtectedRoute.tsx","../src/components/CAMSMSALProvider.tsx","../src/components/ClientOnly.tsx","../src/context/CAMSContext.tsx","../src/components/UnifiedCAMSProvider.tsx","../../../node_modules/zod/v4/core/core.js","../../../node_modules/zod/v4/core/util.js","../../../node_modules/zod/v4/core/errors.js","../../../node_modules/zod/v4/core/parse.js","../../../node_modules/@hookform/resolvers/zod/dist/zod.mjs","../src/lib/utils.ts","../src/components/ui/input-otp.tsx","../src/components/ui/form.tsx","../src/components/ui/card.tsx","../src/components/GenericOTP.tsx","../src/assets/images/OTPAuthentication.svg","../src/assets/images/microsoftauthenticator.svg","../src/components/ui/button.tsx","../src/components/ui/dialog.tsx","../../../node_modules/ldrs/dist/react/Waveform.js","../../../node_modules/style-inject/dist/style-inject.es.js","../src/components/Loading.tsx","../src/components/AuthSuccessAnimation.tsx","../src/utils/DeviceID.ts","../src/hooks/useOTPHandler.tsx","../src/components/MFAOptions.tsx","../src/components/LoginButton.tsx","../src/components/MFAGate.tsx"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","import { useState, useCallback, useRef, useEffect } from \"react\";\nimport {\n CAMSSessionManager,\n CAMSConfig,\n CAMSError,\n Profile,\n isPopupWindow,\n initializePopupAuth,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSAuthOptions {\n appCode: string;\n storageKey?: string;\n onAuthSuccess?: (token: string) => void;\n onAuthError?: (error: CAMSError) => void;\n onTokenExpired?: () => void;\n autoClose?: boolean;\n idleTimeout?: number;\n}\n\nexport interface UseCAMSAuthReturn {\n login: (config: CAMSConfig) => Promise<void>;\n logout: () => Promise<void>;\n isAuthenticated: boolean;\n isLoading: boolean;\n error: CAMSError | null;\n token: string | null;\n profile: Profile | null;\n appCode: string;\n storageKey: string;\n}\n\nexport function useCAMSAuth(\n options: UseCAMSAuthOptions = {\n appCode: \"\",\n storageKey: \"CAMS-AUTH-SDK\",\n }\n): UseCAMSAuthReturn {\n const [isAuthenticated, setIsAuthenticated] = useState(false);\n const [isLoading, setIsLoading] = useState(false);\n const [error, setError] = useState<CAMSError | null>(null);\n const [token, setToken] = useState<string>(\"\");\n const [profile, setProfile] = useState<Profile | null>(null);\n\n const sessionManagerRef = useRef<CAMSSessionManager | null>(null);\n\n useEffect(() => {\n // Only initialize on client side\n if (typeof window === \"undefined\") return;\n\n // Initialize popup auth handler if in popup\n if (isPopupWindow()) {\n initializePopupAuth();\n }\n\n sessionManagerRef.current ??= new CAMSSessionManager(\n localStorage,\n options.storageKey || \"CAMS-SDK\",\n {\n onAuthSuccess: (res: any) => {\n setToken(res.userProfile.tokens.Bearer);\n setIsAuthenticated(true);\n setIsLoading(false);\n options.onAuthSuccess?.(res.userProfile.tokens.Bearer);\n },\n onAuthError: (error: CAMSError) => {\n setError(error);\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n setIsLoading(false);\n options.onAuthError?.(error);\n },\n onTokenExpired: () => {\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n options.onTokenExpired?.();\n },\n }\n );\n\n // Check initial auth state (skip if in popup)\n if (!isPopupWindow()) {\n const initialAuth = sessionManagerRef.current.isAuthenticated();\n setIsAuthenticated(initialAuth);\n if (initialAuth) {\n setToken(sessionManagerRef.current.getAccessToken() ?? \"\");\n sessionManagerRef.current.getProfile().then(setProfile);\n }\n }\n }, [options.storageKey]);\n\n const login = useCallback(\n async (config: CAMSConfig) => {\n if (!sessionManagerRef.current) return;\n\n setIsLoading(true);\n setError(null);\n\n try {\n const loginConfig: CAMSConfig = {\n ...config,\n // autoClose: options.autoClose ?? config.autoClose,\n idleTimeout: options.idleTimeout ?? config.idleTimeout,\n };\n await sessionManagerRef.current.login(loginConfig);\n // State updates are handled by onAuthSuccess callback\n const userProfile = await sessionManagerRef.current.getProfile();\n setProfile(userProfile);\n } catch (err) {\n setError(err as CAMSError);\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n } finally {\n setIsLoading(false);\n }\n },\n [options.idleTimeout]\n );\n\n const logout = useCallback(async () => {\n if (!sessionManagerRef.current) return;\n\n await sessionManagerRef.current.logout();\n setIsAuthenticated(false);\n setToken(\"\");\n setProfile(null);\n setError(null);\n }, []);\n\n return {\n login,\n logout,\n isAuthenticated,\n isLoading,\n error,\n token,\n profile,\n appCode: options.appCode,\n storageKey: options.storageKey || \"CAMS-SDK\",\n };\n}\n","import { useState, useCallback, useEffect } from \"react\";\nimport { useMsal, useAccount } from \"@azure/msal-react\";\nimport { InteractionStatus } from \"@azure/msal-browser\";\nimport {\n CAMSError,\n CAMSErrorType,\n Logger,\n CAMSMFAAuthenticator,\n MFAConfig,\n MFAResponse,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSMSALAuthOptions {\n onAuthSuccess?: (token: string) => void;\n onAuthError?: (error: CAMSError) => void;\n onTokenExpired?: () => void;\n scopes?: string[];\n storageKey?: string;\n prompt?: string;\n messageOrigin?: string;\n appCode: string;\n allowedOrigins?: string[];\n MFAEndpoint?: string;\n}\n\nexport interface UseCAMSMSALAuthReturn {\n login: () => Promise<void>;\n logout: () => Promise<void>;\n storageKey: string;\n isAuthenticated: boolean;\n isLoading: boolean;\n error: CAMSError | null;\n idToken: string;\n accessToken: string;\n appCode: string;\n mfaAuthenticator: CAMSMFAAuthenticator | null;\n requiresMFA: boolean;\n completeMFA: (\n code: string,\n type: \"EmailOTP\" | \"AuthenticatorCode\"\n ) => Promise<MFAResponse>;\n sendEmailOTP: () => Promise<boolean>;\n}\n\nexport function useCAMSMSALAuth(\n options: UseCAMSMSALAuthOptions\n): UseCAMSMSALAuthReturn {\n const storageKey = options.storageKey || \"CAMS-MSAL-AUTH-SDK\";\n const { instance, inProgress, accounts } = useMsal();\n const account = useAccount(accounts[0] || {});\n\n const [error, setError] = useState<CAMSError | null>(null);\n const [idToken, setIdToken] = useState<string>(\"\");\n const [accessToken, setAccessToken] = useState<string>(\"\");\n const [mfaAuthenticator, setMfaAuthenticator] =\n useState<CAMSMFAAuthenticator | null>(null);\n const [requiresMFA, setRequiresMFA] = useState<boolean>(false);\n\n const isLoading = inProgress !== InteractionStatus.None;\n const isAuthenticated = !!account && !!accessToken && !requiresMFA;\n\n const scopes = options.scopes || [\"openid\", \"profile\", \"email\"];\n\n const isTokenValid = (token: string): boolean => {\n try {\n const payload = JSON.parse(atob(token.split(\".\")[1]));\n return payload.exp * 1000 > Date.now();\n } catch {\n return false;\n }\n };\n\n useEffect(() => {\n if (typeof window !== \"undefined\" && !accessToken) {\n const stored = localStorage.getItem(storageKey);\n if (stored) {\n try {\n const {\n accessToken,\n idToken,\n requiresMFA: storedRequiresMFA,\n isAuthenticated: storedIsAuthenticated,\n } = JSON.parse(stored);\n if (accessToken && isTokenValid(accessToken)) {\n setAccessToken(accessToken);\n setIdToken(idToken);\n\n // Restore MFA state\n if (storedRequiresMFA && !storedIsAuthenticated) {\n const mfaConfig: MFAConfig = {\n accessToken,\n idToken,\n appCode: options.appCode,\n provider: \"MSAL\",\n apiEndpoint: options.MFAEndpoint,\n };\n const authenticator = new CAMSMFAAuthenticator(mfaConfig);\n setMfaAuthenticator(authenticator);\n setRequiresMFA(true);\n }\n\n console.log(\"App Code >>>\", options.appCode);\n console.log(\"MFA Endpoint >>>\", options.MFAEndpoint);\n } else {\n localStorage.removeItem(storageKey);\n }\n } catch {}\n } else if (account) {\n // Storage cleared but MSAL account exists - clear MSAL state\n instance.logoutRedirect().catch(() => {});\n }\n }\n }, [accessToken, account, instance, options.storageKey]);\n\n // useEffect(() => {\n // const handleRedirect = async () => {\n // try {\n // const response = await instance.handleRedirectPromise();\n\n // if (response) {\n // const account = response.account;\n // instance.setActiveA ccount(account);\n\n // const tokenResponse = await instance.acq uireTokenSilent({\n // scopes,\n // account,\n // });\n\n // setToken(tokenResponse.accessToken);\n // setAccessToken(tokenResponse.accessToken);\n // setIdToken(tokenResponse.idTo ken);\n\n // options.onAuthSuccess?.(tokenR esponse.accessToken);\n\n // if (\n // typeof window !== \"undefined\" &&\n // process.env.NODE_ENV !== \"test\"\n // ) {\n // window.location.href = options.mfaUrl!;\n // }\n // }\n // } catch (err) {\n // console.error(\"Redirect handling failed:\", err);\n // }\n // };\n\n // handleRedirect();\n // }, []);\n\n const login = useCallback(async () => {\n setError(null);\n\n try {\n const response = await instance.loginPopup({\n scopes,\n prompt: options.prompt || \"login\",\n });\n Logger.debug(\"Login Token response:\", {\n accessToken: response.accessToken,\n idToken: response.idToken,\n });\n setAccessToken(response.accessToken);\n setIdToken(response.idToken);\n\n // Initialize MFA authenticator\n const mfaConfig: MFAConfig = {\n accessToken: response.accessToken,\n idToken: response.idToken,\n appCode: options.appCode,\n provider: \"MSAL\",\n apiEndpoint: options.MFAEndpoint,\n };\n\n const authenticator = new CAMSMFAAuthenticator(mfaConfig);\n setMfaAuthenticator(authenticator);\n setRequiresMFA(true);\n\n // Don't persist as authenticated until MFA is complete\n if (typeof window !== \"undefined\") {\n localStorage.setItem(\n storageKey,\n JSON.stringify({\n isAuthenticated: false,\n requiresMFA: true,\n accessToken: response.accessToken,\n idToken: response.idToken,\n })\n );\n }\n\n options.onAuthSuccess?.(response.accessToken);\n } catch (err: any) {\n // Handle user cancellation gracefully\n if (err.errorCode === \"user_cancelled\") {\n Logger.info(\"User cancelled login\");\n setError(null); // Don't treat cancellation as an error\n return;\n }\n\n // If popup is blocked\n if (\n err.errorCode === \"popup_window_error\" ||\n err.message?.includes(\"popup\")\n ) {\n const camsError = new CAMSError(\n CAMSErrorType.POPUP_BLOCKED,\n \"Popup blocked by browser. Please allow popups and try again.\"\n );\n setError(camsError);\n options.onAuthError?.(camsError);\n return;\n }\n\n const camsError = new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"Login failed: \" + err.message || err\n );\n setError(camsError);\n options.onAuthError?.(camsError);\n }\n }, [instance, scopes, options]);\n\n const completeMFA = useCallback(\n async (\n code: string,\n type: \"EmailOTP\" | \"AuthenticatorCode\"\n ): Promise<MFAResponse> => {\n if (!mfaAuthenticator) {\n throw new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"MFA Authenticator not initialized\"\n );\n }\n\n try {\n const mfaResponse = await mfaAuthenticator.verifyOTP(code, type);\n\n if (mfaResponse.isAuthenticated) {\n setRequiresMFA(false);\n\n // Update storage with complete authentication\n if (typeof window !== \"undefined\") {\n localStorage.setItem(\n storageKey,\n JSON.stringify({\n isAuthenticated: true,\n requiresMFA: false,\n accessToken,\n idToken,\n userProfile: mfaResponse,\n })\n );\n }\n }\n\n return mfaResponse;\n } catch (error) {\n setError(error as CAMSError);\n throw error;\n }\n },\n [mfaAuthenticator, accessToken, idToken, storageKey]\n );\n\n const sendEmailOTP = useCallback(async (): Promise<boolean> => {\n if (!mfaAuthenticator) {\n return false;\n }\n return await mfaAuthenticator.sendEmailOTP();\n }, [mfaAuthenticator]);\n\n const logout = useCallback(async () => {\n try {\n await instance.logoutRedirect();\n\n setAccessToken(\"\");\n setIdToken(\"\");\n setError(null);\n setMfaAuthenticator(null);\n setRequiresMFA(false);\n if (typeof window !== \"undefined\") {\n localStorage.removeItem(storageKey);\n }\n } catch (err: any) {\n const camsError = new CAMSError(\n CAMSErrorType.API_VALIDATION_ERROR,\n \"Logout failed: \" + err\n );\n setError(camsError);\n }\n }, [instance, storageKey]);\n\n return {\n login,\n logout,\n storageKey,\n isAuthenticated,\n isLoading,\n error,\n idToken,\n accessToken,\n appCode: options.appCode,\n mfaAuthenticator,\n requiresMFA,\n completeMFA,\n sendEmailOTP,\n };\n}\n","import { useEffect, useCallback } from \"react\";\nimport {\n CAMSSessionManager,\n Profile,\n isPopupWindow,\n initializePopupAuth,\n} from \"@nibssplc/cams-sdk\";\n\nexport interface UseCAMSPopupAuthOptions {\n storageKey?: string;\n targetOrigin?: string;\n onAuthComplete?: (profile: Profile) => void;\n onAuthError?: (error: any) => void;\n}\n\nexport interface UseCAMSPopupAuthReturn {\n completeAuth: (profile: Profile) => void;\n errorAuth: (error: any) => void;\n isPopup: boolean;\n}\n\n/**\n * Hook for handling authentication in popup windows\n * This should be used by the popup app to complete authentication\n */\nexport function useCAMSPopupAuth(\n options: UseCAMSPopupAuthOptions = {}\n): UseCAMSPopupAuthReturn {\n const { storageKey = \"CAMS-SDK\", targetOrigin, onAuthComplete, onAuthError } = options;\n\n useEffect(() => {\n if (typeof window === \"undefined\" || !isPopupWindow()) return;\n\n // Initialize popup auth handler\n initializePopupAuth(targetOrigin);\n\n // Set up global handlers for the popup app\n const globalHandlers = (window as any).__CAMS_POPUP_AUTH__;\n if (globalHandlers) {\n const originalCompleteAuth = globalHandlers.completeAuth;\n const originalErrorAuth = globalHandlers.errorAuth;\n\n globalHandlers.completeAuth = (profile: Profile) => {\n onAuthComplete?.(profile);\n originalCompleteAuth(profile);\n };\n\n globalHandlers.errorAuth = (error: any) => {\n onAuthError?.(error);\n originalErrorAuth(error);\n };\n }\n }, [targetOrigin, onAuthComplete, onAuthError]);\n\n const completeAuth = useCallback((profile: Profile) => {\n if (!isPopupWindow()) {\n console.warn(\"completeAuth called outside of popup window\");\n return;\n }\n\n const sessionManager = new CAMSSessionManager(localStorage, storageKey);\n sessionManager.completePopupAuth(profile, targetOrigin);\n }, [storageKey, targetOrigin]);\n\n const errorAuth = useCallback((error: any) => {\n if (!isPopupWindow()) {\n console.warn(\"errorAuth called outside of popup window\");\n return;\n }\n\n const sessionManager = new CAMSSessionManager(localStorage, storageKey);\n sessionManager.errorPopupAuth(error, targetOrigin);\n }, [storageKey, targetOrigin]);\n\n return {\n completeAuth,\n errorAuth,\n isPopup: isPopupWindow(),\n };\n}","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return (type.displayName || \"Context\") + \".Provider\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(\n type,\n key,\n self,\n source,\n owner,\n props,\n debugStack,\n debugTask\n ) {\n self = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== self ? self : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n source,\n self,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n self,\n source,\n getOwner(),\n maybeKey,\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_ELEMENT_TYPE &&\n node._store &&\n (node._store.validated = 1);\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey, source, self) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n source,\n self,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import React, {\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Profile } from '@nibssplc/cams-sdk';\nimport { useCAMSAuth, UseCAMSAuthReturn, UseCAMSAuthOptions } from '../hooks/useCAMSAuth';\n\ninterface CAMSContextValue extends UseCAMSAuthReturn {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n}\n\nconst CAMSContext = createContext<CAMSContextValue | null>(null);\n\nexport interface CAMSProviderProps extends UseCAMSAuthOptions {\n children: React.ReactNode;\n}\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(Date.now() + days * 864e5).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\n\n\nexport function CAMSProvider({\n children,\n ...authOptions\n}: Readonly<CAMSProviderProps>) {\n const auth = useCAMSAuth(authOptions);\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") {\n return null;\n }\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n // Load profile from storage on mount\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n\n\n // Persist profile separately\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1);\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n // Enhanced logout that also clears profile\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n const value = useMemo(\n () => ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n }),\n [auth, userProfile]\n );\n\n return (\n <CAMSContext.Provider value={value}>\n {children}\n </CAMSContext.Provider>\n );\n}\n\nexport function useCAMSContext(): CAMSContextValue {\n const context = useContext(CAMSContext);\n if (!context) {\n throw new Error('useCAMSContext must be used within a CAMSProvider');\n }\n return context;\n}","import React, { ReactNode } from 'react';\nimport { useCAMSContext } from './CAMSProvider';\n\nexport interface ProtectedRouteProps {\n children: ReactNode;\n fallback?: ReactNode;\n redirectTo?: string;\n}\n\nexport function ProtectedRoute({ children, fallback, redirectTo }: ProtectedRouteProps) {\n const { isAuthenticated, isLoading } = useCAMSContext();\n\n if (isLoading) {\n return fallback || <div>Loading...</div>;\n }\n\n if (!isAuthenticated) {\n if (redirectTo && typeof window !== 'undefined') {\n window.location.href = redirectTo;\n return null;\n }\n return fallback || <div>Access denied. Please log in.</div>;\n }\n\n return <>{children}</>;\n}","import React, {\n createContext,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { MsalProvider } from \"@azure/msal-react\";\nimport { PublicClientApplication, Configuration } from \"@azure/msal-browser\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport {\n useCAMSMSALAuth,\n UseCAMSMSALAuthReturn,\n UseCAMSMSALAuthOptions,\n} from \"../hooks/useCAMSMSALAuth\";\n\ninterface CAMSMSALContextValue extends UseCAMSMSALAuthReturn {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n}\n\nconst CAMSMSALContext = createContext<CAMSMSALContextValue | null>(null);\n\nexport interface CAMSMSALProviderProps extends UseCAMSMSALAuthOptions {\n children: React.ReactNode;\n msalConfig: Configuration;\n msalInstance?: PublicClientApplication;\n}\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(Date.now() + days * 864e5).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\nconst isTokenValid = (token: string): boolean => {\n try {\n const payload = JSON.parse(atob(token.split(\".\")[1]));\n return payload.exp * 1000 > Date.now();\n } catch {\n return false;\n }\n};\n\nfunction CAMSMSALProviderInner({\n children,\n ...authOptions\n}: Readonly<Omit<CAMSMSALProviderProps, \"msalConfig\" | \"msalInstance\">>) {\n const auth = useCAMSMSALAuth(authOptions);\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") {\n return null;\n }\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n // Load profile from storage on mount\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n // const storedProfile = localStorage.get Item(profileStorageKey);\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n // Persist tokens and profile\n useEffect(() => {\n if (\n auth.accessToken &&\n isTokenValid(auth.accessToken) &&\n typeof window !== \"undefined\"\n ) {\n localStorage.setItem(\n auth.storageKey,\n JSON.stringify({\n accessToken: auth.accessToken,\n idToken: auth.idToken,\n appCode: auth.appCode\n })\n );\n }\n }, [auth.accessToken, auth.idToken, auth.storageKey]);\n\n // Persist profile separately\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1); // Store for 1 day\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n // Enhanced logout that also clears profile\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n const value = useMemo(\n () => ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n }),\n [auth, userProfile]\n );\n\n return (\n <CAMSMSALContext.Provider value={value}>\n {children}\n </CAMSMSALContext.Provider>\n );\n}\n\nexport function CAMSMSALProvider(props: Readonly<CAMSMSALProviderProps>) {\n const { msalConfig, msalInstance } = props;\n const instance = msalInstance || new PublicClientApplication(msalConfig);\n\n return (\n <MsalProvider instance={instance}>\n <CAMSMSALProviderInner {...props} />\n </MsalProvider>\n );\n}\n\nexport function useCAMSMSALContext(): CAMSMSALContextValue {\n const context = useContext(CAMSMSALContext);\n if (!context) {\n throw new Error(\n \"useCAMSMSALContext must be used within a CAMSMSALProvider\"\n );\n }\n return context;\n}\n","\"use client\";\n\nimport { useEffect, useState } from \"react\";\n\ninterface ClientOnlyProps {\n children: React.ReactNode;\n fallback?: React.ReactNode;\n}\n\nconst ClientOnly = ({ children, fallback = null }: ClientOnlyProps) => {\n const [hasMounted, setHasMounted] = useState(false);\n\n useEffect(() => {\n setHasMounted(true);\n }, []);\n\n if (!hasMounted) {\n return <>{fallback}</>;\n }\n\n return <>{children}</>;\n};\n\nexport default ClientOnly;","import { createContext, useContext } from \"react\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport {\n UseCAMSAuthReturn,\n} from \"../hooks/useCAMSAuth\";\nimport {\n UseCAMSMSALAuthReturn,\n} from \"../hooks/useCAMSMSALAuth\";\n\ntype AuthMode = \"REGULAR\" | \"MSAL\";\n\ninterface BaseCAMSContextValue {\n userProfile: Profile | null;\n setUserProfile: (profile: Profile | null) => void;\n authMode: AuthMode;\n}\n\ninterface RegularCAMSContextValue\n extends BaseCAMSContextValue,\n UseCAMSAuthReturn {\n authMode: \"REGULAR\";\n}\n\ninterface MSALCAMSContextValue\n extends BaseCAMSContextValue,\n UseCAMSMSALAuthReturn {\n authMode: \"MSAL\";\n}\n\nexport type CAMSContextValue = RegularCAMSContextValue | MSALCAMSContextValue;\n\nexport const CAMSContext = createContext<CAMSContextValue | null>(null);\n\nexport function useCAMSContext(): CAMSContextValue {\n const context = useContext(CAMSContext);\n if (!context) {\n throw new Error(\"useCAMSContext must be used within a UnifiedCAMSProvider\");\n }\n return context;\n}\n","import React, { useEffect, useMemo, useState } from \"react\";\nimport { z } from \"zod\";\nimport { MsalProvider } from \"@azure/msal-react\";\nimport { PublicClientApplication, Configuration } from \"@azure/msal-browser\";\nimport { Profile } from \"@nibssplc/cams-sdk\";\nimport { useCAMSAuth, UseCAMSAuthOptions } from \"../hooks/useCAMSAuth\";\nimport {\n useCAMSMSALAuth,\n UseCAMSMSALAuthOptions,\n} from \"../hooks/useCAMSMSALAuth\";\nimport {\n CAMSContext,\n CAMSContextValue,\n useCAMSContext,\n} from \"../context/CAMSContext\";\nimport ClientOnly from \"./ClientOnly\";\n\nconst GuidSchema = z.uuid(\"appCode must be a valid GUID\");\n\ninterface BaseProviderProps {\n children: React.ReactNode;\n appCode: string;\n}\n\ninterface RegularProviderProps\n extends BaseProviderProps,\n Omit<UseCAMSAuthOptions, \"appCode\"> {\n mode: \"REGULAR\";\n}\n\ninterface MSALProviderProps extends BaseProviderProps, Omit<UseCAMSMSALAuthOptions, 'MFAEndpoint'> {\n mode: \"MSAL\";\n msalConfig: Configuration;\n msalInstance?: PublicClientApplication;\n}\n\ntype UnifiedCAMSProviderProps = RegularProviderProps | MSALProviderProps;\n\nconst setCookie = (name: string, value: string, days: number = 1) => {\n const expires = new Date(\n Date.now() + days * 24 * 60 * 60 * 1000\n ).toUTCString();\n document.cookie = `${name}=${encodeURIComponent(\n value\n )}; expires=${expires}; path=/; samesite=Lax`;\n};\n\nconst getCookie = (name: string): string | null => {\n return document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))\n ?.split(\"=\")[1]\n ? decodeURIComponent(\n document.cookie\n .split(\"; \")\n .find((row) => row.startsWith(name + \"=\"))!\n .split(\"=\")[1]\n )\n : null;\n};\n\nconst deleteCookie = (name: string) => {\n document.cookie = name + \"=; Max-Age=-99999999; path=/\";\n};\n\nfunction CAMSProviderInner(props: UnifiedCAMSProviderProps) {\n return (\n <ClientOnly fallback={<div>Loading...</div>}>\n <CAMSProviderCore {...props} />\n </ClientOnly>\n );\n}\n\nfunction CAMSProviderCore(props: UnifiedCAMSProviderProps) {\n const { children, mode, appCode } = props;\n\n // Always call both hooks to satisfy Rules of Hooks\n const regularAuth = useCAMSAuth(\n mode === \"REGULAR\"\n ? ({ ...props, appCode } as UseCAMSAuthOptions)\n : { appCode: \"\" }\n );\n const msalAuth = useCAMSMSALAuth(\n mode === \"MSAL\"\n ? ({ ...props, appCode } as UseCAMSMSALAuthOptions)\n : { appCode: \"\" }\n );\n\n const auth = mode === \"REGULAR\" ? regularAuth : msalAuth;\n const profileStorageKey = `${auth.storageKey}-PROFILE`;\n\n const getInitialProfile = (): Profile | null => {\n if (typeof window === \"undefined\") return null;\n try {\n const storedProfile = getCookie(profileStorageKey);\n return storedProfile ? JSON.parse(storedProfile) : null;\n } catch {\n return null;\n }\n };\n\n const [userProfile, setUserProfile] = useState<Profile | null>(\n getInitialProfile\n );\n\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n const storedProfile = getCookie(profileStorageKey);\n if (storedProfile) {\n try {\n setUserProfile(JSON.parse(storedProfile));\n } catch {}\n }\n }\n }, [profileStorageKey]);\n\n useEffect(() => {\n if (typeof window !== \"undefined\") {\n if (userProfile) {\n setCookie(profileStorageKey, JSON.stringify(userProfile), 1);\n } else {\n deleteCookie(profileStorageKey);\n }\n }\n }, [userProfile, profileStorageKey]);\n\n const enhancedLogout = async () => {\n await auth.logout();\n setUserProfile(null);\n if (typeof window !== \"undefined\") {\n deleteCookie(profileStorageKey);\n }\n };\n\n // Handle MFA completion for MSAL mode\n useEffect(() => {\n if (\n mode === \"MSAL\" &&\n \"requiresMFA\" in auth &&\n !auth.requiresMFA &&\n auth.isAuthenticated &&\n !userProfile\n ) {\n // MFA completed, extract profile from stored data\n const storedData = getCookie(auth.storageKey);\n if (storedData) {\n try {\n const parsed = JSON.parse(storedData);\n if (parsed.userProfile) {\n setUserProfile(parsed.userProfile);\n }\n } catch {}\n }\n }\n }, [mode, auth, userProfile]);\n\n const value = useMemo(\n () =>\n ({\n ...auth,\n logout: enhancedLogout,\n userProfile,\n setUserProfile,\n authMode: mode,\n } as CAMSContextValue),\n [auth, userProfile, mode, mode === \"MSAL\" && \"requiresMFA\" in auth ? auth.requiresMFA : null]\n );\n\n return <CAMSContext.Provider value={value}>{children}</CAMSContext.Provider>;\n}\n\nexport function UnifiedCAMSProvider(props: UnifiedCAMSProviderProps) {\n // Validate appCode is a valid GUID\n const appCodeValidation = GuidSchema.safeParse(props.appCode);\n if (!appCodeValidation.success) {\n throw new Error(\n `Invalid appCode: ${appCodeValidation.error.issues[0].message}`\n );\n }\n\n if (props.mode === \"MSAL\") {\n const { msalConfig, msalInstance } = props;\n const instance = msalInstance || new PublicClientApplication(msalConfig);\n\n return (\n <MsalProvider instance={instance}>\n <CAMSProviderCore {...props} />\n </MsalProvider>\n );\n }\n\n return (\n <ClientOnly fallback={<div>Loading...</div>}>\n <CAMSProviderCore {...props} />\n </ClientOnly>\n );\n}\n\n// Backward compatibility exports\nexport const CAMSProvider = (props: Omit<RegularProviderProps, \"mode\">) => (\n <UnifiedCAMSProvider {...props} mode=\"REGULAR\" />\n);\n\nexport const CAMSMSALProvider = (props: Omit<MSALProviderProps, \"mode\">) => (\n <UnifiedCAMSProvider {...props} mode=\"MSAL\" />\n);\n\n// Export useCAMSContext\nexport { useCAMSContext };\n","/** A special constant with type `never` */\nexport const NEVER = Object.freeze({\n status: \"aborted\",\n});\nexport /*@__NO_SIDE_EFFECTS__*/ function $constructor(name, initializer, params) {\n function init(inst, def) {\n var _a;\n Object.defineProperty(inst, \"_zod\", {\n value: inst._zod ?? {},\n enumerable: false,\n });\n (_a = inst._zod).traits ?? (_a.traits = new Set());\n inst._zod.traits.add(name);\n initializer(inst, def);\n // support prototype modifications\n for (const k in _.prototype) {\n if (!(k in inst))\n Object.defineProperty(inst, k, { value: _.prototype[k].bind(inst) });\n }\n inst._zod.constr = _;\n inst._zod.def = def;\n }\n // doesn't work if Parent has a constructor with arguments\n const Parent = params?.Parent ?? Object;\n class Definition extends Parent {\n }\n Object.defineProperty(Definition, \"name\", { value: name });\n function _(def) {\n var _a;\n const inst = params?.Parent ? new Definition() : this;\n init(inst, def);\n (_a = inst._zod).deferred ?? (_a.deferred = []);\n for (const fn of inst._zod.deferred) {\n fn();\n }\n return inst;\n }\n Object.defineProperty(_, \"init\", { value: init });\n Object.defineProperty(_, Symbol.hasInstance, {\n value: (inst) => {\n if (params?.Parent && inst instanceof params.Parent)\n return true;\n return inst?._zod?.traits?.has(name);\n },\n });\n Object.defineProperty(_, \"name\", { value: name });\n return _;\n}\n////////////////////////////// UTILITIES ///////////////////////////////////////\nexport const $brand = Symbol(\"zod_brand\");\nexport class $ZodAsyncError extends Error {\n constructor() {\n super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`);\n }\n}\nexport class $ZodEncodeError extends Error {\n constructor(name) {\n super(`Encountered unidirectional transform during encode: ${name}`);\n this.name = \"ZodEncodeError\";\n }\n}\nexport const globalConfig = {};\nexport function config(newConfig) {\n if (newConfig)\n Object.assign(globalConfig, newConfig);\n return globalConfig;\n}\n","// functions\nexport function assertEqual(val) {\n return val;\n}\nexport function assertNotEqual(val) {\n return val;\n}\nexport function assertIs(_arg) { }\nexport function assertNever(_x) {\n throw new Error();\n}\nexport function assert(_) { }\nexport function getEnumValues(entries) {\n const numericValues = Object.values(entries).filter((v) => typeof v === \"number\");\n const values = Object.entries(entries)\n .filter(([k, _]) => numericValues.indexOf(+k) === -1)\n .map(([_, v]) => v);\n return values;\n}\nexport function joinValues(array, separator = \"|\") {\n return array.map((val) => stringifyPrimitive(val)).join(separator);\n}\nexport function jsonStringifyReplacer(_, value) {\n if (typeof value === \"bigint\")\n return value.toString();\n return value;\n}\nexport function cached(getter) {\n const set = false;\n return {\n get value() {\n if (!set) {\n const value = getter();\n Object.defineProperty(this, \"value\", { value });\n return value;\n }\n throw new Error(\"cached value already set\");\n },\n };\n}\nexport function nullish(input) {\n return input === null || input === undefined;\n}\nexport function cleanRegex(source) {\n const start = source.startsWith(\"^\") ? 1 : 0;\n const end = source.endsWith(\"$\") ? source.length - 1 : source.length;\n return source.slice(start, end);\n}\nexport function floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepString = step.toString();\n let stepDecCount = (stepString.split(\".\")[1] || \"\").length;\n if (stepDecCount === 0 && /\\d?e-\\d?/.test(stepString)) {\n const match = stepString.match(/\\d?e-(\\d?)/);\n if (match?.[1]) {\n stepDecCount = Number.parseInt(match[1]);\n }\n }\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = Number.parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = Number.parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / 10 ** decCount;\n}\nconst EVALUATING = Symbol(\"evaluating\");\nexport function defineLazy(object, key, getter) {\n let value = undefined;\n Object.defineProperty(object, key, {\n get() {\n if (value === EVALUATING) {\n // Circular reference detected, return undefined to break the cycle\n return undefined;\n }\n if (value === undefined) {\n value = EVALUATING;\n value = getter();\n }\n return value;\n },\n set(v) {\n Object.defineProperty(object, key, {\n value: v,\n // configurable: true,\n });\n // object[key] = v;\n },\n configurable: true,\n });\n}\nexport function objectClone(obj) {\n return Object.create(Object.getPrototypeOf(obj), Object.getOwnPropertyDescriptors(obj));\n}\nexport function assignProp(target, prop, value) {\n Object.defineProperty(target, prop, {\n value,\n writable: true,\n enumerable: true,\n configurable: true,\n });\n}\nexport function mergeDefs(...defs) {\n const mergedDescriptors = {};\n for (const def of defs) {\n const descriptors = Object.getOwnPropertyDescriptors(def);\n Object.assign(mergedDescriptors, descriptors);\n }\n return Object.defineProperties({}, mergedDescriptors);\n}\nexport function cloneDef(schema) {\n return mergeDefs(schema._zod.def);\n}\nexport function getElementAtPath(obj, path) {\n if (!path)\n return obj;\n return path.reduce((acc, key) => acc?.[key], obj);\n}\nexport function promiseAllObject(promisesObj) {\n const keys = Object.keys(promisesObj);\n const promises = keys.map((key) => promisesObj[key]);\n return Promise.all(promises).then((results) => {\n const resolvedObj = {};\n for (let i = 0; i < keys.length; i++) {\n resolvedObj[keys[i]] = results[i];\n }\n return resolvedObj;\n });\n}\nexport function randomString(length = 10) {\n const chars = \"abcdefghijklmnopqrstuvwxyz\";\n let str = \"\";\n for (let i = 0; i < length; i++) {\n str += chars[Math.floor(Math.random() * chars.length)];\n }\n return str;\n}\nexport function esc(str) {\n return JSON.stringify(str);\n}\nexport const captureStackTrace = (\"captureStackTrace\" in Error ? Error.captureStackTrace : (..._args) => { });\nexport function isObject(data) {\n return typeof data === \"object\" && data !== null && !Array.isArray(data);\n}\nexport const allowsEval = cached(() => {\n // @ts-ignore\n if (typeof navigator !== \"undefined\" && navigator?.userAgent?.includes(\"Cloudflare\")) {\n return false;\n }\n try {\n const F = Function;\n new F(\"\");\n return true;\n }\n catch (_) {\n return false;\n }\n});\nexport function isPlainObject(o) {\n if (isObject(o) === false)\n return false;\n // modified constructor\n const ctor = o.constructor;\n if (ctor === undefined)\n return true;\n // modified prototype\n const prot = ctor.prototype;\n if (isObject(prot) === false)\n return false;\n // ctor doesn't have static `isPrototypeOf`\n if (Object.prototype.hasOwnProperty.call(prot, \"isPrototypeOf\") === false) {\n return false;\n }\n return true;\n}\nexport function shallowClone(o) {\n if (isPlainObject(o))\n return { ...o };\n if (Array.isArray(o))\n return [...o];\n return o;\n}\nexport function numKeys(data) {\n let keyCount = 0;\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n keyCount++;\n }\n }\n return keyCount;\n}\nexport const getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return \"undefined\";\n case \"string\":\n return \"string\";\n case \"number\":\n return Number.isNaN(data) ? \"nan\" : \"number\";\n case \"boolean\":\n return \"boolean\";\n case \"function\":\n return \"function\";\n case \"bigint\":\n return \"bigint\";\n case \"symbol\":\n return \"symbol\";\n case \"object\":\n if (Array.isArray(data)) {\n return \"array\";\n }\n if (data === null) {\n return \"null\";\n }\n if (data.then && typeof data.then === \"function\" && data.catch && typeof data.catch === \"function\") {\n return \"promise\";\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return \"map\";\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return \"set\";\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return \"date\";\n }\n // @ts-ignore\n if (typeof File !== \"undefined\" && data instanceof File) {\n return \"file\";\n }\n return \"object\";\n default:\n throw new Error(`Unknown data type: ${t}`);\n }\n};\nexport const propertyKeyTypes = new Set([\"string\", \"number\", \"symbol\"]);\nexport const primitiveTypes = new Set([\"string\", \"number\", \"bigint\", \"boolean\", \"symbol\", \"undefined\"]);\nexport function escapeRegex(str) {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n}\n// zod-specific utils\nexport function clone(inst, def, params) {\n const cl = new inst._zod.constr(def ?? inst._zod.def);\n if (!def || params?.parent)\n cl._zod.parent = inst;\n return cl;\n}\nexport function normalizeParams(_params) {\n const params = _params;\n if (!params)\n return {};\n if (typeof params === \"string\")\n return { error: () => params };\n if (params?.message !== undefined) {\n if (params?.error !== undefined)\n throw new Error(\"Cannot specify both `message` and `error` params\");\n params.error = params.message;\n }\n delete params.message;\n if (typeof params.error === \"string\")\n return { ...params, error: () => params.error };\n return params;\n}\nexport function createTransparentProxy(getter) {\n let target;\n return new Proxy({}, {\n get(_, prop, receiver) {\n target ?? (target = getter());\n return Reflect.get(target, prop, receiver);\n },\n set(_, prop, value, receiver) {\n target ?? (target = getter());\n return Reflect.set(target, prop, value, receiver);\n },\n has(_, prop) {\n target ?? (target = getter());\n return Reflect.has(target, prop);\n },\n deleteProperty(_, prop) {\n target ?? (target = getter());\n return Reflect.deleteProperty(target, prop);\n },\n ownKeys(_) {\n target ?? (target = getter());\n return Reflect.ownKeys(target);\n },\n getOwnPropertyDescriptor(_, prop) {\n target ?? (target = getter());\n return Reflect.getOwnPropertyDescriptor(target, prop);\n },\n defineProperty(_, prop, descriptor) {\n target ?? (target = getter());\n return Reflect.defineProperty(target, prop, descriptor);\n },\n });\n}\nexport function stringifyPrimitive(value) {\n if (typeof value === \"bigint\")\n return value.toString() + \"n\";\n if (typeof value === \"string\")\n return `\"${value}\"`;\n return `${value}`;\n}\nexport function optionalKeys(shape) {\n return Object.keys(shape).filter((k) => {\n return shape[k]._zod.optin === \"optional\" && shape[k]._zod.optout === \"optional\";\n });\n}\nexport const NUMBER_FORMAT_RANGES = {\n safeint: [Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER],\n int32: [-2147483648, 2147483647],\n uint32: [0, 4294967295],\n float32: [-3.4028234663852886e38, 3.4028234663852886e38],\n float64: [-Number.MAX_VALUE, Number.MAX_VALUE],\n};\nexport const BIGINT_FORMAT_RANGES = {\n int64: [/* @__PURE__*/ BigInt(\"-9223372036854775808\"), /* @__PURE__*/ BigInt(\"9223372036854775807\")],\n uint64: [/* @__PURE__*/ BigInt(0), /* @__PURE__*/ BigInt(\"18446744073709551615\")],\n};\nexport function pick(schema, mask) {\n const currDef = schema._zod.def;\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const newShape = {};\n for (const key in mask) {\n if (!(key in currDef.shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n newShape[key] = currDef.shape[key];\n }\n assignProp(this, \"shape\", newShape); // self-caching\n return newShape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function omit(schema, mask) {\n const currDef = schema._zod.def;\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const newShape = { ...schema._zod.def.shape };\n for (const key in mask) {\n if (!(key in currDef.shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n delete newShape[key];\n }\n assignProp(this, \"shape\", newShape); // self-caching\n return newShape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function extend(schema, shape) {\n if (!isPlainObject(shape)) {\n throw new Error(\"Invalid input to extend: expected a plain object\");\n }\n const checks = schema._zod.def.checks;\n const hasChecks = checks && checks.length > 0;\n if (hasChecks) {\n throw new Error(\"Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.\");\n }\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const _shape = { ...schema._zod.def.shape, ...shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function safeExtend(schema, shape) {\n if (!isPlainObject(shape)) {\n throw new Error(\"Invalid input to safeExtend: expected a plain object\");\n }\n const def = {\n ...schema._zod.def,\n get shape() {\n const _shape = { ...schema._zod.def.shape, ...shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n checks: schema._zod.def.checks,\n };\n return clone(schema, def);\n}\nexport function merge(a, b) {\n const def = mergeDefs(a._zod.def, {\n get shape() {\n const _shape = { ...a._zod.def.shape, ...b._zod.def.shape };\n assignProp(this, \"shape\", _shape); // self-caching\n return _shape;\n },\n get catchall() {\n return b._zod.def.catchall;\n },\n checks: [], // delete existing checks\n });\n return clone(a, def);\n}\nexport function partial(Class, schema, mask) {\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const oldShape = schema._zod.def.shape;\n const shape = { ...oldShape };\n if (mask) {\n for (const key in mask) {\n if (!(key in oldShape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n // if (oldShape[key]!._zod.optin === \"optional\") continue;\n shape[key] = Class\n ? new Class({\n type: \"optional\",\n innerType: oldShape[key],\n })\n : oldShape[key];\n }\n }\n else {\n for (const key in oldShape) {\n // if (oldShape[key]!._zod.optin === \"optional\") continue;\n shape[key] = Class\n ? new Class({\n type: \"optional\",\n innerType: oldShape[key],\n })\n : oldShape[key];\n }\n }\n assignProp(this, \"shape\", shape); // self-caching\n return shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\nexport function required(Class, schema, mask) {\n const def = mergeDefs(schema._zod.def, {\n get shape() {\n const oldShape = schema._zod.def.shape;\n const shape = { ...oldShape };\n if (mask) {\n for (const key in mask) {\n if (!(key in shape)) {\n throw new Error(`Unrecognized key: \"${key}\"`);\n }\n if (!mask[key])\n continue;\n // overwrite with non-optional\n shape[key] = new Class({\n type: \"nonoptional\",\n innerType: oldShape[key],\n });\n }\n }\n else {\n for (const key in oldShape) {\n // overwrite with non-optional\n shape[key] = new Class({\n type: \"nonoptional\",\n innerType: oldShape[key],\n });\n }\n }\n assignProp(this, \"shape\", shape); // self-caching\n return shape;\n },\n checks: [],\n });\n return clone(schema, def);\n}\n// invalid_type | too_big | too_small | invalid_format | not_multiple_of | unrecognized_keys | invalid_union | invalid_key | invalid_element | invalid_value | custom\nexport function aborted(x, startIndex = 0) {\n if (x.aborted === true)\n return true;\n for (let i = startIndex; i < x.issues.length; i++) {\n if (x.issues[i]?.continue !== true) {\n return true;\n }\n }\n return false;\n}\nexport function prefixIssues(path, issues) {\n return issues.map((iss) => {\n var _a;\n (_a = iss).path ?? (_a.path = []);\n iss.path.unshift(path);\n return iss;\n });\n}\nexport function unwrapMessage(message) {\n return typeof message === \"string\" ? message : message?.message;\n}\nexport function finalizeIssue(iss, ctx, config) {\n const full = { ...iss, path: iss.path ?? [] };\n // for backwards compatibility\n if (!iss.message) {\n const message = unwrapMessage(iss.inst?._zod.def?.error?.(iss)) ??\n unwrapMessage(ctx?.error?.(iss)) ??\n unwrapMessage(config.customError?.(iss)) ??\n unwrapMessage(config.localeError?.(iss)) ??\n \"Invalid input\";\n full.message = message;\n }\n // delete (full as any).def;\n delete full.inst;\n delete full.continue;\n if (!ctx?.reportInput) {\n delete full.input;\n }\n return full;\n}\nexport function getSizableOrigin(input) {\n if (input instanceof Set)\n return \"set\";\n if (input instanceof Map)\n return \"map\";\n // @ts-ignore\n if (input instanceof File)\n return \"file\";\n return \"unknown\";\n}\nexport function getLengthableOrigin(input) {\n if (Array.isArray(input))\n return \"array\";\n if (typeof input === \"string\")\n return \"string\";\n return \"unknown\";\n}\nexport function issue(...args) {\n const [iss, input, inst] = args;\n if (typeof iss === \"string\") {\n return {\n message: iss,\n code: \"custom\",\n input,\n inst,\n };\n }\n return { ...iss };\n}\nexport function cleanEnum(obj) {\n return Object.entries(obj)\n .filter(([k, _]) => {\n // return true if NaN, meaning it's not a number, thus a string key\n return Number.isNaN(Number.parseInt(k, 10));\n })\n .map((el) => el[1]);\n}\n// Codec utility functions\nexport function base64ToUint8Array(base64) {\n const binaryString = atob(base64);\n const bytes = new Uint8Array(binaryString.length);\n for (let i = 0; i < binaryString.length; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n return bytes;\n}\nexport function uint8ArrayToBase64(bytes) {\n let binaryString = \"\";\n for (let i = 0; i < bytes.length; i++) {\n binaryString += String.fromCharCode(bytes[i]);\n }\n return btoa(binaryString);\n}\nexport function base64urlToUint8Array(base64url) {\n const base64 = base64url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n const padding = \"=\".repeat((4 - (base64.length % 4)) % 4);\n return base64ToUint8Array(base64 + padding);\n}\nexport function uint8ArrayToBase64url(bytes) {\n return uint8ArrayToBase64(bytes).replace(/\\+/g, \"-\").replace(/\\//g, \"_\").replace(/=/g, \"\");\n}\nexport function hexToUint8Array(hex) {\n const cleanHex = hex.replace(/^0x/, \"\");\n if (cleanHex.length % 2 !== 0) {\n throw new Error(\"Invalid hex string length\");\n }\n const bytes = new Uint8Array(cleanHex.length / 2);\n for (let i = 0; i < cleanHex.length; i += 2) {\n bytes[i / 2] = Number.parseInt(cleanHex.slice(i, i + 2), 16);\n }\n return bytes;\n}\nexport function uint8ArrayToHex(bytes) {\n return Array.from(bytes)\n .map((b) => b.toString(16).padStart(2, \"0\"))\n .join(\"\");\n}\n// instanceof\nexport class Class {\n constructor(..._args) { }\n}\n","import { $constructor } from \"./core.js\";\nimport * as util from \"./util.js\";\nconst initializer = (inst, def) => {\n inst.name = \"$ZodError\";\n Object.defineProperty(inst, \"_zod\", {\n value: inst._zod,\n enumerable: false,\n });\n Object.defineProperty(inst, \"issues\", {\n value: def,\n enumerable: false,\n });\n inst.message = JSON.stringify(def, util.jsonStringifyReplacer, 2);\n Object.defineProperty(inst, \"toString\", {\n value: () => inst.message,\n enumerable: false,\n });\n};\nexport const $ZodError = $constructor(\"$ZodError\", initializer);\nexport const $ZodRealError = $constructor(\"$ZodError\", initializer, { Parent: Error });\nexport function flattenError(error, mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of error.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n}\nexport function formatError(error, _mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\" && issue.errors.length) {\n issue.errors.map((issues) => processError({ issues }));\n }\n else if (issue.code === \"invalid_key\") {\n processError({ issues: issue.issues });\n }\n else if (issue.code === \"invalid_element\") {\n processError({ issues: issue.issues });\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(error);\n return fieldErrors;\n}\nexport function treeifyError(error, _mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const result = { errors: [] };\n const processError = (error, path = []) => {\n var _a, _b;\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\" && issue.errors.length) {\n // regular union error\n issue.errors.map((issues) => processError({ issues }, issue.path));\n }\n else if (issue.code === \"invalid_key\") {\n processError({ issues: issue.issues }, issue.path);\n }\n else if (issue.code === \"invalid_element\") {\n processError({ issues: issue.issues }, issue.path);\n }\n else {\n const fullpath = [...path, ...issue.path];\n if (fullpath.length === 0) {\n result.errors.push(mapper(issue));\n continue;\n }\n let curr = result;\n let i = 0;\n while (i < fullpath.length) {\n const el = fullpath[i];\n const terminal = i === fullpath.length - 1;\n if (typeof el === \"string\") {\n curr.properties ?? (curr.properties = {});\n (_a = curr.properties)[el] ?? (_a[el] = { errors: [] });\n curr = curr.properties[el];\n }\n else {\n curr.items ?? (curr.items = []);\n (_b = curr.items)[el] ?? (_b[el] = { errors: [] });\n curr = curr.items[el];\n }\n if (terminal) {\n curr.errors.push(mapper(issue));\n }\n i++;\n }\n }\n }\n };\n processError(error);\n return result;\n}\n/** Format a ZodError as a human-readable string in the following form.\n *\n * From\n *\n * ```ts\n * ZodError {\n * issues: [\n * {\n * expected: 'string',\n * code: 'invalid_type',\n * path: [ 'username' ],\n * message: 'Invalid input: expected string'\n * },\n * {\n * expected: 'number',\n * code: 'invalid_type',\n * path: [ 'favoriteNumbers', 1 ],\n * message: 'Invalid input: expected number'\n * }\n * ];\n * }\n * ```\n *\n * to\n *\n * ```\n * username\n * ✖ Expected number, received string at \"username\n * favoriteNumbers[0]\n * ✖ Invalid input: expected number\n * ```\n */\nexport function toDotPath(_path) {\n const segs = [];\n const path = _path.map((seg) => (typeof seg === \"object\" ? seg.key : seg));\n for (const seg of path) {\n if (typeof seg === \"number\")\n segs.push(`[${seg}]`);\n else if (typeof seg === \"symbol\")\n segs.push(`[${JSON.stringify(String(seg))}]`);\n else if (/[^\\w$]/.test(seg))\n segs.push(`[${JSON.stringify(seg)}]`);\n else {\n if (segs.length)\n segs.push(\".\");\n segs.push(seg);\n }\n }\n return segs.join(\"\");\n}\nexport function prettifyError(error) {\n const lines = [];\n // sort by path length\n const issues = [...error.issues].sort((a, b) => (a.path ?? []).length - (b.path ?? []).length);\n // Process each issue\n for (const issue of issues) {\n lines.push(`✖ ${issue.message}`);\n if (issue.path?.length)\n lines.push(` → at ${toDotPath(issue.path)}`);\n }\n // Convert Map to formatted string\n return lines.join(\"\\n\");\n}\n","import * as core from \"./core.js\";\nimport * as errors from \"./errors.js\";\nimport * as util from \"./util.js\";\nexport const _parse = (_Err) => (schema, value, _ctx, _params) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };\n const result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise) {\n throw new core.$ZodAsyncError();\n }\n if (result.issues.length) {\n const e = new (_params?.Err ?? _Err)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())));\n util.captureStackTrace(e, _params?.callee);\n throw e;\n }\n return result.value;\n};\nexport const parse = /* @__PURE__*/ _parse(errors.$ZodRealError);\nexport const _parseAsync = (_Err) => async (schema, value, _ctx, params) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };\n let result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise)\n result = await result;\n if (result.issues.length) {\n const e = new (params?.Err ?? _Err)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config())));\n util.captureStackTrace(e, params?.callee);\n throw e;\n }\n return result.value;\n};\nexport const parseAsync = /* @__PURE__*/ _parseAsync(errors.$ZodRealError);\nexport const _safeParse = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? { ..._ctx, async: false } : { async: false };\n const result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise) {\n throw new core.$ZodAsyncError();\n }\n return result.issues.length\n ? {\n success: false,\n error: new (_Err ?? errors.$ZodError)(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),\n }\n : { success: true, data: result.value };\n};\nexport const safeParse = /* @__PURE__*/ _safeParse(errors.$ZodRealError);\nexport const _safeParseAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { async: true }) : { async: true };\n let result = schema._zod.run({ value, issues: [] }, ctx);\n if (result instanceof Promise)\n result = await result;\n return result.issues.length\n ? {\n success: false,\n error: new _Err(result.issues.map((iss) => util.finalizeIssue(iss, ctx, core.config()))),\n }\n : { success: true, data: result.value };\n};\nexport const safeParseAsync = /* @__PURE__*/ _safeParseAsync(errors.$ZodRealError);\nexport const _encode = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _parse(_Err)(schema, value, ctx);\n};\nexport const encode = /* @__PURE__*/ _encode(errors.$ZodRealError);\nexport const _decode = (_Err) => (schema, value, _ctx) => {\n return _parse(_Err)(schema, value, _ctx);\n};\nexport const decode = /* @__PURE__*/ _decode(errors.$ZodRealError);\nexport const _encodeAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _parseAsync(_Err)(schema, value, ctx);\n};\nexport const encodeAsync = /* @__PURE__*/ _encodeAsync(errors.$ZodRealError);\nexport const _decodeAsync = (_Err) => async (schema, value, _ctx) => {\n return _parseAsync(_Err)(schema, value, _ctx);\n};\nexport const decodeAsync = /* @__PURE__*/ _decodeAsync(errors.$ZodRealError);\nexport const _safeEncode = (_Err) => (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _safeParse(_Err)(schema, value, ctx);\n};\nexport const safeEncode = /* @__PURE__*/ _safeEncode(errors.$ZodRealError);\nexport const _safeDecode = (_Err) => (schema, value, _ctx) => {\n return _safeParse(_Err)(schema, value, _ctx);\n};\nexport const safeDecode = /* @__PURE__*/ _safeDecode(errors.$ZodRealError);\nexport const _safeEncodeAsync = (_Err) => async (schema, value, _ctx) => {\n const ctx = _ctx ? Object.assign(_ctx, { direction: \"backward\" }) : { direction: \"backward\" };\n return _safeParseAsync(_Err)(schema, value, ctx);\n};\nexport const safeEncodeAsync = /* @__PURE__*/ _safeEncodeAsync(errors.$ZodRealError);\nexport const _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {\n return _safeParseAsync(_Err)(schema, value, _ctx);\n};\nexport const safeDecodeAsync = /* @__PURE__*/ _safeDecodeAsync(errors.$ZodRealError);\n","import{validateFieldsNatively as r,toNestErrors as e}from\"@hookform/resolvers\";import{appendErrors as o}from\"react-hook-form\";import*as n from\"zod/v4/core\";function t(r,e){try{var o=r()}catch(r){return e(r)}return o&&o.then?o.then(void 0,e):o}function s(r,e){for(var n={};r.length;){var t=r[0],s=t.code,i=t.message,a=t.path.join(\".\");if(!n[a])if(\"unionErrors\"in t){var u=t.unionErrors[0].errors[0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:s};if(\"unionErrors\"in t&&t.unionErrors.forEach(function(e){return e.errors.forEach(function(e){return r.push(e)})}),e){var c=n[a].types,f=c&&c[t.code];n[a]=o(a,e,n,s,f?[].concat(f,t.message):t.message)}r.shift()}return n}function i(r,e){for(var n={};r.length;){var t=r[0],s=t.code,i=t.message,a=t.path.join(\".\");if(!n[a])if(\"invalid_union\"===t.code&&t.errors.length>0){var u=t.errors[0][0];n[a]={message:u.message,type:u.code}}else n[a]={message:i,type:s};if(\"invalid_union\"===t.code&&t.errors.forEach(function(e){return e.forEach(function(e){return r.push(e)})}),e){var c=n[a].types,f=c&&c[t.code];n[a]=o(a,e,n,s,f?[].concat(f,t.message):t.message)}r.shift()}return n}function a(o,a,u){if(void 0===u&&(u={}),function(r){return\"_def\"in r&&\"object\"==typeof r._def&&\"typeName\"in r._def}(o))return function(n,i,c){try{return Promise.resolve(t(function(){return Promise.resolve(o[\"sync\"===u.mode?\"parse\":\"parseAsync\"](n,a)).then(function(e){return c.shouldUseNativeValidation&&r({},c),{errors:{},values:u.raw?Object.assign({},n):e}})},function(r){if(function(r){return Array.isArray(null==r?void 0:r.issues)}(r))return{values:{},errors:e(s(r.errors,!c.shouldUseNativeValidation&&\"all\"===c.criteriaMode),c)};throw r}))}catch(r){return Promise.reject(r)}};if(function(r){return\"_zod\"in r&&\"object\"==typeof r._zod}(o))return function(s,c,f){try{return Promise.resolve(t(function(){return Promise.resolve((\"sync\"===u.mode?n.parse:n.parseAsync)(o,s,a)).then(function(e){return f.shouldUseNativeValidation&&r({},f),{errors:{},values:u.raw?Object.assign({},s):e}})},function(r){if(function(r){return r instanceof n.$ZodError}(r))return{values:{},errors:e(i(r.issues,!f.shouldUseNativeValidation&&\"all\"===f.criteriaMode),f)};throw r}))}catch(r){return Promise.reject(r)}};throw new Error(\"Invalid input: not a Zod schema\")}export{a as zodResolver};\n//# sourceMappingURL=zod.module.js.map\n","import { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs))\n}\n","\"use client\"\n\nimport * as React from \"react\"\nimport { OTPInput, OTPInputContext } from \"input-otp\"\nimport { MinusIcon } from \"lucide-react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string\n}) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center gap-2 has-disabled:opacity-50\",\n containerClassName\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n )\n}\n\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\"flex items-center\", className)}\n {...props}\n />\n )\n}\n\nfunction InputOTPSlot({\n index,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n index: number\n}) {\n const inputOTPContext = React.useContext(OTPInputContext)\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {}\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive}\n className={cn(\n \"data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]\",\n className\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n )\n}\n\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n )\n}\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator }\n","\"use client\"\n\nimport * as React from \"react\"\nimport * as LabelPrimitive from \"@radix-ui/react-label\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport {\n Controller,\n FormProvider,\n useFormContext,\n useFormState,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n} from \"react-hook-form\"\n\nimport { cn } from \"../../lib/utils\"\nimport { Label } from \"./label\"\n\nconst Form = FormProvider\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName\n}\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue\n)\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n )\n}\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext)\n const itemContext = React.useContext(FormItemContext)\n const { getFieldState } = useFormContext()\n const formState = useFormState({ name: fieldContext.name })\n const fieldState = getFieldState(fieldContext.name, formState)\n\n if (!fieldContext) {\n throw new Error(\"useFormField should be used within <FormField>\")\n }\n\n const { id } = itemContext\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n }\n}\n\ntype FormItemContextValue = {\n id: string\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n)\n\nfunction FormItem({ className, ...props }: React.ComponentProps<\"div\">) {\n const id = React.useId()\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div\n data-slot=\"form-item\"\n className={cn(\"grid gap-2\", className)}\n {...props}\n />\n </FormItemContext.Provider>\n )\n}\n\nfunction FormLabel({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n const { error, formItemId } = useFormField()\n\n return (\n <Label\n data-slot=\"form-label\"\n data-error={!!error}\n className={cn(\"data-[error=true]:text-destructive\", className)}\n htmlFor={formItemId}\n {...props}\n />\n )\n}\n\nfunction FormControl({ ...props }: React.ComponentProps<typeof Slot>) {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField()\n\n return (\n <Slot\n data-slot=\"form-control\"\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n )\n}\n\nfunction FormDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n const { formDescriptionId } = useFormField()\n\n return (\n <p\n data-slot=\"form-description\"\n id={formDescriptionId}\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction FormMessage({ className, ...props }: React.ComponentProps<\"p\">) {\n const { error, formMessageId } = useFormField()\n const body = error ? String(error?.message ?? \"\") : props.children\n\n if (!body) {\n return null\n }\n\n return (\n <p\n data-slot=\"form-message\"\n id={formMessageId}\n className={cn(\"text-destructive text-sm\", className)}\n {...props}\n >\n {body}\n </p>\n )\n}\n\nexport {\n useFormField,\n Form,\n FormItem,\n FormLabel,\n FormControl,\n FormDescription,\n FormMessage,\n FormField,\n}","import * as React from \"react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Card({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card\"\n className={cn(\n \"bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\"leading-none font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"flex items-center px-6 [.border-t]:pt-6\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n","// components/GenericOTPVerifier.tsx\nimport { z } from \"zod\";\nimport { REGEXP_ONLY_DIGITS } from \"input-otp\";\nimport { RectangleEllipsis } from \"lucide-react\";\nimport { useForm } from \"react-hook-form\";\nimport { zodResolver } from \"@hookform/resolvers/zod\";\nimport {\n InputOTP,\n InputOTPGroup,\n InputOTPSlot,\n} from \"./ui/input-otp\";\nimport {\n Form,\n FormControl,\n FormField,\n FormItem,\n FormMessage,\n} from \"./ui/form\";\nimport { Card, CardContent, CardHeader, CardTitle } from \"./ui/card\";\n\ninterface GenericOTPProps {\n value: string;\n setValue: (v: string) => void;\n setLoading?: React.Dispatch<React.SetStateAction<boolean>>;\n isDisabled: boolean;\n onChangeOTP: (val: string) => void;\n fieldName: \"AuthenticatorCode\" | \"EmailOTP\";\n attemptCount?: number;\n remainingAttempts?: number;\n isMaxAttemptsReached?: boolean;\n}\n\nexport const GenericOTPVerifier = ({\n value,\n setValue,\n setLoading,\n onChangeOTP,\n fieldName = \"EmailOTP\",\n attemptCount = 0,\n remainingAttempts = 3,\n isMaxAttemptsReached = false,\n}: GenericOTPProps) => {\n const Schema = z.object({\n [fieldName]: z.string().min(6, {\n message: \"One Time Password must be 6 characters.\",\n }),\n });\n\n const form = useForm<z.infer<typeof Schema>>({\n resolver: zodResolver(Schema),\n defaultValues: { [fieldName]: \"\" },\n });\n\n return (\n <div className=\"relative rounded space-y-4 p-0 m-0 py-8 space-x-6\">\n <CardHeader className=\"flex items-center justify-center flex-col gap-2 mt-2 text-center mb-8\">\n <div className=\"w-16 h-16 bg-gradient-to-br from-lime-400 via-green-500 to-emerald-600 rounded-xl flex items-center justify-center text-white text-2xl mb-6 group-hover:scale-110 transition-transform duration-300\">\n <RectangleEllipsis />\n </div>\n <CardTitle className=\"font-bold text-emerald-700 text-2xl\">\n One-Time-Password (OTP)\n </CardTitle>\n {attemptCount > 0 && (\n <div className={`text-sm mt-2 ${\n isMaxAttemptsReached ? 'text-red-600' : 'text-orange-600'\n }`}>\n {isMaxAttemptsReached \n ? 'Maximum attempts reached. Please try again later.' \n : `Attempt ${attemptCount}/3 - ${remainingAttempts} attempts remaining`\n }\n </div>\n )}\n </CardHeader>\n\n <div className=\"space-y-6\">\n <Form {...form}>\n <form className=\"flex items-center justify-center my-4 \">\n <FormField\n control={form.control}\n name={fieldName}\n render={() => (\n <FormItem className=\"flex items-center justify-center flex-col gap-y-1 space-y-4\">\n <FormControl>\n <InputOTP\n maxLength={6}\n value={value}\n disabled={isMaxAttemptsReached}\n onChange={(authenticationValue) => {\n setValue(authenticationValue);\n\n if (authenticationValue.length === 6 && !isMaxAttemptsReached) {\n setLoading?.(true);\n onChangeOTP(authenticationValue);\n }\n }}\n pattern={REGEXP_ONLY_DIGITS}\n >\n <InputOTPGroup className=\"space-x-2\">\n {[...Array(6)].map((_, idx) => (\n <InputOTPSlot\n key={idx + 1}\n className={`border border-l-2 ${\n isMaxAttemptsReached ? 'opacity-50 cursor-not-allowed' : ''\n }`}\n index={idx}\n />\n ))}\n </InputOTPGroup>\n </InputOTP>\n </FormControl>\n <FormMessage />\n </FormItem>\n )}\n />\n </form>\n {/* <div className=\"flex flex-col gap-3 items-center justify-center\">\n <Button\n className=\"bg-emerald-700 px-12 py-4 mt-8 space-y-6\"\n onClick={submitOTP}\n disabled={isDisabled}\n >\n {isDisabled\n ? `Resend Code? Retry in ${formattedTime}`\n : \"Resend Code\"}\n </Button>\n </div> */}\n </Form>\n </div>\n </div>\n );\n};\n","export default \"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20500%20500%22%3E%3Cg%20id%3D%22freepik--Floor--inject-87%22%3E%3Cellipse%20id%3D%22freepik--floor--inject-87%22%20cx%3D%22252.61%22%20cy%3D%22347.39%22%20rx%3D%22236.94%22%20ry%3D%22140.58%22%20style%3D%22fill%3A%23f5f5f5%22%3E%3C%2Fellipse%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Shadows--inject-87%22%3E%3Cellipse%20id%3D%22freepik--Shadow--inject-87%22%20cx%3D%22435.94%22%20cy%3D%22370.25%22%20rx%3D%2241.53%22%20ry%3D%2223.98%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fellipse%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M200.57%2C451.64%2C49.4%2C364.36c-5.74-3.32-5.74-8.74%2C0-12.06L278.92%2C219.81a9.51%2C9.51%2C0%2C0%2C1%2C8.6%2C0L447.9%2C312.4c.68.4.68%2C1%2C0%2C1.42L209.17%2C451.64A9.57%2C9.57%2C0%2C0%2C1%2C200.57%2C451.64Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Clouds--inject-87%22%3E%3Cg%20id%3D%22freepik--clouds--inject-87%22%3E%3Cpath%20d%3D%22M103.23%2C53.2l-9.41%2C5.43c0-.42.08-.84.08-1.25V54.66c0-4.86-3.41-6.82-7.61-4.4a14.77%2C14.77%2C0%2C0%2C0-4.54%2C4.36c-.69-6.1-5.48-8.37-11.29-5-6.29%2C3.63-11.39%2C12.46-11.39%2C19.72v4.08a10.65%2C10.65%2C0%2C0%2C0%2C1%2C4.72l-7.82%2C4.52A9.32%2C9.32%2C0%2C0%2C0%2C48%2C90c0%2C2.69%2C1.89%2C3.78%2C4.22%2C2.44l51-29.46a9.32%2C9.32%2C0%2C0%2C0%2C4.22-7.31C107.45%2C52.94%2C105.56%2C51.85%2C103.23%2C53.2Z%22%20style%3D%22fill%3A%23ebebeb%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M160.23%2C63.12l-7.11%2C4.1a7.42%2C7.42%2C0%2C0%2C0%2C.06-.94v-2c0-3.67-2.57-5.15-5.74-3.32A11.14%2C11.14%2C0%2C0%2C0%2C144%2C64.2c-.52-4.6-4.13-6.32-8.52-3.79-4.74%2C2.74-8.59%2C9.41-8.59%2C14.89v3.08a8%2C8%2C0%2C0%2C0%2C.73%2C3.56l-5.9%2C3.41a7.06%2C7.06%2C0%2C0%2C0-3.19%2C5.52c0%2C2%2C1.43%2C2.85%2C3.19%2C1.84l38.5-22.23A7.07%2C7.07%2C0%2C0%2C0%2C163.41%2C65C163.41%2C62.93%2C162%2C62.11%2C160.23%2C63.12Z%22%20style%3D%22fill%3A%23ebebeb%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Plants--inject-87%22%3E%3Cg%20id%3D%22freepik--plants--inject-87%22%3E%3Cpath%20d%3D%22M66.33%2C325.21s.74-17.56-5.74-32.3-17-24.94-27.83-27.53-21.34%2C6.13-10.66%2C14.93%2C30.49%2C19.17%2C36%2C46.68Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M66.33%2C325.21s.74-17.56-5.74-32.3-17-24.94-27.83-27.53-21.34%2C6.13-10.66%2C14.93%2C30.49%2C19.17%2C36%2C46.68Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M63.81%2C320.22h.12a.6.6%2C0%2C0%2C0%2C.44-.72C57.24%2C289.08%2C37%2C273.67%2C27.3%2C269.78a.58.58%2C0%2C0%2C0-.77.33.6.6%2C0%2C0%2C0%2C.33.77c9.51%2C3.82%2C29.34%2C18.95%2C36.35%2C48.88A.6.6%2C0%2C0%2C0%2C63.81%2C320.22Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M46%2C352.16c1.65%2C5.32%2C5.67%2C8.22%2C11.12%2C9.28%2C3.47.67%2C9%2C0%2C12-2.17%2C4.08-3%2C5.46-5.2%2C6.31-8.15a49.38%2C49.38%2C0%2C0%2C0%2C1.77-12.06c.1-3-1.52-5.62-2.74-7.35a22.6%2C22.6%2C0%2C0%2C0-2.12-2.35c-.83-.89-1.76-1.66-2.64-2.49a9.56%2C9.56%2C0%2C0%2C1-2.8-4c-.68-2.21%2C0-4.59%2C0-6.9A10.56%2C10.56%2C0%2C0%2C0%2C58.77%2C306a48.74%2C48.74%2C0%2C0%2C0-6.91-1.22c-3.47-.32-7.21.69-10.59-.37s-6.31-2.78-9.77-3.44c-3.62-.69-7.64-.14-10.47%2C2.37a6.52%2C6.52%2C0%2C0%2C0-2.41%2C5.63c.38%2C2.32%2C2.36%2C4%2C4.24%2C5.4s3.93%2C2.92%2C4.55%2C5.18c1.24%2C4.56-4%2C9.14-2.55%2C13.64a7.38%2C7.38%2C0%2C0%2C0%2C4.1%2C4.09%2C47.72%2C47.72%2C0%2C0%2C0%2C4.65%2C1.68%2C18.69%2C18.69%2C0%2C0%2C0%2C2.31.42c2.27.26%2C4.66.78%2C6.37%2C2.43C45%2C344.36%2C44.89%2C348.59%2C46%2C352.16Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M57.31%2C325a.68.68%2C0%2C0%2C0-.17-.21c-10.25-12.92-25.5-18.47-30.59-19.31a.54.54%2C0%2C0%2C0-.61.44.54.54%2C0%2C0%2C0%2C.44.61c4.82.79%2C19%2C5.91%2C29%2C17.71a29%2C29%2C0%2C0%2C0-23%2C3.35.52.52%2C0%2C0%2C0-.12.73.53.53%2C0%2C0%2C0%2C.44.22.57.57%2C0%2C0%2C0%2C.3-.1%2C28.12%2C28.12%2C0%2C0%2C1%2C23.58-2.77c.41.13%2C1.05%2C1.4%2C1.3%2C1.75.48.68.94%2C1.37%2C1.38%2C2.06a44.7%2C44.7%2C0%2C0%2C1%2C2.4%2C4.34%2C43.78%2C43.78%2C0%2C0%2C1%2C1.95%2C4.77c.22.63%2C1%2C4.51%2C1.48%2C4.55a.63.63%2C0%2C0%2C0%2C.59-.51c.32-1.36-.77-3.53-1.22-4.8a44.12%2C44.12%2C0%2C0%2C0-2-4.77A46.14%2C46.14%2C0%2C0%2C0%2C60%2C328.85c-.42-.67-.86-1.32-1.32-2A13.72%2C13.72%2C0%2C0%2C1%2C57.31%2C325Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Device--inject-87%22%3E%3Cg%20id%3D%22freepik--Laptop--inject-87%22%3E%3Cpath%20d%3D%22M62.88%2C357.26c0%2C3.49%2C2.6%2C7.82%2C5.82%2C9.68l126.85%2C73.25a12.88%2C12.88%2C0%2C0%2C0%2C11.66%2C0l223.37-129c3.22-1.85%2C5.83-6.19%2C5.83-9.67s-2.61-7.82-5.83-9.68L303.73%2C218.62a12.86%2C12.86%2C0%2C0%2C0-11.65%2C0L68.7%2C347.58C65.48%2C349.44%2C62.87%2C353.77%2C62.88%2C357.26Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M68.7%2C354.31l126.85%2C73.26a12.94%2C12.94%2C0%2C0%2C0%2C11.66%2C0l223.37-129c3.22-1.86%2C3.22-4.87%2C0-6.73L303.73%2C218.62a12.86%2C12.86%2C0%2C0%2C0-11.65%2C0L68.7%2C347.58C65.48%2C349.44%2C65.48%2C352.45%2C68.7%2C354.31Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M201.38%2C429v12.61a11.84%2C11.84%2C0%2C0%2C1-5.82-1.39L68.7%2C366.94c-3.22-1.86-5.83-6.19-5.83-9.68%2C0-3.27%2C2.3-7.28%2C5.24-9.3-2.61%2C1.87-2.41%2C4.62.59%2C6.35l126.86%2C73.26A11.85%2C11.85%2C0%2C0%2C0%2C201.38%2C429Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M57.41%2C347.79c-3-1.74-2.85-4.68-2.85-8.4V164.18a12.89%2C12.89%2C0%2C0%2C1%2C5.83-10.1l223.37-129c3.22-1.86%2C8.28-1.95%2C11.3-.21s2.85%2C4.69%2C2.85%2C8.4V208.53a12.9%2C12.9%2C0%2C0%2C1-5.82%2C10.09L68.7%2C347.58C65.48%2C349.44%2C60.43%2C349.54%2C57.41%2C347.79Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M297.9%2C33.31c0-3.71-2.61-5.21-5.82-3.37L68.7%2C158.92a11.85%2C11.85%2C0%2C0%2C0-4.12%2C4.35l-8.31-4.83h0a11.88%2C11.88%2C0%2C0%2C1%2C4.12-4.36l223.37-129C287%2C23.26%2C292%2C23.17%2C295%2C24.91S297.9%2C29.6%2C297.9%2C33.31Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M68%2C347.94c-3.21%2C1.5-7.79%2C1.48-10.6-.15-3-1.74-2.85-4.68-2.85-8.4V164.17a11.68%2C11.68%2C0%2C0%2C1%2C1.71-5.73l8.31%2C4.81v0A11.92%2C11.92%2C0%2C0%2C0%2C62.87%2C169V344.22C62.87%2C347.67%2C65.12%2C349.21%2C68%2C347.94Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M71.84%2C165.63%2C287.2%2C41.33c1.93-1.12%2C3.49-.21%2C3.49%2C2v158a7.71%2C7.71%2C0%2C0%2C1-3.49%2C6L71.84%2C331.66c-1.94%2C1.11-3.5.21-3.5-2V171.69A7.72%2C7.72%2C0%2C0%2C1%2C71.84%2C165.63Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M71.84%2C165.63%2C287.2%2C41.33c1.93-1.12%2C3.49-.21%2C3.49%2C2v158a7.71%2C7.71%2C0%2C0%2C1-3.49%2C6L71.84%2C331.66c-1.94%2C1.11-3.5.21-3.5-2V171.69A7.72%2C7.72%2C0%2C0%2C1%2C71.84%2C165.63Z%22%20style%3D%22opacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M84.82%2C347.93%2C292.16%2C228.22a6.44%2C6.44%2C0%2C0%2C1%2C5.83%2C0l3.45%2C1.9c1.61.93%2C1.61%2C2.43%2C0%2C3.36L94.07%2C353.17a6.42%2C6.42%2C0%2C0%2C1-5.82%2C0l-3.42-1.88C83.22%2C350.36%2C83.22%2C348.86%2C84.82%2C347.93Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M101.09%2C357.6%2C308.42%2C237.89a6%2C6%2C0%2C0%2C1%2C5.33-.29l54%2C31.16c1.33.77%2C1.1%2C2.15-.51%2C3.07L160.12%2C391.38a6%2C6%2C0%2C0%2C1-5.33.3l-54.2-31C99.26%2C359.9%2C99.48%2C358.53%2C101.09%2C357.6Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M280.75%2C288.17l6.49-3.75c.28-.16.3-.4.06-.54l-6.22-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C280.75%2C288.17Zm-9.48-13L264.78%2C279c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C271.27%2C275.2Zm-21%2C12.11-11%2C6.34c-.28.16-.3.41-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l11-6.34c.28-.16.3-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C250.3%2C287.31Zm11.48-6.63-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.22-3.58A1%2C1%2C0%2C0%2C0%2C261.78%2C280.68Zm-25.47%2C14.7-6.49%2C3.75c-.27.16-.3.4%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C236.31%2C295.38Zm-9.48%2C5.48-6.5%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C226.83%2C300.86Zm24.34%2C14.63%2C6.49-3.75c.28-.15.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C251.17%2C315.49ZM241.68%2C321l6.49-3.75c.28-.16.3-.4.06-.54L242%2C313.09a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.41-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C241.68%2C321Zm-9.49%2C5.48%2C6.49-3.75c.28-.16.31-.4.06-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C232.19%2C326.45Zm-9.48%2C5.48%2C6.49-3.75c.27-.16.3-.4.05-.55L223%2C324.05a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C222.71%2C331.93Zm48.55-38.28%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C271.26%2C293.65ZM260.66%2C310l14.48-8.37c.27-.16.3-.4.05-.54l-15.08-8.71a1%2C1%2C0%2C0%2C0-.94%2C0l-7.49%2C4.33c-.28.16-.3.4-.06.54l8%2C4.61c.24.14.22.39-.06.55l-6%2C3.46c-.28.16-.3.4-.06.54l6.21%2C3.59A1.1%2C1.1%2C0%2C0%2C0%2C260.66%2C310Zm-43.32-3.68-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C217.34%2C306.34Zm-9.49%2C5.48-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C207.85%2C311.82Zm-52.5%2C58.48a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41-.05.55ZM132%2C355.64l-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C132%2C355.64Zm12%2C11a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.1%2C1.1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.41%2C0%2C.55Zm26.18%2C5.89%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C170.16%2C372.51ZM159.72%2C378a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.06-.54L161%2C370.11a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55Zm-18.29-27.86-6.49%2C3.75c-.27.16-.3.4-.05.55L141.1%2C358a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C141.43%2C350.16Zm47.44-27.39-6.49%2C3.75c-.27.16-.3.4%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C188.87%2C322.77Zm-38%2C21.92-6.49%2C3.74c-.28.16-.3.41-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C150.92%2C344.69Zm47.44-27.39L191.87%2C321c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C198.36%2C317.3Zm-19%2C10.95-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.4.06-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C179.39%2C328.25Zm-9.49%2C5.48-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C169.9%2C333.73Zm-9.49%2C5.48L153.92%2C343c-.28.16-.3.41-.06.55l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.15.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C160.41%2C339.21Zm43.32%2C3.67%2C6.49-3.75c.28-.15.3-.4.06-.54L204.07%2C335a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C203.73%2C342.88Zm88.51-79.79-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C292.24%2C263.09Zm-11.48%2C6.63-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1.07%2C1.07%2C0%2C0%2C0%2C280.76%2C269.72Zm21-12.1-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C301.73%2C257.62Zm-52.44%2C48.71%2C6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C249.29%2C306.33Zm62.87-54.22a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55ZM213.22%2C337.4l6.49-3.74c.27-.16.3-.41%2C0-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C213.22%2C337.4Zm116.35-67.17%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C329.57%2C270.23Zm-18.36.35%2C6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C311.21%2C270.58ZM321%2C257.23a1%2C1%2C0%2C0%2C0-.94%2C0L313.6%2C261c-.28.16-.3.4-.06.54l6.21%2C3.59a1.1%2C1.1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55Zm2-1.16%2C15.08%2C8.71a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-15.09-8.71a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75C322.81%2C255.69%2C322.79%2C255.93%2C323%2C256.07Zm-21.91%2C12.15-6.5%2C3.74c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C301.12%2C268.22Zm-71.41%2C41.22-6.5%2C3.75c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C229.71%2C309.44Zm89.43-33.7a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54ZM239.19%2C304l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C239.19%2C304Zm-74.36%2C60.86a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.27-.16.3-.41%2C0-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-11-11.56L147.31%2C357c-.28.15-.3.4-.06.54l6.22%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C153.8%2C353.27Zm21.47%2C6.05%2C6.49-3.75c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59A1.06%2C1.06%2C0%2C0%2C0%2C175.27%2C359.32Zm9.48-5.48%2C6.49-3.75c.28-.16.31-.4.06-.54L185.09%2C346a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C184.75%2C353.84Zm9.49-5.48%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C194.24%2C348.36Zm-31-.57-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C163.29%2C347.79Zm9.49-5.48-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C172.78%2C342.31Zm37.95-21.91-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.1%2C1.1%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.41%2C0-.55l-6.21-3.58A1%2C1%2C0%2C0%2C0%2C210.73%2C320.4Zm-9.49%2C5.48-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.22-3.58A1%2C1%2C0%2C0%2C0%2C201.24%2C325.88Zm19-11-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C220.22%2C314.92Zm-37.95%2C21.91-6.5%2C3.75c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1%2C1%2C0%2C0%2C0%2C182.27%2C336.83Zm9.48-5.47-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59A1.06%2C1.06%2C0%2C0%2C0%2C191.75%2C331.36ZM179.64%2C367l6.5-3.74c.27-.16.3-.41.05-.55L180%2C359.16a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C179.64%2C367Zm-50-2.36-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L116%2C364.87c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74C129.83%2C365.06%2C129.86%2C364.81%2C129.61%2C364.67ZM142%2C367.78l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-10%2C5.77c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l10-5.77C142.2%2C368.16%2C142.22%2C367.92%2C142%2C367.78Zm-21.64-10.19L114.13%2C354a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l8-4.62C120.56%2C358%2C120.59%2C357.73%2C120.34%2C357.59Zm6.13-3.54a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.74c-.27.16-.3.41%2C0%2C.55Zm26.88%2C17.41-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-12.49%2C7.21c-.27.16-.3.4-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0L153.29%2C372C153.57%2C371.84%2C153.59%2C371.6%2C153.35%2C371.46Zm4.38%2C7.71-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-8%2C4.61c-.27.16-.3.41-.05.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61C158%2C379.56%2C158%2C379.32%2C157.73%2C379.17ZM197%2C313.33a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.15.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55Zm-19%2C10.95a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55ZM136%2C348.58a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54Zm51.57-29.78a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0L195%2C315c.27-.16.3-.4%2C0-.54l-6.21-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55Zm-19%2C11a1%2C1%2C0%2C0%2C0%2C.94%2C0L176%2C326c.28-.16.3-.4.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4%2C0%2C.54Zm-6.16%2C49.8a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-10%2C5.77c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l10-5.76c.28-.16.3-.41.06-.55Zm-7.46-41.94a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-9.49%2C5.48a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L139.29%2C339c-.28.16-.3.4-.06.54Zm192.72-65a1%2C1%2C0%2C0%2C0-.94%2C0l-16%2C9.22c-.28.16-.3.4-.06.55l6.22%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l16-9.23c.27-.16.3-.4.05-.54Zm-21%2C12.11a1%2C1%2C0%2C0%2C0-.94%2C0L309.76%2C294c-.28.16-.31.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.4.06-.54ZM189.13%2C361.56l6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1.07%2C1.07%2C0%2C0%2C0%2C189.13%2C361.56Zm109.08-60.42a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.41.05-.55Zm49.44-28.54a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.74c.27-.16.3-.41.05-.55Zm15.7-1.9L348.27%2C262a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.15-.3.4-.05.54L355.86%2C275a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75C363.57%2C271.09%2C363.59%2C270.84%2C363.35%2C270.7ZM262.76%2C321.61a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.41-.06.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61c.28-.16.3-.41.06-.55Zm24-13.84a1%2C1%2C0%2C0%2C0-.94%2C0l-10%2C5.77c-.28.16-.3.4-.06.54L282%2C317.7a1.1%2C1.1%2C0%2C0%2C0%2C.95%2C0l10-5.77c.28-.16.3-.4.06-.55Zm-45.94%2C26.52a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-53.43%2C30.84c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58a1%2C1%2C0%2C0%2C0%2C.94%2C0l53.43-30.85c.28-.16.3-.4.06-.54Zm-56.43%2C32.58a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-8%2C4.62c-.28.16-.31.4-.06.54l6.21%2C3.59a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l8-4.62c.28-.16.3-.4.06-.54ZM251.77%2C328a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.62c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l8-4.61c.27-.16.3-.4.05-.54Zm-78.4%2C45.26a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.28.16-.3.4-.06.54l6.21%2C3.59a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l8-4.61c.27-.16.3-.41.05-.55Zm100.37-57.94a1%2C1%2C0%2C0%2C0-.94%2C0l-8%2C4.61c-.27.16-.3.4-.05.54L271%2C324a1%2C1%2C0%2C0%2C0%2C.94%2C0l8-4.61c.28-.16.3-.41.06-.55Zm34-19.61a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54l6.21%2C3.59a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54ZM329%2C280.83l6.5-3.75c.27-.16.3-.4.05-.54L329.29%2C273a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C329%2C280.83Zm-38.71%2C1.86%2C6.49-3.75c.27-.15.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.74c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C290.24%2C282.69Zm-25.21%2C35%2C19-11c.28-.16.3-.41.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-19%2C10.95c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C265%2C317.73Zm53.49-31.39a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.4.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm-7.93-5.16%2C6.5-3.74c.27-.16.3-.41.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C310.59%2C281.18Zm-55%2C42%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C255.55%2C323.21Zm42-24.76a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4-.05.54ZM208.11%2C350.6l6.49-3.75c.27-.16.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0L201%2C346.5c-.28.16-.3.4-.06.55l6.21%2C3.58A1.06%2C1.06%2C0%2C0%2C0%2C208.11%2C350.6Zm9.49-5.48%2C6.49-3.75c.27-.16.3-.4%2C0-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0L210.5%2C341c-.28.16-.3.41-.06.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C217.6%2C345.12Zm-19%2C11%2C6.49-3.75c.28-.16.3-.4.06-.55L199%2C348.2a1.06%2C1.06%2C0%2C0%2C0-1%2C0L191.52%2C352c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C198.62%2C356.08Zm37.95-21.91%2C6.49-3.75c.28-.16.3-.41.06-.55l-6.21-3.58a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54l6.21%2C3.59A1.07%2C1.07%2C0%2C0%2C0%2C236.57%2C334.17Zm-9.49%2C5.47%2C6.49-3.74c.28-.16.31-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0L220%2C335.55c-.28.16-.31.4-.06.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C227.08%2C339.64Zm19-10.95%2C6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-1%2C0L239%2C324.59c-.27.16-.3.4-.05.54l6.21%2C3.59A1%2C1%2C0%2C0%2C0%2C246.06%2C328.69Zm51.77-76.21a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-1.66-1a1%2C1%2C0%2C0%2C0-.94%2C0L296.24%2C251c-.28.16-.3.41-.06.55Zm-47.15%2C29.86a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54L252%2C274.43a1.06%2C1.06%2C0%2C0%2C0-1%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.55Zm19-10.95a1.06%2C1.06%2C0%2C0%2C0%2C1%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.15-.3.4-.06.54ZM239.09%2C289a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.5-3.75c.27-.16.3-.4.05-.54l-6.21-3.59a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm21.07-12.17a1%2C1%2C0%2C0%2C0%2C.95%2C0l6.49-3.75c.27-.16.3-.4%2C0-.54L261.44%2C269a1%2C1%2C0%2C0%2C0-.94%2C0L254%2C272.73c-.28.16-.3.41-.06.55ZM220.11%2C300a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.28-.16.3-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-1%2C0L214%2C295.86c-.28.16-.3.4-.06.54Zm9.49-5.48a1.1%2C1.1%2C0%2C0%2C0%2C1%2C0l6.49-3.75c.27-.16.3-.4.05-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.4-.06.54Zm49.26-31.07a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.55l-1.65-.95a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.75c-.27.16-.3.4-.05.54ZM307.32%2C247a1.06%2C1.06%2C0%2C0%2C0%2C.95%2C0l6.49-3.74c.27-.16.3-.41.05-.55l-1.65-1a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.31.4-.06.54Zm13.05%2C7.53a1.07%2C1.07%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.31-.41.06-.55l-6.21-3.58a1%2C1%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.4%2C0%2C.54Zm18.07%2C20.81%2C6.49-3.75c.28-.16.31-.4.06-.54l-6.21-3.59a1.07%2C1.07%2C0%2C0%2C0-.94%2C0l-6.5%2C3.75c-.27.16-.3.41%2C0%2C.55l6.21%2C3.58A1%2C1%2C0%2C0%2C0%2C338.44%2C275.35ZM288.35%2C258a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-1.66-1a1%2C1%2C0%2C0%2C0-.94%2C0l-6.49%2C3.75c-.28.16-.3.41-.06.55Zm-77.72%2C47.5a1%2C1%2C0%2C0%2C0%2C.94%2C0l6.49-3.75c.28-.16.3-.4.06-.54l-6.21-3.59a1.06%2C1.06%2C0%2C0%2C0-.95%2C0l-6.49%2C3.74c-.27.16-.3.41-.05.55Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22238.71%20354.4%20240.04%20355.17%20275.39%20375.57%20338.26%20339.27%20339.57%20338.53%20302.89%20317.35%20238.71%20354.4%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpolygon%3E%3Cpolygon%20points%3D%22240.04%20355.17%20275.39%20375.57%20338.26%20339.27%20302.89%20318.86%20240.04%20355.17%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpolygon%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Window--inject-87%22%3E%3Cg%20id%3D%22freepik--window--inject-87%22%3E%3Cg%20id%3D%22freepik--window--inject-87%22%3E%3Cpath%20d%3D%22M90.55%2C340.63a4.12%2C4.12%2C0%2C0%2C1-1.83.56%2C4.63%2C4.63%2C0%2C0%2C1-2.68-.47%2C5%2C5%2C0%2C0%2C1-2.19-4V207.37l4.38%2C2.53V339.28c0%2C1.06.53%2C1.67%2C1.29%2C1.67A2.25%2C2.25%2C0%2C0%2C0%2C90.55%2C340.63Z%22%20style%3D%22fill%3A%23f0f0f0%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C211.68a5.16%2C5.16%2C0%2C0%2C1-2.32%2C4L90.55%2C340.63c-1.28.74-2.33.14-2.33-1.35V194.74l6.42-3.7c1.28-.74%2C3.37-12%2C4.66-12.79l55.59-32.1c1.3-.74%2C4.33%2C7.6%2C5.61%2C6.86L309%2C67.13V211.68Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M307.9%2C69V211.68a4.1%2C4.1%2C0%2C0%2C1-1.79%2C3.1L90%2C339.7a1%2C1%2C0%2C0%2C1-.5.17c-.21%2C0-.21-.56-.21-.59V195.36L95.18%2C192c.93-.54%2C1.51-2.35%2C2.81-7a34.61%2C34.61%2C0%2C0%2C1%2C1.93-5.82L155%2C147.32a25.13%2C25.13%2C0%2C0%2C1%2C1.75%2C2.8c1.5%2C2.64%2C2.34%2C4%2C3.56%2C4a1.38%2C1.38%2C0%2C0%2C0%2C.71-.19L307.9%2C69M155.43%2C147.08h0M100%2C179.1h0m209-112L160.5%2C153a.34.34%2C0%2C0%2C1-.17.05c-1.31%2C0-4-7-5.26-7a.41.41%2C0%2C0%2C0-.18.05L99.3%2C178.25C98%2C179%2C95.92%2C190.3%2C94.64%2C191l-6.42%2C3.7V339.28c0%2C1.06.53%2C1.67%2C1.29%2C1.67a2.1%2C2.1%2C0%2C0%2C0%2C1-.32l216.1-124.91a5.16%2C5.16%2C0%2C0%2C0%2C2.32-4V67.13Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M86%2C201.91A5%2C5%2C0%2C0%2C1%2C83.85%2C198V179.77a5.15%2C5.15%2C0%2C0%2C1%2C2.34-4L302.27%2C50.81a4.38%2C4.38%2C0%2C0%2C1%2C6.7%2C3.87v18.2a5.13%2C5.13%2C0%2C0%2C1-2.32%2C4L90.55%2C201.83A5%2C5%2C0%2C0%2C1%2C86%2C201.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C54.3c-.16-1.2-1.14-1.64-2.3-1L90.55%2C178.25A4.89%2C4.89%2C0%2C0%2C0%2C88.9%2C180l-4.37-2.53a4.78%2C4.78%2C0%2C0%2C1%2C1.65-1.74L302.28%2C50.82A4.34%2C4.34%2C0%2C0%2C1%2C309%2C54.3Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M88.9%2C180a4.73%2C4.73%2C0%2C0%2C0-.68%2C2.29V209.9l-4.38-2.53v-27.6c0-.1%2C0-.19%2C0-.28a4.71%2C4.71%2C0%2C0%2C1%2C.09-.58%2C5.15%2C5.15%2C0%2C0%2C1%2C.59-1.44Z%22%20style%3D%22opacity%3A0.1%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C54.68V67.13L160.5%2C153c-1.28.74-2.32.14-2.32-1.35V147c0-1.49-1.05-2.09-2.34-1.35L99.3%2C178.25a5.15%2C5.15%2C0%2C0%2C0-2.34%2C4V187a5.15%2C5.15%2C0%2C0%2C1-2.32%2C4l-6.42%2C3.7V182.29a5.17%2C5.17%2C0%2C0%2C1%2C2.33-4L306.65%2C53.33C307.93%2C52.59%2C309%2C53.19%2C309%2C54.68Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.05%2C62.49c1.62-.94%2C2.93-.18%2C2.93%2C1.69a6.47%2C6.47%2C0%2C0%2C1-2.93%2C5.08c-1.62.94-2.94.18-2.94-1.69A6.48%2C6.48%2C0%2C0%2C1%2C298.05%2C62.49Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M287.49%2C68.58c1.62-.94%2C2.93-.18%2C2.93%2C1.69a6.49%2C6.49%2C0%2C0%2C1-2.93%2C5.08c-1.62.93-2.93.18-2.93-1.69A6.47%2C6.47%2C0%2C0%2C1%2C287.49%2C68.58Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M276.93%2C74.66c1.62-.93%2C2.93-.17%2C2.93%2C1.7a6.49%2C6.49%2C0%2C0%2C1-2.93%2C5.08c-1.62.93-2.93.17-2.93-1.7A6.49%2C6.49%2C0%2C0%2C1%2C276.93%2C74.66Z%22%20style%3D%22fill%3A%23fff%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M309%2C67.13V82.29L88.22%2C209.9V194.74L93%2C192c1.28-.75%2C1.71-1.88%2C2.33-4L97%2C182.29c.51-2%2C1.05-3.3%2C2.34-4l55.59-32.1c1.3-.74%2C2.3-.82%2C3.29.8l2%2C3.62c.73%2C1.26%2C1.1%2C2%2C2.38%2C1.26Z%22%20style%3D%22fill%3A%23e6e6e6%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%2288.22%20194.74%2088.22%20209.9%2083.84%20207.37%2083.84%20192.22%2088.22%20194.74%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M98.91%2C195.83%2C95.25%2C198l1.4-2.69a.65.65%2C0%2C0%2C0%2C0-.65c-.1-.13-.29%2C0-.41.2l-2%2C3.81v0a.58.58%2C0%2C0%2C0%2C0%2C.14.08.08%2C0%2C0%2C0%2C0%2C0%2C.75.75%2C0%2C0%2C0%2C0%2C.2.43.43%2C0%2C0%2C0%2C0%2C.17l0%2C0a.22.22%2C0%2C0%2C0%2C0%2C.08h0l2%2C1.52a.17.17%2C0%2C0%2C0%2C.19%2C0%2C.53.53%2C0%2C0%2C0%2C.22-.28c.11-.25.1-.53%2C0-.62l-1.4-1.08%2C3.66-2.11a.78.78%2C0%2C0%2C0%2C.3-.62C99.21%2C195.87%2C99.07%2C195.74%2C98.91%2C195.83Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M102%2C194.07l3.66-2.11-1.4-1.07a.61.61%2C0%2C0%2C1%2C0-.63c.11-.25.3-.37.42-.28l2%2C1.53h0a.22.22%2C0%2C0%2C1%2C0%2C.08l0%2C0a.79.79%2C0%2C0%2C1%2C0%2C.17%2C1.5%2C1.5%2C0%2C0%2C1%2C0%2C.2s0%2C0%2C0%2C0a.58.58%2C0%2C0%2C1%2C0%2C.14v0l-2%2C3.82a.62.62%2C0%2C0%2C1-.2.22.16.16%2C0%2C0%2C1-.22%2C0%2C.69.69%2C0%2C0%2C1%2C0-.65l1.4-2.69L102%2C195c-.17.09-.3%2C0-.3-.29A.75.75%2C0%2C0%2C1%2C102%2C194.07Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M114%2C183.53c0-.22-.22-.19-.31.05l-.51%2C1.23c-.85-.1-1.89.74-2.58%2C2.22-.91%2C1.92-.91%2C4.19%2C0%2C5.06a1.3%2C1.3%2C0%2C0%2C0%2C1.64.1%2C4.54%2C4.54%2C0%2C0%2C0%2C1.64-2%2C.6.6%2C0%2C0%2C0%2C0-.64c-.11-.11-.3%2C0-.41.24-.68%2C1.43-1.78%2C2.07-2.46%2C1.42s-.67-2.35%2C0-3.78c.48-1%2C1.18-1.62%2C1.78-1.66l-.38.92c-.1.24%2C0%2C.47.15.37l1.49-1a.52.52%2C0%2C0%2C0%2C.17-.41Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M153.29%2C153.07l1.33-2.82a.85.85%2C0%2C0%2C0%2C0-.88c-.15-.16-.41%2C0-.57.33l-1.33%2C2.82-1.33-1.28c-.16-.16-.42%2C0-.58.33a.88.88%2C0%2C0%2C0%2C0%2C.87l1.34%2C1.29-1.34%2C2.82a.9.9%2C0%2C0%2C0%2C0%2C.88.23.23%2C0%2C0%2C0%2C.29%2C0%2C.81.81%2C0%2C0%2C0%2C.29-.35l1.33-2.82%2C1.33%2C1.28a.22.22%2C0%2C0%2C0%2C.29%2C0%2C.8.8%2C0%2C0%2C0%2C.28-.35.85.85%2C0%2C0%2C0%2C0-.88Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M118.82%2C187v-4.72a5.18%2C5.18%2C0%2C0%2C1%2C2.33-4L293.53%2C78.63c1.29-.74%2C2.33-.14%2C2.33%2C1.35v4.71a5.14%2C5.14%2C0%2C0%2C1-2.33%2C4L121.15%2C188.35C119.87%2C189.09%2C118.82%2C188.49%2C118.82%2C187Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M290.36%2C89.09a.46.46%2C0%2C0%2C1-.21%2C0%2C.62.62%2C0%2C0%2C1-.35-.7l.23-1.92-.9-.64a.69.69%2C0%2C0%2C1-.25-.52%2C1.06%2C1.06%2C0%2C0%2C1%2C.39-.82l1.37-1a.32.32%2C0%2C0%2C0%2C.06-.11l.61-2a.86.86%2C0%2C0%2C1%2C.69-.65.56.56%2C0%2C0%2C1%2C.54.32h0l.51%2C1.1%2C1.16-.45a.54.54%2C0%2C0%2C1%2C.61.14.84.84%2C0%2C0%2C1%2C0%2C1l-1%2C1.86a.36.36%2C0%2C0%2C0%2C0%2C.11l.23%2C1.68a1%2C1%2C0%2C0%2C1-.29.84.64.64%2C0%2C0%2C1-.54.21l-1.12-.14-1.21%2C1.54A.69.69%2C0%2C0%2C1%2C290.36%2C89.09Zm-.66-3.89.89.65a.63.63%2C0%2C0%2C1%2C.24.64l-.15%2C1.27.81-1a.7.7%2C0%2C0%2C1%2C.62-.29l1.11.14a.27.27%2C0%2C0%2C0%2C0-.13L293%2C84.77a1%2C1%2C0%2C0%2C1%2C.12-.6l.87-1.63-.89.34a.55.55%2C0%2C0%2C1-.71-.28l-.41-.86-.54%2C1.78a1%2C1%2C0%2C0%2C1-.34.51l-1.37%2C1.06A.29.29%2C0%2C0%2C0%2C289.7%2C85.2Zm2.31%2C2Zm-1.89-.74Zm1.69-5.2Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3Cg%20style%3D%22opacity%3A0.5%22%3E%3Cpath%20d%3D%22M298.61%2C78.06a.81.81%2C0%2C0%2C1-.7-.41.8.8%2C0%2C0%2C1%2C.29-1.1l6.56-3.78a.8.8%2C0%2C1%2C1%2C.81%2C1.39L299%2C78A.86.86%2C0%2C0%2C1%2C298.61%2C78.06Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.61%2C81.85a.81.81%2C0%2C0%2C1-.7-.41.8.8%2C0%2C0%2C1%2C.29-1.1l6.56-3.79a.81.81%2C0%2C0%2C1%2C.81%2C1.4L299%2C81.74A.86.86%2C0%2C0%2C1%2C298.61%2C81.85Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M298.61%2C85.63a.8.8%2C0%2C0%2C1-.41-1.5l6.56-3.79a.81.81%2C0%2C0%2C1%2C.81%2C1.4L299%2C85.53A.85.85%2C0%2C0%2C1%2C298.61%2C85.63Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Shield--inject-87%22%3E%3Cg%20id%3D%22freepik--shield--inject-87%22%3E%3Cpath%20d%3D%22M208.38%2C156.24c-4.59%2C4.12-8.55%2C3.9-11%2C2-2.48%2C4.76-6.44%2C9.55-11%2C10.73L183.72%2C176s1.4%2C1.62%2C1.4%2C5.48a19.26%2C19.26%2C0%2C0%2C1-.64%2C4.8%2C25.41%2C25.41%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C7.74%2C7.74%2C0%2C0%2C0%2C2.87%2C2.87l-4-2.29a8%2C8%2C0%2C0%2C1-3-3%2C12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.35%2C25.35%2C0%2C0%2C1%2C1.1-7.18%2C19.32%2C19.32%2C0%2C0%2C0%2C.65-4.8c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.17%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.13%2C11-2Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M194.68%2C156.69l-1.45-.84A6.31%2C6.31%2C0%2C0%2C0%2C194.68%2C156.69Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.8%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M204.25%2C153.86c-3.77%2C3.39-7.12%2C3.84-9.57%2C2.83l2.68%2C1.55c2.47%2C1.9%2C6.43%2C2.12%2C11-2Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.85%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M193.23%2C155.85c-2.48%2C4.77-6.44%2C9.56-11%2C10.73l4.13%2C2.39c4.58-1.18%2C8.54-6%2C11-10.73Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.65%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22182.21%20166.58%20179.59%20173.65%20183.72%20176.04%20186.34%20168.97%20182.21%20166.58%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.55%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M184.81%2C199.89a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.26%2C19.26%2C0%2C0%2C0%2C.64-4.8c0-3.86-1.4-5.48-1.4-5.48l-4.13-2.39s1.41%2C1.62%2C1.41%2C5.49a19.32%2C19.32%2C0%2C0%2C1-.65%2C4.8%2C25.35%2C25.35%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C8%2C8%2C0%2C0%2C0%2C3%2C3l4%2C2.29A7.74%2C7.74%2C0%2C0%2C1%2C184.81%2C199.89Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M184.81%2C199.89a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.26%2C19.26%2C0%2C0%2C0%2C.64-4.8c0-3.86-1.4-5.48-1.4-5.48l-4.13-2.39s1.41%2C1.62%2C1.41%2C5.49a19.32%2C19.32%2C0%2C0%2C1-.65%2C4.8%2C25.35%2C25.35%2C0%2C0%2C0-1.1%2C7.18%2C12.54%2C12.54%2C0%2C0%2C0%2C1.43%2C6.39%2C8%2C8%2C0%2C0%2C0%2C3%2C3l4%2C2.29A7.74%2C7.74%2C0%2C0%2C1%2C184.81%2C199.89Z%22%20style%3D%22opacity%3A0.05%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M197.36%2C204.74c-6.85.07-10.77-1.74-12.55-4.85a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.24%2C19.24%2C0%2C0%2C0%2C.65-4.79c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.18%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.12%2C11-2l2.62%2C4a19.87%2C19.87%2C0%2C0%2C0-1.41%2C7.11%2C11.69%2C11.69%2C0%2C0%2C0%2C.65%2C4%2C14%2C14%2C0%2C0%2C1%2C1.09%2C5.92%2C23.71%2C23.71%2C0%2C0%2C1-1.42%2C8C208.13%2C190.57%2C204.21%2C196.9%2C197.36%2C204.74Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M197.36%2C204.74c-6.85.07-10.77-1.74-12.55-4.85a12.54%2C12.54%2C0%2C0%2C1-1.43-6.39%2C25.41%2C25.41%2C0%2C0%2C1%2C1.1-7.18%2C19.24%2C19.24%2C0%2C0%2C0%2C.65-4.79c0-3.87-1.41-5.49-1.41-5.49l2.62-7.07c4.58-1.18%2C8.54-6%2C11-10.73%2C2.47%2C1.91%2C6.43%2C2.12%2C11-2l2.62%2C4a19.87%2C19.87%2C0%2C0%2C0-1.41%2C7.11%2C11.69%2C11.69%2C0%2C0%2C0%2C.65%2C4%2C14%2C14%2C0%2C0%2C1%2C1.09%2C5.92%2C23.71%2C23.71%2C0%2C0%2C1-1.42%2C8C208.13%2C190.57%2C204.21%2C196.9%2C197.36%2C204.74Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.75%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M196.55%2C203c-5.31-.07-8.74-1.39-10.2-4a10.7%2C10.7%2C0%2C0%2C1-1.19-5.51%2C21.92%2C21.92%2C0%2C0%2C1%2C.88-6.1c.05-.22.11-.43.16-.65a20.6%2C20.6%2C0%2C0%2C0%2C.7-5.22%2C12.12%2C12.12%2C0%2C0%2C0-1.21-5.69l2-5.43c4.91-1.7%2C8.46-6.55%2C10.34-9.73a8%2C8%2C0%2C0%2C0%2C3.2.65%2C11.47%2C11.47%2C0%2C0%2C0%2C6.72-2.46l1%2C1.64a22%2C22%2C0%2C0%2C0-1.2%2C6.89%2C13.41%2C13.41%2C0%2C0%2C0%2C.75%2C4.64c.06.15.12.31.17.47a11.72%2C11.72%2C0%2C0%2C1%2C.82%2C4.86%2C22%2C22%2C0%2C0%2C1-1.32%2C7.45C206.48%2C189.91%2C202.55%2C196%2C196.55%2C203Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M187.57%2C200.48c1.81%2C1.59%2C4.81%2C2.43%2C9%2C2.48l-2.66-1.52A19.35%2C19.35%2C0%2C0%2C1%2C187.57%2C200.48Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.8%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22207.63%20159.71%20209.01%20160.5%20207.96%20158.87%20207.36%20159.29%20207.63%20159.71%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M207.18%2C171.24a13.41%2C13.41%2C0%2C0%2C1-.75-4.64%2C21.74%2C21.74%2C0%2C0%2C1%2C1.2-6.89l-.27-.42a11.12%2C11.12%2C0%2C0%2C1-6.12%2C2%2C8%2C8%2C0%2C0%2C1-3.2-.65c-1.88%2C3.18-5.43%2C8-10.34%2C9.73l-2%2C5.43a12.12%2C12.12%2C0%2C0%2C1%2C1.21%2C5.69%2C20.6%2C20.6%2C0%2C0%2C1-.7%2C5.22c0%2C.22-.11.43-.16.65a21.92%2C21.92%2C0%2C0%2C0-.88%2C6.1%2C10.7%2C10.7%2C0%2C0%2C0%2C1.19%2C5.51%2C6.05%2C6.05%2C0%2C0%2C0%2C1.73%2C1.88%2C17.87%2C17.87%2C0%2C0%2C0%2C7.08%2C1.27c6-6.95%2C9.93-13%2C11.68-18.14a22%2C22%2C0%2C0%2C0%2C1.33-7.45%2C11.89%2C11.89%2C0%2C0%2C0-.82-4.86C207.29%2C171.55%2C207.23%2C171.39%2C207.18%2C171.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M187.7%2C170.41l-2%2C5.43a12.12%2C12.12%2C0%2C0%2C1%2C1.21%2C5.69%2C20.6%2C20.6%2C0%2C0%2C1-.7%2C5.22c0%2C.22-.11.43-.16.65a21.92%2C21.92%2C0%2C0%2C0-.88%2C6.1%2C10.7%2C10.7%2C0%2C0%2C0%2C1.19%2C5.51%2C6.05%2C6.05%2C0%2C0%2C0%2C1.73%2C1.88%2C17.87%2C17.87%2C0%2C0%2C0%2C7.08%2C1.27v-20l2.88-.87V160.68a32.06%2C32.06%2C0%2C0%2C1-2.88%2C4.11A17.6%2C17.6%2C0%2C0%2C1%2C187.7%2C170.41Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M202.1%2C174.77a.91.91%2C0%2C0%2C0-.11-.16l0%2C0a1.18%2C1.18%2C0%2C0%2C0-.29-.23l-1-.56a2.25%2C2.25%2C0%2C0%2C0-.55-.21l-.35-.05v-2.85a3.4%2C3.4%2C0%2C0%2C0-1.48-3.1%2C3%2C3%2C0%2C0%2C0-3.13.2%2C8.22%2C8.22%2C0%2C0%2C0-3.66%2C6.59v3.36l-1.92%2C1.1-.16.11-.05%2C0h0a.71.71%2C0%2C0%2C0-.27.53v11.52a.77.77%2C0%2C0%2C0%2C0%2C.15.89.89%2C0%2C0%2C0%2C.37.47l.1.07.47.27.5.28a1.78%2C1.78%2C0%2C0%2C0%2C.61.22%2C2.59%2C2.59%2C0%2C0%2C0%2C1.75-.22l8.73-5a.84.84%2C0%2C0%2C0%2C.49-.68V175A.68.68%2C0%2C0%2C0%2C202.1%2C174.77Zm-8.68-.39a6.37%2C6.37%2C0%2C0%2C1%2C2.72-5%2C1.33%2C1.33%2C0%2C0%2C1%2C1.24-.2%2C1.67%2C1.67%2C0%2C0%2C1%2C.54%2C1.47v3.36l-2.48%2C1.43-2%2C1.17Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--Padlock--inject-87%22%3E%3Cpath%20d%3D%22M203.18%2C175.55a.82.82%2C0%2C0%2C0-.49-.68l-1-.56a2.65%2C2.65%2C0%2C0%2C0-2.36%2C0l-8.73%2C5a.83.83%2C0%2C0%2C0-.49.68h0v11.53h0a.82.82%2C0%2C0%2C0%2C.49.68l1%2C.56a2.61%2C2.61%2C0%2C0%2C0%2C2.37%2C0l8.72-5a.82.82%2C0%2C0%2C0%2C.49-.68h0V175.55Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M191.6%2C181.27l-1-.55a.73.73%2C0%2C0%2C1%2C0-1.37l8.73-5a2.65%2C2.65%2C0%2C0%2C1%2C2.36%2C0l1%2C.56a.71.71%2C0%2C0%2C1%2C0%2C1.36l-8.72%2C5A2.61%2C2.61%2C0%2C0%2C1%2C191.6%2C181.27Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.4%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M192.79%2C181.55v11.53a2.43%2C2.43%2C0%2C0%2C1-1.19-.28l-1-.56a.81.81%2C0%2C0%2C1-.49-.68V180a.83.83%2C0%2C0%2C0%2C.49.69l1%2C.55A2.43%2C2.43%2C0%2C0%2C0%2C192.79%2C181.55Z%22%20style%3D%22opacity%3A0.1%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M199.14%2C187.26l-2.09%2C1.2.32-3.77a1%2C1%2C0%2C0%2C1-.4-.92%2C2.71%2C2.71%2C0%2C0%2C1%2C1.12-2.16c.63-.35%2C1.13%2C0%2C1.13.86a2.83%2C2.83%2C0%2C0%2C1-.41%2C1.39Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22199.14%20187.26%20197.25%20186.17%20197.05%20188.46%20199.14%20187.26%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M198.09%2C181.61a2.52%2C2.52%2C0%2C0%2C0-1%2C1.28l1.68%2C1h0a2.83%2C2.83%2C0%2C0%2C0%2C.41-1.39C199.22%2C181.64%2C198.72%2C181.26%2C198.09%2C181.61Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M200.82%2C175.81h0V171.2a3.38%2C3.38%2C0%2C0%2C0-1.48-3.1%2C3%2C3%2C0%2C0%2C0-3.12.19%2C8.22%2C8.22%2C0%2C0%2C0-3.67%2C6.59v4.64h0a.47.47%2C0%2C0%2C0%2C.28.38%2C1.48%2C1.48%2C0%2C0%2C0%2C1.33%2C0%2C.45.45%2C0%2C0%2C0%2C.28-.38h0v-4.64a6.37%2C6.37%2C0%2C0%2C1%2C2.72-4.95%2C1.33%2C1.33%2C0%2C0%2C1%2C1.24-.2%2C1.66%2C1.66%2C0%2C0%2C1%2C.54%2C1.47v4.61h0a.45.45%2C0%2C0%2C0%2C.28.38%2C1.48%2C1.48%2C0%2C0%2C0%2C1.33%2C0%2C.45.45%2C0%2C0%2C0%2C.27-.38Z%22%20style%3D%22fill%3A%23e0e0e0%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cpath%20d%3D%22M129.34%2C253c.13-.07.23-.08.3%2C0a.69.69%2C0%2C0%2C1%2C.14.25l2.12%2C8.23a.58.58%2C0%2C0%2C1%2C0%2C.2.66.66%2C0%2C0%2C1-.06.27.35.35%2C0%2C0%2C1-.15.18l-1.23.71c-.13.08-.22.09-.28%2C0a.32.32%2C0%2C0%2C1-.1-.18l-.27-1.09L127.26%2C263l-.28%2C1.41a.81.81%2C0%2C0%2C1-.1.3.6.6%2C0%2C0%2C1-.28.29l-1.22.71a.13.13%2C0%2C0%2C1-.16%2C0%2C.28.28%2C0%2C0%2C1-.06-.2%2C1%2C1%2C0%2C0%2C1%2C0-.24l2.12-10.68a2.07%2C2.07%2C0%2C0%2C1%2C.15-.41.69.69%2C0%2C0%2C1%2C.29-.34Zm-1.58%2C7.47%2C1.58-.91-.79-3.15Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M133%2C254a.8.8%2C0%2C0%2C1%2C.08-.33.5.5%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.79a1.81%2C1.81%2C0%2C0%2C0%2C.18.93c.13.19.33.2.62%2C0a1.37%2C1.37%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14V252a.78.78%2C0%2C0%2C1%2C.07-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v7a.8.8%2C0%2C0%2C1-.08.33.46.46%2C0%2C0%2C1-.18.22l-1.13.65a.14.14%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-.34a3.15%2C3.15%2C0%2C0%2C1-.19.43%2C2.27%2C2.27%2C0%2C0%2C1-.27.44%2C3.16%2C3.16%2C0%2C0%2C1-.39.44%2C2.69%2C2.69%2C0%2C0%2C1-.52.38c-.63.36-1.13.38-1.5%2C0a3.12%2C3.12%2C0%2C0%2C1-.57-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M142%2C253.1a.85.85%2C0%2C0%2C0%2C.09.47c.07.09.18.09.33%2C0l.77-.45a.14.14%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.51a.8.8%2C0%2C0%2C1-.08.33.45.45%2C0%2C0%2C1-.19.23l-.92.53a1.81%2C1.81%2C0%2C0%2C1-.83.28.89.89%2C0%2C0%2C1-.64-.21%2C1.53%2C1.53%2C0%2C0%2C1-.41-.7%2C3.73%2C3.73%2C0%2C0%2C1-.15-1.15v-2.52l-.72.42a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-1.51a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l.72-.41v-2.45a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v2.44l1.1-.63a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.51a.73.73%2C0%2C0%2C1-.08.33.44.44%2C0%2C0%2C1-.18.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M150%2C251.14a.8.8%2C0%2C0%2C1-.08.33.47.47%2C0%2C0%2C1-.19.22l-1.22.71c-.08%2C0-.14%2C0-.19%2C0a.33.33%2C0%2C0%2C1-.08-.24v-3.8a1.59%2C1.59%2C0%2C0%2C0-.2-.91c-.14-.18-.35-.19-.65%2C0a1.44%2C1.44%2C0%2C0%2C0-.63.76%2C3%2C3%2C0%2C0%2C0-.2%2C1.15v3.79a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.22.71a.16.16%2C0%2C0%2C1-.19%2C0%2C.36.36%2C0%2C0%2C1-.08-.24V244.3a.76.76%2C0%2C0%2C1%2C.08-.33.41.41%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.2a4.51%2C4.51%2C0%2C0%2C1%2C.51-.91%2C2.76%2C2.76%2C0%2C0%2C1%2C.81-.76%2C1.91%2C1.91%2C0%2C0%2C1%2C.86-.29.87.87%2C0%2C0%2C1%2C.67.24%2C1.71%2C1.71%2C0%2C0%2C1%2C.43.81A5.62%2C5.62%2C0%2C0%2C1%2C150%2C247Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M153.07%2C246.71a1.23%2C1.23%2C0%2C0%2C0%2C.09.53.43.43%2C0%2C0%2C0%2C.21.23.38.38%2C0%2C0%2C0%2C.28%2C0%2C1.88%2C1.88%2C0%2C0%2C0%2C.3-.12%2C2%2C2%2C0%2C0%2C0%2C.46-.36%2C2%2C2%2C0%2C0%2C0%2C.29-.42%2C1.37%2C1.37%2C0%2C0%2C1%2C.16-.26.46.46%2C0%2C0%2C1%2C.16-.14l1.27-.73q.21-.12.21.21a2.26%2C2.26%2C0%2C0%2C1-.14.63%2C5.76%2C5.76%2C0%2C0%2C1-.46%2C1%2C6.85%2C6.85%2C0%2C0%2C1-.79%2C1.13%2C4.5%2C4.5%2C0%2C0%2C1-1.16%2C1%2C2.26%2C2.26%2C0%2C0%2C1-1.12.37%2C1.09%2C1.09%2C0%2C0%2C1-.83-.32%2C2%2C2%2C0%2C0%2C1-.51-1%2C6.65%2C6.65%2C0%2C0%2C1-.17-1.6%2C8.85%2C8.85%2C0%2C0%2C1%2C.17-1.71%2C6.57%2C6.57%2C0%2C0%2C1%2C.51-1.57%2C5.63%2C5.63%2C0%2C0%2C1%2C.83-1.33%2C4.26%2C4.26%2C0%2C0%2C1%2C1.12-1%2C2%2C2%2C0%2C0%2C1%2C1.21-.33%2C1.23%2C1.23%2C0%2C0%2C1%2C.82.48%2C2.54%2C2.54%2C0%2C0%2C1%2C.46%2C1.05%2C6.6%2C6.6%2C0%2C0%2C1%2C.14%2C1.36v.42a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23Zm.88-3.38a1.46%2C1.46%2C0%2C0%2C0-.62.73%2C3%2C3%2C0%2C0%2C0-.26%2C1l1.76-1a1.2%2C1.2%2C0%2C0%2C0-.26-.7C154.43%2C243.18%2C154.22%2C243.17%2C154%2C243.33Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M163.15%2C243.54a.8.8%2C0%2C0%2C1-.08.33.42.42%2C0%2C0%2C1-.19.22l-1.22.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-3.8a1.51%2C1.51%2C0%2C0%2C0-.2-.91c-.14-.18-.35-.19-.64%2C0a1.42%2C1.42%2C0%2C0%2C0-.64.76%2C3%2C3%2C0%2C0%2C0-.2%2C1.15v3.79a.8.8%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-1.23.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.35.35%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.18-.68a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v.35c.05-.13.12-.28.19-.43a3.21%2C3.21%2C0%2C0%2C1%2C.29-.46%2C4.88%2C4.88%2C0%2C0%2C1%2C.38-.43%2C3.38%2C3.38%2C0%2C0%2C1%2C.51-.38%2C2%2C2%2C0%2C0%2C1%2C.86-.29.87.87%2C0%2C0%2C1%2C.67.24%2C1.71%2C1.71%2C0%2C0%2C1%2C.43.81%2C5.2%2C5.2%2C0%2C0%2C1%2C.16%2C1.44Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M167%2C238.67a.92.92%2C0%2C0%2C0%2C.09.48q.1.12.33%2C0l.77-.45c.08%2C0%2C.14%2C0%2C.19%2C0a.33.33%2C0%2C0%2C1%2C.08.24v1.52a.8.8%2C0%2C0%2C1-.08.33.42.42%2C0%2C0%2C1-.19.22l-.92.54a1.94%2C1.94%2C0%2C0%2C1-.83.28.94.94%2C0%2C0%2C1-.64-.22%2C1.49%2C1.49%2C0%2C0%2C1-.41-.69%2C3.84%2C3.84%2C0%2C0%2C1-.15-1.16v-2.52l-.72.42a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24V235.9a.67.67%2C0%2C0%2C1%2C.08-.33.54.54%2C0%2C0%2C1%2C.18-.23l.72-.41v-2.45a.8.8%2C0%2C0%2C1%2C.08-.33.42.42%2C0%2C0%2C1%2C.19-.22l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v1.52a.8.8%2C0%2C0%2C1-.08.33.46.46%2C0%2C0%2C1-.18.22l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M171.54%2C230.07a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.22.71a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24Zm0%2C8.62a.8.8%2C0%2C0%2C1-.08.33.45.45%2C0%2C0%2C1-.19.23l-1.22.71c-.08%2C0-.14%2C0-.19%2C0a.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l1.22-.71a.14.14%2C0%2C0%2C1%2C.19%2C0%2C.3.3%2C0%2C0%2C1%2C.08.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M174.7%2C232.85c0%2C.15%2C0%2C.33%2C0%2C.53s0%2C.37%2C0%2C.52a.94.94%2C0%2C0%2C0%2C.27.71c.15.13.36.12.62%2C0a1.47%2C1.47%2C0%2C0%2C0%2C.49-.42%2C2.26%2C2.26%2C0%2C0%2C0%2C.28-.56%2C1.69%2C1.69%2C0%2C0%2C1%2C.11-.27.4.4%2C0%2C0%2C1%2C.17-.19l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C5.12%2C5.12%2C0%2C0%2C1-.13.78%2C4.92%2C4.92%2C0%2C0%2C1-.41%2C1.16%2C5.85%2C5.85%2C0%2C0%2C1-.78%2C1.25%2C4.6%2C4.6%2C0%2C0%2C1-1.27%2C1.07%2C2.39%2C2.39%2C0%2C0%2C1-1%2C.35%2C1.31%2C1.31%2C0%2C0%2C1-.83-.21%2C1.72%2C1.72%2C0%2C0%2C1-.56-.77A3.61%2C3.61%2C0%2C0%2C1%2C173%2C235c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.26%2C6.26%2C0%2C0%2C1%2C.23-1.56%2C6.8%2C6.8%2C0%2C0%2C1%2C.56-1.41%2C6%2C6%2C0%2C0%2C1%2C.83-1.17%2C4.38%2C4.38%2C0%2C0%2C1%2C1-.83%2C2.15%2C2.15%2C0%2C0%2C1%2C1.27-.39%2C1.18%2C1.18%2C0%2C0%2C1%2C.78.34%2C1.45%2C1.45%2C0%2C0%2C1%2C.41.68%2C3%2C3%2C0%2C0%2C1%2C.13.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.74a.15.15%2C0%2C0%2C1-.17%2C0%2C.58.58%2C0%2C0%2C1-.11-.15.46.46%2C0%2C0%2C0-.28-.24.7.7%2C0%2C0%2C0-.49.15%2C1.48%2C1.48%2C0%2C0%2C0-.62.68A2.49%2C2.49%2C0%2C0%2C0%2C174.7%2C232.85Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M179.17%2C232.47a4%2C4%2C0%2C0%2C1%2C.5-1.92%2C6.47%2C6.47%2C0%2C0%2C1%2C1.6-1.87l1.14-1a.81.81%2C0%2C0%2C0-.13-.52c-.08-.1-.23-.1-.44%2C0a1.12%2C1.12%2C0%2C0%2C0-.34.3%2C2.1%2C2.1%2C0%2C0%2C0-.18.28%2C1.07%2C1.07%2C0%2C0%2C1-.17.24.86.86%2C0%2C0%2C1-.18.14l-1.24.71c-.07%2C0-.12%2C0-.16%2C0a.25.25%2C0%2C0%2C1%2C0-.21%2C2.75%2C2.75%2C0%2C0%2C1%2C.19-.84%2C6.14%2C6.14%2C0%2C0%2C1%2C.48-1%2C6.5%2C6.5%2C0%2C0%2C1%2C.73-.95%2C4.21%2C4.21%2C0%2C0%2C1%2C.92-.74%2C2.47%2C2.47%2C0%2C0%2C1%2C1-.37%2C1%2C1%2C0%2C0%2C1%2C.72.2%2C1.36%2C1.36%2C0%2C0%2C1%2C.43.7%2C4.13%2C4.13%2C0%2C0%2C1%2C.13%2C1.13v4.54a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24V232a4.52%2C4.52%2C0%2C0%2C1-.58%2C1%2C2.81%2C2.81%2C0%2C0%2C1-.91.79%2C1.58%2C1.58%2C0%2C0%2C1-.75.25.73.73%2C0%2C0%2C1-.54-.18%2C1.15%2C1.15%2C0%2C0%2C1-.34-.55A2.88%2C2.88%2C0%2C0%2C1%2C179.17%2C232.47Zm2.23-.94a1.54%2C1.54%2C0%2C0%2C0%2C.4-.34%2C2.76%2C2.76%2C0%2C0%2C0%2C.32-.49%2C3%2C3%2C0%2C0%2C0%2C.21-.59%2C2.47%2C2.47%2C0%2C0%2C0%2C.08-.6l-.9.72a2.43%2C2.43%2C0%2C0%2C0-.42.5%2C1.09%2C1.09%2C0%2C0%2C0-.16.56q0%2C.28.12.33A.44.44%2C0%2C0%2C0%2C181.4%2C231.53Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M188.06%2C226.51a.8.8%2C0%2C0%2C0%2C.1.48c.06.09.17.09.32%2C0l.78-.45a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v1.51a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-.93.53a1.78%2C1.78%2C0%2C0%2C1-.83.28.9.9%2C0%2C0%2C1-.64-.21%2C1.62%2C1.62%2C0%2C0%2C1-.41-.7%2C3.8%2C3.8%2C0%2C0%2C1-.14-1.15V225.1l-.73.41a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.8.8%2C0%2C0%2C1%2C.08-.33.44.44%2C0%2C0%2C1%2C.18-.23l.73-.42v-2.44a.78.78%2C0%2C0%2C1%2C.07-.33.57.57%2C0%2C0%2C1%2C.19-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.35.35%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v1.51a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M192.36%2C224a1.25%2C1.25%2C0%2C0%2C0%2C.08.53.5.5%2C0%2C0%2C0%2C.21.24.44.44%2C0%2C0%2C0%2C.28%2C0%2C1.34%2C1.34%2C0%2C0%2C0%2C.3-.12%2C1.82%2C1.82%2C0%2C0%2C0%2C.47-.36%2C1.92%2C1.92%2C0%2C0%2C0%2C.28-.42%2C2.24%2C2.24%2C0%2C0%2C1%2C.16-.26.57.57%2C0%2C0%2C1%2C.16-.14l1.27-.73c.15-.08.22%2C0%2C.22.21a2.39%2C2.39%2C0%2C0%2C1-.15.63%2C6.46%2C6.46%2C0%2C0%2C1-.45%2C1%2C6.94%2C6.94%2C0%2C0%2C1-.8%2C1.13%2C4.5%2C4.5%2C0%2C0%2C1-1.16.95%2C2.23%2C2.23%2C0%2C0%2C1-1.12.37%2C1.09%2C1.09%2C0%2C0%2C1-.83-.32%2C2.21%2C2.21%2C0%2C0%2C1-.51-1%2C6.65%2C6.65%2C0%2C0%2C1-.17-1.6%2C8.85%2C8.85%2C0%2C0%2C1%2C.17-1.71%2C7.6%2C7.6%2C0%2C0%2C1%2C.51-1.57%2C5.63%2C5.63%2C0%2C0%2C1%2C.83-1.33%2C4.43%2C4.43%2C0%2C0%2C1%2C1.12-1%2C2%2C2%2C0%2C0%2C1%2C1.22-.33%2C1.23%2C1.23%2C0%2C0%2C1%2C.81.48%2C2.42%2C2.42%2C0%2C0%2C1%2C.46%2C1%2C6%2C6%2C0%2C0%2C1%2C.14%2C1.36v.42a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23Zm.87-3.38a1.46%2C1.46%2C0%2C0%2C0-.62.73%2C3.07%2C3.07%2C0%2C0%2C0-.25%2C1l1.75-1a1.27%2C1.27%2C0%2C0%2C0-.25-.7C193.71%2C220.5%2C193.51%2C220.49%2C193.23%2C220.65Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M202.18%2C223.9a2.63%2C2.63%2C0%2C0%2C1-.1.3.46.46%2C0%2C0%2C1-.19.22l-1.27.74a.13.13%2C0%2C0%2C1-.17%2C0%2C.32.32%2C0%2C0%2C1-.07-.22s0-.07%2C0-.11l.74-3.11-2-5.9a.28.28%2C0%2C0%2C1%2C0-.1.59.59%2C0%2C0%2C1%2C.07-.29.42.42%2C0%2C0%2C1%2C.16-.2l1.28-.74c.08%2C0%2C.14%2C0%2C.18%2C0a.5.5%2C0%2C0%2C1%2C.1.19L202%2C218l1.07-4.52a1.25%2C1.25%2C0%2C0%2C1%2C.1-.29.54.54%2C0%2C0%2C1%2C.18-.23l1.29-.74a.13.13%2C0%2C0%2C1%2C.17%2C0%2C.29.29%2C0%2C0%2C1%2C.07.21.36.36%2C0%2C0%2C1%2C0%2C.11Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M211%2C211.86c0%2C.15%2C0%2C.34%2C0%2C.57s0%2C.43%2C0%2C.58a6.37%2C6.37%2C0%2C0%2C1-.21%2C1.48%2C7.08%2C7.08%2C0%2C0%2C1-.54%2C1.41%2C5.67%2C5.67%2C0%2C0%2C1-.82%2C1.22%2C4.35%2C4.35%2C0%2C0%2C1-1.08.89%2C2.17%2C2.17%2C0%2C0%2C1-1.07.35%2C1.16%2C1.16%2C0%2C0%2C1-.82-.27%2C1.74%2C1.74%2C0%2C0%2C1-.54-.79%2C3.67%2C3.67%2C0%2C0%2C1-.21-1.23c0-.14%2C0-.33%2C0-.57s0-.43%2C0-.58a5.84%2C5.84%2C0%2C0%2C1%2C.2-1.47%2C6.85%2C6.85%2C0%2C0%2C1%2C.54-1.41%2C6.17%2C6.17%2C0%2C0%2C1%2C.83-1.23%2C4.31%2C4.31%2C0%2C0%2C1%2C1.07-.9%2C2.34%2C2.34%2C0%2C0%2C1%2C1.08-.35%2C1.32%2C1.32%2C0%2C0%2C1%2C.83.28%2C1.65%2C1.65%2C0%2C0%2C1%2C.53.79A3.76%2C3.76%2C0%2C0%2C1%2C211%2C211.86ZM207.43%2C215a.94.94%2C0%2C0%2C0%2C.27.73c.15.13.36.11.62%2C0A1.55%2C1.55%2C0%2C0%2C0%2C209%2C215a2.55%2C2.55%2C0%2C0%2C0%2C.27-1.05c0-.15%2C0-.33%2C0-.52s0-.36%2C0-.5a1%2C1%2C0%2C0%2C0-.27-.74.55.55%2C0%2C0%2C0-.63%2C0%2C1.61%2C1.61%2C0%2C0%2C0-.62.69%2C2.55%2C2.55%2C0%2C0%2C0-.27%2C1.05c0%2C.16%2C0%2C.33%2C0%2C.52S207.42%2C214.84%2C207.43%2C215Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M212.33%2C208.15a.67.67%2C0%2C0%2C1%2C.08-.33.46.46%2C0%2C0%2C1%2C.18-.22l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v3.8a1.66%2C1.66%2C0%2C0%2C0%2C.19.92c.12.19.33.2.61%2C0a1.36%2C1.36%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14v-3.8a.8.8%2C0%2C0%2C1%2C.08-.33.46.46%2C0%2C0%2C1%2C.18-.22l1.23-.71a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v7a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.13.65a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-.35a4%2C4%2C0%2C0%2C1-.19.43%2C3.68%2C3.68%2C0%2C0%2C1-.28.45%2C3.78%2C3.78%2C0%2C0%2C1-.38.43%2C2.8%2C2.8%2C0%2C0%2C1-.53.39c-.63.36-1.13.37-1.5%2C0a3.13%2C3.13%2C0%2C0%2C1-.56-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M222.58%2C201.83a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v1.52a.67.67%2C0%2C0%2C1-.08.33.54.54%2C0%2C0%2C1-.18.23l-.89.51a2%2C2%2C0%2C0%2C0-.89%2C1.89v3.69a.8.8%2C0%2C0%2C1-.08.33.5.5%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.14-.65a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v.35a4.78%2C4.78%2C0%2C0%2C1%2C.54-.86%2C2.71%2C2.71%2C0%2C0%2C1%2C.75-.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M226%2C205.42a4%2C4%2C0%2C0%2C1%2C.49-1.92%2C6.63%2C6.63%2C0%2C0%2C1%2C1.6-1.87l1.14-1a.81.81%2C0%2C0%2C0-.13-.52c-.08-.1-.23-.1-.43%2C0a1.17%2C1.17%2C0%2C0%2C0-.35.3%2C2.1%2C2.1%2C0%2C0%2C0-.18.28.83.83%2C0%2C0%2C1-.17.24.86.86%2C0%2C0%2C1-.18.14l-1.24.71a.14.14%2C0%2C0%2C1-.16%2C0%2C.25.25%2C0%2C0%2C1%2C0-.21%2C3.09%2C3.09%2C0%2C0%2C1%2C.19-.84%2C5.13%2C5.13%2C0%2C0%2C1%2C.49-1%2C5.35%2C5.35%2C0%2C0%2C1%2C.73-1%2C3.79%2C3.79%2C0%2C0%2C1%2C.92-.74%2C2.44%2C2.44%2C0%2C0%2C1%2C1-.37%2C1%2C1%2C0%2C0%2C1%2C.72.2%2C1.29%2C1.29%2C0%2C0%2C1%2C.43.7%2C4.1%2C4.1%2C0%2C0%2C1%2C.14%2C1.13v4.54a.8.8%2C0%2C0%2C1-.08.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24V205a4.18%2C4.18%2C0%2C0%2C1-.58%2C1%2C2.94%2C2.94%2C0%2C0%2C1-.91.79%2C1.58%2C1.58%2C0%2C0%2C1-.74.25.75.75%2C0%2C0%2C1-.55-.18%2C1.15%2C1.15%2C0%2C0%2C1-.34-.55A3.25%2C3.25%2C0%2C0%2C1%2C226%2C205.42Zm2.22-.94a1.54%2C1.54%2C0%2C0%2C0%2C.4-.34%2C2.76%2C2.76%2C0%2C0%2C0%2C.32-.49%2C3%2C3%2C0%2C0%2C0%2C.21-.59%2C2.06%2C2.06%2C0%2C0%2C0%2C.08-.6l-.9.72a2.43%2C2.43%2C0%2C0%2C0-.42.5%2C1.09%2C1.09%2C0%2C0%2C0-.16.56q0%2C.28.12.33A.44.44%2C0%2C0%2C0%2C228.25%2C204.48Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M234.13%2C198.53c0%2C.16%2C0%2C.34%2C0%2C.54s0%2C.37%2C0%2C.51a1%2C1%2C0%2C0%2C0%2C.27.72c.15.13.36.12.62%2C0a1.47%2C1.47%2C0%2C0%2C0%2C.49-.42%2C2.26%2C2.26%2C0%2C0%2C0%2C.28-.56%2C2.33%2C2.33%2C0%2C0%2C1%2C.11-.28.42.42%2C0%2C0%2C1%2C.17-.18l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C6.05%2C6.05%2C0%2C0%2C1-.53%2C1.94%2C6.64%2C6.64%2C0%2C0%2C1-.79%2C1.25A4.78%2C4.78%2C0%2C0%2C1%2C235%2C202.6a2.48%2C2.48%2C0%2C0%2C1-1%2C.35%2C1.26%2C1.26%2C0%2C0%2C1-.83-.22%2C1.63%2C1.63%2C0%2C0%2C1-.56-.76%2C3.65%2C3.65%2C0%2C0%2C1-.23-1.3c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.19%2C6.19%2C0%2C0%2C1%2C.23-1.56%2C7.12%2C7.12%2C0%2C0%2C1%2C.56-1.42%2C6.22%2C6.22%2C0%2C0%2C1%2C.83-1.16%2C4.33%2C4.33%2C0%2C0%2C1%2C1-.83%2C2.24%2C2.24%2C0%2C0%2C1%2C1.27-.4%2C1.34%2C1.34%2C0%2C0%2C1%2C.79.34%2C1.55%2C1.55%2C0%2C0%2C1%2C.4.69%2C2.93%2C2.93%2C0%2C0%2C1%2C.13.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.73c-.07%2C0-.13%2C0-.17%2C0a.4.4%2C0%2C0%2C1-.11-.14.46.46%2C0%2C0%2C0-.28-.24.73.73%2C0%2C0%2C0-.49.14%2C1.55%2C1.55%2C0%2C0%2C0-.62.69A2.49%2C2.49%2C0%2C0%2C0%2C234.13%2C198.53Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M240.47%2C194.87c0%2C.15%2C0%2C.33%2C0%2C.53s0%2C.37%2C0%2C.52a1%2C1%2C0%2C0%2C0%2C.27.72c.15.12.36.11.62%2C0a1.37%2C1.37%2C0%2C0%2C0%2C.49-.42%2C2%2C2%2C0%2C0%2C0%2C.28-.56%2C1.69%2C1.69%2C0%2C0%2C1%2C.11-.27.46.46%2C0%2C0%2C1%2C.17-.19l1.28-.74a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.29.29%2C0%2C0%2C1%2C.07.24%2C4.81%2C4.81%2C0%2C0%2C1-.12.78%2C6%2C6%2C0%2C0%2C1-.41%2C1.16%2C6.34%2C6.34%2C0%2C0%2C1-.79%2C1.25%2C4.46%2C4.46%2C0%2C0%2C1-1.27%2C1.07%2C2.35%2C2.35%2C0%2C0%2C1-1%2C.35%2C1.31%2C1.31%2C0%2C0%2C1-.83-.21%2C1.74%2C1.74%2C0%2C0%2C1-.56-.76%2C3.71%2C3.71%2C0%2C0%2C1-.23-1.31c0-.14%2C0-.34%2C0-.59s0-.45%2C0-.61a6.26%2C6.26%2C0%2C0%2C1%2C.23-1.56%2C6.8%2C6.8%2C0%2C0%2C1%2C.56-1.41%2C6%2C6%2C0%2C0%2C1%2C.83-1.17%2C4.59%2C4.59%2C0%2C0%2C1%2C1-.83%2C2.16%2C2.16%2C0%2C0%2C1%2C1.27-.39%2C1.22%2C1.22%2C0%2C0%2C1%2C.79.34%2C1.64%2C1.64%2C0%2C0%2C1%2C.41.68%2C2.9%2C2.9%2C0%2C0%2C1%2C.12.63.66.66%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.28.74a.15.15%2C0%2C0%2C1-.17%2C0%2C.58.58%2C0%2C0%2C1-.11-.15.44.44%2C0%2C0%2C0-.28-.24.75.75%2C0%2C0%2C0-.49.14%2C1.67%2C1.67%2C0%2C0%2C0-.62.69A2.49%2C2.49%2C0%2C0%2C0%2C240.47%2C194.87Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M250.36%2C189.11c0%2C.15%2C0%2C.34%2C0%2C.57s0%2C.43%2C0%2C.59a6.28%2C6.28%2C0%2C0%2C1-.21%2C1.47%2C6.64%2C6.64%2C0%2C0%2C1-.54%2C1.41%2C5.43%2C5.43%2C0%2C0%2C1-.82%2C1.22%2C4.14%2C4.14%2C0%2C0%2C1-1.08.89%2C2.17%2C2.17%2C0%2C0%2C1-1.07.35%2C1.23%2C1.23%2C0%2C0%2C1-.83-.26%2C1.9%2C1.9%2C0%2C0%2C1-.53-.8%2C3.91%2C3.91%2C0%2C0%2C1-.22-1.22c0-.15%2C0-.34%2C0-.57s0-.43%2C0-.59a6.36%2C6.36%2C0%2C0%2C1%2C.21-1.47%2C7.08%2C7.08%2C0%2C0%2C1%2C.54-1.41%2C5.77%2C5.77%2C0%2C0%2C1%2C.83-1.23%2C4.31%2C4.31%2C0%2C0%2C1%2C1.07-.9%2C2.2%2C2.2%2C0%2C0%2C1%2C1.08-.34%2C1.31%2C1.31%2C0%2C0%2C1%2C.83.27%2C1.7%2C1.7%2C0%2C0%2C1%2C.53.79A3.76%2C3.76%2C0%2C0%2C1%2C250.36%2C189.11Zm-3.54%2C3.13a1%2C1%2C0%2C0%2C0%2C.27.74c.15.12.36.11.62%2C0a1.63%2C1.63%2C0%2C0%2C0%2C.63-.69%2C2.5%2C2.5%2C0%2C0%2C0%2C.27-1c0-.16%2C0-.34%2C0-.53s0-.35%2C0-.5a1%2C1%2C0%2C0%2C0-.27-.73c-.16-.13-.37-.11-.63%2C0a1.58%2C1.58%2C0%2C0%2C0-.62.68%2C2.55%2C2.55%2C0%2C0%2C0-.27%2C1.05%2C4.27%2C4.27%2C0%2C0%2C0%2C0%2C.52A3.78%2C3.78%2C0%2C0%2C0%2C246.82%2C192.24Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M251.72%2C185.41a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.33.33%2C0%2C0%2C1%2C.08.24v3.8a1.7%2C1.7%2C0%2C0%2C0%2C.19.93c.12.19.32.2.61%2C0a1.33%2C1.33%2C0%2C0%2C0%2C.61-.74%2C3.33%2C3.33%2C0%2C0%2C0%2C.18-1.14v-3.79a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v7a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-1.13.65a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.07-.24v-.34l-.19.43a3.59%2C3.59%2C0%2C0%2C1-.28.44%2C3.1%2C3.1%2C0%2C0%2C1-.39.43%2C2.71%2C2.71%2C0%2C0%2C1-.52.39c-.63.36-1.13.38-1.5%2C0a3.13%2C3.13%2C0%2C0%2C1-.56-2.27Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M263.62%2C185.52a.78.78%2C0%2C0%2C1-.07.33.57.57%2C0%2C0%2C1-.19.23l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.29.29%2C0%2C0%2C1-.08-.24v-3.79a1.63%2C1.63%2C0%2C0%2C0-.2-.92c-.14-.18-.36-.18-.65%2C0a1.55%2C1.55%2C0%2C0%2C0-.64.76%2C3.19%2C3.19%2C0%2C0%2C0-.2%2C1.15v3.8a.78.78%2C0%2C0%2C1-.07.33.53.53%2C0%2C0%2C1-.19.22l-1.23.71a.14.14%2C0%2C0%2C1-.18%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-7a.8.8%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.18-.68a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24v.34c.06-.13.12-.27.2-.43a3.68%2C3.68%2C0%2C0%2C1%2C.28-.45%2C3.16%2C3.16%2C0%2C0%2C1%2C.39-.44%2C2.58%2C2.58%2C0%2C0%2C1%2C.51-.37%2C2.07%2C2.07%2C0%2C0%2C1%2C.86-.3.87.87%2C0%2C0%2C1%2C.66.24%2C1.81%2C1.81%2C0%2C0%2C1%2C.44.82%2C5.67%2C5.67%2C0%2C0%2C1%2C.15%2C1.44Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M267.48%2C180.65a.8.8%2C0%2C0%2C0%2C.1.48c.06.09.17.09.32%2C0l.78-.45a.14.14%2C0%2C0%2C1%2C.18%2C0c.06%2C0%2C.08.12.08.24v1.51a.67.67%2C0%2C0%2C1-.08.33.49.49%2C0%2C0%2C1-.18.23l-.93.53a1.78%2C1.78%2C0%2C0%2C1-.83.28.87.87%2C0%2C0%2C1-.64-.22%2C1.53%2C1.53%2C0%2C0%2C1-.41-.69%2C4.15%2C4.15%2C0%2C0%2C1-.14-1.15v-2.52l-.72.41a.15.15%2C0%2C0%2C1-.19%2C0%2C.33.33%2C0%2C0%2C1-.08-.24v-1.51a.73.73%2C0%2C0%2C1%2C.08-.33.45.45%2C0%2C0%2C1%2C.19-.23l.72-.42v-2.44a.67.67%2C0%2C0%2C1%2C.08-.33.49.49%2C0%2C0%2C1%2C.18-.23l1.23-.71a.14.14%2C0%2C0%2C1%2C.18%2C0%2C.29.29%2C0%2C0%2C1%2C.08.24v2.45l1.1-.64a.15.15%2C0%2C0%2C1%2C.19%2C0%2C.33.33%2C0%2C0%2C1%2C.07.24V177a.78.78%2C0%2C0%2C1-.07.33.5.5%2C0%2C0%2C1-.19.23l-1.1.64Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Code--inject-87%22%3E%3Cg%20id%3D%22freepik--Numbers--inject-87%22%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M165.5%2C265.65a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.71%2C3.71%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.75%2C3.75%2C0%2C0%2C0-1.68%2C2.92v39.13a3.75%2C3.75%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.92Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M136.39%2C316.14a3.75%2C3.75%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.13c-.79.3-1.39-.14-1.39-1.1V279.74a3.49%2C3.49%2C0%2C0%2C1%2C.49-1.66l-4.73-2.73a3.36%2C3.36%2C0%2C0%2C0-.5%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M165.45%2C265.17c-.2-.72-.85-.94-1.63-.5l-21%2C12.16a3.34%2C3.34%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.45%2C3.45%2C0%2C0%2C1%2C1.19-1.26l21-12.15a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.79A3.77%2C3.77%2C0%2C0%2C1%2C165.45%2C265.17Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M158.21%2C276.18a.38.38%2C0%2C0%2C1%2C.49%2C0%2C.86.86%2C0%2C0%2C1%2C.2.63v2.59a4%2C4%2C0%2C0%2C1-.1.86c-.07.31-.17.73-.31%2C1.25l-5.9%2C24.38a5.37%2C5.37%2C0%2C0%2C1-.27.8%2C1.17%2C1.17%2C0%2C0%2C1-.47.57l-2.12%2C1.22a.35.35%2C0%2C0%2C1-.48%2C0%2C.8.8%2C0%2C0%2C1-.2-.62%2C2.75%2C2.75%2C0%2C0%2C1%2C.07-.52l5.93-24.43-8%2C4.61a.36.36%2C0%2C0%2C1-.48%2C0%2C.83.83%2C0%2C0%2C1-.21-.63v-2.78a1.94%2C1.94%2C0%2C0%2C1%2C.21-.86%2C1.18%2C1.18%2C0%2C0%2C1%2C.48-.59Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M199.66%2C245.92A3.74%2C3.74%2C0%2C0%2C0%2C198%2C243l-1.37-.79a3.71%2C3.71%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.91v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.77%2C3.77%2C0%2C0%2C0%2C3.37%2C0L198%2C288a3.75%2C3.75%2C0%2C0%2C0%2C1.68-2.92Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M170.55%2C296.42a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.92l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.13c-.79.3-1.4-.14-1.4-1.1V260a3.4%2C3.4%2C0%2C0%2C1%2C.5-1.66L171%2C255.63a3.45%2C3.45%2C0%2C0%2C0-.49%2C1.65Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M199.6%2C245.45c-.19-.72-.85-.95-1.62-.5l-21%2C12.16a3.26%2C3.26%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.42%2C3.42%2C0%2C0%2C1%2C1.18-1.26l21-12.15a3.75%2C3.75%2C0%2C0%2C1%2C3.36%2C0L198%2C243A3.72%2C3.72%2C0%2C0%2C1%2C199.6%2C245.45Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M181.52%2C263.78a2%2C2%2C0%2C0%2C1%2C.21-.87%2C1.27%2C1.27%2C0%2C0%2C1%2C.48-.59l9.57-5.52a.38.38%2C0%2C0%2C1%2C.49%2C0%2C.86.86%2C0%2C0%2C1%2C.2.63v2.78a2%2C2%2C0%2C0%2C1-.2.86%2C1.33%2C1.33%2C0%2C0%2C1-.49.6l-7.15%2C4.12-.28%2C5.18a7%2C7%2C0%2C0%2C1%2C1.36-1.29q.67-.46%2C1.11-.72a6.64%2C6.64%2C0%2C0%2C1%2C2.65-.94%2C3%2C3%2C0%2C0%2C1%2C2.11.52%2C4.24%2C4.24%2C0%2C0%2C1%2C1.4%2C2%2C10.57%2C10.57%2C0%2C0%2C1%2C.51%2C3.58%2C19.32%2C19.32%2C0%2C0%2C1-.52%2C4.6%2C16.41%2C16.41%2C0%2C0%2C1-1.43%2C3.76%2C12.28%2C12.28%2C0%2C0%2C1-2.13%2C2.91%2C11.93%2C11.93%2C0%2C0%2C1-2.59%2C2%2C7.54%2C7.54%2C0%2C0%2C1-3%2C1.12%2C3.09%2C3.09%2C0%2C0%2C1-2.09-.5%2C3.65%2C3.65%2C0%2C0%2C1-1.24-1.75%2C8.46%2C8.46%2C0%2C0%2C1-.47-2.65%2C1.6%2C1.6%2C0%2C0%2C1%2C.19-.88%2C1.38%2C1.38%2C0%2C0%2C1%2C.49-.58l2.06-1.19a.43.43%2C0%2C0%2C1%2C.46%2C0%2C.77.77%2C0%2C0%2C1%2C.28.53%2C2.49%2C2.49%2C0%2C0%2C0%2C.49%2C1.19%2C1.36%2C1.36%2C0%2C0%2C0%2C.76.46%2C1.88%2C1.88%2C0%2C0%2C0%2C1-.11%2C7%2C7%2C0%2C0%2C0%2C1.12-.53%2C6%2C6%2C0%2C0%2C0%2C2.34-2.57%2C8.29%2C8.29%2C0%2C0%2C0%2C.89-3.84%2C2.86%2C2.86%2C0%2C0%2C0-.89-2.43%2C2.08%2C2.08%2C0%2C0%2C0-2.34.14%2C5.75%2C5.75%2C0%2C0%2C0-1.94%2C1.7c-.18.27-.35.5-.51.71a1.69%2C1.69%2C0%2C0%2C1-.58.51l-2.34%2C1.36a.38.38%2C0%2C0%2C1-.49%2C0%2C.85.85%2C0%2C0%2C1-.2-.62Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M131.29%2C285.37a3.73%2C3.73%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.73%2C3.73%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M102.18%2C335.87a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.79.3-1.39-.15-1.39-1.11V299.46a3.41%2C3.41%2C0%2C0%2C1%2C.49-1.66l-4.74-2.73a3.49%2C3.49%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M131.23%2C284.89c-.19-.71-.84-.94-1.62-.49l-21%2C12.15a3.29%2C3.29%2C0%2C0%2C0-1.19%2C1.26l-4.73-2.74a3.4%2C3.4%2C0%2C0%2C1%2C1.18-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.8A3.67%2C3.67%2C0%2C0%2C1%2C131.23%2C284.89Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M124%2C295.9a.36.36%2C0%2C0%2C1%2C.48%2C0%2C.86.86%2C0%2C0%2C1%2C.21.63v2.59a4.64%2C4.64%2C0%2C0%2C1-.1.86c-.07.31-.17.73-.31%2C1.26l-5.91%2C24.38a4.67%2C4.67%2C0%2C0%2C1-.26.8%2C1.15%2C1.15%2C0%2C0%2C1-.47.56l-2.12%2C1.22a.36.36%2C0%2C0%2C1-.48%2C0%2C.83.83%2C0%2C0%2C1-.21-.63%2C3.07%2C3.07%2C0%2C0%2C1%2C.08-.51l5.93-24.44-8%2C4.62a.35.35%2C0%2C0%2C1-.48%2C0%2C.8.8%2C0%2C0%2C1-.21-.62v-2.79a2%2C2%2C0%2C0%2C1%2C.21-.86%2C1.22%2C1.22%2C0%2C0%2C1%2C.48-.59Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M256.58%2C213.06a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.75%2C3.75%2C0%2C0%2C0-3.36%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.69%2C3.69%2C0%2C0%2C0%2C3.36%2C0l21-12.15a3.73%2C3.73%2C0%2C0%2C0%2C1.69-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M227.48%2C263.56a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.8.3-1.4-.15-1.4-1.11V227.15a3.52%2C3.52%2C0%2C0%2C1%2C.49-1.66L228%2C222.76a3.38%2C3.38%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M256.53%2C212.58c-.2-.71-.85-.94-1.62-.49l-21%2C12.15a3.39%2C3.39%2C0%2C0%2C0-1.18%2C1.25L228%2C222.76a3.42%2C3.42%2C0%2C0%2C1%2C1.19-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.38.8A3.67%2C3.67%2C0%2C0%2C1%2C256.53%2C212.58Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M245.3%2C238a8.57%2C8.57%2C0%2C0%2C0%2C1-2.49%2C10.56%2C10.56%2C0%2C0%2C0%2C.22-1.93%2C3.61%2C3.61%2C0%2C0%2C0-.64-2.35c-.42-.5-1.13-.47-2.11.1a4.83%2C4.83%2C0%2C0%2C0-2.05%2C2.24%2C12%2C12%2C0%2C0%2C0-.93%2C3.24%2C2.42%2C2.42%2C0%2C0%2C1-.31.95%2C1.42%2C1.42%2C0%2C0%2C1-.46.52l-2%2C1.16a.42.42%2C0%2C0%2C1-.49%2C0c-.15-.11-.21-.33-.19-.66a16.56%2C16.56%2C0%2C0%2C1%2C.58-3.67%2C18.21%2C18.21%2C0%2C0%2C1%2C1.36-3.52%2C15.67%2C15.67%2C0%2C0%2C1%2C2-3%2C9.61%2C9.61%2C0%2C0%2C1%2C2.47-2.11%2C4.73%2C4.73%2C0%2C0%2C1%2C2.78-.8%2C3%2C3%2C0%2C0%2C1%2C1.93%2C1%2C5.15%2C5.15%2C0%2C0%2C1%2C1.13%2C2.17%2C10.52%2C10.52%2C0%2C0%2C1%2C.37%2C2.86c0%2C.65%2C0%2C1.29-.07%2C1.91a11%2C11%2C0%2C0%2C1-.36%2C2%2C20.31%2C20.31%2C0%2C0%2C1-.81%2C2.31%2C31.73%2C31.73%2C0%2C0%2C1-1.43%2C2.88L242.55%2C250l7.08-4.08a.36.36%2C0%2C0%2C1%2C.48%2C0%2C.83.83%2C0%2C0%2C1%2C.21.63v2.78a1.91%2C1.91%2C0%2C0%2C1-.21.86%2C1.38%2C1.38%2C0%2C0%2C1-.48.6l-11.89%2C6.86a.38.38%2C0%2C0%2C1-.49%2C0%2C.86.86%2C0%2C0%2C1-.2-.63v-2.39a3.52%2C3.52%2C0%2C0%2C1%2C.26-1.31%2C6.1%2C6.1%2C0%2C0%2C1%2C.43-.93Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M290.74%2C193.34a3.72%2C3.72%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.73%2C3.73%2C0%2C0%2C0-1.69%2C2.92v39.14a3.73%2C3.73%2C0%2C0%2C0%2C1.69%2C2.91l1.37.79a3.69%2C3.69%2C0%2C0%2C0%2C3.36%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M261.63%2C243.84a3.73%2C3.73%2C0%2C0%2C0%2C1.69%2C2.91l1.37.79a3.73%2C3.73%2C0%2C0%2C0%2C3.07.14c-.79.3-1.39-.15-1.39-1.11V207.43a3.49%2C3.49%2C0%2C0%2C1%2C.49-1.66L262.13%2C203a3.4%2C3.4%2C0%2C0%2C0-.5%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M290.69%2C192.86c-.2-.71-.85-.94-1.63-.5l-21%2C12.16a3.42%2C3.42%2C0%2C0%2C0-1.19%2C1.25L262.13%2C203a3.34%2C3.34%2C0%2C0%2C1%2C1.19-1.25l21-12.16a3.77%2C3.77%2C0%2C0%2C1%2C3.37%2C0l1.37.8A3.72%2C3.72%2C0%2C0%2C1%2C290.69%2C192.86Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M284.7%2C213.38c0%2C.49%2C0%2C1%2C0%2C1.63v3.69c0%2C.6%2C0%2C1.15%2C0%2C1.66a32.22%2C32.22%2C0%2C0%2C1-.45%2C4.47%2C17.87%2C17.87%2C0%2C0%2C1-1.17%2C4%2C13.73%2C13.73%2C0%2C0%2C1-2.08%2C3.43%2C11.53%2C11.53%2C0%2C0%2C1-3.15%2C2.62%2C5.93%2C5.93%2C0%2C0%2C1-3.15%2C1%2C2.79%2C2.79%2C0%2C0%2C1-2.08-1%2C6.37%2C6.37%2C0%2C0%2C1-1.17-2.7%2C22.3%2C22.3%2C0%2C0%2C1-.45-4c0-1-.05-2.09-.05-3.36s0-2.4.05-3.42a33.28%2C33.28%2C0%2C0%2C1%2C.45-4.51%2C18.91%2C18.91%2C0%2C0%2C1%2C1.17-4.1%2C14.4%2C14.4%2C0%2C0%2C1%2C2.08-3.49%2C11.25%2C11.25%2C0%2C0%2C1%2C3.15-2.67%2C6.1%2C6.1%2C0%2C0%2C1%2C3.15-1%2C2.74%2C2.74%2C0%2C0%2C1%2C2.08%2C1%2C6.09%2C6.09%2C0%2C0%2C1%2C1.17%2C2.69A22.41%2C22.41%2C0%2C0%2C1%2C284.7%2C213.38Zm-10.26%2C12.7a8%2C8%2C0%2C0%2C0%2C.88%2C3.87c.5.74%2C1.34.77%2C2.53.08a5.72%2C5.72%2C0%2C0%2C0%2C2.54-3%2C15.67%2C15.67%2C0%2C0%2C0%2C.87-4.87c0-1%2C.05-2.12.05-3.33s0-2.29-.05-3.26a7.89%2C7.89%2C0%2C0%2C0-.87-3.86c-.51-.74-1.35-.77-2.54-.09a5.7%2C5.7%2C0%2C0%2C0-2.53%2C3%2C16%2C16%2C0%2C0%2C0-.88%2C4.88c0%2C1-.05%2C2.12-.05%2C3.32S274.41%2C225.11%2C274.44%2C226.08Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--speach-bubble--inject-87%22%3E%3Cpath%20d%3D%22M324.9%2C173.62a3.75%2C3.75%2C0%2C0%2C0-1.68-2.92l-1.37-.79a3.77%2C3.77%2C0%2C0%2C0-3.37%2C0l-21%2C12.15a3.72%2C3.72%2C0%2C0%2C0-1.68%2C2.92v39.14a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.71%2C3.71%2C0%2C0%2C0%2C3.37%2C0l21-12.15a3.72%2C3.72%2C0%2C0%2C0%2C1.68-2.91Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M295.79%2C224.12a3.72%2C3.72%2C0%2C0%2C0%2C1.68%2C2.91l1.37.79a3.75%2C3.75%2C0%2C0%2C0%2C3.08.14c-.79.3-1.4-.15-1.4-1.11V187.71a3.4%2C3.4%2C0%2C0%2C1%2C.5-1.66l-4.74-2.73a3.49%2C3.49%2C0%2C0%2C0-.49%2C1.66Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M324.84%2C173.14c-.19-.71-.84-.94-1.62-.5l-21%2C12.16a3.34%2C3.34%2C0%2C0%2C0-1.19%2C1.25l-4.73-2.73a3.32%2C3.32%2C0%2C0%2C1%2C1.18-1.25l21-12.16a3.75%2C3.75%2C0%2C0%2C1%2C3.36%2C0l1.38.8A3.67%2C3.67%2C0%2C0%2C1%2C324.84%2C173.14Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20d%3D%22M206.5%2C256.14l10-5.79a2.35%2C2.35%2C0%2C0%2C1%2C2.16%2C0l1.9%2C1.1a2.37%2C2.37%2C0%2C0%2C1%2C1.08%2C1.87v2.19a2.4%2C2.4%2C0%2C0%2C1-1.08%2C1.88l-10%2C5.78a2.37%2C2.37%2C0%2C0%2C1-2.17%2C0l-1.89-1.09a2.41%2C2.41%2C0%2C0%2C1-1.09-1.88V258A2.38%2C2.38%2C0%2C0%2C1%2C206.5%2C256.14Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M210.23%2C263.3a2.31%2C2.31%2C0%2C0%2C1-1.83-.13l-1.9-1.09a2.4%2C2.4%2C0%2C0%2C1-1.08-1.88V258a2.27%2C2.27%2C0%2C0%2C1%2C.31-1.07l4.06%2C2.35a2.26%2C2.26%2C0%2C0%2C0-.31%2C1.06v2.2C209.48%2C263.11%2C209.79%2C263.39%2C210.23%2C263.3Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M209.48%2C262.55v-2.19a2.4%2C2.4%2C0%2C0%2C1%2C1.08-1.88l10-5.79c.6-.34%2C1.08-.06%2C1.08.63v2.19a2.4%2C2.4%2C0%2C0%2C1-1.08%2C1.88l-10%2C5.78C210%2C263.52%2C209.48%2C263.24%2C209.48%2C262.55Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--Character--inject-87%22%3E%3Cg%20id%3D%22freepik--character--inject-87%22%3E%3Cpath%20id%3D%22freepik--shadow--inject-87%22%20d%3D%22M435.9%2C298.69a12.82%2C12.82%2C0%2C0%2C0-5.32-6.82L400%2C274.21a31.09%2C31.09%2C0%2C0%2C0-5.7-.37c-6.73.21-13.15%2C2.82-19.18%2C5.81-13.69%2C6.81-27.68%2C11.65-40.29%2C20.42-1.6%2C1.12-6%2C3.79-3.48%2C6.53a8.12%2C8.12%2C0%2C0%2C0%2C5.43%2C2.06c4-.31%2C11.9-6.68%2C10.65-4.8a6.84%2C6.84%2C0%2C0%2C0-1.07%2C3.62%2C2.63%2C2.63%2C0%2C0%2C0%2C1.51%2C2.39c1.1.37%2C1.58-1.88%2C2.06-3.15a11.8%2C11.8%2C0%2C0%2C1%2C4.57-5.69%2C15.74%2C15.74%2C0%2C0%2C1%2C10.94-1.91%2C47.11%2C47.11%2C0%2C0%2C1%2C10.78%2C3.48c5.74%2C2.38%2C9.6%2C3.7%2C15.05%2C6.67%2C2.52%2C1.37%2C9.59%2C5.78%2C10%2C6.26.61.73.48%2C5.89.55%2C6.83l.36%2C5.27%2C28.42-16.41a12.62%2C12.62%2C0%2C0%2C0%2C4.85-5.62c0-.23.08-.47.11-.7A31.5%2C31.5%2C0%2C0%2C0%2C435.9%2C298.69Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M414.33%2C332.12c-.8.67-1.72%2C1.46-1.73%2C2.41a9.62%2C9.62%2C0%2C0%2C0%2C2%2C5.65c1.75%2C2.37%2C2.6%2C6.6%2C2.66%2C9.42s-.46%2C9.93%2C2.76%2C13.1%2C11.6%2C5.51%2C12.17.35-7.45-26.16-7.45-26.16Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M418.7%2C336a77.21%2C77.21%2C0%2C0%2C1%2C2.23%2C11.48c.42%2C4.24%2C1.32%2C7.3%2C3.31%2C8.65s5.17%2C1.49%2C4.3-1.46-3.83-17.74-3.83-17.74Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.14%2C262.38s15.95%2C9.54%2C23.64%2C14.82%2C15%2C10.43%2C16.22%2C14.14c1.3%2C3.93-.11%2C12.78-1.95%2C21.24s-5.39%2C23.64-5.39%2C23.64l-20-38.48-22.29-18.52Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M409%2C294.89l-19.94-13.61%2C10.09-18.9s14.78%2C8.5%2C25.69%2C15.8c8.84%2C5.91%2C15.16%2C10.51%2C15.21%2C14.37s-1.42%2C17.12-3.63%2C22.62c0%2C0-8.72%2C2.86-16.36-.53Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M409%2C294.89l-19.94-13.61%2C10.09-18.9s14.78%2C8.5%2C25.69%2C15.8c8.84%2C5.91%2C15.16%2C10.51%2C15.21%2C14.37s-1.42%2C17.12-3.63%2C22.62c0%2C0-8.72%2C2.86-16.36-.53Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.6000000000000001%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M426.47%2C302.8c-1.76-5.75-6.94-9.27-11.44-12.78-3.57-2.8-12.17-9.08-15.68-11.67a9.31%2C9.31%2C0%2C0%2C0%2C.61-5.58c-1.88%2C4.93-3.16%2C6.08-3.16%2C6.08l22.39%2C20.89%2C13.54%2C32.05S428.23%2C308.54%2C426.47%2C302.8Z%22%20style%3D%22opacity%3A0.15%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M430.75%2C363.28c-.74.38-.83%2C2.11-.9%2C3.37s-1.16%2C2.8.45%2C4.94%2C4.66%2C2.64%2C6.85%2C5.55%2C5.47%2C8.21%2C12.26%2C9.31%2C11.81-1.37%2C13-3.43-.06-3.91-4.48-6.15c-4.69-2.39-6-3.1-6-3.1Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M437.31%2C349.11s3.69%2C8.83%2C5.86%2C12.86a47.51%2C47.51%2C0%2C0%2C0%2C9.12%2C11.26c.79.76%2C2.56%2C2.14%2C3.21%2C2.75a1.29%2C1.29%2C0%2C0%2C1%2C.05%2C2c-1.32%2C1.53-7.47%2C2.45-11.18.18s-7.57-6.88-9.84-8.77l-3-2.53a2.81%2C2.81%2C0%2C0%2C1-.95-2.6c0-.27.1-.6.15-1%2C.29-2-3.12-10-3.12-10Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M361.41%2C267c-.92%2C5.48-2.66%2C11.07.62%2C17.79%2C3.17%2C6.5%2C12.24%2C11.81%2C22.17%2C16.41%2C8.22%2C3.81%2C20.32%2C9.28%2C22.75%2C10.09s2.8%2C2.2%2C2.89%2C6.67%2C2.32%2C11.6%2C8.12%2C20.23a214.64%2C214.64%2C0%2C0%2C1%2C11.52%2C19.84s7%2C.77%2C10.14-3.58c0%2C0-14.36-47.87-16.89-53.49s-26.14-22.32-26.14-22.32a31.13%2C31.13%2C0%2C0%2C0%2C2.55-16.28Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.87%2C309.15s-18-7.58-28.74-14.28c-14.79-9.18-12-18-10.5-27.49l38.51-5c2.27%2C10.32-2.14%2C16.37-2.14%2C16.37l13.75%2C10.38c7.16%2C5.51%2C12%2C8.6%2C13.45%2C13.15s6.11%2C21.7%2C6.11%2C21.7a27.68%2C27.68%2C0%2C0%2C1-17%2C6.09s-3.35-5.43-3.89-9.38.33-7.07-1.29-7.93S404.37%2C311.11%2C399.87%2C309.15Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M399.87%2C309.15s-18-7.58-28.74-14.28c-14.79-9.18-12-18-10.5-27.49l38.51-5c2.27%2C10.32-2.14%2C16.37-2.14%2C16.37l13.75%2C10.38c7.16%2C5.51%2C12%2C8.6%2C13.45%2C13.15s6.11%2C21.7%2C6.11%2C21.7a27.68%2C27.68%2C0%2C0%2C1-17%2C6.09s-3.35-5.43-3.89-9.38.33-7.07-1.29-7.93S404.37%2C311.11%2C399.87%2C309.15Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.6000000000000001%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M385.49%2C212.51a43.09%2C43.09%2C0%2C0%2C1%2C8.49%2C0%2C15.37%2C15.37%2C0%2C0%2C1%2C5.81%2C2.36C404.5%2C218%2C415.5%2C227%2C422.34%2C232.15c0%2C0%2C5.76-2.89%2C9.66-5.27%2C3.49-2.13%2C5.33%2C12-1%2C15.94-6.92%2C4.31-7.83%2C4.3-12.83%2C1.75-5.26-2.68-15.76-9.38-20.09-12.1Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M422.34%2C232.15c-2.33%2C1.41-3.69%2C5.58-3.69%2C5.58s-.41-4.42%2C2.82-6.24Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M444.84%2C216.55h0l-1-.7h0a1.07%2C1.07%2C0%2C0%2C0-1%2C0l-9.92%2C4a3.78%2C3.78%2C0%2C0%2C0-2.05%2C2.42L426%2C244.39a1%2C1%2C0%2C0%2C0%2C.26%2C1.07h0l1.07.73h0a1.08%2C1.08%2C0%2C0%2C0%2C1%2C0l9.92-4a3.81%2C3.81%2C0%2C0%2C0%2C2.05-2.42c1-4.35%2C3.94-17.78%2C4.91-22.13A1%2C1%2C0%2C0%2C0%2C444.84%2C216.55Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M432.91%2C221.27a3.68%2C3.68%2C0%2C0%2C0-1%2C1.7L427%2C245.09a1%2C1%2C0%2C0%2C0%2C.22%2C1.06l-1-.68h0a1%2C1%2C0%2C0%2C1-.26-1.07l4.9-22.13a3.72%2C3.72%2C0%2C0%2C1%2C.92-1.61Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M427%2C245.1%2C431.9%2C223a3.82%2C3.82%2C0%2C0%2C1%2C2.06-2.42l9.92-4c.92-.37%2C1.49.12%2C1.28%2C1.09-1%2C4.35-3.94%2C17.78-4.91%2C22.13a3.81%2C3.81%2C0%2C0%2C1-2.05%2C2.42l-9.92%2C4C427.36%2C246.55%2C426.79%2C246.06%2C427%2C245.1Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M444.05%2C222.64c2-.71%2C3.35%2C1.36%2C3.44%2C5.15s-1.68%2C10.93-7.62%2C9.55c-2.31-.53-4.18-4.2-1.92-6a39%2C39%2C0%2C0%2C0%2C5.24-4.8Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M401.77%2C263.88%2C397.13%2C259l-1.95-5.19-1-9.61c5.36-3.47%2C7.32-10%2C5.2-15.07a33.52%2C33.52%2C0%2C0%2C0-6-9.41c-4.2-4.85-6.3-6.47-7.9-7.25-2.2-.18-3.84-.15-3.84-.15s-9.15.73-12.95%2C1.27a64.19%2C64.19%2C0%2C0%2C0-6.62%2C1.28c2.88%2C4.05%2C4.34%2C11.3%2C2.27%2C17.48a10.22%2C10.22%2C0%2C0%2C1-7.27%2C7.1s.59%2C9.22.93%2C13.84c.55%2C7.33.35%2C13.33%2C1.2%2C23.69%2C8.6%2C3.17%2C22.4.9%2C32.07-4.21C400.79%2C267.79%2C401.77%2C263.88%2C401.77%2C263.88Z%22%20style%3D%22fill%3A%2337474f%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M386%2C244.37a15.92%2C15.92%2C0%2C0%2C1-18.13-.63%2C10.89%2C10.89%2C0%2C0%2C0%2C8.9%2C5.57C384.46%2C249.59%2C386%2C244.37%2C386%2C244.37Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M386.13%2C169.17a4.87%2C4.87%2C0%2C0%2C1-1.55-.21%2C28.2%2C28.2%2C0%2C0%2C0-6.1-1.29A22%2C22%2C0%2C0%2C0%2C368.16%2C169a19.31%2C19.31%2C0%2C0%2C0-11.46%2C12.8c-1.78%2C6.62.52%2C12.8%2C4.32%2C17.71%2C2%2C2.57%2C5.64%2C5.07%2C7.09%2C6.08l1.37-1.5a15.38%2C15.38%2C0%2C0%2C0%2C7.53%2C1.63c2.52-.07%2C5%2C.26%2C7.41-.78a10.05%2C10.05%2C0%2C0%2C0%2C5.67-6.32%2C12.51%2C12.51%2C0%2C0%2C1%2C.88-2.76%2C9.73%2C9.73%2C0%2C0%2C1%2C2.24-2.29%2C16.76%2C16.76%2C0%2C0%2C0%2C5.52-10.23%2C6.24%2C6.24%2C0%2C0%2C0-.3-3.51%2C2.91%2C2.91%2C0%2C0%2C0-2.81-1.81%2C12.61%2C12.61%2C0%2C0%2C0%2C1.56-4.11%2C4.33%2C4.33%2C0%2C0%2C0-1.38-4%2C6.05%2C6.05%2C0%2C0%2C0-3.63-.91h-.31c-1.28%2C0-2.57%2C0-3.85%2C0C387.37%2C169.09%2C386.75%2C169.16%2C386.13%2C169.17Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M388.64%2C176.51c2.35%2C1.27%2C5.75%2C5.3%2C5.61%2C17.43-.12%2C10.05-3.33%2C13.26-5%2C14.05s-4.14.67-7.29.27l-.22%2C4.31c7.67%2C5.56%2C9.59%2C12.33%2C2.5%2C11.66-9-.85-16-8.7-16-9.5L368%2C201.25a4.32%2C4.32%2C0%2C0%2C1-5.06-1c-2.3-2.65-3-6.58-1.09-8.7s5.19-1.37%2C6.77.79c0%2C0%2C4.16-.1%2C10.67-4S387.28%2C181.29%2C388.64%2C176.51Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M368.66%2C192.3l-.07%2C4.85h0a3.45%2C3.45%2C0%2C0%2C0%2C3.5-3.4l.08-5.8Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M393%2C187.21l-3-1.14a1.53%2C1.53%2C0%2C0%2C1%2C2-.95A1.67%2C1.67%2C0%2C0%2C1%2C393%2C187.21Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M381.35%2C200.3l4.51.9a2.21%2C2.21%2C0%2C0%2C1-2.62%2C1.84A2.42%2C2.42%2C0%2C0%2C1%2C381.35%2C200.3Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpolygon%20points%3D%22385.25%20189.42%20385.87%20197.84%20389.97%20196.57%20385.25%20189.42%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpolygon%3E%3Cpath%20d%3D%22M382%2C208.26c-3.32-.3-10.2-2-11.36-4.62a7%2C7%2C0%2C0%2C0%2C2.52%2C3.33c2.1%2C1.66%2C8.72%2C3.67%2C8.72%2C3.67Z%22%20style%3D%22fill%3A%239a4a4d%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M381.81%2C192.38a1.38%2C1.38%2C0%2C1%2C1-1.37-1.37A1.37%2C1.37%2C0%2C0%2C1%2C381.81%2C192.38Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Ccircle%20cx%3D%22390.88%22%20cy%3D%22191.3%22%20r%3D%221.37%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fcircle%3E%3Cpath%20d%3D%22M363.52%2C171.67c-4.75%2C3.3-8%2C7.55-8.95%2C18.69-.72%2C8.51%2C1.21%2C14%2C3.28%2C16.24s10.89%2C7.74%2C14.9%2C4.41a5.86%2C5.86%2C0%2C0%2C1-3.48-3.12%2C18.55%2C18.55%2C0%2C0%2C1-1.21-5.77s-4.08.06-5.72-1.73-3.33-9.42-3-13.18C359.77%2C182.8%2C363.52%2C171.67%2C363.52%2C171.67Z%22%20style%3D%22fill%3A%23263238%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M368.66%2C192.3s-.9-7.6%2C2.46-13%2C9.72-10%2C15-10.14c0%2C0-3.72-2.59-10.16-1.62%2C0%2C0-12.39%2C4.5-9.6%2C23A5.85%2C5.85%2C0%2C0%2C1%2C368.66%2C192.3Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M362.08%2C214.91c-5.49%2C1.41-9.89%2C2.83-11.72%2C8.21-1%2C2.8-2.58%2C32.31-2.77%2C37s-.24%2C29.77-.58%2C30.59c-.7%2C1.7-7.73%2C4.72-10.17%2C6.23a19.74%2C19.74%2C0%2C0%2C0-5.72%2C5.35c-1.09%2C1.68%2C2.7%2C4.38%2C6.15%2C4.15%2C2-.14%2C9.36-5.09%2C12-5.33%2C1.7-.15-1.12%2C2.94-1.22%2C5.37-.08%2C1.76%2C1.52%2C2.3%2C1.93%2C1.31.52-1.24%2C4-5.44%2C5-6.72%2C1.48-1.76%2C3.93-5.42%2C3.93-8.89%2C0-4.48.59-14.91%2C2-29.79%2C1.17-12.48%2C2.14-21.86%2C2.14-21.86A37%2C37%2C0%2C0%2C0%2C366%2C227%2C17.67%2C17.67%2C0%2C0%2C0%2C362.08%2C214.91Z%22%20style%3D%22fill%3A%23b16668%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20id%3D%22freepik--speech-bubbles--inject-87%22%3E%3Cg%20id%3D%22freepik--speech-bubble--inject-87%22%3E%3Cg%20id%3D%22freepik--speech-bubble--inject-87%22%3E%3Cpath%20d%3D%22M433.88%2C166.3a.52.52%2C0%2C0%2C1-.22-.22L430.89%2C156v-2.64l8.14-3.18v2.63l-1%2C2.85%2C4.84-2.79.29%2C1.63-2.88%2C14.71a.62.62%2C0%2C0%2C1-.88.33Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M433.88%2C166.3a.52.52%2C0%2C0%2C1-.22-.22L430.89%2C156v-2.64l8.14-3.18v2.63l-1%2C2.85%2C4.84-2.79.29%2C1.63-2.88%2C14.71a.62.62%2C0%2C0%2C1-.88.33Z%22%20style%3D%22opacity%3A0.30000000000000004%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M442.89%2C152.87l.29%2C1.63-2.88%2C14.71a.6.6%2C0%2C0%2C1-1.09.1l-3.13-10.71.36-2Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M460.76%2C98.78a5.83%2C5.83%2C0%2C0%2C0-2.63-4.56h0a5.83%2C5.83%2C0%2C0%2C0-5.27%2C0l-38.28%2C21.87a5.83%2C5.83%2C0%2C0%2C0-2.63%2C4.56v42.88a5.83%2C5.83%2C0%2C0%2C0%2C2.63%2C4.57h0a5.83%2C5.83%2C0%2C0%2C0%2C5.27%2C0l38.52-22c2.37-1.35%2C2.39-2.71%2C2.39-4.39Z%22%20style%3D%22fill%3A%234A9453%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M412%2C163.53a5.83%2C5.83%2C0%2C0%2C0%2C2.63%2C4.57h0a5.9%2C5.9%2C0%2C0%2C0%2C4.82.22c-1.24.47-2.18-.24-2.18-1.75V123.69a5.31%2C5.31%2C0%2C0%2C1%2C.77-2.59l-5.27-3a5.31%2C5.31%2C0%2C0%2C0-.77%2C2.59Z%22%20style%3D%22opacity%3A0.2%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M460.68%2C98c-.31-1.12-1.33-1.47-2.55-.77l-38.28%2C21.87a5.21%2C5.21%2C0%2C0%2C0-1.86%2C2l-5.26-3a5.42%2C5.42%2C0%2C0%2C1%2C1.85-2l38.27-21.87a5.91%2C5.91%2C0%2C0%2C1%2C5.28%2C0h0A5.82%2C5.82%2C0%2C0%2C1%2C460.68%2C98Z%22%20style%3D%22fill%3A%23fff%3Bopacity%3A0.5%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3Cpath%20id%3D%22freepik--Key--inject-87%22%20d%3D%22M427.36%2C129.76a4.51%2C4.51%2C0%2C0%2C1%2C1.7-3.61c.95-.54%2C1.71.19%2C1.71%2C1.64a4.47%2C4.47%2C0%2C0%2C1-1.71%2C3.61C428.12%2C131.94%2C427.36%2C131.21%2C427.36%2C129.76Zm-2.56%2C1.56c0%2C2.84.86%2C4.87%2C2.21%2C5.72l0%2C0%2C.08%2C0%2C.15.09.17.07.17.07.21.06.16%2C0a3%2C3%2C0%2C0%2C0%2C1.12%2C0%2C2.33%2C2.33%2C0%2C0%2C0%2C.36-.08%2C3%2C3%2C0%2C0%2C0%2C.39-.13%2C5.17%2C5.17%2C0%2C0%2C0%2C.72-.34c1.89-1.1%2C3.57-3.47%2C4.63-6.25%2C0-.07.05-.14.07-.21a16.59%2C16.59%2C0%2C0%2C0%2C.6-2l3.18-1.83.63-2.63%2C1.9-1.1%2C1.54%2C1.37%2C1.23-.71%2C1.12-1.91%2C1.95-1.17.74.89%2C2.2-1.28%2C2.24-4.72v-2.47l-16.47%2C9.51a7.32%2C7.32%2C0%2C0%2C0-.58-1.8l-.15-.28c-.11-.19-.22-.36-.34-.53s-.12-.15-.19-.22l-.16-.18-.06%2C0a2.06%2C2.06%2C0%2C0%2C0-.4-.33c-.07-.06-.15-.1-.22-.15l-.1%2C0a3.38%2C3.38%2C0%2C0%2C0-3.36.27c-2.71%2C1.57-5%2C5.76-5.61%2C10A15.6%2C15.6%2C0%2C0%2C0%2C424.8%2C131.32Z%22%20style%3D%22fill%3A%23fafafa%22%3E%3C%2Fpath%3E%3Cg%20id%3D%22freepik--numbers--inject-87%22%3E%3Cpath%20d%3D%22M420.74%2C160a2.9%2C2.9%2C0%2C0%2C1%2C.06-.4l2.37-10.81-2.41%2C1.39c-.12.07-.21%2C0-.26-.05a1.69%2C1.69%2C0%2C0%2C1-.08-.62v-.29a2.62%2C2.62%2C0%2C0%2C1%2C.08-.71.6.6%2C0%2C0%2C1%2C.26-.35l3.88-2.24c.06%2C0%2C.13.11.21.44a3.57%2C3.57%2C0%2C0%2C1%2C.13.92%2C1%2C1%2C0%2C0%2C1%2C0%2C.24L422.44%2C159a.83.83%2C0%2C0%2C1-.21.39%2C2%2C2%2C0%2C0%2C1-.44.33l-.41.24C421%2C160.24%2C420.74%2C160.25%2C420.74%2C160Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M426.46%2C156.72a2.3%2C2.3%2C0%2C0%2C1%2C.07-.4l2.36-10.8-2.41%2C1.39c-.11.07-.2.05-.25-.06a1.44%2C1.44%2C0%2C0%2C1-.08-.61v-.3a2.2%2C2.2%2C0%2C0%2C1%2C.08-.7.62.62%2C0%2C0%2C1%2C.25-.36l3.89-2.24q.09%2C0%2C.21.45a3.93%2C3.93%2C0%2C0%2C1%2C.12.91.9.9%2C0%2C0%2C1%2C0%2C.24l-2.52%2C11.49a.83.83%2C0%2C0%2C1-.21.39%2C1.92%2C1.92%2C0%2C0%2C1-.43.32l-.42.24C426.68%2C156.93%2C426.46%2C156.94%2C426.46%2C156.72Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M432.34%2C153.4c-.38%2C0-.57-.21-.57-.56a2.56%2C2.56%2C0%2C0%2C1%2C.1-.55%2C5.35%2C5.35%2C0%2C0%2C1%2C.25-.74.8.8%2C0%2C0%2C1%2C.26-.42.86.86%2C0%2C0%2C1%2C.24%2C0%2C1.49%2C1.49%2C0%2C0%2C0%2C.48%2C0%2C1.62%2C1.62%2C0%2C0%2C0%2C.61-.22%2C1.71%2C1.71%2C0%2C0%2C0%2C.69-.88%2C3.8%2C3.8%2C0%2C0%2C0%2C.25-1.45%2C2.18%2C2.18%2C0%2C0%2C0-.26-1.29c-.17-.22-.46-.22-.86%2C0l-1.06.61q-.24.14-.33%2C0a.84.84%2C0%2C0%2C1-.09-.49l.22-5.26a1.42%2C1.42%2C0%2C0%2C1%2C.13-.61.79.79%2C0%2C0%2C1%2C.34-.36l3-1.73c.12-.07.21%2C0%2C.26.05a1.69%2C1.69%2C0%2C0%2C1%2C.08.62v.46a1.75%2C1.75%2C0%2C0%2C1-.08.58.57.57%2C0%2C0%2C1-.26.31l-2%2C1.13-.11%2C2.54.17-.09c.81-.47%2C1.43-.53%2C1.86-.19s.64%2C1.22.64%2C2.62A7.5%2C7.5%2C0%2C0%2C1%2C436%2C150a5.89%2C5.89%2C0%2C0%2C1-1%2C1.8%2C4.52%2C4.52%2C0%2C0%2C1-1.25%2C1.1A2.7%2C2.7%2C0%2C0%2C1%2C432.34%2C153.4Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M437.5%2C146.77a1.66%2C1.66%2C0%2C0%2C1-.08-.62V146a2.54%2C2.54%2C0%2C0%2C1%2C.08-.7.53.53%2C0%2C0%2C1%2C.25-.35l1.92-1.11c.11-.07.2-.05.25.06a1.69%2C1.69%2C0%2C0%2C1%2C.08.62v.12a2.54%2C2.54%2C0%2C0%2C1-.08.7.56.56%2C0%2C0%2C1-.25.35l-1.92%2C1.11C437.63%2C146.9%2C437.55%2C146.88%2C437.5%2C146.77Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M441%2C148.09a5.07%2C5.07%2C0%2C0%2C1-.1-.92.69.69%2C0%2C0%2C1%2C0-.28l2.45-6.9a10.11%2C10.11%2C0%2C0%2C0%2C.34-1.14%2C3.84%2C3.84%2C0%2C0%2C0%2C.1-.85c0-.4-.08-.66-.24-.77s-.38-.08-.65.07a2%2C2%2C0%2C0%2C0-.52.45%2C6.48%2C6.48%2C0%2C0%2C0-.49.67%2C1.61%2C1.61%2C0%2C0%2C1-.29.38c-.17.1-.32%2C0-.45-.16a1.19%2C1.19%2C0%2C0%2C1-.2-.66%2C2.5%2C2.5%2C0%2C0%2C1%2C.69-1.56%2C5.64%2C5.64%2C0%2C0%2C1%2C1.52-1.31q1.11-.65%2C1.71-.12a2.55%2C2.55%2C0%2C0%2C1%2C.61%2C1.95%2C8.87%2C8.87%2C0%2C0%2C1-.6%2C3l-1.95%2C5.54%2C2.26-1.31c.13-.07.21%2C0%2C.26.06a1.44%2C1.44%2C0%2C0%2C1%2C.08.61v.3a2.2%2C2.2%2C0%2C0%2C1-.08.7.55.55%2C0%2C0%2C1-.26.36l-4%2C2.32C441.11%2C148.56%2C441%2C148.42%2C441%2C148.09Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M447.28%2C143.54a11.44%2C11.44%2C0%2C0%2C1-.57-4.28%2C17.77%2C17.77%2C0%2C0%2C1%2C.57-4.92%2C4.17%2C4.17%2C0%2C0%2C1%2C1.73-2.6c.77-.45%2C1.35-.24%2C1.73.61a11.36%2C11.36%2C0%2C0%2C1%2C.57%2C4.26%2C17.82%2C17.82%2C0%2C0%2C1-.57%2C4.92%2C4.21%2C4.21%2C0%2C0%2C1-1.73%2C2.61C448.23%2C144.59%2C447.66%2C144.39%2C447.28%2C143.54Zm2.06-1.95a5.89%2C5.89%2C0%2C0%2C0%2C.19-1.34c0-.62.06-1.5.06-2.65s0-2-.06-2.58a3.49%2C3.49%2C0%2C0%2C0-.19-1.12c-.08-.17-.19-.22-.33-.13a.85.85%2C0%2C0%2C0-.34.52%2C7.34%2C7.34%2C0%2C0%2C0-.19%2C1.34c0%2C.62-.06%2C1.51-.06%2C2.65s0%2C2%2C.06%2C2.58a4.18%2C4.18%2C0%2C0%2C0%2C.19%2C1.12c.08.17.2.22.34.14A.9.9%2C0%2C0%2C0%2C449.34%2C141.59Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M453.61%2C141.34a1.83%2C1.83%2C0%2C0%2C1-.91.06c-.25-.06-.37-.26-.37-.6a2.66%2C2.66%2C0%2C0%2C1%2C.09-.54%2C6.41%2C6.41%2C0%2C0%2C1%2C.21-.7.74.74%2C0%2C0%2C1%2C.25-.39.38.38%2C0%2C0%2C1%2C.24%2C0%2C2%2C2%2C0%2C0%2C0%2C.52.1%2C1.23%2C1.23%2C0%2C0%2C0%2C.57-.19%2C1.9%2C1.9%2C0%2C0%2C0%2C.76-.88%2C3.24%2C3.24%2C0%2C0%2C0%2C.28-1.4%2C1.67%2C1.67%2C0%2C0%2C0-.29-1.16c-.2-.18-.51-.14-.95.11l-.39.22c-.12.07-.21.05-.26-.05a1.69%2C1.69%2C0%2C0%2C1-.08-.62V135a2.54%2C2.54%2C0%2C0%2C1%2C.08-.7.59.59%2C0%2C0%2C1%2C.26-.36l.29-.17a2%2C2%2C0%2C0%2C0%2C.79-.85%2C2.49%2C2.49%2C0%2C0%2C0%2C.29-1.21%2C1.46%2C1.46%2C0%2C0%2C0-.21-.91c-.14-.16-.35-.17-.62%2C0a1.58%2C1.58%2C0%2C0%2C0-.48.39%2C3.9%2C3.9%2C0%2C0%2C0-.34.46%2C1%2C1%2C0%2C0%2C1-.22.28c-.11.07-.23%2C0-.36-.26a1.54%2C1.54%2C0%2C0%2C1-.2-.73%2C2%2C2%2C0%2C0%2C1%2C.59-1.27%2C5.5%2C5.5%2C0%2C0%2C1%2C1.41-1.15c.65-.37%2C1.16-.39%2C1.55-.07a2.44%2C2.44%2C0%2C0%2C1%2C.57%2C1.88%2C5.2%2C5.2%2C0%2C0%2C1-.28%2C1.71%2C4.29%2C4.29%2C0%2C0%2C1-.77%2C1.42v.07a1.08%2C1.08%2C0%2C0%2C1%2C1%2C.63%2C3.73%2C3.73%2C0%2C0%2C1%2C.33%2C1.72%2C7.08%2C7.08%2C0%2C0%2C1-.65%2C3.06%2C4.34%2C4.34%2C0%2C0%2C1-1.7%2C2A5.08%2C5.08%2C0%2C0%2C1%2C453.61%2C141.34Z%22%20style%3D%22fill%3A%23455a64%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22iso-8859-1%22%3F%3E%3Csvg%20fill%3D%22%23228BE6%22%20version%3D%221.1%22%20baseProfile%3D%22basic%22%20id%3D%22%26%23x421%3B%26%23x43B%3B%26%23x43E%3B%26%23x439%3B_1%22%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2050%2050%22%20%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20marker-start%3D%22none%22%20marker-end%3D%22none%22%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M25.001%2C48.001c-9.877%2C0-19-14.025-19-26c0-7.007%2C7.025-9%2C19-9c11.975%2C0%2C19%2C1.993%2C19%2C9C44.001%2C33.975%2C34.878%2C48.001%2C25.001%2C48.001z%22%20%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M12.009%2C14.495c0.235-6.781%2C5.185-12.495%2C12.992-12.495c7.805%2C0%2C12.756%2C5.713%2C12.991%2C12.495%22%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M17.205%2C13.394c0.761-3.087%2C3.597-6.393%2C7.796-6.393c4.197%2C0%2C7.033%2C3.307%2C7.795%2C6.393%22%2F%3E%3Cpath%20marker-start%3D%22none%22%20marker-end%3D%22none%22%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M24.995%2C17.011c3.304%2C0%2C5.987%2C2.681%2C5.987%2C5.984c0%2C3.303-2.683%2C5.984-5.987%2C5.984c-3.304%2C0-5.987-2.681-5.987-5.984%20C19.009%2C19.693%2C21.691%2C17.011%2C24.995%2C17.011z%22%2F%3E%3Cpath%20style%3D%22fill%3Anone%3Bstroke%3A%23000000%3Bstroke-width%3A2%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A79.8403%3B%22%20d%3D%22%20M37.017%2C41.054c-2.4-4.805-6.885-8.041-12.016-8.041c-5.133%2C0-9.617%2C3.235-12.017%2C8.04%22%2F%3E%3C%2Fsvg%3E\"","import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n outline:\n \"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 has-[>svg]:px-3\",\n sm: \"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5\",\n lg: \"h-10 rounded-md px-6 has-[>svg]:px-4\",\n icon: \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant,\n size,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n","\"use client\"\n\nimport * as React from \"react\"\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { XIcon } from \"lucide-react\"\n\nimport { cn } from \"../../lib/utils\"\n\nfunction Dialog({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />\n}\n\nfunction DialogTrigger({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />\n}\n\nfunction DialogPortal({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />\n}\n\nfunction DialogClose({\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg\",\n className\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n className=\"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\"\n >\n <XIcon />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n )\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n}","import{jsx as e,jsxs as s}from\"react/jsx-runtime\";var a=\"container_f782f4\",i=\"inner_37f4c9\",c=\"bar_409d0f\";const r=({size:r=35,color:l=\"black\",speed:d=1,stroke:o=3.5})=>e(\"div\",{className:a,style:{\"--uib-size\":r+\"px\",\"--uib-color\":l,\"--uib-speed\":d+\"s\",\"--uib-stroke\":o+\"px\"},children:s(\"div\",{className:i,children:[e(\"div\",{className:c}),e(\"div\",{className:c}),e(\"div\",{className:c}),e(\"div\",{className:c})]})});export{r as default};\n//# sourceMappingURL=Waveform.js.map\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","\"use client\";\n\nimport \"ldrs/waveform\";\nimport { Waveform } from \"ldrs/react\";\nimport \"ldrs/react/Waveform.css\";\n\nconst LoadingSpinner = ({ loadingText }: { loadingText?: string }) => {\n return (\n <div className=\"flex flex-col justify-center items-center\">\n <script\n type=\"module\"\n defer\n src=\"https://cdn.jsdelivr.net/npm/ldrs/dist/auto/waveform.js\"\n />\n\n <Waveform size=\"35\" stroke=\"3.5\" speed=\"1\" color=\"green\" />\n\n {loadingText && (\n <p className=\"text-center font-semibold mt-3\">Loading...</p>\n )}\n </div>\n );\n};\n\nexport default LoadingSpinner;\n","\"use client\";\n\nimport { motion } from \"framer-motion\";\nimport { CheckCircle } from \"lucide-react\";\n\ninterface AuthSuccessAnimationProps {\n onComplete?: () => void;\n}\n\nexport const AuthSuccessAnimation = ({ onComplete }: AuthSuccessAnimationProps) => {\n return (\n <motion.div\n initial={{ opacity: 0, scale: 0.8 }}\n animate={{ opacity: 1, scale: 1 }}\n transition={{ duration: 0.5, ease: \"easeOut\" }}\n className=\"flex flex-col items-center justify-center space-y-6 p-8\"\n onAnimationComplete={onComplete}\n >\n <motion.div\n initial={{ scale: 0 }}\n animate={{ scale: 1 }}\n transition={{ delay: 0.2, duration: 0.6, type: \"spring\", stiffness: 200 }}\n >\n <CheckCircle className=\"w-20 h-20 text-green-500\" />\n </motion.div>\n \n <motion.div\n initial={{ y: 20, opacity: 0 }}\n animate={{ y: 0, opacity: 1 }}\n transition={{ delay: 0.4, duration: 0.5 }}\n className=\"text-center space-y-2\"\n >\n <h2 className=\"text-2xl font-bold text-green-600\">Authentication Successful!</h2>\n <p className=\"text-gray-600\">Redirecting you to the application...</p>\n </motion.div>\n \n <motion.div\n initial={{ width: 0 }}\n animate={{ width: \"100%\" }}\n transition={{ delay: 0.8, duration: 2 }}\n className=\"h-1 bg-green-500 rounded-full max-w-xs\"\n />\n </motion.div>\n );\n};","// Function to parse userAgent and generate a device ID\nexport const GenerateDeviceId = (): string => {\n if (typeof window === \"undefined\" || !window.navigator) {\n return \"unknown-device\";\n }\n\n const userAgent = window.navigator.userAgent;\n let deviceId = \"\";\n\n // Parse browser, version, OS, and device type\n const browserMatch = Array.from(userAgent.matchAll(/(Chrome|Firefox|Safari|Edge|Opera)\\/([\\d.]+)/ig));\n const osMatch = Array.from(userAgent.matchAll(/\\(([^)]+)\\)/g));\n const isMobile = /Mobile|Android|iPhone|iPad/i.test(userAgent);\n\n // Browser info\n if (browserMatch.length > 0) {\n const [, browserName, browserVersion] = browserMatch[0];\n const majorVersion = browserVersion.split(\".\")[0];\n deviceId += `${browserName}-${majorVersion}`;\n } else {\n deviceId += \"UnknownBrowser\";\n }\n\n // OS info\n if (osMatch.length > 0) {\n const osInfo = osMatch[0][1]\n .split(\";\")[0]\n .trim()\n .replace(/[\\s/()]/g, \"_\");\n deviceId += `_${osInfo}`;\n } else {\n deviceId += \"_UnknownOS\";\n }\n\n // Device type\n deviceId += isMobile ? \"_Mobile\" : \"_Desktop\";\n\n // Add a simple hash of userAgent for uniqueness\n const hash = btoa(userAgent).slice(0, 8);\n deviceId += `_${hash}`;\n\n return deviceId.replace(/[^a-zA-Z0-9-_]/g, \"_\") ?? \"unknown-device\";\n};","\"use client\";\n\nimport { useState, useCallback, useMemo } from \"react\";\nimport axios from \"axios\";\nimport { GenerateDeviceId } from \"../utils/DeviceID\";\n\nexport const useOTPHandler = ({\n provider,\n accessToken,\n idToken,\n appCode,\n authenticationType,\n MFAEndpoint,\n onAuthComplete,\n}: {\n provider: string;\n accessToken: string;\n idToken: string;\n appCode: string;\n authenticationType: \"AuthenticatorCode\" | \"EmailOTP\" | null;\n MFAEndpoint?: string;\n onAuthComplete: (state: boolean, data: UserValidatedResponse | null) => void;\n}) => {\n const [loading, setLoading] = useState(false);\n const [attemptCount, setAttemptCount] = useState(0);\n const [isMaxAttemptsReached, setIsMaxAttemptsReached] = useState(false);\n const MAX_ATTEMPTS = 3;\n\n const handleSubmitOTP = useMemo(\n () => async (authenticationValue: string) => {\n if (isMaxAttemptsReached) {\n onAuthComplete(false, {\n message: \"Maximum attempts reached\",\n } as UserValidatedResponse);\n return false;\n }\n\n try {\n setLoading(true);\n const currentAttempt = attemptCount + 1;\n setAttemptCount(currentAttempt);\n\n if (authenticationType === null) return false;\n\n const { data: response } = await axios.post(\n MFAEndpoint || \"/api/auth/verify-mfa\",\n {\n provider,\n accessToken,\n idToken,\n authenticationType,\n MFACode: authenticationValue,\n appCode,\n },\n {\n headers: {\n \"X-Device-ID\": GenerateDeviceId(),\n },\n timeout: 605000,\n }\n );\n\n if (response) {\n onAuthComplete(true, response);\n return true;\n } else {\n if (currentAttempt >= MAX_ATTEMPTS) {\n setIsMaxAttemptsReached(true);\n onAuthComplete(false, {\n message: \"Maximum attempts reached\",\n } as UserValidatedResponse);\n } else {\n onAuthComplete(false, response);\n }\n return false;\n }\n } catch (error) {\n console.error(error);\n\n const currentAttempt = attemptCount + 1;\n if (currentAttempt >= MAX_ATTEMPTS) {\n setIsMaxAttemptsReached(true);\n onAuthComplete(false, error as UserValidatedResponse);\n } else {\n onAuthComplete(false, error as UserValidatedResponse);\n }\n\n onAuthComplete(false, error as UserValidatedResponse);\n return false;\n } finally {\n setLoading(false);\n }\n },\n [\n accessToken,\n idToken,\n authenticationType,\n onAuthComplete,\n MFAEndpoint,\n attemptCount,\n isMaxAttemptsReached,\n ]\n );\n\n const resetAttempts = useCallback(() => {\n setAttemptCount(0);\n setIsMaxAttemptsReached(false);\n }, []);\n\n return {\n handleSubmitOTP,\n loading,\n setLoading,\n attemptCount,\n isMaxAttemptsReached,\n resetAttempts,\n remainingAttempts: MAX_ATTEMPTS - attemptCount,\n };\n};\n","\"use client\";\n\nimport { useState } from \"react\";\nimport { GenericOTPVerifier } from \"./GenericOTP\";\nimport { Mail, Shield, ShieldCheck, ShieldClose } from \"lucide-react\";\nimport OTPAuthenticationImg from \"../assets/images/OTPAuthentication.svg\";\nimport MicrosoftAuthenticatorImg from \"../assets/images/microsoftauthenticator.svg\";\nimport {\n Card,\n CardContent,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"../components/ui/card\";\nimport { Button } from \"./ui/button\";\nimport { Dialog, DialogTitle, DialogContent, DialogHeader } from \"./ui/dialog\";\nimport LoadingSpinner from \"./Loading\";\nimport { toast } from \"sonner\";\nimport { AuthSuccessAnimation } from \"./AuthSuccessAnimation\";\nimport { useCAMSContext } from \"../context/CAMSContext\";\nimport { useOTPHandler } from \"../hooks/useOTPHandler\";\n\ninterface MFAOptionsProps {\n onComplete?: (success: boolean) => void;\n MFAEndpoint?: string;\n}\n\nconst MFAOptions = ({ onComplete, MFAEndpoint }: MFAOptionsProps = {}) => {\n const [value, setValue] = useState(\"\");\n const [otpVisible, setOtpVisible] = useState<boolean>(false);\n const [showSuccessAnimation, setShowSuccessAnimation] =\n useState<boolean>(false);\n const [authType, setAuthType] = useState<\n \"AuthenticatorCode\" | \"EmailOTP\" | null\n >(null);\n const [lastOTPCode, setLastOTPCode] = useState<string>(\"\");\n\n const context = useCAMSContext();\n const { sendEmailOTP, completeMFA } =\n context.authMode === \"MSAL\" && \"sendEmailOTP\" in context\n ? context\n : { sendEmailOTP: null, completeMFA: null };\n\n const accessToken = context.authMode === \"MSAL\" ? context.accessToken : \"\";\n const idToken = context.authMode === \"MSAL\" ? context.idToken : \"\";\n\n const {\n handleSubmitOTP,\n loading,\n setLoading,\n attemptCount,\n remainingAttempts,\n isMaxAttemptsReached,\n resetAttempts,\n } = useOTPHandler({\n accessToken: accessToken || \"\",\n idToken: idToken || \"\",\n provider: \"MSAL\",\n appCode: context.appCode || \"\",\n authenticationType: authType,\n MFAEndpoint,\n onAuthComplete: async (state, data) => {\n if (state) {\n // Call completeMFA to update context state\n if (completeMFA && authType && lastOTPCode) {\n try {\n await completeMFA(lastOTPCode, authType);\n } catch (error) {\n console.error(\"Failed to complete MFA:\", error);\n }\n }\n setShowSuccessAnimation(true);\n toast.success(\n <div className=\"flex items-center gap-2 text-sm text-green-600 bg-green-50 p-3 rounded-lg\">\n <ShieldCheck className=\"w-4 h-4\" />\n <span>Multi-Factor Authentication Successful</span>\n </div>\n );\n setTimeout(() => onComplete?.(true), 2000);\n } else {\n toast.error(\n <div className=\"flex items-center gap-2 text-sm text-red-600 bg-red-50 p-3 rounded-lg\">\n <ShieldClose className=\"w-4 h-4\" />\n <span>{data?.message || \"Invalid code. Please try again.\"}</span>\n </div>\n );\n if (isMaxAttemptsReached) {\n setTimeout(() => onComplete?.(false), 1000);\n }\n }\n },\n });\n\n const handleGoBack = () => {\n setAuthType(null);\n setOtpVisible(false);\n setValue(\"\");\n resetAttempts();\n };\n\n // Show success animation if authentication is successful\n if (showSuccessAnimation) {\n return (\n <div className=\"flex justify-center items-center h-dvh\">\n <Card className=\"mx-auto space-y-6 p-6 bg-white rounded-lg shadow-md\">\n <AuthSuccessAnimation\n onComplete={() => {\n // Animation completed, can add additional logic here if needed\n }}\n />\n </Card>\n </div>\n );\n }\n\n let content: React.JSX.Element = <></>;\n\n if (!authType) {\n content = (\n <div className=\"space-y-4\">\n <p className=\"text-sm text-gray-600 text-center mb-6\">\n Choose your preferred authentication method:\n </p>\n <div className=\"flex flex-col gap-3\">\n <Button\n variant=\"outline\"\n className=\"w-full flex items-center justify-start gap-3 p-4 h-auto border-2 hover:border-[#506f4a] hover:bg-[#506f4a]/5 transition-all\"\n onClick={async () => {\n resetAttempts();\n setAuthType(\"EmailOTP\");\n setOtpVisible(true);\n if (sendEmailOTP) {\n setLoading(true);\n const success = await sendEmailOTP();\n setLoading(false);\n if (success) {\n toast.success(\n <div className=\"flex items-center gap-2 text-sm text-green-600 bg-green-50 p-3 rounded-lg\">\n <ShieldCheck className=\"w-4 h-4\" />\n <span>OTP sent to your email address</span>\n </div>\n );\n }\n }\n }}\n // disabled={true}\n >\n <Mail className=\"w-5 h-5\" />\n <div className=\"text-left\">\n <div className=\"font-medium\">Email OTP</div>\n <div className=\"text-sm text-gray-500\">\n Send code to your email\n </div>\n </div>\n </Button>\n\n <Button\n variant=\"outline\"\n className=\"w-full flex items-center justify-start gap-3 p-4 h-auto border-2 hover:border-[#506f4a] hover:bg-[#506f4a]/5 transition-all\"\n onClick={() => {\n resetAttempts();\n setAuthType(\"AuthenticatorCode\");\n setOtpVisible(true);\n }}\n >\n <img\n src={MicrosoftAuthenticatorImg}\n alt=\"Authenticator\"\n className=\"rounded-full\"\n width={24}\n height={24}\n onError={() => <Shield />}\n />\n <div className=\"text-left\">\n <div className=\"font-medium\">Authenticator App</div>\n <div className=\"text-sm text-gray-500\">Use Authenticator App</div>\n </div>\n </Button>\n </div>\n </div>\n );\n } else if (authType === \"EmailOTP\") {\n content = (\n <Dialog\n open={otpVisible}\n onOpenChange={() => {\n setAuthType(null);\n setOtpVisible(false);\n setValue(\"\");\n }}\n >\n <DialogContent className=\"space-y-2\">\n <div className=\"absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-lime-400 to-emerald-600\"></div>\n <DialogHeader className=\"w-full\">\n <DialogTitle className=\"text-center\">Email OTP</DialogTitle>\n </DialogHeader>\n <div className=\"space-y-6\">\n <GenericOTPVerifier\n value={value}\n setValue={setValue}\n isDisabled={loading || isMaxAttemptsReached}\n onChangeOTP={(code) => {\n setLastOTPCode(code);\n return handleSubmitOTP(code);\n }}\n fieldName=\"EmailOTP\"\n attemptCount={attemptCount}\n remainingAttempts={remainingAttempts}\n isMaxAttemptsReached={isMaxAttemptsReached}\n />\n <Button\n variant=\"ghost\"\n className=\"w-full text-sm\"\n onClick={handleGoBack}\n >\n ← Choose different method\n </Button>\n </div>\n </DialogContent>\n </Dialog>\n );\n } else if (authType === \"AuthenticatorCode\") {\n content = (\n <Dialog open={otpVisible} onOpenChange={handleGoBack}>\n <DialogContent className=\"sm:max-w-[425px] space-y-2\">\n <div className=\"absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-lime-400 to-emerald-600\"></div>\n <DialogHeader className=\"w-full\">\n <DialogTitle className=\"text-center\">Authenticator App</DialogTitle>\n </DialogHeader>\n {loading ? (\n <div className=\"p-3 h-full flex justify-center items-center\">\n <LoadingSpinner />\n </div>\n ) : (\n <div className=\"space-y-6\">\n <p className=\"text-sm text-gray-600 text-center\">\n Enter the 6-digit Code from your Authenticator app\n </p>\n <GenericOTPVerifier\n value={value}\n setValue={setValue}\n isDisabled={loading || isMaxAttemptsReached}\n onChangeOTP={(code) => {\n setLastOTPCode(code);\n return handleSubmitOTP(code);\n }}\n fieldName=\"AuthenticatorCode\"\n attemptCount={attemptCount}\n remainingAttempts={remainingAttempts}\n isMaxAttemptsReached={isMaxAttemptsReached}\n />\n <Button\n variant=\"ghost\"\n className=\"w-full text-sm\"\n onClick={handleGoBack}\n >\n ← Choose different method\n </Button>\n </div>\n )}\n </DialogContent>\n </Dialog>\n );\n }\n\n return (\n <div className=\"flex justify-center items-center h-dvh\">\n <Card className=\"mx-auto space-y-6 p-6 bg-white rounded-lg shadow-md\">\n <CardHeader>\n <div className=\"flex justify-center items\">\n <img\n src={OTPAuthenticationImg}\n alt=\"NIBSS Logo\"\n width={365}\n height={365}\n />\n </div>\n\n <CardTitle className=\"text-3xl font-bold mb-6 text-center\">\n Two-Factor Authentication\n </CardTitle>\n <CardTitle className=\"text-gray-300 text-base -tracking-wide text-center\">\n Your Microsoft account has been validated. Please complete\n two-factor authentication to continue.\n </CardTitle>\n </CardHeader>\n\n <CardContent className=\"max-w-[80%]\">{content}</CardContent>\n\n <CardFooter className=\"flex items-center justify-center mt-6 space-x-2 text-gray-400 text-sm\">\n <ShieldCheck className=\"w-4 h-4 text-[#506f4a] pulse-glow\" />\n <span>Powered By NIBSS</span>\n </CardFooter>\n </Card>\n </div>\n );\n};\n\nexport default MFAOptions;\n","\"use client\";\n\nimport { useCAMSContext } from \"./UnifiedCAMSProvider\";\nimport { Button } from \"./ui/button\";\n\nconst LoginButton = () => {\n const context = useCAMSContext();\n const { login, isLoading, error, authMode } = context;\n\n const handleLogin = () => {\n if (authMode === \"MSAL\") {\n (login as () => Promise<void>)();\n } else {\n // For regular mode, you'd need to provide CAMSConfig\n console.warn(\"Regular CAMS login requires configuration\");\n }\n };\n\n return (\n <div className=\"flex items-center justify-center flex-col items-center gap-4 p-6 h-dvh\">\n <Button onClick={handleLogin} disabled={isLoading} className=\"p-3 min-w-[200px]\">\n {isLoading ? 'Logging in...' : 'Login with Microsoft'}\n </Button>\n {error && (\n <p className=\"text-red-600 text-sm text-center\">\n Error: {error.message}\n </p>\n )}\n </div>\n );\n};\n\nexport default LoginButton;","\"use client\";\n\nimport { useCAMSContext } from \"./UnifiedCAMSProvider\";\nimport MFAOptions from \"./MFAOptions\";\nimport LoginButton from \"./LoginButton\";\nimport z from \"zod\";\n\ninterface MFAGateProps {\n children: React.ReactNode;\n fallback?: React.ReactNode;\n loginComponent?: React.ComponentType;\n MFAEndpoint?: string;\n}\n\nconst MFAEndpointUrlSchema = z.url(\"MFAEndpoint must be a valid URL\");\n\nconst MFAGate = ({\n children,\n fallback,\n loginComponent: LoginComponent,\n MFAEndpoint,\n}: MFAGateProps) => {\n const context = useCAMSContext();\n\n const urlValidation = MFAEndpointUrlSchema.safeParse(MFAEndpoint);\n if (!urlValidation.success) {\n throw new Error(\n `Invalid MFAEndpoint: ${urlValidation.error.issues[0].message}`\n );\n }\n\n // Only apply MFA gate for MSAL mode\n if (context.authMode !== \"MSAL\") {\n return <>{children}</>;\n }\n\n const { requiresMFA, isAuthenticated, isLoading } = context;\n\n if (isLoading) {\n return fallback || <div>Loading...</div>;\n }\n\n if (requiresMFA) {\n return (\n <MFAOptions\n MFAEndpoint={MFAEndpoint}\n onComplete={(success) => {\n if (!success) {\n console.error(\"MFA authentication failed\");\n }\n }}\n />\n );\n }\n\n if (!isAuthenticated) {\n return fallback || (LoginComponent ? <LoginComponent /> : <LoginButton />);\n }\n\n return <>{children}</>;\n};\n\nexport default MFAGate;\n"],"names":["require$$0","jsxRuntimeModule","require$$1","CAMSContext","useCAMSContext","_jsx","_Fragment","setCookie","getCookie","deleteCookie","util.jsonStringifyReplacer","core.$ZodAsyncError","util.finalizeIssue","core.config","util.captureStackTrace","errors.$ZodRealError","o","i","a","r","e","n.parse","n.parseAsync","n.$ZodError","_jsxs","zodResolver","s","Waveform","z"],"mappings":"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","x_google_ignoreList":[0,4,5,6,13,14,15,16,17,27,28]}