@acuteinfo/common-screens 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/index.js +29 -30
- package/dist/index.js.map +1 -1
- package/dist/pages/auth/authController.d.ts +0 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Common screens
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import 'regenerator-runtime/runtime';
|
|
2
2
|
import { jsx, jsxs, Fragment as Fragment$1 } from 'react/jsx-runtime';
|
|
3
|
-
import { TextField, GradientButton, utilFunction
|
|
3
|
+
import { TextField, GradientButton, utilFunction } from '@acuteinfo/common-base';
|
|
4
4
|
import { useState, useRef, useEffect, Fragment, useMemo, useReducer } from 'react';
|
|
5
|
-
import { useNavigate } from 'react-router-dom';
|
|
6
5
|
import { makeStyles } from '@mui/styles';
|
|
7
6
|
import Visibility from '@mui/icons-material/Visibility';
|
|
8
7
|
import VisibilityOff from '@mui/icons-material/VisibilityOff';
|
|
@@ -807,7 +806,7 @@ const BankDetails = ({ bannerDetails }) => {
|
|
|
807
806
|
const [loginImageURL, setLoginImageURL] = useState(null);
|
|
808
807
|
const urlObj = useRef(null);
|
|
809
808
|
const classes = useStyles();
|
|
810
|
-
useNavigate();
|
|
809
|
+
// const navigate = useNavigate();
|
|
811
810
|
// let path = require("assets/sound/successSound.mp3").default;
|
|
812
811
|
// let audio = new Audio(path);
|
|
813
812
|
// useEffect(() => {
|
|
@@ -1200,10 +1199,10 @@ const reducer = (state, action) => {
|
|
|
1200
1199
|
}
|
|
1201
1200
|
}
|
|
1202
1201
|
};
|
|
1203
|
-
const AuthControllerWrapper = ({ bannerDetails, logoUrl,
|
|
1202
|
+
const AuthControllerWrapper = ({ bannerDetails, logoUrl, loginFn, veirfyUsernameandPassword, verifyOTP, OTPResendRequest, ResetPassword, }) => {
|
|
1204
1203
|
// const { isLoggedIn, login } = useContext(AuthContext);
|
|
1205
1204
|
const classes = useStyles();
|
|
1206
|
-
useNavigate();
|
|
1205
|
+
// const navigate = useNavigate();
|
|
1207
1206
|
const [loginState, dispath] = useReducer(reducer, inititalState);
|
|
1208
1207
|
const [openpwdreset, setOpenPwdReset] = useState(false);
|
|
1209
1208
|
const failureCount = useRef(0);
|
|
@@ -1441,31 +1440,31 @@ const AuthControllerWrapper = ({ bannerDetails, logoUrl, loading, loginFn, veirf
|
|
|
1441
1440
|
});
|
|
1442
1441
|
}
|
|
1443
1442
|
};
|
|
1444
|
-
return (jsx(Fragment$1, { children:
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1443
|
+
return (jsx(Fragment$1, { children: jsxs(Grid, { container: true, style: { height: "100vh", overflow: "hidden" }, children: [jsx(BankDetails, { bannerDetails: bannerDetails }), jsxs(Grid, { item: true, xs: 11, md: 6, lg: 6, sm: 6, children: [jsx(Grid, { container: true, direction: "row", justifyContent: "flex-end", alignItems: "center", padding: "25px", children: jsx(Tooltip, { describeChild: true, title: "Enfinity-CBS-UI-V1.0.17", children: jsx("img", { src: Boolean(dashboardLogoURL) ? dashboardLogoURL : "", alt: "Logo" }) }) }), openpwdreset ? (jsx(PasswordRotation, { classes: classes, ResetPassword: ResetPassword, open: openpwdreset, username: loginState.username, accessToken: loginState.access_token, tokenType: loginState.token_type, handleClose: handlePasswordRotationClose })) : (jsx(Fragment$1, { children: loginState.currentFlow === "username" ? (jsx(UsernamePasswordField, { classes: classes, loginState: loginState, verifyUsernamePassword: verifyUsernamePassword }, "username")) : (jsx(Fragment$1, { children: loginState.authType === "OTP" ? (jsx(OTPModel, { OTPResendRequest: OTPResendRequest, classes: classes, loginState: loginState, VerifyOTP: VerifyOTP, previousStep: changeUserName, OTPError: t(loginState?.OtpuserMessage ?? ""), setOTPError: (error) => {
|
|
1444
|
+
dispath({
|
|
1445
|
+
type: "OTPVerificationFailed",
|
|
1446
|
+
payload: { error: error },
|
|
1447
|
+
});
|
|
1448
|
+
}, open: true, handleClose: changeUserName, resendFlag: "LOGIN", setNewRequestID: (newRequestID) => {
|
|
1449
|
+
dispath({
|
|
1450
|
+
type: "OTPResendSuccess",
|
|
1451
|
+
payload: { transactionID: newRequestID },
|
|
1452
|
+
});
|
|
1453
|
+
otpResendRef.current = otpResendRef.current + 1;
|
|
1454
|
+
}, otpresendCount: otpResendRef.current }, "otp")) : loginState.authType === "TOTP" ? (jsxs(Fragment$1, { children: [" ", jsx(OTPModelForm, { OTPResendRequest: OTPResendRequest, classes: classes,
|
|
1455
|
+
// handleClose={() => {}}
|
|
1456
|
+
handleClose: changeUserName, loginState: loginState, VerifyOTP: VerifyOTP, OTPError: loginState?.OtpuserMessage ?? "", setOTPError: (error) => {
|
|
1457
|
+
dispath({
|
|
1458
|
+
type: "OTPVerificationFailed",
|
|
1459
|
+
payload: { error: error },
|
|
1460
|
+
});
|
|
1461
|
+
}, resendFlag: "LOGIN", setNewRequestID: (newRequestID) => {
|
|
1462
|
+
dispath({
|
|
1463
|
+
type: "OTPResendSuccess",
|
|
1464
|
+
payload: { transactionID: newRequestID },
|
|
1465
|
+
});
|
|
1466
|
+
otpResendRef.current = otpResendRef.current + 1;
|
|
1467
|
+
}, otpresendCount: otpResendRef.current }, "OTPForm")] })) : (jsx(VerifyFinger, { classes: classes, loginState: loginState, verifyFinger: verifyFinger, previousStep: changeUserName }, "biometric")) })) }))] })] }) }));
|
|
1469
1468
|
};
|
|
1470
1469
|
|
|
1471
1470
|
export { AuthControllerWrapper };
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/pages/auth/style.ts","../src/pages/auth/usernamePassword.tsx","../src/pages/auth/otpPopup.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/pages/auth/verifyFinger.tsx","../src/pages/auth/api.ts","../src/pages/auth/biometric.ts","../src/pages/auth/bankDetails.tsx","../src/pages/auth/passwordRotation.tsx","../src/pages/auth/authController.tsx"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nexport const useStyles = makeStyles((theme: any) => ({\n wrapper: {\n minHeight: \"100vh\",\n boxShadow: \"0 3px 6px rgba(0,0,0,0.03)\",\n // background: \"#fff\",\n background: \"var(--theme-color2)\",\n },\n loginEmp: {\n background: \"#fff\",\n padding: theme.spacing(2, 4),\n display: \"flex\",\n maxWidth: \"400px\",\n margin: \"auto\",\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\n borderRadius: \"8px\",\n [theme.breakpoints.down(\"sm\")]: {\n width: \"100%\",\n },\n },\n formWrap: {\n marginTop: theme.spacing(2),\n },\n loginBtn: {\n minWidth: \"100% !important\",\n margin: theme.spacing(2, 0),\n fontSize: \"1rem\",\n padding: \"10px .75rem\",\n background: \"rgb(128,0,0)\",\n border: 0,\n color: \"#fff !important\",\n fontWeight: 600,\n letterSpacing: \"0.02857em\",\n boxShadow: \"none\",\n textTransform: \"capitalize\",\n alignSelf: \"flex-end\",\n \"&:hover\": {\n background: \"#fedad8\",\n boxShadow: \"none\",\n },\n },\n OTPTimer: {\n marginTop: \"10px\",\n color: theme.palette.primary.main,\n fontWeight: 600,\n },\n resendLink: {\n marginTop: \"10px\",\n cursor: \"pointer\",\n color: theme.palette.secondary.main,\n fontWeight: 600,\n fontSize: \"0.875 rem\",\n },\n logo: {\n marginBottom: theme.spacing(1),\n },\n\n loginLeft: {\n [theme.breakpoints.down(\"sm\")]: {\n display: \"none\",\n },\n },\n loginRight: {\n background: \"#fff\",\n padding: theme.spacing(2, 4),\n display: \"flex\",\n maxWidth: \"400px\",\n margin: \"auto\",\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\n borderRadius: \"8px\",\n [theme.breakpoints.down(\"sm\")]: {\n width: \"100%\",\n },\n \"& img\": {\n alignSelf: \"center\",\n },\n },\n\n loginImg: {},\n\n verifybutton: {\n alignSelf: \"center\",\n // marginBottom: \"10px\",\n // marginTop: \"10px\",\n padding: \"5px\",\n },\n otpButtons: {\n // padding: \"10px\",\n },\n\n divflex: {\n display: \"flex\",\n },\n otpinputpadding: {\n \"& input\": {\n marginRight: \"25px !important\",\n border: \"1.42444px solid var(--theme-color3)\",\n borderRadius: \"10px\",\n width: \"45px !important\",\n height: \"45px !important\",\n marginBottom: \"15px\",\n boxShadow: \"0px 5.69775px 11.3955px rgba(66, 99, 199, 0.16)\",\n },\n },\n ibtnvisible: {\n // padding: \"7px !important\",\n // alignItems: \"baseline\",\n marginBottom: \"15px\",\n },\n btnvisibleoff: {\n display: \"none\",\n },\n OTPalignName: {\n display: \"flex\",\n alignItems: \"center\",\n // justifyContent: \"space-between\",\n marginBottom: \"12px\",\n color: \"#1C1C1C\",\n fonWeight: \"400\",\n fontSize: \"17px\",\n lineHeight: \"33px\",\n },\n resendOTPalign: {\n color: \"var(--theme-color3)\",\n fonWeight: \"400\",\n fontSize: \"17px\",\n lineHeight: \"33px\",\n margin: \"0 auto\",\n // marginTop: \"15px\",\n // display: \"block !important\",\n },\n resendbtnLink: {\n textDecoration: \"underline\",\n color: \"var(--theme-color3)\",\n cursor: \"pointer\",\n \"&:hover\": {\n textDecoration: \"underline\",\n color: \"var(--theme-color3)\",\n },\n },\n dialogTitleClass: {\n background: \"var(--theme-color5)\",\n padding: \"6px 15px !important\",\n margin: \"10px\",\n color: \"var(--theme-color2)\",\n borderRadius: \"4px\",\n \"& h2\": {\n fontWeight: \"500 !important\",\n },\n },\n lang_svg: {\n marginRight: \"10px\",\n width: \"22px\",\n height: \"22px\",\n },\n dialogContent: {\n padding: \"0px 15px\",\n \"& p\": {\n whiteSpace: \"pre-wrap\",\n color: \"black\",\n marginTop: \"8px\",\n marginBottom: \"6px\",\n },\n },\n button: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexDirection: \"column\",\n margin: \"6px\",\n background: \"var(--theme-color1)\",\n \"&:hover\": {\n background: \"var(--theme-color1) !important\",\n },\n },\n}));\n","import { GradientButton, TextField } from \"@acuteinfo/common-base\";\n\nimport { Fragment, useState, useEffect, useRef } from \"react\";\n// import { TextField } from \"components/styledComponent/textfield\";\n// import { GradientButton } from \"components/styledComponent/button\";\nimport Visibility from \"@mui/icons-material/Visibility\";\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\nimport { CircularProgress, IconButton, InputAdornment } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport { Grid } from \"@mui/material\";\nimport { useTranslation } from \"react-i18next\";\n// import { Language_App } from \"pages_audit/appBar/language\";\nexport const UsernamePasswordField = ({\n classes,\n loginState,\n verifyUsernamePassword,\n}) => {\n const [input, setInput] = useState({ userName: \"\", password: \"\" });\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n const { t } = useTranslation();\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const handleChange = (event) => {\n const name = event.target.name;\n const value = event.target.value;\n if (name === \"userName\" && value) {\n loginState.isUsernameError = false;\n }\n if (name === \"password\" && value) {\n loginState.isPasswordError = false;\n }\n\n setInput((values) => ({ ...values, [name]: value }));\n };\n const inputRef = useRef<any>(null);\n const inputPassRef = useRef<any>(null);\n const inputButtonRef = useRef<any>(null);\n\n useEffect(() => {\n let timeoutCd;\n if (loginState.isUsernameError) {\n timeoutCd = setTimeout(() => {\n inputRef?.current?.focus?.();\n }, 1000);\n } else if (loginState.isPasswordError) {\n timeoutCd = setTimeout(() => {\n inputPassRef?.current?.focus?.();\n }, 1000);\n }\n return () => {\n if (timeoutCd) {\n clearTimeout(timeoutCd);\n }\n };\n }, [loginState.isUsernameError, loginState.isPasswordError]);\n useEffect(() => {\n let timeoutCd;\n if (loginState?.otpmodelClose ?? false) {\n setInput((values) => ({ ...values, password: \"\" }));\n timeoutCd = setTimeout(() => {\n inputPassRef?.current?.focus?.();\n }, 1500);\n }\n return () => {\n if (timeoutCd) {\n clearTimeout(timeoutCd);\n }\n };\n }, [loginState.otpmodelClose]);\n\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\n <div\n style={{\n color: \"#000000 !important\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n }}\n >\n <h3>{t(\"SignIn\")}</h3>\n </div>\n <div\n className=\"\"\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n\n width: \"360px\",\n }}\n >\n {t(\"SignInWithUserIDandPassword\")}\n </div>\n <div className={classes.formWrap}>\n <TextField\n // variant=\"filled\"\n // color=\"secondary\"\n autoFocus={true}\n label={t(\"UserID\")}\n // placeholder=\"User ID\"\n placeholder={String(t(\"UserID\"))}\n style={{\n marginTop: \"10px\",\n marginBottom: \"17px\",\n }}\n fullWidth\n type={\"text\"}\n name=\"userName\"\n value={input.userName.trimStart() || \"\"}\n onChange={handleChange}\n error={loginState.isUsernameError}\n helperText={\n loginState.isUsernameError\n ? t(loginState.userMessageforusername)\n : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={loginState.loading}\n autoComplete=\"off\"\n ref={inputRef}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{\n maxLength: \"16\",\n }}\n />\n\n <div\n style={{\n display: \"flex\",\n flexDirection: \"row-reverse\",\n marginTop: \"8px\",\n }}\n >\n <TextField\n key=\"employee\"\n label={t(\"Password\")}\n // variant=\"filled\"\n // color=\"secondary\"\n\n placeholder={String(t(\"EnterPassword\"))}\n InputLabelProps={{\n shrink: true,\n }}\n fullWidth\n type={showPassword ? \"text\" : \"password\"}\n name=\"password\"\n value={input.password}\n onChange={handleChange}\n error={loginState.isPasswordError}\n helperText={\n loginState.isPasswordError\n ? t(loginState.userMessageforpassword)\n : \"\"\n }\n disabled={loginState.loading}\n ref={inputPassRef}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n InputProps={{\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.loading}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </InputAdornment>\n ),\n }}\n inputProps={{ maxLength: \"16\" }}\n />\n </div>\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\n <div style={{ flex: \"auto\", textAlign: \"end\" }}>\n <a\n href=\"forgotpassword\"\n style={{ color: \"var(--theme-color3)\" }}\n >\n {t(\"ForgotPassword\")}\n </a>\n </div>\n </div>\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\n <div\n style={{\n flex: \"auto\",\n textAlign: \"center\",\n marginTop: \"5px\",\n marginBottom: \"17px\",\n }}\n >\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={loginState.loading}\n onClick={() =>\n verifyUsernamePassword(\n (input.userName || \"\").toLowerCase(),\n input.password,\n )\n }\n ref={inputButtonRef}\n // endicon={loginState.loading ? null : \"East\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n >\n {loginState.loading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"Next\")\n )}\n </GradientButton>\n </div>\n </div>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","import { FormHelperText } from \"@mui/material\";\nimport { GradientButton } from \"@acuteinfo/common-base\";\nimport { Fragment, useState, useRef, useEffect } from \"react\";\nimport OTPInput, { ResendOTP } from \"otp-input-react\";\nimport Visibility from \"@mui/icons-material/Visibility\";\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\nimport { CircularProgress } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport IconButton from \"@mui/material/IconButton\";\nimport { Grid } from \"@mui/material\";\nimport clsx from \"clsx\";\nimport { useSnackbar } from \"notistack\";\nimport { useTranslation } from \"react-i18next\";\nexport const OTPModel = ({\n classes,\n OTPResendRequest,\n open,\n handleClose,\n loginState,\n VerifyOTP,\n OTPError,\n setOTPError,\n previousStep,\n setNewRequestID = (id) => {},\n otpresendCount = 0,\n resendFlag,\n}) => {\n const [OTP, setOTP] = useState(\"\");\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const [btnshow, setbtnshow] = useState(false);\n const inputButtonRef = useRef<any>(null);\n const [resendotpLoading, setResendotpLoading] = useState(false);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n // const renderButton = (buttonProps) => {\n // let { remainingTime, ...other } = buttonProps;\n // return resendotpLoading ? (\n // <a\n // remainingtime={remainingTime}\n // {...other}\n // className={clsx(\n // classes.resendbtnLink,\n // !btnshow && classes.btnvisibleoff\n // )}\n // >\n // {t(\"otp.ResendOTP\")}\n // </a>\n // ) : null;\n // };\n const renderButton = (buttonProps) => {\n let { remainingTime, ...other } = buttonProps;\n return resendotpLoading ? (\n <a\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n style={{ cursor: \"wait\" }}\n >\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\n </a>\n ) : (\n <a\n remainingtime={remainingTime}\n {...other}\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n >\n {/* {t(\"otp.ResendOTP\")} */}\n {t(\"otp.GetNewOTP\")}\n </a>\n );\n };\n\n const ClickEventHandler = () => {\n if (!Boolean(OTP) || OTP.length < 6) {\n setOTPError(\"otp.EnterOTPDigit\");\n } else {\n setOTPError(\"\");\n VerifyOTP(OTP);\n }\n };\n\n const handleResendClick = async () => {\n setResendotpLoading(true);\n const { status, data, message } = await OTPResendRequest(\n resendFlag === \"FORGET_PW\" || resendFlag === \"FORGT_TOTP\"\n ? loginState?.requestCd\n : loginState?.transactionID,\n loginState?.username,\n resendFlag,\n loginState.auth_data?.[0]?.company_ID,\n loginState.auth_data?.[0]?.branch_cd,\n );\n setResendotpLoading(false);\n if (status === \"0\") {\n setNewRequestID(data?.TRAN_CD);\n setbtnshow(false);\n enqueueSnackbar(message, { variant: \"success\" });\n } else {\n enqueueSnackbar(message, { variant: \"error\" });\n }\n };\n const handleCloseEvent = () => {\n setOTPError(\"\");\n setOTP(\"\");\n handleClose(\"\");\n };\n const renderTime = (remainingtime) => {\n if (parseInt(remainingtime) === 0) {\n setTimeout(() => {\n setbtnshow(true);\n }, 700);\n }\n return (\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\n {t(\"otp.OtpExpired\")} {remainingtime} {t(\"otp.second\")}\n {/* {t(\"otp.ValidFor\")} {remainingtime} */}\n </span>\n );\n };\n\n useEffect(() => {\n if (loginState?.otpmodelClose ?? false) {\n handleCloseEvent();\n }\n }, [loginState.otpmodelClose]);\n return (\n <Fragment>\n <Container maxWidth=\"sm\">\n <Grid alignItems=\"center\" marginTop={\"4em\"}>\n <div\n // className={classes.formWrap}\n style={\n {\n // marginRight: \"25px\",\n // width: \"100%\",\n // position: \"relative\",\n // right: \"42px\",\n // bottom: \"13px\",\n }\n }\n >\n <div\n style={{\n color: \"#000000\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"otp.OTPAuthentication\")}\n </div>\n <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.EnterOTP\")}\n </div>\n {/* <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.GenerateNewOTP\")}\n </div> */}\n\n <div className={classes.OTPalignName}>\n {t(\"otp.Hello\")}{\" \"}\n {loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null}\n <ResendOTP\n // onResendClick={() => setbtnshow(false)}\n onResendClick={handleResendClick}\n // onTimerComplete={() => setbtnshow(true)}\n renderButton={renderButton}\n renderTime={renderTime}\n maxTime={loginState?.otpValidFor ?? 60}\n className={classes.resendOTPalign}\n />\n </div>\n <div\n className={classes.divflex}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n >\n <OTPInput\n value={OTP}\n onChange={setOTP}\n autoFocus\n OTPLength={6}\n otpType=\"number\"\n disabled={false}\n secure={!showPassword}\n className={classes.otpinputpadding}\n />\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </div>\n {Boolean(OTPError) ? (\n <FormHelperText style={{ color: \"red\" }}>\n {OTPError}\n </FormHelperText>\n ) : null}\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"42px 0 0 42px\",\n width: \"60%\",\n }}\n >\n <GradientButton\n // fullWidth\n disabled={loginState.otploading}\n onClick={() => {\n previousStep(false, \"\");\n }}\n className={classes.otpButtons}\n // color={\"var(--theme-color3) \"}\n sx={{\n border: \"var(--theme-color3)1px solid\",\n minWidth: \"50%\",\n background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n \"&:hover\": {\n background: \"var(--theme-color2) !important\",\n },\n }}\n // customstyle = {{color : \"var(--theme-color3) !important\"}}\n // starticon={\"West\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={loginState.loading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n // endicon={loginState.loading ? null : \"TaskAlt\"}\n // rotateIcon=\"scale(1.4)\"\n >\n {loginState.loading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"otp.VerifyOTP\")\n )}\n </GradientButton>\n </div>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n\nexport const OTPModelForm = ({\n classes,\n OTPResendRequest,\n handleClose,\n loginState,\n VerifyOTP,\n OTPError,\n setOTPError,\n resendFlag,\n setNewRequestID = (id) => {},\n otpresendCount = 0,\n}) => {\n const [OTP, setOTP] = useState(\"\");\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const [btnshow, setbtnshow] = useState(false);\n const [resendotpLoading, setResendotpLoading] = useState(false);\n const inputButtonRef = useRef<any>(null);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n const renderButton = (buttonProps) => {\n let { remainingTime, ...other } = buttonProps;\n return resendotpLoading ? (\n <a\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n style={{ cursor: \"wait\" }}\n >\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\n </a>\n ) : (\n <a\n remainingtime={remainingTime}\n {...other}\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n >\n {/* {t(\"otp.ResendOTP\")} */}\n {t(\"otp.GetNewOTP\")}\n </a>\n );\n };\n const ClickEventHandler = () => {\n if (!Boolean(OTP) || OTP.length < 6) {\n setOTPError(\"otp.EnterOTPDigit\");\n } else {\n setOTPError(\"\");\n VerifyOTP(OTP);\n }\n };\n const handleResendClick = async () => {\n setResendotpLoading(true);\n const { status, data, message } = await OTPResendRequest(\n resendFlag === \"FORGET_PW\"\n ? loginState?.requestCd\n : loginState?.transactionID,\n loginState?.username,\n resendFlag,\n loginState?.company_ID,\n loginState?.branch_cd,\n );\n setResendotpLoading(false);\n if (status === \"0\") {\n setNewRequestID(data?.TRAN_CD);\n setbtnshow(false);\n enqueueSnackbar(message, { variant: \"success\" });\n } else {\n enqueueSnackbar(message, { variant: \"error\" });\n }\n };\n const handleCloseEvent = () => {\n setOTPError(\"\");\n setOTP(\"\");\n handleClose();\n };\n const renderTime = (remainingtime) => {\n if (parseInt(remainingtime) === 0) {\n setTimeout(() => {\n setbtnshow(true);\n }, 700);\n }\n return (\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\n {t(\"otp.OtpExpired\")} {remainingtime}\n </span>\n );\n };\n useEffect(() => {\n if (loginState?.otpmodelClose ?? false) {\n handleCloseEvent();\n }\n }, [loginState.otpmodelClose]);\n\n return (\n <Fragment>\n <Grid alignItems=\"center\">\n <div>\n <div\n style={{\n color: \"#000000\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"otp.OTPAuthentication\")}\n </div>\n {/* <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.GenerateNewOTP\")}\n </div> */}\n <div className={classes.OTPalignName}>\n {t(\"otp.Hello\")}{\" \"}\n {loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null}\n {loginState.otploading ||\n otpresendCount >= 3 ||\n loginState?.auth_type === \"TOTP\" ? null : (\n <ResendOTP\n onResendClick={handleResendClick}\n // onTimerComplete={() => setbtnshow(true)}\n renderButton={renderButton}\n renderTime={renderTime}\n maxTime={loginState?.otpValidFor ?? 60}\n className={classes.resendOTPalign}\n />\n )}\n </div>\n <div\n className={classes.divflex}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n >\n <OTPInput\n value={OTP}\n onChange={setOTP}\n autoFocus\n OTPLength={6}\n otpType=\"number\"\n disabled={false}\n secure={!showPassword}\n className={classes.otpinputpadding}\n />\n\n {/* <IconButton\n aria-label=\"toggle password visibility\"\n // onClick={() => {\n // if (!showPassword) {\n // setShowPasswordTime(Date.now() + 5000);\n // timerRef.current = setTimeout(\n // () => forceUpdate(Date.now()),\n // 5000\n // );\n // } else if (showPassword) setShowPasswordTime(0);\n // }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <VisibilityOffIcon /> : <VisibilityIcon />}\n </IconButton> */}\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </div>\n {Boolean(OTPError) ? (\n <FormHelperText style={{ color: \"red\" }}>{OTPError}</FormHelperText>\n ) : null}\n {loginState?.auth_type === \"TOTP\" ? (\n <div style={{ flex: \"auto\" }}>\n <a href=\"forgot-totp\" style={{ color: \"var(--theme-color3)\" }}>\n Forgot TOTP\n </a>\n </div>\n ) : (\n <></>\n )}\n\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"42px 0 0 42px\",\n width: \"60%\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={loginState.otploading}\n onClick={handleCloseEvent}\n className={classes.otpButtons}\n // starticon={\"West\"}\n // color={\"var(--theme-color2) !important\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color2)\",\n // background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n minWidth: \"48%\",\n }}\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.otploading ? \"50%\" : \"10px\",\n height: loginState.otploading ? \"40px\" : \"100%\",\n width: loginState.otploading ? \"0px\" : \"100%\",\n minWidth: loginState.otploading ? \"40px\" : \"80px\",\n }}\n // fullWidth\n disabled={loginState.loading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n >\n {loginState.otploading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"otp.VerifyOTP\")\n )}\n </GradientButton>\n </div>\n </div>\n </Grid>\n </Fragment>\n );\n};\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","import { Fragment } from \"react\";\nimport { GradientButton } from \"@acuteinfo/common-base\";\nimport FingerprintSharpIcon from \"@mui/icons-material/FingerprintSharp\";\nimport { CircularProgress, Container, Typography } from \"@mui/material\";\nimport { Grid } from \"@mui/material\";\nimport \"./verify.css\";\nimport { useTranslation } from \"react-i18next\";\nexport const VerifyFinger = ({\n classes,\n loginState,\n verifyFinger,\n previousStep,\n}) => {\n const { t } = useTranslation();\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\">\n <div\n style={{\n marginRight: \"25px\",\n width: \"102%\",\n // marginBottom: \"55px\",\n }}\n >\n <br />\n <div\n style={{\n color: \"#000000\",\n fontSize: \"34px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"Biometric.BiometrixAuthentication\")}\n </div>\n <div\n style={{\n color: \"#949597\",\n fontSize: \"18px\",\n fontWeight: \"400\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n // marginBottom: \"10px\",\n }}\n >\n {t(\"Biometric.Kindlyplaceyoufinger\")}\n </div>\n <br />\n <Typography variant=\"h5\" style={{ color: \"#000000\" }}>\n {t(\"otp.Hello\")} {\"\"}\n {` ${\n loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null\n }`}\n </Typography>\n <br />\n <div\n className={\n loginState?.isBiometricError\n ? classes.eFingerUi\n : classes.fingerUi\n }\n >\n <div className=\"spinner-wrap\">\n <FingerprintSharpIcon\n sx={{\n fontSize: \"80px\",\n opacity: \"0.4\",\n borderRadius: \"50%\",\n display: \"flex\",\n margin: \"0 auto\",\n \"&:after\": {\n borderBottom: \"2px solid #26A456\",\n },\n }}\n className={\n loginState?.isBiometricError ? classes.FingerIcon : null\n }\n color={loginState?.isBiometricError ? \"error\" : \"inherit\"}\n />\n {loginState?.isScanning ? (\n <>\n <div\n className=\"spinner-item\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \" 1px solid red\",\n }}\n ></div>\n <div\n className=\"spinner-item spinner-item--2\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \"1px solid red\",\n }}\n ></div>\n <div\n className=\"spinner-item spinner-item--3\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \"1px solid red\",\n }}\n ></div>\n </>\n ) : null}\n </div>\n </div>\n\n <div className={classes.biometric}>\n <div style={{ marginTop: \"50px\" }}>\n <div className={loginState.isScanning ? \"progress\" : \"hide\"}>\n <div\n className=\"bar\"\n style={{ width: loginState.isScanning ? \"30%\" : \"0%\" }}\n ></div>\n </div>\n <h3\n style={{\n display: \"flex\",\n marginTop: \"20px\",\n justifyContent: \"space-around\",\n color: loginState?.isBiometricError\n ? \"rgb(255 0 0 / 65%)\"\n : \"inherit\",\n }}\n >\n {loginState?.isBiometricError\n ? loginState?.userMessage\n : loginState?.loading\n ? t(\"Biometric.Loading\")\n : loginState?.isScanning\n ? t(\"Biometric.Scanning\")\n : null}\n </h3>\n </div>\n </div>\n </div>\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n margin: \"42px 0 0 42px\",\n // margin: \"38px 0 0 0\",\n gap: \"10px\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={loginState.loading}\n onClick={() => {\n previousStep(false, \"\");\n }}\n className={classes.otpButtons}\n // starticon={\"West\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n // color={\"var(--theme-color3) !important\"}\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color3)\",\n background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n minWidth: \"48%\",\n }}\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n // width: loginState.loading ? \"0px\" : \"90%\",\n // minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n disabled={loginState.loading}\n onKeyDown={(e) => e.keyCode === 13 && verifyFinger}\n onClick={verifyFinger}\n className={classes.otpButtons}\n >\n {loginState.loading ? (\n <CircularProgress\n size={25}\n thickness={4.6}\n style={{ color: \"#fff\" }}\n />\n ) : (\n t(\"Biometric.Verify\")\n )}\n </GradientButton>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","export const capture = async () => {\n var MFS100Request = {\n Quality: 60,\n TimeOut: 10,\n };\n var jsondata = JSON.stringify(MFS100Request);\n const rawResponse = await fetch(\"http://localhost:8004/mfs100/capture\", {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n body: jsondata,\n });\n const content = await rawResponse.json();\n return content;\n};\n","import CryptoJS from \"crypto-js\";\n\nconst decryptString = (encryptString: string) => {\n var secretKey = \"SUPERACUTE@MKS\";\n var keyBytes = CryptoJS.PBKDF2(secretKey, \"Ivan Medvedev\", {\n keySize: 48 / 4,\n iterations: 1000,\n });\n console.log(keyBytes.toString());\n\n // take first 32 bytes as key (like in C# code)\n var key = new CryptoJS.lib.WordArray.init(keyBytes.words, 32);\n\n // // skip first 32 bytes and take next 16 bytes as IV\n var iv = new CryptoJS.lib.WordArray.init(keyBytes.words.splice(32 / 4), 16);\n\n // console.log(key.toString());\n //console.log(encryptString, CryptoJS.enc.Base64.parse(encryptString));\n\n var dec = CryptoJS.AES.decrypt(\n {\n ciphertext: CryptoJS.enc.Base64.parse(\n CryptoJS.enc.Base64.parse(encryptString).toString(CryptoJS.enc.Utf8),\n ),\n },\n key,\n {\n iv: iv,\n },\n );\n console.log(\"CryptoJS.AES.decrypt\", dec);\n return dec.toString(CryptoJS.enc.Utf8).split(String.fromCharCode(0)).join(\"\");\n return dec.toString();\n};\n\nexport const matchFinger = async (rows: any, captureFinger: string) => {\n var promise = new Promise((resolve, reject) => {\n //console.log(\"matchFinger\", rows, typeof rows);\n if (typeof rows === \"string\") {\n rows = JSON.parse(rows);\n }\n rows.forEach(async (element: any, i: number) => {\n try {\n var galleryTemplate = decryptString(element.IMG_DATA);\n var MFS100Request = {\n GalleryTemplate: galleryTemplate,\n ProbTemplate: captureFinger,\n BioType: \"Iso\",\n };\n var jsondata = JSON.stringify(MFS100Request);\n await fetch(\"http://localhost:8004/mfs100/verify\", {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n body: jsondata,\n })\n .then((response: any) => response.json())\n .then((response: any) => {\n if (response?.ErrorCode === \"0\" && response[\"Status\"]) {\n resolve({\n status: true,\n errorCode: \"0\",\n errorMessage: \"\",\n isError: false,\n sr_cd: element.SR_CD,\n });\n return;\n }\n\n if (rows.length === i + 1) {\n resolve({\n status: false,\n errorCode: response.ErrorCode,\n errorMessage: response.ErrorMessage,\n isError: false,\n });\n return;\n }\n })\n .catch((reason) => {\n resolve({\n status: false,\n errorCode: \"999\",\n errorMessage: reason,\n isError: true,\n });\n });\n } catch (err) {\n console.log(err);\n resolve({\n status: false,\n errorCode: \"999\",\n errorMessage: \"Something went wrong!\",\n isError: true,\n });\n }\n });\n });\n return promise;\n};\n","import { useContext, useEffect, useState, useRef, useMemo } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useStyles } from \"./style\";\nimport { Grid } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport { utilFunction } from \"@acuteinfo/common-base\";\n\nexport const BankDetails = ({ bannerDetails }: any) => {\n const [loginImageURL, setLoginImageURL] = useState<any | null>(null);\n const urlObj = useRef<any>(null);\n const classes = useStyles();\n const navigate = useNavigate();\n\n // let path = require(\"assets/sound/successSound.mp3\").default;\n // let audio = new Audio(path);\n\n // useEffect(() => {\n // if (isLoggedIn()) {\n // navigate(\"/cbsenfinity\", { replace: true });\n // }\n // }, [navigate, isLoggedIn]);\n\n const banner = useMemo(() => bannerDetails, []);\n\n useEffect(() => {\n if (Boolean(banner.bannerImg)) {\n let blob = utilFunction.base64toBlob(banner.bannerImg);\n urlObj.current =\n typeof blob === \"object\" && Boolean(blob)\n ? URL.createObjectURL(blob)\n : \"\";\n setLoginImageURL(urlObj.current);\n }\n }, [banner]);\n return (\n <>\n {/* <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}> */}\n <Grid item xs={6} md={6} lg={6} className={classes.loginLeft}>\n <Grid item xs={12} md={12} lg={12} style={{ height: \"70vh\" }}>\n <img\n alt=\"\"\n style={{\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n objectPosition: \"center\",\n }}\n src={Boolean(loginImageURL) ? loginImageURL : \"\"}\n />\n </Grid>\n <Grid\n item\n xs={12}\n md={12}\n lg={12}\n style={{\n height: \"30vh\",\n background: \"var(--theme-color5)\",\n }}\n >\n <Container maxWidth=\"sm\">\n <div\n className=\"text\"\n style={{\n color: \"white\",\n fontStyle: \"normal\",\n fontSize: \"35px\",\n paddingTop: \"30px\",\n }}\n >\n {banner.bannerTitle ?? \"\"}\n <span style={{ marginLeft: \"8px\", fontWeight: \"900\" }}>\n {/* EasyBank */}\n </span>\n </div>\n <div\n style={{\n lineHeight: \"27px\",\n fontSize: \"15px\",\n fontWeight: \"500px\",\n letterSpacing: \"0.02em\",\n color: \"#ebedee\",\n maxWidth: \"464px\",\n }}\n >\n {banner.bannerNote ?? \"\"}\n </div>\n </Container>\n </Grid>\n </Grid>\n {/* </Grid> */}\n </>\n );\n};\n","import {\n TextField,\n GradientButton,\n utilFunction,\n} from \"@acuteinfo/common-base\";\n\nimport {\n CircularProgress,\n Container,\n FormHelperText,\n Grid,\n} from \"@mui/material\";\nimport { Fragment, useRef, useState } from \"react\";\n// import { ResetPassword } from \"./api\";\nimport { useSnackbar } from \"notistack\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const PasswordRotation = ({\n classes,\n ResetPassword,\n open,\n username,\n accessToken,\n tokenType,\n handleClose,\n}) => {\n const inputButtonRef = useRef<any>(null);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n const [input, setInput] = useState({\n userName: username,\n oldpassword: \"\",\n password: \"\",\n confirmpassword: \"\",\n });\n const [pwdReset, setPasswordReset] = useState({\n isError: false,\n errorMessage: \"\",\n isLoading: false,\n isoldPwdError: false,\n oldpassworderror: \"\",\n isnewpwdError: false,\n newpassworderror: \"\",\n isconfirmnewpwdError: false,\n confirmnewpassworderror: \"\",\n });\n\n const handleCloseEvent = () => {\n handleClose(\"\");\n };\n const ClickEventHandler = async () => {\n let isError = false;\n let setPwdData = {\n isError: false,\n errorMessage: \"\",\n isLoading: false,\n isoldPwdError: false,\n oldpassworderror: \"\",\n isnewpwdError: false,\n newpassworderror: \"\",\n isconfirmnewpwdError: false,\n confirmnewpassworderror: \"\",\n };\n if (!Boolean(input.oldpassword)) {\n setPwdData.isoldPwdError = true;\n setPwdData.oldpassworderror = \"Current Password is required.\";\n isError = true;\n }\n\n let pwdData = utilFunction.ValidatePassword(input.password);\n if (Boolean(pwdData)) {\n setPwdData.isnewpwdError = true;\n setPwdData.newpassworderror = pwdData;\n isError = true;\n }\n if (\n Boolean(input.oldpassword) &&\n Boolean(input.password) &&\n input.oldpassword === input.password\n ) {\n setPwdData.isnewpwdError = true;\n setPwdData.newpassworderror =\n \"The new password cannot be the same as the old password\";\n isError = true;\n }\n if (!Boolean(input.confirmpassword)) {\n setPwdData.isconfirmnewpwdError = true;\n setPwdData.confirmnewpassworderror = \"Confirm new password is required.\";\n isError = true;\n } else if (\n Boolean(input.password) &&\n input.password !== input.confirmpassword\n ) {\n setPwdData.isconfirmnewpwdError = true;\n setPwdData.confirmnewpassworderror =\n \"New Password and Confirm Password did not matched\";\n isError = true;\n }\n if (isError) {\n setPasswordReset(setPwdData);\n } else {\n setPasswordReset((values) => ({ ...values, isLoading: true }));\n let response = await ResetPassword(\n input.userName,\n input.oldpassword,\n input.password,\n accessToken,\n tokenType,\n );\n setPasswordReset((values) => ({ ...values, isLoading: false }));\n if (response.status === \"0\") {\n enqueueSnackbar(\"Password successfully changed.\", {\n variant: \"success\",\n });\n handleClose(\"0\");\n } else {\n setPasswordReset((values) => ({\n ...values,\n isError: true,\n errorMessage: response.message,\n }));\n }\n }\n };\n const handleChange = (event) => {\n const name = event.target.name;\n let value = event.target.value;\n if (name === \"oldpassword\" && Boolean(value)) {\n setPasswordReset((values) => ({ ...values, isoldPwdError: false }));\n } else if (name === \"password\" && Boolean(value)) {\n setPasswordReset((values) => ({ ...values, isnewpwdError: false }));\n } else if (name === \"confirmpassword\" && Boolean(value)) {\n setPasswordReset((values) => ({\n ...values,\n isconfirmnewpwdError: false,\n }));\n }\n setInput((values) => ({ ...values, [name]: value }));\n };\n\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\">\n <div\n style={{\n color: \"#000000 !important\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n }}\n >\n <h3>Password Rotation</h3>\n </div>\n <div\n className=\"\"\n style={{\n color: \"#949597\",\n fontSize: \"18px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n width: \"360px\",\n }}\n >\n Please Verify OTP\n </div>\n <div className={classes.formWrap}>\n <TextField\n label={\"User ID\"}\n placeholder=\"Enter User ID\"\n fullWidth\n type={\"text\"}\n name=\"userName\"\n value={input.userName || \"\"}\n onChange={handleChange}\n InputLabelProps={{ shrink: true }}\n disabled={true}\n autoComplete=\"off\"\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n autoFocus={true}\n label={\"Current Password\"}\n placeholder=\"Enter Current Password\"\n fullWidth\n type={\"password\"}\n name=\"oldpassword\"\n value={input.oldpassword || \"\"}\n onChange={handleChange}\n error={pwdReset.isoldPwdError}\n helperText={\n pwdReset.isoldPwdError ? t(pwdReset.oldpassworderror) : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n label={\"New Password\"}\n placeholder=\"Enter New Password\"\n fullWidth\n type={\"password\"}\n name=\"password\"\n value={input.password || \"\"}\n onChange={handleChange}\n error={pwdReset.isnewpwdError}\n helperText={\n pwdReset.isnewpwdError ? t(pwdReset.newpassworderror) : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n label={\"Confirm New Password\"}\n placeholder=\"Enter confirm new password\"\n fullWidth\n type={\"password\"}\n name=\"confirmpassword\"\n value={input.confirmpassword || \"\"}\n onChange={handleChange}\n error={pwdReset.isconfirmnewpwdError}\n helperText={\n pwdReset.isconfirmnewpwdError\n ? t(pwdReset.confirmnewpassworderror)\n : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n {pwdReset.isError ? (\n <FormHelperText style={{ color: \"red\" }}>\n {pwdReset.errorMessage}\n </FormHelperText>\n ) : null}\n </div>\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"20px 0 0 10px\",\n width: \"94%\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={pwdReset.isLoading}\n onClick={handleCloseEvent}\n className={classes.otpButtons}\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color3)\",\n // pebbackground: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n }}\n >\n Back\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: pwdReset.isLoading ? \"50%\" : \"10px\",\n height: pwdReset.isLoading ? \"40px\" : \"100%\",\n width: pwdReset.isLoading ? \"0px\" : \"100%\",\n minWidth: pwdReset.isLoading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={pwdReset.isLoading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n >\n {pwdReset.isLoading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n \"Update\"\n )}\n </GradientButton>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","import { FullScreenLoader, utilFunction } from \"@acuteinfo/common-base\";\n\nimport { useReducer, useEffect, useState, useRef } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { useStyles } from \"./style\";\nimport { UsernamePasswordField } from \"./usernamePassword\";\nimport { OTPModel, OTPModelForm } from \"./otpPopup\";\n// import { veirfyUsernameandPassword, verifyOTP } from \"./api\";\nimport { VerifyFinger } from \"./verifyFinger\";\nimport * as API from \"./api\";\nimport { matchFinger } from \"./biometric\";\nimport { Grid, Tooltip } from \"@mui/material\";\nimport { BankDetails } from \"./bankDetails\";\n// import { MultiLanguages } from \"./multiLanguages\";\nimport { useTranslation } from \"react-i18next\";\nimport { PasswordRotation } from \"./passwordRotation\";\n\nconst inititalState = {\n username: \"\",\n firstName: \"\",\n lastName: \"\",\n loading: false,\n otploading: false,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n userMessage: \"\",\n OtpuserMessage: \"\",\n userMessageforpassword: \"\",\n userMessageforusername: \"\",\n currentFlow: \"username\",\n transactionID: \"\",\n access_token: \"\",\n token_type: \"\",\n otpmodelClose: false,\n authType: \"\",\n isScanning: false,\n auth_data: [],\n company_ID: \"\",\n Branch_CD: \"\",\n auth_type: \"O\",\n otpValidFor: 60,\n};\n\nconst reducer = (state, action) => {\n switch (action.type) {\n case \"inititateUserFingerVerification\":\n case \"inititateOTPVerification\": {\n return {\n ...state,\n loading: true,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n isOTPError: false,\n isBiometricError: false,\n userMessage: \"\",\n };\n }\n case \"inititateUserFingerScanner\": {\n return { ...state, isScanning: true, isBiometricError: false };\n }\n case \"usernameandpasswordrequired\": {\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: true,\n isPasswordError: true,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforpassword: action?.payload?.errorPassword,\n userMessageforusername: action?.payload?.errorUsername,\n username: \"\",\n transactionID: \"\",\n };\n }\n case \"passwordVerificationFailure\":\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: false,\n isPasswordError: true,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforpassword: action?.payload?.errorPassword,\n username: \"\",\n transactionID: \"\",\n };\n case \"usernameVerificationFailure\": {\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: true,\n isPasswordError: false,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforusername: action?.payload?.errorUsername,\n username: \"\",\n transactionID: \"\",\n };\n }\n case \"inititatePasswordVerification\": {\n return {\n ...state,\n loading: true,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n otploading: false,\n userMessage: \"\",\n userMessageforusername: \"\",\n userMessageforpassword: \"\",\n username: \"\",\n transactionID: \"\",\n access_token: \"\",\n };\n }\n case \"passwordRotation\": {\n return {\n ...state,\n loading: false,\n username: action?.payload?.username,\n access_token: action?.payload?.access_token,\n token_type: action?.payload?.token_type,\n };\n }\n case \"passwordRotationsuccess\": {\n return {\n ...state,\n loading: false,\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\n };\n }\n case \"passwordVerificationSuccessful\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n transactionID: action?.payload?.transactionID,\n username: action?.payload?.username,\n auth_type: action?.payload?.auth_type,\n OtpuserMessage: \"\",\n access_token: action?.payload?.access_token,\n token_type: action?.payload?.token_type,\n otpmodelClose: false,\n currentFlow: \"OTP\",\n authType: action?.payload?.authType,\n auth_data: action?.payload?.auth_data,\n otpValidFor: action?.payload?.otpValidFor,\n company_ID: action?.paylod?.company_ID,\n };\n }\n case \"inititatebiometricVerification\": {\n return {\n ...state,\n loading: true,\n otploading: true,\n OtpuserMessage: \"\",\n otpmodelClose: false,\n };\n }\n case \"biometricVerificationFailure\":\n return {\n ...state,\n loading: false,\n isError: true,\n isBiometricError: true,\n userMessage: action?.payload?.error,\n isScanning: false,\n };\n case \"biometricVerificationSuccessful\":\n return {\n ...state,\n loading: false,\n isError: false,\n isBiometricError: false,\n state: action.payload,\n isScanning: false,\n };\n case \"OTPVerificationComplate\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n OtpuserMessage: \"\",\n };\n }\n case \"OTPVerificationFailed\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n OtpuserMessage: action?.payload?.error,\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\n };\n }\n case \"OTPResendSuccess\": {\n return {\n ...state,\n transactionID: action?.payload?.transactionID,\n };\n }\n case \"backToUsernameVerification\": {\n return {\n ...inititalState,\n isPasswordError: action?.payload?.isError,\n userMessageforpassword: action?.payload?.errorMessage,\n };\n }\n\n default: {\n return state;\n }\n }\n};\n\ninterface AuthControllerProps {\n bannerDetails: {\n bannerImg: string;\n bannerTitle: string;\n bannerNote: string;\n };\n logoUrl: string;\n loading: boolean;\n loginFn: Function;\n veirfyUsernameandPassword: Function;\n verifyOTP: Function;\n OTPResendRequest: Function;\n ResetPassword: Function;\n}\n\nexport const AuthControllerWrapper: React.FC<AuthControllerProps> = ({\n bannerDetails,\n logoUrl,\n loading,\n loginFn,\n veirfyUsernameandPassword,\n verifyOTP,\n OTPResendRequest,\n ResetPassword,\n}) => {\n // const { isLoggedIn, login } = useContext(AuthContext);\n const classes = useStyles();\n const navigate = useNavigate();\n const [loginState, dispath] = useReducer(reducer, inititalState);\n const [openpwdreset, setOpenPwdReset] = useState(false);\n const failureCount = useRef(0);\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\n const urlObj = useRef<any>(null);\n const { t } = useTranslation();\n const otpResendRef = useRef(1);\n\n // useEffect(() => {\n // if (isLoggedIn()) {\n // navigate(\"/cbsenfinity\", { replace: true });\n // }\n // }, [navigate, isLoggedIn]);\n\n // const {\n // data: imageData,\n // isLoading,\n // isFetching,\n // } = useQuery<any, any>([\"getLoginImageData\"], () =>\n // API.getLoginImageData({ APP_TRAN_CD: \"51\" })\n // );\n\n // const imageDataString = JSON.stringify(imageData);\n // localStorage.setItem(\"imageData\", imageDataString);\n\n // const imageDataFromStorage: any = localStorage.getItem(\"imageData\");\n\n useEffect(() => {\n if (Boolean(logoUrl)) {\n let blob = utilFunction.base64toBlob(logoUrl);\n urlObj.current =\n typeof blob === \"object\" && Boolean(blob)\n ? URL.createObjectURL(blob)\n : \"\";\n setDashboardLogoURL(urlObj.current);\n }\n }, [logoUrl]);\n\n // useEffect(() => {\n // GeneralAPI.setDocumentName(\"Enfinity\");\n // }, []);\n\n const verifyUsernamePassword = async (username, password) => {\n if (Boolean(username) && Boolean(password)) {\n dispath({ type: \"inititatePasswordVerification\" });\n const { status, data, message, responseType, access_token } =\n await veirfyUsernameandPassword(username, password);\n if (status === \"0\" && responseType === \"S\") {\n dispath({\n type: \"passwordRotation\",\n payload: {\n username: username,\n access_token: access_token?.access_token,\n token_type: access_token?.token_type,\n },\n });\n setOpenPwdReset(true);\n } else if (status === \"0\") {\n dispath({\n type: \"passwordVerificationSuccessful\",\n payload: {\n transactionID: data?.REQUEST_CD,\n username: username,\n access_token: access_token?.access_token,\n token_type: access_token?.token_type,\n authType: data?.AUTH_TYPE,\n auth_data: [\n {\n company_ID: data?.BASE_COMP_CD ?? \"\",\n branch_cd: data?.BASE_BRANCH_CD,\n },\n ],\n otpValidFor: data?.OTP_VALID,\n },\n });\n } else {\n dispath({\n type: \"passwordVerificationFailure\",\n payload: { error: message, errorPassword: message },\n });\n }\n } else if (!Boolean(username) && !Boolean(password)) {\n dispath({\n type: \"usernameandpasswordrequired\",\n payload: {\n error: \"UsernamenandPasswordisRequired\",\n errorUsername: \"UsernameisRequired\",\n errorPassword: \"PasswordisRequired\",\n },\n });\n } else if (!Boolean(username)) {\n dispath({\n type: \"usernameVerificationFailure\",\n payload: {\n error: \"UsernameisRequired\",\n errorUsername: \"UsernameisRequired\",\n },\n });\n } else {\n dispath({\n type: \"passwordVerificationFailure\",\n payload: {\n error: \"PasswordisRequired\",\n errorPassword: \"PasswordisRequired\",\n },\n });\n }\n };\n\n const VerifyOTP = async (OTPNumber) => {\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\n dispath({ type: \"inititateOTPVerification\" });\n const { status, data, message } = await verifyOTP(\n loginState.transactionID,\n // loginState.app_transactionId,\n loginState.username,\n OTPNumber,\n loginState.access_token,\n loginState.token_type,\n loginState.authType,\n );\n console.log(\"menuapierror\", message);\n if (status === \"0\") {\n // try {\n // audio.play();\n // } catch (error) {\n // console.log(error);\n // }\n dispath({ type: \"OTPVerificationComplate\" });\n loginFn(data);\n } else if (status === \"999\") {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: message, otpmodelclose: true },\n });\n // enqueueSnackbar(message, { variant: \"error\" });\n } else {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: message, otpmodelclose: false },\n });\n }\n } else {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: \"Please enter a 6 digit OTP number\" },\n });\n }\n };\n\n const handlePasswordRotationClose = (flag) => {\n if (flag === \"0\") {\n dispath({\n type: \"passwordRotationsuccess\",\n payload: { otpmodelclose: true },\n });\n }\n setOpenPwdReset(false);\n };\n const changeUserName = (isError = false, errorMessage = \"\") => {\n dispath({\n type: \"backToUsernameVerification\",\n payload: {\n isError: isError,\n errorMessage: errorMessage,\n },\n });\n };\n const verifyFinger = async () => {\n try {\n dispath({ type: \"inititateUserFingerScanner\" });\n const fingerResponse = await API.capture();\n if (fingerResponse?.ErrorCode === \"0\") {\n dispath({ type: \"inititateUserFingerVerification\" });\n const promise: any = await matchFinger(\n loginState.auth_data,\n fingerResponse.IsoTemplate,\n );\n if (promise.isError) {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: promise?.errorMessage ?? \"Something went wrong.\",\n },\n });\n } else {\n const { status, data, message } = await verifyOTP(\n loginState.transactionID,\n loginState.username,\n String(promise?.sr_cd ?? \"0\"),\n loginState.access_token,\n loginState.token_type,\n loginState.authType,\n promise.status ? \"Y\" : \"N\",\n );\n if (status === \"0\" && promise.status) {\n dispath({ type: \"biometricVerificationSuccessful\" });\n loginFn(data);\n } else if (status === \"0\" && !promise.status) {\n failureCount.current = failureCount.current + 1;\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: \"Finger Not Match.Please Try Again\",\n },\n });\n if (failureCount.current >= 3)\n changeUserName(true, \"Finger Not Match.Please Try Again\");\n } else if (status === \"99\") {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n } else if (status === \"999\") {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n changeUserName(\n true,\n message ?? \"Finger Not Match.Please Try Again\",\n );\n } else {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n }\n }\n } else {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error:\n fingerResponse?.ErrorMessage ?? t(\"Biometric.MFS100NotFound\"),\n },\n });\n }\n } catch (e: any) {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: e?.message ?? t(\"Biometric.Unknownerroroccured\"),\n },\n });\n }\n };\n return (\n <>\n {loading ? (\n <FullScreenLoader />\n ) : (\n <>\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\n <BankDetails bannerDetails={bannerDetails} />\n <Grid item xs={11} md={6} lg={6} sm={6}>\n <Grid\n container\n direction=\"row\"\n justifyContent=\"flex-end\"\n alignItems=\"center\"\n padding={\"25px\"}\n >\n <Tooltip describeChild title=\"Enfinity-CBS-UI-V1.0.17\">\n <img\n src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"}\n alt=\"Logo\"\n />\n </Tooltip>\n </Grid>\n\n {/* long dropdown */}\n {/* <Grid\n container\n direction=\"row\"\n justifyContent=\"flex-end\"\n alignItems=\"center\"\n padding={\"0 35px 0 0\"}\n >\n <MultiLanguages />\n </Grid> */}\n\n {openpwdreset ? (\n <PasswordRotation\n classes={classes}\n ResetPassword={ResetPassword}\n open={openpwdreset}\n username={loginState.username}\n accessToken={loginState.access_token}\n tokenType={loginState.token_type}\n handleClose={handlePasswordRotationClose}\n />\n ) : (\n <>\n {loginState.currentFlow === \"username\" ? (\n <UsernamePasswordField\n key=\"username\"\n classes={classes}\n loginState={loginState}\n verifyUsernamePassword={verifyUsernamePassword}\n />\n ) : (\n <>\n {loginState.authType === \"OTP\" ? (\n <OTPModel\n key=\"otp\"\n OTPResendRequest={OTPResendRequest}\n classes={classes}\n loginState={loginState}\n VerifyOTP={VerifyOTP}\n previousStep={changeUserName}\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\n setOTPError={(error) => {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: error },\n });\n }}\n open={true}\n handleClose={changeUserName}\n resendFlag={\"LOGIN\"}\n setNewRequestID={(newRequestID) => {\n dispath({\n type: \"OTPResendSuccess\",\n payload: { transactionID: newRequestID },\n });\n otpResendRef.current = otpResendRef.current + 1;\n }}\n otpresendCount={otpResendRef.current}\n />\n ) : loginState.authType === \"TOTP\" ? (\n <>\n {\" \"}\n <OTPModelForm\n key={\"OTPForm\"}\n OTPResendRequest={OTPResendRequest}\n classes={classes}\n // handleClose={() => {}}\n handleClose={changeUserName}\n loginState={loginState}\n VerifyOTP={VerifyOTP}\n OTPError={loginState?.OtpuserMessage ?? \"\"}\n setOTPError={(error) => {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: error },\n });\n }}\n resendFlag={\"LOGIN\"}\n setNewRequestID={(newRequestID) => {\n dispath({\n type: \"OTPResendSuccess\",\n payload: { transactionID: newRequestID },\n });\n otpResendRef.current = otpResendRef.current + 1;\n }}\n otpresendCount={otpResendRef.current}\n />\n </>\n ) : (\n <VerifyFinger\n key=\"biometric\"\n classes={classes}\n loginState={loginState}\n verifyFinger={verifyFinger}\n previousStep={changeUserName}\n />\n )}\n </>\n )}\n </>\n )}\n </Grid>\n </Grid>\n </>\n )}\n </>\n );\n};\n"],"names":["_jsx","_jsxs","IconButton","_Fragment","API.capture"],"mappings":"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","x_google_ignoreList":[3]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/pages/auth/style.ts","../src/pages/auth/usernamePassword.tsx","../src/pages/auth/otpPopup.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/pages/auth/verifyFinger.tsx","../src/pages/auth/api.ts","../src/pages/auth/biometric.ts","../src/pages/auth/bankDetails.tsx","../src/pages/auth/passwordRotation.tsx","../src/pages/auth/authController.tsx"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nexport const useStyles = makeStyles((theme: any) => ({\n wrapper: {\n minHeight: \"100vh\",\n boxShadow: \"0 3px 6px rgba(0,0,0,0.03)\",\n // background: \"#fff\",\n background: \"var(--theme-color2)\",\n },\n loginEmp: {\n background: \"#fff\",\n padding: theme.spacing(2, 4),\n display: \"flex\",\n maxWidth: \"400px\",\n margin: \"auto\",\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\n borderRadius: \"8px\",\n [theme.breakpoints.down(\"sm\")]: {\n width: \"100%\",\n },\n },\n formWrap: {\n marginTop: theme.spacing(2),\n },\n loginBtn: {\n minWidth: \"100% !important\",\n margin: theme.spacing(2, 0),\n fontSize: \"1rem\",\n padding: \"10px .75rem\",\n background: \"rgb(128,0,0)\",\n border: 0,\n color: \"#fff !important\",\n fontWeight: 600,\n letterSpacing: \"0.02857em\",\n boxShadow: \"none\",\n textTransform: \"capitalize\",\n alignSelf: \"flex-end\",\n \"&:hover\": {\n background: \"#fedad8\",\n boxShadow: \"none\",\n },\n },\n OTPTimer: {\n marginTop: \"10px\",\n color: theme.palette.primary.main,\n fontWeight: 600,\n },\n resendLink: {\n marginTop: \"10px\",\n cursor: \"pointer\",\n color: theme.palette.secondary.main,\n fontWeight: 600,\n fontSize: \"0.875 rem\",\n },\n logo: {\n marginBottom: theme.spacing(1),\n },\n\n loginLeft: {\n [theme.breakpoints.down(\"sm\")]: {\n display: \"none\",\n },\n },\n loginRight: {\n background: \"#fff\",\n padding: theme.spacing(2, 4),\n display: \"flex\",\n maxWidth: \"400px\",\n margin: \"auto\",\n boxShadow: \"0 0 20px rgba(0,0,0,0.06)\",\n borderRadius: \"8px\",\n [theme.breakpoints.down(\"sm\")]: {\n width: \"100%\",\n },\n \"& img\": {\n alignSelf: \"center\",\n },\n },\n\n loginImg: {},\n\n verifybutton: {\n alignSelf: \"center\",\n // marginBottom: \"10px\",\n // marginTop: \"10px\",\n padding: \"5px\",\n },\n otpButtons: {\n // padding: \"10px\",\n },\n\n divflex: {\n display: \"flex\",\n },\n otpinputpadding: {\n \"& input\": {\n marginRight: \"25px !important\",\n border: \"1.42444px solid var(--theme-color3)\",\n borderRadius: \"10px\",\n width: \"45px !important\",\n height: \"45px !important\",\n marginBottom: \"15px\",\n boxShadow: \"0px 5.69775px 11.3955px rgba(66, 99, 199, 0.16)\",\n },\n },\n ibtnvisible: {\n // padding: \"7px !important\",\n // alignItems: \"baseline\",\n marginBottom: \"15px\",\n },\n btnvisibleoff: {\n display: \"none\",\n },\n OTPalignName: {\n display: \"flex\",\n alignItems: \"center\",\n // justifyContent: \"space-between\",\n marginBottom: \"12px\",\n color: \"#1C1C1C\",\n fonWeight: \"400\",\n fontSize: \"17px\",\n lineHeight: \"33px\",\n },\n resendOTPalign: {\n color: \"var(--theme-color3)\",\n fonWeight: \"400\",\n fontSize: \"17px\",\n lineHeight: \"33px\",\n margin: \"0 auto\",\n // marginTop: \"15px\",\n // display: \"block !important\",\n },\n resendbtnLink: {\n textDecoration: \"underline\",\n color: \"var(--theme-color3)\",\n cursor: \"pointer\",\n \"&:hover\": {\n textDecoration: \"underline\",\n color: \"var(--theme-color3)\",\n },\n },\n dialogTitleClass: {\n background: \"var(--theme-color5)\",\n padding: \"6px 15px !important\",\n margin: \"10px\",\n color: \"var(--theme-color2)\",\n borderRadius: \"4px\",\n \"& h2\": {\n fontWeight: \"500 !important\",\n },\n },\n lang_svg: {\n marginRight: \"10px\",\n width: \"22px\",\n height: \"22px\",\n },\n dialogContent: {\n padding: \"0px 15px\",\n \"& p\": {\n whiteSpace: \"pre-wrap\",\n color: \"black\",\n marginTop: \"8px\",\n marginBottom: \"6px\",\n },\n },\n button: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexDirection: \"column\",\n margin: \"6px\",\n background: \"var(--theme-color1)\",\n \"&:hover\": {\n background: \"var(--theme-color1) !important\",\n },\n },\n}));\n","import { GradientButton, TextField } from \"@acuteinfo/common-base\";\n\nimport { Fragment, useState, useEffect, useRef } from \"react\";\n// import { TextField } from \"components/styledComponent/textfield\";\n// import { GradientButton } from \"components/styledComponent/button\";\nimport Visibility from \"@mui/icons-material/Visibility\";\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\nimport { CircularProgress, IconButton, InputAdornment } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport { Grid } from \"@mui/material\";\nimport { useTranslation } from \"react-i18next\";\n// import { Language_App } from \"pages_audit/appBar/language\";\nexport const UsernamePasswordField = ({\n classes,\n loginState,\n verifyUsernamePassword,\n}) => {\n const [input, setInput] = useState({ userName: \"\", password: \"\" });\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n const { t } = useTranslation();\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const handleChange = (event) => {\n const name = event.target.name;\n const value = event.target.value;\n if (name === \"userName\" && value) {\n loginState.isUsernameError = false;\n }\n if (name === \"password\" && value) {\n loginState.isPasswordError = false;\n }\n\n setInput((values) => ({ ...values, [name]: value }));\n };\n const inputRef = useRef<any>(null);\n const inputPassRef = useRef<any>(null);\n const inputButtonRef = useRef<any>(null);\n\n useEffect(() => {\n let timeoutCd;\n if (loginState.isUsernameError) {\n timeoutCd = setTimeout(() => {\n inputRef?.current?.focus?.();\n }, 1000);\n } else if (loginState.isPasswordError) {\n timeoutCd = setTimeout(() => {\n inputPassRef?.current?.focus?.();\n }, 1000);\n }\n return () => {\n if (timeoutCd) {\n clearTimeout(timeoutCd);\n }\n };\n }, [loginState.isUsernameError, loginState.isPasswordError]);\n useEffect(() => {\n let timeoutCd;\n if (loginState?.otpmodelClose ?? false) {\n setInput((values) => ({ ...values, password: \"\" }));\n timeoutCd = setTimeout(() => {\n inputPassRef?.current?.focus?.();\n }, 1500);\n }\n return () => {\n if (timeoutCd) {\n clearTimeout(timeoutCd);\n }\n };\n }, [loginState.otpmodelClose]);\n\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\" style={{ paddingTop: \"20px\" }}>\n <div\n style={{\n color: \"#000000 !important\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n }}\n >\n <h3>{t(\"SignIn\")}</h3>\n </div>\n <div\n className=\"\"\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n\n width: \"360px\",\n }}\n >\n {t(\"SignInWithUserIDandPassword\")}\n </div>\n <div className={classes.formWrap}>\n <TextField\n // variant=\"filled\"\n // color=\"secondary\"\n autoFocus={true}\n label={t(\"UserID\")}\n // placeholder=\"User ID\"\n placeholder={String(t(\"UserID\"))}\n style={{\n marginTop: \"10px\",\n marginBottom: \"17px\",\n }}\n fullWidth\n type={\"text\"}\n name=\"userName\"\n value={input.userName.trimStart() || \"\"}\n onChange={handleChange}\n error={loginState.isUsernameError}\n helperText={\n loginState.isUsernameError\n ? t(loginState.userMessageforusername)\n : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={loginState.loading}\n autoComplete=\"off\"\n ref={inputRef}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{\n maxLength: \"16\",\n }}\n />\n\n <div\n style={{\n display: \"flex\",\n flexDirection: \"row-reverse\",\n marginTop: \"8px\",\n }}\n >\n <TextField\n key=\"employee\"\n label={t(\"Password\")}\n // variant=\"filled\"\n // color=\"secondary\"\n\n placeholder={String(t(\"EnterPassword\"))}\n InputLabelProps={{\n shrink: true,\n }}\n fullWidth\n type={showPassword ? \"text\" : \"password\"}\n name=\"password\"\n value={input.password}\n onChange={handleChange}\n error={loginState.isPasswordError}\n helperText={\n loginState.isPasswordError\n ? t(loginState.userMessageforpassword)\n : \"\"\n }\n disabled={loginState.loading}\n ref={inputPassRef}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n InputProps={{\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.loading}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </InputAdornment>\n ),\n }}\n inputProps={{ maxLength: \"16\" }}\n />\n </div>\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\n <div style={{ flex: \"auto\", textAlign: \"end\" }}>\n <a\n href=\"forgotpassword\"\n style={{ color: \"var(--theme-color3)\" }}\n >\n {t(\"ForgotPassword\")}\n </a>\n </div>\n </div>\n <div style={{ marginTop: \"20px\", display: \"flex\" }}>\n <div\n style={{\n flex: \"auto\",\n textAlign: \"center\",\n marginTop: \"5px\",\n marginBottom: \"17px\",\n }}\n >\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={loginState.loading}\n onClick={() =>\n verifyUsernamePassword(\n (input.userName || \"\").toLowerCase(),\n input.password,\n )\n }\n ref={inputButtonRef}\n // endicon={loginState.loading ? null : \"East\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n >\n {loginState.loading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"Next\")\n )}\n </GradientButton>\n </div>\n </div>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","import { FormHelperText } from \"@mui/material\";\nimport { GradientButton } from \"@acuteinfo/common-base\";\nimport { Fragment, useState, useRef, useEffect } from \"react\";\nimport OTPInput, { ResendOTP } from \"otp-input-react\";\nimport Visibility from \"@mui/icons-material/Visibility\";\nimport VisibilityOff from \"@mui/icons-material/VisibilityOff\";\nimport { CircularProgress } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport IconButton from \"@mui/material/IconButton\";\nimport { Grid } from \"@mui/material\";\nimport clsx from \"clsx\";\nimport { useSnackbar } from \"notistack\";\nimport { useTranslation } from \"react-i18next\";\nexport const OTPModel = ({\n classes,\n OTPResendRequest,\n open,\n handleClose,\n loginState,\n VerifyOTP,\n OTPError,\n setOTPError,\n previousStep,\n setNewRequestID = (id) => {},\n otpresendCount = 0,\n resendFlag,\n}) => {\n const [OTP, setOTP] = useState(\"\");\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const [btnshow, setbtnshow] = useState(false);\n const inputButtonRef = useRef<any>(null);\n const [resendotpLoading, setResendotpLoading] = useState(false);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n // const renderButton = (buttonProps) => {\n // let { remainingTime, ...other } = buttonProps;\n // return resendotpLoading ? (\n // <a\n // remainingtime={remainingTime}\n // {...other}\n // className={clsx(\n // classes.resendbtnLink,\n // !btnshow && classes.btnvisibleoff\n // )}\n // >\n // {t(\"otp.ResendOTP\")}\n // </a>\n // ) : null;\n // };\n const renderButton = (buttonProps) => {\n let { remainingTime, ...other } = buttonProps;\n return resendotpLoading ? (\n <a\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n style={{ cursor: \"wait\" }}\n >\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\n </a>\n ) : (\n <a\n remainingtime={remainingTime}\n {...other}\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n >\n {/* {t(\"otp.ResendOTP\")} */}\n {t(\"otp.GetNewOTP\")}\n </a>\n );\n };\n\n const ClickEventHandler = () => {\n if (!Boolean(OTP) || OTP.length < 6) {\n setOTPError(\"otp.EnterOTPDigit\");\n } else {\n setOTPError(\"\");\n VerifyOTP(OTP);\n }\n };\n\n const handleResendClick = async () => {\n setResendotpLoading(true);\n const { status, data, message } = await OTPResendRequest(\n resendFlag === \"FORGET_PW\" || resendFlag === \"FORGT_TOTP\"\n ? loginState?.requestCd\n : loginState?.transactionID,\n loginState?.username,\n resendFlag,\n loginState.auth_data?.[0]?.company_ID,\n loginState.auth_data?.[0]?.branch_cd,\n );\n setResendotpLoading(false);\n if (status === \"0\") {\n setNewRequestID(data?.TRAN_CD);\n setbtnshow(false);\n enqueueSnackbar(message, { variant: \"success\" });\n } else {\n enqueueSnackbar(message, { variant: \"error\" });\n }\n };\n const handleCloseEvent = () => {\n setOTPError(\"\");\n setOTP(\"\");\n handleClose(\"\");\n };\n const renderTime = (remainingtime) => {\n if (parseInt(remainingtime) === 0) {\n setTimeout(() => {\n setbtnshow(true);\n }, 700);\n }\n return (\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\n {t(\"otp.OtpExpired\")} {remainingtime} {t(\"otp.second\")}\n {/* {t(\"otp.ValidFor\")} {remainingtime} */}\n </span>\n );\n };\n\n useEffect(() => {\n if (loginState?.otpmodelClose ?? false) {\n handleCloseEvent();\n }\n }, [loginState.otpmodelClose]);\n return (\n <Fragment>\n <Container maxWidth=\"sm\">\n <Grid alignItems=\"center\" marginTop={\"4em\"}>\n <div\n // className={classes.formWrap}\n style={\n {\n // marginRight: \"25px\",\n // width: \"100%\",\n // position: \"relative\",\n // right: \"42px\",\n // bottom: \"13px\",\n }\n }\n >\n <div\n style={{\n color: \"#000000\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"otp.OTPAuthentication\")}\n </div>\n <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.EnterOTP\")}\n </div>\n {/* <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.GenerateNewOTP\")}\n </div> */}\n\n <div className={classes.OTPalignName}>\n {t(\"otp.Hello\")}{\" \"}\n {loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null}\n <ResendOTP\n // onResendClick={() => setbtnshow(false)}\n onResendClick={handleResendClick}\n // onTimerComplete={() => setbtnshow(true)}\n renderButton={renderButton}\n renderTime={renderTime}\n maxTime={loginState?.otpValidFor ?? 60}\n className={classes.resendOTPalign}\n />\n </div>\n <div\n className={classes.divflex}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n >\n <OTPInput\n value={OTP}\n onChange={setOTP}\n autoFocus\n OTPLength={6}\n otpType=\"number\"\n disabled={false}\n secure={!showPassword}\n className={classes.otpinputpadding}\n />\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </div>\n {Boolean(OTPError) ? (\n <FormHelperText style={{ color: \"red\" }}>\n {OTPError}\n </FormHelperText>\n ) : null}\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"42px 0 0 42px\",\n width: \"60%\",\n }}\n >\n <GradientButton\n // fullWidth\n disabled={loginState.otploading}\n onClick={() => {\n previousStep(false, \"\");\n }}\n className={classes.otpButtons}\n // color={\"var(--theme-color3) \"}\n sx={{\n border: \"var(--theme-color3)1px solid\",\n minWidth: \"50%\",\n background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n \"&:hover\": {\n background: \"var(--theme-color2) !important\",\n },\n }}\n // customstyle = {{color : \"var(--theme-color3) !important\"}}\n // starticon={\"West\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={loginState.loading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n // endicon={loginState.loading ? null : \"TaskAlt\"}\n // rotateIcon=\"scale(1.4)\"\n >\n {loginState.loading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"otp.VerifyOTP\")\n )}\n </GradientButton>\n </div>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n\nexport const OTPModelForm = ({\n classes,\n OTPResendRequest,\n handleClose,\n loginState,\n VerifyOTP,\n OTPError,\n setOTPError,\n resendFlag,\n setNewRequestID = (id) => {},\n otpresendCount = 0,\n}) => {\n const [OTP, setOTP] = useState(\"\");\n const [showPasswordTime, setShowPasswordTime] = useState(0);\n const showPassword = Date.now() < showPasswordTime;\n const [, forceUpdate] = useState<any | null>();\n const timerRef = useRef<any>(null);\n useEffect(() => {\n return () => clearTimeout(timerRef.current);\n }, []);\n const [btnshow, setbtnshow] = useState(false);\n const [resendotpLoading, setResendotpLoading] = useState(false);\n const inputButtonRef = useRef<any>(null);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n const renderButton = (buttonProps) => {\n let { remainingTime, ...other } = buttonProps;\n return resendotpLoading ? (\n <a\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n style={{ cursor: \"wait\" }}\n >\n {/* {t(\"otp.ResendOTP\")} {<CircularProgress size={20} color=\"secondary\" />} */}\n {t(\"otp.GetNewOTP\")} {<CircularProgress size={20} color=\"secondary\" />}\n </a>\n ) : (\n <a\n remainingtime={remainingTime}\n {...other}\n className={clsx(\n classes.resendbtnLink,\n !btnshow && classes.btnvisibleoff,\n )}\n >\n {/* {t(\"otp.ResendOTP\")} */}\n {t(\"otp.GetNewOTP\")}\n </a>\n );\n };\n const ClickEventHandler = () => {\n if (!Boolean(OTP) || OTP.length < 6) {\n setOTPError(\"otp.EnterOTPDigit\");\n } else {\n setOTPError(\"\");\n VerifyOTP(OTP);\n }\n };\n const handleResendClick = async () => {\n setResendotpLoading(true);\n const { status, data, message } = await OTPResendRequest(\n resendFlag === \"FORGET_PW\"\n ? loginState?.requestCd\n : loginState?.transactionID,\n loginState?.username,\n resendFlag,\n loginState?.company_ID,\n loginState?.branch_cd,\n );\n setResendotpLoading(false);\n if (status === \"0\") {\n setNewRequestID(data?.TRAN_CD);\n setbtnshow(false);\n enqueueSnackbar(message, { variant: \"success\" });\n } else {\n enqueueSnackbar(message, { variant: \"error\" });\n }\n };\n const handleCloseEvent = () => {\n setOTPError(\"\");\n setOTP(\"\");\n handleClose();\n };\n const renderTime = (remainingtime) => {\n if (parseInt(remainingtime) === 0) {\n setTimeout(() => {\n setbtnshow(true);\n }, 700);\n }\n return (\n <span className={clsx(btnshow && classes.btnvisibleoff)}>\n {t(\"otp.OtpExpired\")} {remainingtime}\n </span>\n );\n };\n useEffect(() => {\n if (loginState?.otpmodelClose ?? false) {\n handleCloseEvent();\n }\n }, [loginState.otpmodelClose]);\n\n return (\n <Fragment>\n <Grid alignItems=\"center\">\n <div>\n <div\n style={{\n color: \"#000000\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"otp.OTPAuthentication\")}\n </div>\n {/* <div\n style={{\n color: \"#949597\",\n fontSize: \"16px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n lineHeight: \"33px\",\n }}\n >\n {t(\"otp.GenerateNewOTP\")}\n </div> */}\n <div className={classes.OTPalignName}>\n {t(\"otp.Hello\")}{\" \"}\n {loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null}\n {loginState.otploading ||\n otpresendCount >= 3 ||\n loginState?.auth_type === \"TOTP\" ? null : (\n <ResendOTP\n onResendClick={handleResendClick}\n // onTimerComplete={() => setbtnshow(true)}\n renderButton={renderButton}\n renderTime={renderTime}\n maxTime={loginState?.otpValidFor ?? 60}\n className={classes.resendOTPalign}\n />\n )}\n </div>\n <div\n className={classes.divflex}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n >\n <OTPInput\n value={OTP}\n onChange={setOTP}\n autoFocus\n OTPLength={6}\n otpType=\"number\"\n disabled={false}\n secure={!showPassword}\n className={classes.otpinputpadding}\n />\n\n {/* <IconButton\n aria-label=\"toggle password visibility\"\n // onClick={() => {\n // if (!showPassword) {\n // setShowPasswordTime(Date.now() + 5000);\n // timerRef.current = setTimeout(\n // () => forceUpdate(Date.now()),\n // 5000\n // );\n // } else if (showPassword) setShowPasswordTime(0);\n // }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <VisibilityOffIcon /> : <VisibilityIcon />}\n </IconButton> */}\n <IconButton\n aria-label=\"toggle password visibility\"\n onClick={() => {\n if (!showPassword) {\n setShowPasswordTime(Date.now() + 5000);\n timerRef.current = setTimeout(\n () => forceUpdate(Date.now()),\n 5000,\n );\n } else if (showPassword) setShowPasswordTime(0);\n }}\n onMouseDown={(e) => e.preventDefault()}\n disabled={loginState.otploading}\n className={classes.ibtnvisible}\n >\n {showPassword ? <Visibility /> : <VisibilityOff />}\n </IconButton>\n </div>\n {Boolean(OTPError) ? (\n <FormHelperText style={{ color: \"red\" }}>{OTPError}</FormHelperText>\n ) : null}\n {loginState?.auth_type === \"TOTP\" ? (\n <div style={{ flex: \"auto\" }}>\n <a href=\"forgot-totp\" style={{ color: \"var(--theme-color3)\" }}>\n Forgot TOTP\n </a>\n </div>\n ) : (\n <></>\n )}\n\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"42px 0 0 42px\",\n width: \"60%\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={loginState.otploading}\n onClick={handleCloseEvent}\n className={classes.otpButtons}\n // starticon={\"West\"}\n // color={\"var(--theme-color2) !important\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color2)\",\n // background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n minWidth: \"48%\",\n }}\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.otploading ? \"50%\" : \"10px\",\n height: loginState.otploading ? \"40px\" : \"100%\",\n width: loginState.otploading ? \"0px\" : \"100%\",\n minWidth: loginState.otploading ? \"40px\" : \"80px\",\n }}\n // fullWidth\n disabled={loginState.loading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n >\n {loginState.otploading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n t(\"otp.VerifyOTP\")\n )}\n </GradientButton>\n </div>\n </div>\n </Grid>\n </Fragment>\n );\n};\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","import { Fragment } from \"react\";\nimport { GradientButton } from \"@acuteinfo/common-base\";\nimport FingerprintSharpIcon from \"@mui/icons-material/FingerprintSharp\";\nimport { CircularProgress, Container, Typography } from \"@mui/material\";\nimport { Grid } from \"@mui/material\";\nimport \"./verify.css\";\nimport { useTranslation } from \"react-i18next\";\nexport const VerifyFinger = ({\n classes,\n loginState,\n verifyFinger,\n previousStep,\n}) => {\n const { t } = useTranslation();\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\">\n <div\n style={{\n marginRight: \"25px\",\n width: \"102%\",\n // marginBottom: \"55px\",\n }}\n >\n <br />\n <div\n style={{\n color: \"#000000\",\n fontSize: \"34px\",\n fontWeight: \"600\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"150%\",\n marginBottom: \"10px\",\n }}\n >\n {t(\"Biometric.BiometrixAuthentication\")}\n </div>\n <div\n style={{\n color: \"#949597\",\n fontSize: \"18px\",\n fontWeight: \"400\",\n // fontFamily: \"Poppins\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n lineHeight: \"33px\",\n // marginBottom: \"10px\",\n }}\n >\n {t(\"Biometric.Kindlyplaceyoufinger\")}\n </div>\n <br />\n <Typography variant=\"h5\" style={{ color: \"#000000\" }}>\n {t(\"otp.Hello\")} {\"\"}\n {` ${\n loginState?.username\n ? loginState.username.charAt(0).toUpperCase() +\n loginState.username.slice(1)\n : null\n }`}\n </Typography>\n <br />\n <div\n className={\n loginState?.isBiometricError\n ? classes.eFingerUi\n : classes.fingerUi\n }\n >\n <div className=\"spinner-wrap\">\n <FingerprintSharpIcon\n sx={{\n fontSize: \"80px\",\n opacity: \"0.4\",\n borderRadius: \"50%\",\n display: \"flex\",\n margin: \"0 auto\",\n \"&:after\": {\n borderBottom: \"2px solid #26A456\",\n },\n }}\n className={\n loginState?.isBiometricError ? classes.FingerIcon : null\n }\n color={loginState?.isBiometricError ? \"error\" : \"inherit\"}\n />\n {loginState?.isScanning ? (\n <>\n <div\n className=\"spinner-item\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \" 1px solid red\",\n }}\n ></div>\n <div\n className=\"spinner-item spinner-item--2\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \"1px solid red\",\n }}\n ></div>\n <div\n className=\"spinner-item spinner-item--3\"\n style={{\n border: loginState?.isScanning\n ? \"1px solid #949597\"\n : \"1px solid red\",\n }}\n ></div>\n </>\n ) : null}\n </div>\n </div>\n\n <div className={classes.biometric}>\n <div style={{ marginTop: \"50px\" }}>\n <div className={loginState.isScanning ? \"progress\" : \"hide\"}>\n <div\n className=\"bar\"\n style={{ width: loginState.isScanning ? \"30%\" : \"0%\" }}\n ></div>\n </div>\n <h3\n style={{\n display: \"flex\",\n marginTop: \"20px\",\n justifyContent: \"space-around\",\n color: loginState?.isBiometricError\n ? \"rgb(255 0 0 / 65%)\"\n : \"inherit\",\n }}\n >\n {loginState?.isBiometricError\n ? loginState?.userMessage\n : loginState?.loading\n ? t(\"Biometric.Loading\")\n : loginState?.isScanning\n ? t(\"Biometric.Scanning\")\n : null}\n </h3>\n </div>\n </div>\n </div>\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n margin: \"42px 0 0 42px\",\n // margin: \"38px 0 0 0\",\n gap: \"10px\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={loginState.loading}\n onClick={() => {\n previousStep(false, \"\");\n }}\n className={classes.otpButtons}\n // starticon={\"West\"}\n // rotateIcon=\"scale(1.4) rotateX(360deg)\"\n // color={\"var(--theme-color3) !important\"}\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color3)\",\n background: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n minWidth: \"48%\",\n }}\n >\n {t(\"otp.Back\")}\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: loginState.loading ? \"50%\" : \"10px\",\n height: loginState.loading ? \"40px\" : \"100%\",\n width: loginState.loading ? \"0px\" : \"100%\",\n minWidth: loginState.loading ? \"40px\" : \"80px\",\n // width: loginState.loading ? \"0px\" : \"90%\",\n // minWidth: loginState.loading ? \"40px\" : \"80px\",\n }}\n disabled={loginState.loading}\n onKeyDown={(e) => e.keyCode === 13 && verifyFinger}\n onClick={verifyFinger}\n className={classes.otpButtons}\n >\n {loginState.loading ? (\n <CircularProgress\n size={25}\n thickness={4.6}\n style={{ color: \"#fff\" }}\n />\n ) : (\n t(\"Biometric.Verify\")\n )}\n </GradientButton>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","export const capture = async () => {\n var MFS100Request = {\n Quality: 60,\n TimeOut: 10,\n };\n var jsondata = JSON.stringify(MFS100Request);\n const rawResponse = await fetch(\"http://localhost:8004/mfs100/capture\", {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n body: jsondata,\n });\n const content = await rawResponse.json();\n return content;\n};\n","import CryptoJS from \"crypto-js\";\n\nconst decryptString = (encryptString: string) => {\n var secretKey = \"SUPERACUTE@MKS\";\n var keyBytes = CryptoJS.PBKDF2(secretKey, \"Ivan Medvedev\", {\n keySize: 48 / 4,\n iterations: 1000,\n });\n console.log(keyBytes.toString());\n\n // take first 32 bytes as key (like in C# code)\n var key = new CryptoJS.lib.WordArray.init(keyBytes.words, 32);\n\n // // skip first 32 bytes and take next 16 bytes as IV\n var iv = new CryptoJS.lib.WordArray.init(keyBytes.words.splice(32 / 4), 16);\n\n // console.log(key.toString());\n //console.log(encryptString, CryptoJS.enc.Base64.parse(encryptString));\n\n var dec = CryptoJS.AES.decrypt(\n {\n ciphertext: CryptoJS.enc.Base64.parse(\n CryptoJS.enc.Base64.parse(encryptString).toString(CryptoJS.enc.Utf8),\n ),\n },\n key,\n {\n iv: iv,\n },\n );\n console.log(\"CryptoJS.AES.decrypt\", dec);\n return dec.toString(CryptoJS.enc.Utf8).split(String.fromCharCode(0)).join(\"\");\n return dec.toString();\n};\n\nexport const matchFinger = async (rows: any, captureFinger: string) => {\n var promise = new Promise((resolve, reject) => {\n //console.log(\"matchFinger\", rows, typeof rows);\n if (typeof rows === \"string\") {\n rows = JSON.parse(rows);\n }\n rows.forEach(async (element: any, i: number) => {\n try {\n var galleryTemplate = decryptString(element.IMG_DATA);\n var MFS100Request = {\n GalleryTemplate: galleryTemplate,\n ProbTemplate: captureFinger,\n BioType: \"Iso\",\n };\n var jsondata = JSON.stringify(MFS100Request);\n await fetch(\"http://localhost:8004/mfs100/verify\", {\n method: \"POST\",\n headers: {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n },\n body: jsondata,\n })\n .then((response: any) => response.json())\n .then((response: any) => {\n if (response?.ErrorCode === \"0\" && response[\"Status\"]) {\n resolve({\n status: true,\n errorCode: \"0\",\n errorMessage: \"\",\n isError: false,\n sr_cd: element.SR_CD,\n });\n return;\n }\n\n if (rows.length === i + 1) {\n resolve({\n status: false,\n errorCode: response.ErrorCode,\n errorMessage: response.ErrorMessage,\n isError: false,\n });\n return;\n }\n })\n .catch((reason) => {\n resolve({\n status: false,\n errorCode: \"999\",\n errorMessage: reason,\n isError: true,\n });\n });\n } catch (err) {\n console.log(err);\n resolve({\n status: false,\n errorCode: \"999\",\n errorMessage: \"Something went wrong!\",\n isError: true,\n });\n }\n });\n });\n return promise;\n};\n","import { useContext, useEffect, useState, useRef, useMemo } from \"react\";\n// import { useNavigate } from \"react-router-dom\";\nimport { useStyles } from \"./style\";\nimport { Grid } from \"@mui/material\";\nimport { Container } from \"@mui/material\";\nimport { utilFunction } from \"@acuteinfo/common-base\";\n\nexport const BankDetails = ({ bannerDetails }: any) => {\n const [loginImageURL, setLoginImageURL] = useState<any | null>(null);\n const urlObj = useRef<any>(null);\n const classes = useStyles();\n // const navigate = useNavigate();\n\n // let path = require(\"assets/sound/successSound.mp3\").default;\n // let audio = new Audio(path);\n\n // useEffect(() => {\n // if (isLoggedIn()) {\n // navigate(\"/cbsenfinity\", { replace: true });\n // }\n // }, [navigate, isLoggedIn]);\n\n const banner = useMemo(() => bannerDetails, []);\n\n useEffect(() => {\n if (Boolean(banner.bannerImg)) {\n let blob = utilFunction.base64toBlob(banner.bannerImg);\n urlObj.current =\n typeof blob === \"object\" && Boolean(blob)\n ? URL.createObjectURL(blob)\n : \"\";\n setLoginImageURL(urlObj.current);\n }\n }, [banner]);\n return (\n <>\n {/* <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}> */}\n <Grid item xs={6} md={6} lg={6} className={classes.loginLeft}>\n <Grid item xs={12} md={12} lg={12} style={{ height: \"70vh\" }}>\n <img\n alt=\"\"\n style={{\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n objectPosition: \"center\",\n }}\n src={Boolean(loginImageURL) ? loginImageURL : \"\"}\n />\n </Grid>\n <Grid\n item\n xs={12}\n md={12}\n lg={12}\n style={{\n height: \"30vh\",\n background: \"var(--theme-color5)\",\n }}\n >\n <Container maxWidth=\"sm\">\n <div\n className=\"text\"\n style={{\n color: \"white\",\n fontStyle: \"normal\",\n fontSize: \"35px\",\n paddingTop: \"30px\",\n }}\n >\n {banner.bannerTitle ?? \"\"}\n <span style={{ marginLeft: \"8px\", fontWeight: \"900\" }}>\n {/* EasyBank */}\n </span>\n </div>\n <div\n style={{\n lineHeight: \"27px\",\n fontSize: \"15px\",\n fontWeight: \"500px\",\n letterSpacing: \"0.02em\",\n color: \"#ebedee\",\n maxWidth: \"464px\",\n }}\n >\n {banner.bannerNote ?? \"\"}\n </div>\n </Container>\n </Grid>\n </Grid>\n {/* </Grid> */}\n </>\n );\n};\n","import {\n TextField,\n GradientButton,\n utilFunction,\n} from \"@acuteinfo/common-base\";\n\nimport {\n CircularProgress,\n Container,\n FormHelperText,\n Grid,\n} from \"@mui/material\";\nimport { Fragment, useRef, useState } from \"react\";\n// import { ResetPassword } from \"./api\";\nimport { useSnackbar } from \"notistack\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const PasswordRotation = ({\n classes,\n ResetPassword,\n open,\n username,\n accessToken,\n tokenType,\n handleClose,\n}) => {\n const inputButtonRef = useRef<any>(null);\n const { enqueueSnackbar } = useSnackbar();\n const { t } = useTranslation();\n const [input, setInput] = useState({\n userName: username,\n oldpassword: \"\",\n password: \"\",\n confirmpassword: \"\",\n });\n const [pwdReset, setPasswordReset] = useState({\n isError: false,\n errorMessage: \"\",\n isLoading: false,\n isoldPwdError: false,\n oldpassworderror: \"\",\n isnewpwdError: false,\n newpassworderror: \"\",\n isconfirmnewpwdError: false,\n confirmnewpassworderror: \"\",\n });\n\n const handleCloseEvent = () => {\n handleClose(\"\");\n };\n const ClickEventHandler = async () => {\n let isError = false;\n let setPwdData = {\n isError: false,\n errorMessage: \"\",\n isLoading: false,\n isoldPwdError: false,\n oldpassworderror: \"\",\n isnewpwdError: false,\n newpassworderror: \"\",\n isconfirmnewpwdError: false,\n confirmnewpassworderror: \"\",\n };\n if (!Boolean(input.oldpassword)) {\n setPwdData.isoldPwdError = true;\n setPwdData.oldpassworderror = \"Current Password is required.\";\n isError = true;\n }\n\n let pwdData = utilFunction.ValidatePassword(input.password);\n if (Boolean(pwdData)) {\n setPwdData.isnewpwdError = true;\n setPwdData.newpassworderror = pwdData;\n isError = true;\n }\n if (\n Boolean(input.oldpassword) &&\n Boolean(input.password) &&\n input.oldpassword === input.password\n ) {\n setPwdData.isnewpwdError = true;\n setPwdData.newpassworderror =\n \"The new password cannot be the same as the old password\";\n isError = true;\n }\n if (!Boolean(input.confirmpassword)) {\n setPwdData.isconfirmnewpwdError = true;\n setPwdData.confirmnewpassworderror = \"Confirm new password is required.\";\n isError = true;\n } else if (\n Boolean(input.password) &&\n input.password !== input.confirmpassword\n ) {\n setPwdData.isconfirmnewpwdError = true;\n setPwdData.confirmnewpassworderror =\n \"New Password and Confirm Password did not matched\";\n isError = true;\n }\n if (isError) {\n setPasswordReset(setPwdData);\n } else {\n setPasswordReset((values) => ({ ...values, isLoading: true }));\n let response = await ResetPassword(\n input.userName,\n input.oldpassword,\n input.password,\n accessToken,\n tokenType,\n );\n setPasswordReset((values) => ({ ...values, isLoading: false }));\n if (response.status === \"0\") {\n enqueueSnackbar(\"Password successfully changed.\", {\n variant: \"success\",\n });\n handleClose(\"0\");\n } else {\n setPasswordReset((values) => ({\n ...values,\n isError: true,\n errorMessage: response.message,\n }));\n }\n }\n };\n const handleChange = (event) => {\n const name = event.target.name;\n let value = event.target.value;\n if (name === \"oldpassword\" && Boolean(value)) {\n setPasswordReset((values) => ({ ...values, isoldPwdError: false }));\n } else if (name === \"password\" && Boolean(value)) {\n setPasswordReset((values) => ({ ...values, isnewpwdError: false }));\n } else if (name === \"confirmpassword\" && Boolean(value)) {\n setPasswordReset((values) => ({\n ...values,\n isconfirmnewpwdError: false,\n }));\n }\n setInput((values) => ({ ...values, [name]: value }));\n };\n\n return (\n <Fragment>\n <Container maxWidth=\"xs\">\n <Grid alignItems=\"center\">\n <div\n style={{\n color: \"#000000 !important\",\n fontSize: \"30px\",\n fontWeight: \"600\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n }}\n >\n <h3>Password Rotation</h3>\n </div>\n <div\n className=\"\"\n style={{\n color: \"#949597\",\n fontSize: \"18px\",\n fontWeight: \"400\",\n alignItems: \"center\",\n fontStyle: \"normal\",\n width: \"360px\",\n }}\n >\n Please Verify OTP\n </div>\n <div className={classes.formWrap}>\n <TextField\n label={\"User ID\"}\n placeholder=\"Enter User ID\"\n fullWidth\n type={\"text\"}\n name=\"userName\"\n value={input.userName || \"\"}\n onChange={handleChange}\n InputLabelProps={{ shrink: true }}\n disabled={true}\n autoComplete=\"off\"\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n autoFocus={true}\n label={\"Current Password\"}\n placeholder=\"Enter Current Password\"\n fullWidth\n type={\"password\"}\n name=\"oldpassword\"\n value={input.oldpassword || \"\"}\n onChange={handleChange}\n error={pwdReset.isoldPwdError}\n helperText={\n pwdReset.isoldPwdError ? t(pwdReset.oldpassworderror) : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n label={\"New Password\"}\n placeholder=\"Enter New Password\"\n fullWidth\n type={\"password\"}\n name=\"password\"\n value={input.password || \"\"}\n onChange={handleChange}\n error={pwdReset.isnewpwdError}\n helperText={\n pwdReset.isnewpwdError ? t(pwdReset.newpassworderror) : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n <TextField\n label={\"Confirm New Password\"}\n placeholder=\"Enter confirm new password\"\n fullWidth\n type={\"password\"}\n name=\"confirmpassword\"\n value={input.confirmpassword || \"\"}\n onChange={handleChange}\n error={pwdReset.isconfirmnewpwdError}\n helperText={\n pwdReset.isconfirmnewpwdError\n ? t(pwdReset.confirmnewpassworderror)\n : \"\"\n }\n InputLabelProps={{ shrink: true }}\n disabled={pwdReset.isLoading}\n autoComplete=\"off\"\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n inputButtonRef?.current?.click?.();\n }\n }}\n inputProps={{ maxLength: 16 }}\n style={{ paddingBottom: \"8px\" }}\n />\n {pwdReset.isError ? (\n <FormHelperText style={{ color: \"red\" }}>\n {pwdReset.errorMessage}\n </FormHelperText>\n ) : null}\n </div>\n <div\n style={{\n display: \"flex\",\n gap: \"10px\",\n margin: \"20px 0 0 10px\",\n width: \"94%\",\n }}\n >\n <GradientButton\n fullWidth\n disabled={pwdReset.isLoading}\n onClick={handleCloseEvent}\n className={classes.otpButtons}\n style={{\n border: \"var(--theme-color3)1px solid\",\n color: \"var(--theme-color3)\",\n // pebbackground: \"var(--theme-color2)\",\n borderRadius: \"10px\",\n }}\n >\n Back\n </GradientButton>\n <GradientButton\n style={{\n borderRadius: pwdReset.isLoading ? \"50%\" : \"10px\",\n height: pwdReset.isLoading ? \"40px\" : \"100%\",\n width: pwdReset.isLoading ? \"0px\" : \"100%\",\n minWidth: pwdReset.isLoading ? \"40px\" : \"80px\",\n }}\n fullWidth\n disabled={pwdReset.isLoading}\n onClick={ClickEventHandler}\n ref={inputButtonRef}\n className={classes.otpButtons}\n >\n {pwdReset.isLoading ? (\n <CircularProgress size={25} thickness={4.6} />\n ) : (\n \"Update\"\n )}\n </GradientButton>\n </div>\n </Grid>\n </Container>\n </Fragment>\n );\n};\n","import { utilFunction } from \"@acuteinfo/common-base\";\n\nimport { useReducer, useEffect, useState, useRef } from \"react\";\n// import { useNavigate } from \"react-router-dom\";\nimport { useStyles } from \"./style\";\nimport { UsernamePasswordField } from \"./usernamePassword\";\nimport { OTPModel, OTPModelForm } from \"./otpPopup\";\n// import { veirfyUsernameandPassword, verifyOTP } from \"./api\";\nimport { VerifyFinger } from \"./verifyFinger\";\nimport * as API from \"./api\";\nimport { matchFinger } from \"./biometric\";\nimport { Grid, Tooltip } from \"@mui/material\";\nimport { BankDetails } from \"./bankDetails\";\n// import { MultiLanguages } from \"./multiLanguages\";\nimport { useTranslation } from \"react-i18next\";\nimport { PasswordRotation } from \"./passwordRotation\";\n\nconst inititalState = {\n username: \"\",\n firstName: \"\",\n lastName: \"\",\n loading: false,\n otploading: false,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n userMessage: \"\",\n OtpuserMessage: \"\",\n userMessageforpassword: \"\",\n userMessageforusername: \"\",\n currentFlow: \"username\",\n transactionID: \"\",\n access_token: \"\",\n token_type: \"\",\n otpmodelClose: false,\n authType: \"\",\n isScanning: false,\n auth_data: [],\n company_ID: \"\",\n Branch_CD: \"\",\n auth_type: \"O\",\n otpValidFor: 60,\n};\n\nconst reducer = (state, action) => {\n switch (action.type) {\n case \"inititateUserFingerVerification\":\n case \"inititateOTPVerification\": {\n return {\n ...state,\n loading: true,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n isOTPError: false,\n isBiometricError: false,\n userMessage: \"\",\n };\n }\n case \"inititateUserFingerScanner\": {\n return { ...state, isScanning: true, isBiometricError: false };\n }\n case \"usernameandpasswordrequired\": {\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: true,\n isPasswordError: true,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforpassword: action?.payload?.errorPassword,\n userMessageforusername: action?.payload?.errorUsername,\n username: \"\",\n transactionID: \"\",\n };\n }\n case \"passwordVerificationFailure\":\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: false,\n isPasswordError: true,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforpassword: action?.payload?.errorPassword,\n username: \"\",\n transactionID: \"\",\n };\n case \"usernameVerificationFailure\": {\n return {\n ...state,\n loading: false,\n isError: true,\n isUsernameError: true,\n isPasswordError: false,\n otploading: false,\n userMessage: action?.payload?.error,\n userMessageforusername: action?.payload?.errorUsername,\n username: \"\",\n transactionID: \"\",\n };\n }\n case \"inititatePasswordVerification\": {\n return {\n ...state,\n loading: true,\n isError: false,\n isUsernameError: false,\n isPasswordError: false,\n otploading: false,\n userMessage: \"\",\n userMessageforusername: \"\",\n userMessageforpassword: \"\",\n username: \"\",\n transactionID: \"\",\n access_token: \"\",\n };\n }\n case \"passwordRotation\": {\n return {\n ...state,\n loading: false,\n username: action?.payload?.username,\n access_token: action?.payload?.access_token,\n token_type: action?.payload?.token_type,\n };\n }\n case \"passwordRotationsuccess\": {\n return {\n ...state,\n loading: false,\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\n };\n }\n case \"passwordVerificationSuccessful\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n transactionID: action?.payload?.transactionID,\n username: action?.payload?.username,\n auth_type: action?.payload?.auth_type,\n OtpuserMessage: \"\",\n access_token: action?.payload?.access_token,\n token_type: action?.payload?.token_type,\n otpmodelClose: false,\n currentFlow: \"OTP\",\n authType: action?.payload?.authType,\n auth_data: action?.payload?.auth_data,\n otpValidFor: action?.payload?.otpValidFor,\n company_ID: action?.paylod?.company_ID,\n };\n }\n case \"inititatebiometricVerification\": {\n return {\n ...state,\n loading: true,\n otploading: true,\n OtpuserMessage: \"\",\n otpmodelClose: false,\n };\n }\n case \"biometricVerificationFailure\":\n return {\n ...state,\n loading: false,\n isError: true,\n isBiometricError: true,\n userMessage: action?.payload?.error,\n isScanning: false,\n };\n case \"biometricVerificationSuccessful\":\n return {\n ...state,\n loading: false,\n isError: false,\n isBiometricError: false,\n state: action.payload,\n isScanning: false,\n };\n case \"OTPVerificationComplate\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n OtpuserMessage: \"\",\n };\n }\n case \"OTPVerificationFailed\": {\n return {\n ...state,\n loading: false,\n otploading: false,\n OtpuserMessage: action?.payload?.error,\n otpmodelClose: Boolean(action?.payload?.otpmodelclose),\n };\n }\n case \"OTPResendSuccess\": {\n return {\n ...state,\n transactionID: action?.payload?.transactionID,\n };\n }\n case \"backToUsernameVerification\": {\n return {\n ...inititalState,\n isPasswordError: action?.payload?.isError,\n userMessageforpassword: action?.payload?.errorMessage,\n };\n }\n\n default: {\n return state;\n }\n }\n};\n\ninterface AuthControllerProps {\n bannerDetails: {\n bannerImg: string;\n bannerTitle: string;\n bannerNote: string;\n };\n logoUrl: string;\n loginFn: Function;\n veirfyUsernameandPassword: Function;\n verifyOTP: Function;\n OTPResendRequest: Function;\n ResetPassword: Function;\n}\n\nexport const AuthControllerWrapper: React.FC<AuthControllerProps> = ({\n bannerDetails,\n logoUrl,\n loginFn,\n veirfyUsernameandPassword,\n verifyOTP,\n OTPResendRequest,\n ResetPassword,\n}) => {\n // const { isLoggedIn, login } = useContext(AuthContext);\n const classes = useStyles();\n // const navigate = useNavigate();\n const [loginState, dispath] = useReducer(reducer, inititalState);\n const [openpwdreset, setOpenPwdReset] = useState(false);\n const failureCount = useRef(0);\n const [dashboardLogoURL, setDashboardLogoURL] = useState<any | null>(null);\n const urlObj = useRef<any>(null);\n const { t } = useTranslation();\n const otpResendRef = useRef(1);\n\n // useEffect(() => {\n // if (isLoggedIn()) {\n // navigate(\"/cbsenfinity\", { replace: true });\n // }\n // }, [navigate, isLoggedIn]);\n\n // const {\n // data: imageData,\n // isLoading,\n // isFetching,\n // } = useQuery<any, any>([\"getLoginImageData\"], () =>\n // API.getLoginImageData({ APP_TRAN_CD: \"51\" })\n // );\n\n // const imageDataString = JSON.stringify(imageData);\n // localStorage.setItem(\"imageData\", imageDataString);\n\n // const imageDataFromStorage: any = localStorage.getItem(\"imageData\");\n\n useEffect(() => {\n if (Boolean(logoUrl)) {\n let blob = utilFunction.base64toBlob(logoUrl);\n urlObj.current =\n typeof blob === \"object\" && Boolean(blob)\n ? URL.createObjectURL(blob)\n : \"\";\n setDashboardLogoURL(urlObj.current);\n }\n }, [logoUrl]);\n\n // useEffect(() => {\n // GeneralAPI.setDocumentName(\"Enfinity\");\n // }, []);\n\n const verifyUsernamePassword = async (username, password) => {\n if (Boolean(username) && Boolean(password)) {\n dispath({ type: \"inititatePasswordVerification\" });\n const { status, data, message, responseType, access_token } =\n await veirfyUsernameandPassword(username, password);\n if (status === \"0\" && responseType === \"S\") {\n dispath({\n type: \"passwordRotation\",\n payload: {\n username: username,\n access_token: access_token?.access_token,\n token_type: access_token?.token_type,\n },\n });\n setOpenPwdReset(true);\n } else if (status === \"0\") {\n dispath({\n type: \"passwordVerificationSuccessful\",\n payload: {\n transactionID: data?.REQUEST_CD,\n username: username,\n access_token: access_token?.access_token,\n token_type: access_token?.token_type,\n authType: data?.AUTH_TYPE,\n auth_data: [\n {\n company_ID: data?.BASE_COMP_CD ?? \"\",\n branch_cd: data?.BASE_BRANCH_CD,\n },\n ],\n otpValidFor: data?.OTP_VALID,\n },\n });\n } else {\n dispath({\n type: \"passwordVerificationFailure\",\n payload: { error: message, errorPassword: message },\n });\n }\n } else if (!Boolean(username) && !Boolean(password)) {\n dispath({\n type: \"usernameandpasswordrequired\",\n payload: {\n error: \"UsernamenandPasswordisRequired\",\n errorUsername: \"UsernameisRequired\",\n errorPassword: \"PasswordisRequired\",\n },\n });\n } else if (!Boolean(username)) {\n dispath({\n type: \"usernameVerificationFailure\",\n payload: {\n error: \"UsernameisRequired\",\n errorUsername: \"UsernameisRequired\",\n },\n });\n } else {\n dispath({\n type: \"passwordVerificationFailure\",\n payload: {\n error: \"PasswordisRequired\",\n errorPassword: \"PasswordisRequired\",\n },\n });\n }\n };\n\n const VerifyOTP = async (OTPNumber) => {\n if (Boolean(OTPNumber) && OTPNumber.toString().length === 6) {\n dispath({ type: \"inititateOTPVerification\" });\n const { status, data, message } = await verifyOTP(\n loginState.transactionID,\n // loginState.app_transactionId,\n loginState.username,\n OTPNumber,\n loginState.access_token,\n loginState.token_type,\n loginState.authType,\n );\n console.log(\"menuapierror\", message);\n if (status === \"0\") {\n // try {\n // audio.play();\n // } catch (error) {\n // console.log(error);\n // }\n dispath({ type: \"OTPVerificationComplate\" });\n loginFn(data);\n } else if (status === \"999\") {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: message, otpmodelclose: true },\n });\n // enqueueSnackbar(message, { variant: \"error\" });\n } else {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: message, otpmodelclose: false },\n });\n }\n } else {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: \"Please enter a 6 digit OTP number\" },\n });\n }\n };\n\n const handlePasswordRotationClose = (flag) => {\n if (flag === \"0\") {\n dispath({\n type: \"passwordRotationsuccess\",\n payload: { otpmodelclose: true },\n });\n }\n setOpenPwdReset(false);\n };\n const changeUserName = (isError = false, errorMessage = \"\") => {\n dispath({\n type: \"backToUsernameVerification\",\n payload: {\n isError: isError,\n errorMessage: errorMessage,\n },\n });\n };\n const verifyFinger = async () => {\n try {\n dispath({ type: \"inititateUserFingerScanner\" });\n const fingerResponse = await API.capture();\n if (fingerResponse?.ErrorCode === \"0\") {\n dispath({ type: \"inititateUserFingerVerification\" });\n const promise: any = await matchFinger(\n loginState.auth_data,\n fingerResponse.IsoTemplate,\n );\n if (promise.isError) {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: promise?.errorMessage ?? \"Something went wrong.\",\n },\n });\n } else {\n const { status, data, message } = await verifyOTP(\n loginState.transactionID,\n loginState.username,\n String(promise?.sr_cd ?? \"0\"),\n loginState.access_token,\n loginState.token_type,\n loginState.authType,\n promise.status ? \"Y\" : \"N\",\n );\n if (status === \"0\" && promise.status) {\n dispath({ type: \"biometricVerificationSuccessful\" });\n loginFn(data);\n } else if (status === \"0\" && !promise.status) {\n failureCount.current = failureCount.current + 1;\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: \"Finger Not Match.Please Try Again\",\n },\n });\n if (failureCount.current >= 3)\n changeUserName(true, \"Finger Not Match.Please Try Again\");\n } else if (status === \"99\") {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n } else if (status === \"999\") {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n changeUserName(\n true,\n message ?? \"Finger Not Match.Please Try Again\",\n );\n } else {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: message ?? \"Finger Not Match.Please Try Again\",\n },\n });\n }\n }\n } else {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error:\n fingerResponse?.ErrorMessage ?? t(\"Biometric.MFS100NotFound\"),\n },\n });\n }\n } catch (e: any) {\n dispath({\n type: \"biometricVerificationFailure\",\n payload: {\n error: e?.message ?? t(\"Biometric.Unknownerroroccured\"),\n },\n });\n }\n };\n return (\n <>\n <Grid container style={{ height: \"100vh\", overflow: \"hidden\" }}>\n <BankDetails bannerDetails={bannerDetails} />\n <Grid item xs={11} md={6} lg={6} sm={6}>\n <Grid\n container\n direction=\"row\"\n justifyContent=\"flex-end\"\n alignItems=\"center\"\n padding={\"25px\"}\n >\n <Tooltip describeChild title=\"Enfinity-CBS-UI-V1.0.17\">\n <img\n src={Boolean(dashboardLogoURL) ? dashboardLogoURL : \"\"}\n alt=\"Logo\"\n />\n </Tooltip>\n </Grid>\n\n {/* long dropdown */}\n {/* <Grid\n container\n direction=\"row\"\n justifyContent=\"flex-end\"\n alignItems=\"center\"\n padding={\"0 35px 0 0\"}\n >\n <MultiLanguages />\n </Grid> */}\n\n {openpwdreset ? (\n <PasswordRotation\n classes={classes}\n ResetPassword={ResetPassword}\n open={openpwdreset}\n username={loginState.username}\n accessToken={loginState.access_token}\n tokenType={loginState.token_type}\n handleClose={handlePasswordRotationClose}\n />\n ) : (\n <>\n {loginState.currentFlow === \"username\" ? (\n <UsernamePasswordField\n key=\"username\"\n classes={classes}\n loginState={loginState}\n verifyUsernamePassword={verifyUsernamePassword}\n />\n ) : (\n <>\n {loginState.authType === \"OTP\" ? (\n <OTPModel\n key=\"otp\"\n OTPResendRequest={OTPResendRequest}\n classes={classes}\n loginState={loginState}\n VerifyOTP={VerifyOTP}\n previousStep={changeUserName}\n OTPError={t(loginState?.OtpuserMessage ?? \"\")}\n setOTPError={(error) => {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: error },\n });\n }}\n open={true}\n handleClose={changeUserName}\n resendFlag={\"LOGIN\"}\n setNewRequestID={(newRequestID) => {\n dispath({\n type: \"OTPResendSuccess\",\n payload: { transactionID: newRequestID },\n });\n otpResendRef.current = otpResendRef.current + 1;\n }}\n otpresendCount={otpResendRef.current}\n />\n ) : loginState.authType === \"TOTP\" ? (\n <>\n {\" \"}\n <OTPModelForm\n key={\"OTPForm\"}\n OTPResendRequest={OTPResendRequest}\n classes={classes}\n // handleClose={() => {}}\n handleClose={changeUserName}\n loginState={loginState}\n VerifyOTP={VerifyOTP}\n OTPError={loginState?.OtpuserMessage ?? \"\"}\n setOTPError={(error) => {\n dispath({\n type: \"OTPVerificationFailed\",\n payload: { error: error },\n });\n }}\n resendFlag={\"LOGIN\"}\n setNewRequestID={(newRequestID) => {\n dispath({\n type: \"OTPResendSuccess\",\n payload: { transactionID: newRequestID },\n });\n otpResendRef.current = otpResendRef.current + 1;\n }}\n otpresendCount={otpResendRef.current}\n />\n </>\n ) : (\n <VerifyFinger\n key=\"biometric\"\n classes={classes}\n loginState={loginState}\n verifyFinger={verifyFinger}\n previousStep={changeUserName}\n />\n )}\n </>\n )}\n </>\n )}\n </Grid>\n </Grid>\n </>\n );\n};\n"],"names":["_jsx","_jsxs","IconButton","_Fragment","API.capture"],"mappings":";;;;;;;;;;;;;;;;AAEO,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,KAAU,MAAM;AACnD,IAAA,OAAO,EAAE;AACP,QAAA,SAAS,EAAE,OAAO;AAClB,QAAA,SAAS,EAAE,4BAA4B;;AAEvC,QAAA,UAAU,EAAE,qBAAqB;AAClC,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAC5B,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,SAAS,EAAE,2BAA2B;AACtC,QAAA,YAAY,EAAE,KAAK;QACnB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;AAC9B,YAAA,KAAK,EAAE,MAAM;AACd,SAAA;AACF,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5B,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,iBAAiB;QAC3B,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAC3B,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,OAAO,EAAE,aAAa;AACtB,QAAA,UAAU,EAAE,cAAc;AAC1B,QAAA,MAAM,EAAE,CAAC;AACT,QAAA,KAAK,EAAE,iBAAiB;AACxB,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,aAAa,EAAE,WAAW;AAC1B,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,aAAa,EAAE,YAAY;AAC3B,QAAA,SAAS,EAAE,UAAU;AACrB,QAAA,SAAS,EAAE;AACT,YAAA,UAAU,EAAE,SAAS;AACrB,YAAA,SAAS,EAAE,MAAM;AAClB,SAAA;AACF,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;AACjC,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI;AACnC,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,QAAQ,EAAE,WAAW;AACtB,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,KAAA;AAED,IAAA,SAAS,EAAE;QACT,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;AAC9B,YAAA,OAAO,EAAE,MAAM;AAChB,SAAA;AACF,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAC5B,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,SAAS,EAAE,2BAA2B;AACtC,QAAA,YAAY,EAAE,KAAK;QACnB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;AAC9B,YAAA,KAAK,EAAE,MAAM;AACd,SAAA;AACD,QAAA,OAAO,EAAE;AACP,YAAA,SAAS,EAAE,QAAQ;AACpB,SAAA;AACF,KAAA;AAED,IAAA,QAAQ,EAAE,EAAE;AAEZ,IAAA,YAAY,EAAE;AACZ,QAAA,SAAS,EAAE,QAAQ;;;AAGnB,QAAA,OAAO,EAAE,KAAK;AACf,KAAA;AACD,IAAA,UAAU,EAAE;;AAEX,KAAA;AAED,IAAA,OAAO,EAAE;AACP,QAAA,OAAO,EAAE,MAAM;AAChB,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,SAAS,EAAE;AACT,YAAA,WAAW,EAAE,iBAAiB;AAC9B,YAAA,MAAM,EAAE,qCAAqC;AAC7C,YAAA,YAAY,EAAE,MAAM;AACpB,YAAA,KAAK,EAAE,iBAAiB;AACxB,YAAA,MAAM,EAAE,iBAAiB;AACzB,YAAA,YAAY,EAAE,MAAM;AACpB,YAAA,SAAS,EAAE,iDAAiD;AAC7D,SAAA;AACF,KAAA;AACD,IAAA,WAAW,EAAE;;;AAGX,QAAA,YAAY,EAAE,MAAM;AACrB,KAAA;AACD,IAAA,aAAa,EAAE;AACb,QAAA,OAAO,EAAE,MAAM;AAChB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,UAAU,EAAE,QAAQ;;AAEpB,QAAA,YAAY,EAAE,MAAM;AACpB,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,SAAS,EAAE,KAAK;AAChB,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,UAAU,EAAE,MAAM;AACnB,KAAA;AACD,IAAA,cAAc,EAAE;AACd,QAAA,KAAK,EAAE,qBAAqB;AAC5B,QAAA,SAAS,EAAE,KAAK;AAChB,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,UAAU,EAAE,MAAM;AAClB,QAAA,MAAM,EAAE,QAAQ;;;AAGjB,KAAA;AACD,IAAA,aAAa,EAAE;AACb,QAAA,cAAc,EAAE,WAAW;AAC3B,QAAA,KAAK,EAAE,qBAAqB;AAC5B,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,SAAS,EAAE;AACT,YAAA,cAAc,EAAE,WAAW;AAC3B,YAAA,KAAK,EAAE,qBAAqB;AAC7B,SAAA;AACF,KAAA;AACD,IAAA,gBAAgB,EAAE;AAChB,QAAA,UAAU,EAAE,qBAAqB;AACjC,QAAA,OAAO,EAAE,qBAAqB;AAC9B,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,KAAK,EAAE,qBAAqB;AAC5B,QAAA,YAAY,EAAE,KAAK;AACnB,QAAA,MAAM,EAAE;AACN,YAAA,UAAU,EAAE,gBAAgB;AAC7B,SAAA;AACF,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,MAAM;AACnB,QAAA,KAAK,EAAE,MAAM;AACb,QAAA,MAAM,EAAE,MAAM;AACf,KAAA;AACD,IAAA,aAAa,EAAE;AACb,QAAA,OAAO,EAAE,UAAU;AACnB,QAAA,KAAK,EAAE;AACL,YAAA,UAAU,EAAE,UAAU;AACtB,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,YAAY,EAAE,KAAK;AACpB,SAAA;AACF,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,UAAU,EAAE,QAAQ;AACpB,QAAA,cAAc,EAAE,QAAQ;AACxB,QAAA,aAAa,EAAE,QAAQ;AACvB,QAAA,MAAM,EAAE,KAAK;AACb,QAAA,UAAU,EAAE,qBAAqB;AACjC,QAAA,SAAS,EAAE;AACT,YAAA,UAAU,EAAE,gCAAgC;AAC7C,SAAA;AACF,KAAA;AACF,CAAA,CAAC,CAAC;;ACrKH;AACO,MAAM,qBAAqB,GAAG,CAAC,EACpC,OAAO,EACP,UAAU,EACV,sBAAsB,GACvB,KAAI;AACH,IAAA,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;AACnD,IAAA,MAAM,GAAG,WAAW,CAAC,GAAG,QAAQ,EAAc,CAAC;AAC/C,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACnC,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,SAAS,CAAC,MAAK;QACb,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC7C,EAAE,EAAE,CAAC,CAAC;AACP,IAAA,MAAM,YAAY,GAAG,CAAC,KAAK,KAAI;AAC7B,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;AAC/B,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AACjC,QAAA,IAAI,IAAI,KAAK,UAAU,IAAI,KAAK,EAAE;AAChC,YAAA,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC;AACpC,SAAA;AACD,QAAA,IAAI,IAAI,KAAK,UAAU,IAAI,KAAK,EAAE;AAChC,YAAA,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC;AACpC,SAAA;AAED,QAAA,QAAQ,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AACvD,KAAC,CAAC;AACF,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACnC,IAAA,MAAM,YAAY,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACvC,IAAA,MAAM,cAAc,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IAEzC,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,SAAS,CAAC;QACd,IAAI,UAAU,CAAC,eAAe,EAAE;AAC9B,YAAA,SAAS,GAAG,UAAU,CAAC,MAAK;AAC1B,gBAAA,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;aAC9B,EAAE,IAAI,CAAC,CAAC;AACV,SAAA;aAAM,IAAI,UAAU,CAAC,eAAe,EAAE;AACrC,YAAA,SAAS,GAAG,UAAU,CAAC,MAAK;AAC1B,gBAAA,YAAY,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;aAClC,EAAE,IAAI,CAAC,CAAC;AACV,SAAA;AACD,QAAA,OAAO,MAAK;AACV,YAAA,IAAI,SAAS,EAAE;gBACb,YAAY,CAAC,SAAS,CAAC,CAAC;AACzB,aAAA;AACH,SAAC,CAAC;KACH,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,SAAS,CAAC;AACd,QAAA,IAAI,UAAU,EAAE,aAAa,IAAI,KAAK,EAAE;AACtC,YAAA,QAAQ,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AACpD,YAAA,SAAS,GAAG,UAAU,CAAC,MAAK;AAC1B,gBAAA,YAAY,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;aAClC,EAAE,IAAI,CAAC,CAAC;AACV,SAAA;AACD,QAAA,OAAO,MAAK;AACV,YAAA,IAAI,SAAS,EAAE;gBACb,YAAY,CAAC,SAAS,CAAC,CAAC;AACzB,aAAA;AACH,SAAC,CAAC;AACJ,KAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;AAE/B,IAAA,QACEA,GAAA,CAAC,QAAQ,EAAA,EAAA,QAAA,EACPA,GAAC,CAAA,SAAS,EAAC,EAAA,QAAQ,EAAC,IAAI,EACtB,QAAA,EAAAC,IAAA,CAAC,IAAI,EAAA,EAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAA,QAAA,EAAA,CACrDD,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,oBAAoB;AAC3B,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,KAAK;;AAEjB,4BAAA,UAAU,EAAE,QAAQ;AACpB,4BAAA,SAAS,EAAE,QAAQ;AACnB,4BAAA,UAAU,EAAE,MAAM;AACnB,yBAAA,EAAA,QAAA,EAEDA,GAAK,CAAA,IAAA,EAAA,EAAA,QAAA,EAAA,CAAC,CAAC,QAAQ,CAAC,EAAM,CAAA,EAAA,CAClB,EACNA,GAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,EAAE,EACZ,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,SAAS;AAChB,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,KAAK;;AAEjB,4BAAA,UAAU,EAAE,QAAQ;AACpB,4BAAA,SAAS,EAAE,QAAQ;AAEnB,4BAAA,KAAK,EAAE,OAAO;AACf,yBAAA,EAAA,QAAA,EAEA,CAAC,CAAC,6BAA6B,CAAC,GAC7B,EACNC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAA,QAAA,EAAA,CAC9BD,IAAC,SAAS;;;;;;gCAGR,SAAS,EAAE,IAAI,EACf,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC;;gCAElB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAChC,KAAK,EAAE;AACL,oCAAA,SAAS,EAAE,MAAM;AACjB,oCAAA,YAAY,EAAE,MAAM;AACrB,iCAAA,EACD,SAAS,EAAA,IAAA,EACT,IAAI,EAAE,MAAM,EACZ,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,EACvC,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,CAAC,eAAe,EACjC,UAAU,EACR,UAAU,CAAC,eAAe;AACxB,sCAAE,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC;AACtC,sCAAE,EAAE,EAER,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EACjC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,YAAY,EAAC,KAAK,EAClB,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,oCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,wCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,qCAAA;iCACF,EACD,UAAU,EAAE;AACV,oCAAA,SAAS,EAAE,IAAI;iCAChB,EACD,CAAA,EAEFA,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,oCAAA,OAAO,EAAE,MAAM;AACf,oCAAA,aAAa,EAAE,aAAa;AAC5B,oCAAA,SAAS,EAAE,KAAK;iCACjB,EAED,QAAA,EAAAA,GAAA,CAAC,SAAS,EAER,EAAA,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC;;;oCAIpB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EACvC,eAAe,EAAE;AACf,wCAAA,MAAM,EAAE,IAAI;AACb,qCAAA,EACD,SAAS,EACT,IAAA,EAAA,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,UAAU,EACxC,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,CAAC,QAAQ,EACrB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,CAAC,eAAe,EACjC,UAAU,EACR,UAAU,CAAC,eAAe;AACxB,0CAAE,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC;AACtC,0CAAE,EAAE,EAER,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,wCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,4CAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,yCAAA;qCACF,EACD,UAAU,EAAE;AACV,wCAAA,YAAY,GACVA,GAAA,CAAC,cAAc,EAAA,EAAC,QAAQ,EAAC,KAAK,EAC5B,QAAA,EAAAA,GAAA,CAAC,UAAU,EACE,EAAA,YAAA,EAAA,4BAA4B,EACvC,OAAO,EAAE,MAAK;oDACZ,IAAI,CAAC,YAAY,EAAE;wDACjB,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AACvC,wDAAA,QAAQ,CAAC,OAAO,GAAG,UAAU,CAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC7B,IAAI,CACL,CAAC;AACH,qDAAA;AAAM,yDAAA,IAAI,YAAY;wDAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAClD,iDAAC,EACD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,EACtC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAA,QAAA,EAE3B,YAAY,GAAGA,IAAC,UAAU,EAAA,EAAA,CAAG,GAAGA,GAAC,CAAA,aAAa,EAAG,EAAA,CAAA,EAAA,CACvC,GACE,CAClB;AACF,qCAAA,EACD,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAjD3B,EAAA,UAAU,CAkDd,EACE,CAAA,EACNA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAChDA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAC5C,QAAA,EAAAA,GAAA,CAAA,GAAA,EAAA,EACE,IAAI,EAAC,gBAAgB,EACrB,KAAK,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAA,QAAA,EAEtC,CAAC,CAAC,gBAAgB,CAAC,EAAA,CAClB,EACA,CAAA,EAAA,CACF,EACNA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAChD,QAAA,EAAAA,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,wCAAA,IAAI,EAAE,MAAM;AACZ,wCAAA,SAAS,EAAE,QAAQ;AACnB,wCAAA,SAAS,EAAE,KAAK;AAChB,wCAAA,YAAY,EAAE,MAAM;AACrB,qCAAA,EAAA,QAAA,EAEDA,GAAC,CAAA,cAAc,EACb,EAAA,KAAK,EAAE;4CACL,YAAY,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;4CACjD,MAAM,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;4CAC5C,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;4CAC1C,QAAQ,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;AAC/C,yCAAA,EACD,SAAS,EAAA,IAAA,EACT,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,OAAO,EAAE,MACP,sBAAsB,CACpB,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,WAAW,EAAE,EACpC,KAAK,CAAC,QAAQ,CACf,EAEH,GAAG,EAAE,cAAc,EAAA,QAAA,EAIlB,UAAU,CAAC,OAAO,IACjBA,GAAC,CAAA,gBAAgB,EAAC,EAAA,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAI,CAAA,KAE9C,CAAC,CAAC,MAAM,CAAC,CACV,EACc,CAAA,EAAA,CACb,GACF,CACF,EAAA,CAAA,CAAA,EAAA,CACD,EACG,CAAA,EAAA,CACH,EACX;AACJ,CAAC;;ACjPM,MAAM,QAAQ,GAAG,CAAC,EACvB,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,eAAe,GAAG,CAAC,EAAE,KAAI,GAAG,EAC5B,cAAc,GAAG,CAAC,EAClB,UAAU,GACX,KAAI;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;AACnD,IAAA,MAAM,GAAG,WAAW,CAAC,GAAG,QAAQ,EAAc,CAAC;AAC/C,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACnC,SAAS,CAAC,MAAK;QACb,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC7C,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,IAAA,MAAM,cAAc,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChE,IAAA,MAAM,EAAE,eAAe,EAAE,GAAG,WAAW,EAAE,CAAC;AAC1C,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;;;;;;;;;;;;;;;;AAgB/B,IAAA,MAAM,YAAY,GAAG,CAAC,WAAW,KAAI;QACnC,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC;AAC9C,QAAA,OAAO,gBAAgB,IACrBC,YACE,SAAS,EAAE,IAAI,CACb,OAAO,CAAC,aAAa,EACrB,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAClC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAGxB,QAAA,EAAA,CAAA,CAAC,CAAC,eAAe,CAAC,OAAGD,GAAC,CAAA,gBAAgB,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAC,WAAW,EAAG,CAAA,CAAA,EAAA,CACpE,KAEJA,WACE,aAAa,EAAE,aAAa,EACxB,GAAA,KAAK,EACT,SAAS,EAAE,IAAI,CACb,OAAO,CAAC,aAAa,EACrB,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAClC,YAGA,CAAC,CAAC,eAAe,CAAC,EAAA,CACjB,CACL,CAAC;AACJ,KAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,MAAK;QAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,WAAW,CAAC,mBAAmB,CAAC,CAAC;AAClC,SAAA;AAAM,aAAA;YACL,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,SAAS,CAAC,GAAG,CAAC,CAAC;AAChB,SAAA;AACH,KAAC,CAAC;AAEF,IAAA,MAAM,iBAAiB,GAAG,YAAW;QACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC1B,QAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,CACtD,UAAU,KAAK,WAAW,IAAI,UAAU,KAAK,YAAY;cACrD,UAAU,EAAE,SAAS;AACvB,cAAE,UAAU,EAAE,aAAa,EAC7B,UAAU,EAAE,QAAQ,EACpB,UAAU,EACV,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,UAAU,EACrC,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,SAAS,CACrC,CAAC;QACF,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,MAAM,KAAK,GAAG,EAAE;AAClB,YAAA,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/B,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,eAAe,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAClD,SAAA;AAAM,aAAA;YACL,eAAe,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAChD,SAAA;AACH,KAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAK;QAC5B,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,WAAW,CAAC,EAAE,CAAC,CAAC;AAClB,KAAC,CAAC;AACF,IAAA,MAAM,UAAU,GAAG,CAAC,aAAa,KAAI;AACnC,QAAA,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACjC,UAAU,CAAC,MAAK;gBACd,UAAU,CAAC,IAAI,CAAC,CAAC;aAClB,EAAE,GAAG,CAAC,CAAC;AACT,SAAA;QACD,QACEC,IAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,EAAA,QAAA,EAAA,CACpD,CAAC,CAAC,gBAAgB,CAAC,EAAA,GAAA,EAAG,aAAa,EAAA,GAAA,EAAG,CAAC,CAAC,YAAY,CAAC,CAEjD,EAAA,CAAA,EACP;AACJ,KAAC,CAAC;IAEF,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,UAAU,EAAE,aAAa,IAAI,KAAK,EAAE;AACtC,YAAA,gBAAgB,EAAE,CAAC;AACpB,SAAA;AACH,KAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/B,QACED,IAAC,QAAQ,EAAA,EAAA,QAAA,EACPA,IAAC,SAAS,EAAA,EAAC,QAAQ,EAAC,IAAI,YACtBA,GAAC,CAAA,IAAI,IAAC,UAAU,EAAC,QAAQ,EAAC,SAAS,EAAE,KAAK,EACxC,QAAA,EAAAC,IAAA,CAAA,KAAA,EAAA;;AAEE,oBAAA,KAAK,EACH;;;;;;qBAMC,EAGH,QAAA,EAAA,CAAAD,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,gCAAA,KAAK,EAAE,SAAS;AAChB,gCAAA,QAAQ,EAAE,MAAM;AAChB,gCAAA,UAAU,EAAE,KAAK;;AAEjB,gCAAA,UAAU,EAAE,QAAQ;AACpB,gCAAA,SAAS,EAAE,QAAQ;AACnB,gCAAA,UAAU,EAAE,MAAM;AAClB,gCAAA,YAAY,EAAE,MAAM;6BACrB,EAEA,QAAA,EAAA,CAAC,CAAC,uBAAuB,CAAC,GACvB,EACNA,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,gCAAA,KAAK,EAAE,SAAS;AAChB,gCAAA,QAAQ,EAAE,MAAM;AAChB,gCAAA,UAAU,EAAE,KAAK;AACjB,gCAAA,UAAU,EAAE,QAAQ;AACpB,gCAAA,SAAS,EAAE,QAAQ;AACnB,gCAAA,UAAU,EAAE,MAAM;6BACnB,EAEA,QAAA,EAAA,CAAC,CAAC,cAAc,CAAC,GACd,EAcNC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,OAAO,CAAC,YAAY,EACjC,QAAA,EAAA,CAAA,CAAC,CAAC,WAAW,CAAC,EAAE,GAAG,EACnB,UAAU,EAAE,QAAQ;sCACjB,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;AAC3C,wCAAA,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9B,sCAAE,IAAI,EACRD,GAAA,CAAC,SAAS;;;;AAER,oCAAA,aAAa,EAAE,iBAAiB;;AAEhC,oCAAA,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,EAAE,EACtC,SAAS,EAAE,OAAO,CAAC,cAAc,EACjC,CAAA,CAAA,EAAA,CACE,EACNC,IAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,OAAO,CAAC,OAAO,EAC1B,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,gCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,oCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,iCAAA;6BACF,EAAA,QAAA,EAAA,CAEDD,IAAC,QAAQ,EAAA,EACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,MAAM,EAChB,SAAS,QACT,SAAS,EAAE,CAAC,EACZ,OAAO,EAAC,QAAQ,EAChB,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,CAAC,YAAY,EACrB,SAAS,EAAE,OAAO,CAAC,eAAe,EAClC,CAAA,EACFA,IAACE,YAAU,EAAA,EAAA,YAAA,EACE,4BAA4B,EACvC,OAAO,EAAE,MAAK;wCACZ,IAAI,CAAC,YAAY,EAAE;4CACjB,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AACvC,4CAAA,QAAQ,CAAC,OAAO,GAAG,UAAU,CAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC7B,IAAI,CACL,CAAC;AACH,yCAAA;AAAM,6CAAA,IAAI,YAAY;4CAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAClD,qCAAC,EACD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,EACtC,QAAQ,EAAE,UAAU,CAAC,UAAU,EAC/B,SAAS,EAAE,OAAO,CAAC,WAAW,EAAA,QAAA,EAE7B,YAAY,GAAGF,GAAA,CAAC,UAAU,EAAA,EAAA,CAAG,GAAGA,GAAC,CAAA,aAAa,EAAG,EAAA,CAAA,EAAA,CACvC,CACT,EAAA,CAAA,EACL,OAAO,CAAC,QAAQ,CAAC,IAChBA,GAAA,CAAC,cAAc,EAAC,EAAA,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,YACpC,QAAQ,EAAA,CACM,IACf,IAAI,EACRC,IAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,gCAAA,OAAO,EAAE,MAAM;AACf,gCAAA,GAAG,EAAE,MAAM;AACX,gCAAA,MAAM,EAAE,eAAe;AACvB,gCAAA,KAAK,EAAE,KAAK;AACb,6BAAA,EAAA,QAAA,EAAA,CAEDD,IAAC,cAAc;;;;oCAEb,QAAQ,EAAE,UAAU,CAAC,UAAU,EAC/B,OAAO,EAAE,MAAK;AACZ,wCAAA,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1B,qCAAC,EACD,SAAS,EAAE,OAAO,CAAC,UAAU;;AAE7B,oCAAA,EAAE,EAAE;AACF,wCAAA,MAAM,EAAE,8BAA8B;AACtC,wCAAA,QAAQ,EAAE,KAAK;AACf,wCAAA,UAAU,EAAE,qBAAqB;AACjC,wCAAA,YAAY,EAAE,MAAM;AACpB,wCAAA,SAAS,EAAE;AACT,4CAAA,UAAU,EAAE,gCAAgC;AAC7C,yCAAA;qCACF,EAKA,QAAA,EAAA,CAAC,CAAC,UAAU,CAAC,EAAA,CACC,EACjBA,GAAC,CAAA,cAAc,EACb,EAAA,KAAK,EAAE;wCACL,YAAY,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;wCACjD,MAAM,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;wCAC5C,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;wCAC1C,QAAQ,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;qCAC/C,EACD,SAAS,EACT,IAAA,EAAA,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,OAAO,CAAC,UAAU,EAAA,QAAA,EAI5B,UAAU,CAAC,OAAO,IACjBA,GAAC,CAAA,gBAAgB,EAAC,EAAA,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAI,CAAA,KAE9C,CAAC,CAAC,eAAe,CAAC,CACnB,EAAA,CACc,CACb,EAAA,CAAA,CAAA,EAAA,CACF,EACD,CAAA,EAAA,CACG,EACH,CAAA,EACX;AACJ,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,EAC3B,OAAO,EACP,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,WAAW,EACX,UAAU,EACV,eAAe,GAAG,CAAC,EAAE,KAAM,GAAC,EAC5B,cAAc,GAAG,CAAC,GACnB,KAAI;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;AACnD,IAAA,MAAM,GAAG,WAAW,CAAC,GAAG,QAAQ,EAAc,CAAC;AAC/C,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACnC,SAAS,CAAC,MAAK;QACb,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC7C,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAChE,IAAA,MAAM,cAAc,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACzC,IAAA,MAAM,EAAE,eAAe,EAAE,GAAG,WAAW,EAAE,CAAC;AAC1C,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;AAC/B,IAAA,MAAM,YAAY,GAAG,CAAC,WAAW,KAAI;QACnC,IAAI,EAAE,aAAa,EAAE,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC;AAC9C,QAAA,OAAO,gBAAgB,IACrBC,YACE,SAAS,EAAE,IAAI,CACb,OAAO,CAAC,aAAa,EACrB,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAClC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAGxB,QAAA,EAAA,CAAA,CAAC,CAAC,eAAe,CAAC,OAAGD,GAAC,CAAA,gBAAgB,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAC,WAAW,EAAG,CAAA,CAAA,EAAA,CACpE,KAEJA,WACE,aAAa,EAAE,aAAa,EACxB,GAAA,KAAK,EACT,SAAS,EAAE,IAAI,CACb,OAAO,CAAC,aAAa,EACrB,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAClC,YAGA,CAAC,CAAC,eAAe,CAAC,EAAA,CACjB,CACL,CAAC;AACJ,KAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,MAAK;QAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,WAAW,CAAC,mBAAmB,CAAC,CAAC;AAClC,SAAA;AAAM,aAAA;YACL,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,SAAS,CAAC,GAAG,CAAC,CAAC;AAChB,SAAA;AACH,KAAC,CAAC;AACF,IAAA,MAAM,iBAAiB,GAAG,YAAW;QACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAC1B,QAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,CACtD,UAAU,KAAK,WAAW;cACtB,UAAU,EAAE,SAAS;AACvB,cAAE,UAAU,EAAE,aAAa,EAC7B,UAAU,EAAE,QAAQ,EACpB,UAAU,EACV,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,SAAS,CACtB,CAAC;QACF,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,MAAM,KAAK,GAAG,EAAE;AAClB,YAAA,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/B,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,eAAe,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAClD,SAAA;AAAM,aAAA;YACL,eAAe,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAChD,SAAA;AACH,KAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAK;QAC5B,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,CAAC;AACX,QAAA,WAAW,EAAE,CAAC;AAChB,KAAC,CAAC;AACF,IAAA,MAAM,UAAU,GAAG,CAAC,aAAa,KAAI;AACnC,QAAA,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACjC,UAAU,CAAC,MAAK;gBACd,UAAU,CAAC,IAAI,CAAC,CAAC;aAClB,EAAE,GAAG,CAAC,CAAC;AACT,SAAA;QACD,QACEC,eAAM,SAAS,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,EAAA,QAAA,EAAA,CACpD,CAAC,CAAC,gBAAgB,CAAC,EAAG,GAAA,EAAA,aAAa,CAC/B,EAAA,CAAA,EACP;AACJ,KAAC,CAAC;IACF,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,UAAU,EAAE,aAAa,IAAI,KAAK,EAAE;AACtC,YAAA,gBAAgB,EAAE,CAAC;AACpB,SAAA;AACH,KAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;AAE/B,IAAA,QACED,GAAA,CAAC,QAAQ,EAAA,EAAA,QAAA,EACPA,IAAC,IAAI,EAAA,EAAC,UAAU,EAAC,QAAQ,EAAA,QAAA,EACvBC,IACE,CAAA,KAAA,EAAA,EAAA,QAAA,EAAA,CAAAD,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,SAAS;AAChB,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,KAAK;;AAEjB,4BAAA,UAAU,EAAE,QAAQ;AACpB,4BAAA,SAAS,EAAE,QAAQ;AACnB,4BAAA,UAAU,EAAE,MAAM;AAClB,4BAAA,YAAY,EAAE,MAAM;yBACrB,EAEA,QAAA,EAAA,CAAC,CAAC,uBAAuB,CAAC,GACvB,EAYNC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,OAAO,CAAC,YAAY,EACjC,QAAA,EAAA,CAAA,CAAC,CAAC,WAAW,CAAC,EAAE,GAAG,EACnB,UAAU,EAAE,QAAQ;kCACjB,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;AAC3C,oCAAA,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9B,kCAAE,IAAI,EACP,UAAU,CAAC,UAAU;AACtB,gCAAA,cAAc,IAAI,CAAC;AACnB,gCAAA,UAAU,EAAE,SAAS,KAAK,MAAM,GAAG,IAAI,IACrCD,GAAA,CAAC,SAAS,EACR,EAAA,aAAa,EAAE,iBAAiB;;AAEhC,gCAAA,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,EAAE,EACtC,SAAS,EAAE,OAAO,CAAC,cAAc,GACjC,CACH,CAAA,EAAA,CACG,EACNC,IAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,OAAO,CAAC,OAAO,EAC1B,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,4BAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,gCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,6BAAA;yBACF,EAAA,QAAA,EAAA,CAEDD,IAAC,QAAQ,EAAA,EACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,MAAM,EAChB,SAAS,QACT,SAAS,EAAE,CAAC,EACZ,OAAO,EAAC,QAAQ,EAChB,QAAQ,EAAE,KAAK,EACf,MAAM,EAAE,CAAC,YAAY,EACrB,SAAS,EAAE,OAAO,CAAC,eAAe,EAClC,CAAA,EAmBFA,IAACE,YAAU,EAAA,EAAA,YAAA,EACE,4BAA4B,EACvC,OAAO,EAAE,MAAK;oCACZ,IAAI,CAAC,YAAY,EAAE;wCACjB,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AACvC,wCAAA,QAAQ,CAAC,OAAO,GAAG,UAAU,CAC3B,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC7B,IAAI,CACL,CAAC;AACH,qCAAA;AAAM,yCAAA,IAAI,YAAY;wCAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;iCACjD,EACD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,EACtC,QAAQ,EAAE,UAAU,CAAC,UAAU,EAC/B,SAAS,EAAE,OAAO,CAAC,WAAW,EAE7B,QAAA,EAAA,YAAY,GAAGF,GAAC,CAAA,UAAU,EAAG,EAAA,CAAA,GAAGA,GAAA,CAAC,aAAa,EAAA,EAAA,CAAG,EACvC,CAAA,CAAA,EAAA,CACT,EACL,OAAO,CAAC,QAAQ,CAAC,IAChBA,GAAC,CAAA,cAAc,EAAC,EAAA,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAA,QAAA,EAAG,QAAQ,EAAA,CAAkB,IAClE,IAAI,EACP,UAAU,EAAE,SAAS,KAAK,MAAM,IAC/BA,GAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAA,QAAA,EAC1BA,GAAG,CAAA,GAAA,EAAA,EAAA,IAAI,EAAC,aAAa,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAEzD,QAAA,EAAA,aAAA,EAAA,CAAA,EAAA,CACA,KAENA,GAAA,CAAAG,UAAA,EAAA,EAAA,CAAK,CACN,EAEDF,IACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,4BAAA,OAAO,EAAE,MAAM;AACf,4BAAA,GAAG,EAAE,MAAM;AACX,4BAAA,MAAM,EAAE,eAAe;AACvB,4BAAA,KAAK,EAAE,KAAK;AACb,yBAAA,EAAA,QAAA,EAAA,CAEDD,IAAC,cAAc,EAAA,EACb,SAAS,EACT,IAAA,EAAA,QAAQ,EAAE,UAAU,CAAC,UAAU,EAC/B,OAAO,EAAE,gBAAgB,EACzB,SAAS,EAAE,OAAO,CAAC,UAAU;;;;AAI7B,gCAAA,KAAK,EAAE;AACL,oCAAA,MAAM,EAAE,8BAA8B;AACtC,oCAAA,KAAK,EAAE,qBAAqB;;AAE5B,oCAAA,YAAY,EAAE,MAAM;AACpB,oCAAA,QAAQ,EAAE,KAAK;iCAChB,EAEA,QAAA,EAAA,CAAC,CAAC,UAAU,CAAC,EAAA,CACC,EACjBA,GAAC,CAAA,cAAc,EACb,EAAA,KAAK,EAAE;oCACL,YAAY,EAAE,UAAU,CAAC,UAAU,GAAG,KAAK,GAAG,MAAM;oCACpD,MAAM,EAAE,UAAU,CAAC,UAAU,GAAG,MAAM,GAAG,MAAM;oCAC/C,KAAK,EAAE,UAAU,CAAC,UAAU,GAAG,KAAK,GAAG,MAAM;oCAC7C,QAAQ,EAAE,UAAU,CAAC,UAAU,GAAG,MAAM,GAAG,MAAM;AAClD,iCAAA;;gCAED,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,OAAO,CAAC,UAAU,EAAA,QAAA,EAE5B,UAAU,CAAC,UAAU,IACpBA,IAAC,gBAAgB,EAAA,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAI,CAAA,KAE9C,CAAC,CAAC,eAAe,CAAC,CACnB,EACc,CAAA,CAAA,EAAA,CACb,CACF,EAAA,CAAA,EAAA,CACD,EACE,CAAA,EACX;AACJ,CAAC;;AChkBD,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE;AAC/B,EAAE,KAAK,GAAG,KAAK,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;AACjC,EAAE,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;AAC9B;AACA,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,EAAE,OAAO,EAAE;AAC1D;AACA,EAAE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,EAAE,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC9C,EAAE,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;AAC1B;AACA,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;AACzB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAChD,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC9B,KAAK;AACL,GAAG,MAAM;AACT,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,GAAG;AACH;AACA,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;AACxB,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;AACnC,GAAG,MAAM;AACT,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AACpD,GAAG;AACH;;;;;AClBO,MAAM,YAAY,GAAG,CAAC,EAC3B,OAAO,EACP,UAAU,EACV,YAAY,EACZ,YAAY,GACb,KAAI;AACH,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,QACEA,IAAC,QAAQ,EAAA,EAAA,QAAA,EACPA,IAAC,SAAS,EAAA,EAAC,QAAQ,EAAC,IAAI,YACtBC,IAAC,CAAA,IAAI,IAAC,UAAU,EAAC,QAAQ,EACvB,QAAA,EAAA,CAAAA,IAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,4BAAA,WAAW,EAAE,MAAM;AACnB,4BAAA,KAAK,EAAE,MAAM;;AAEd,yBAAA,EAAA,QAAA,EAAA,CAEDD,GAAM,CAAA,IAAA,EAAA,EAAA,CAAA,EACNA,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,oCAAA,KAAK,EAAE,SAAS;AAChB,oCAAA,QAAQ,EAAE,MAAM;AAChB,oCAAA,UAAU,EAAE,KAAK;;AAEjB,oCAAA,UAAU,EAAE,QAAQ;AACpB,oCAAA,SAAS,EAAE,QAAQ;AACnB,oCAAA,UAAU,EAAE,MAAM;AAClB,oCAAA,YAAY,EAAE,MAAM;iCACrB,EAEA,QAAA,EAAA,CAAC,CAAC,mCAAmC,CAAC,GACnC,EACNA,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,oCAAA,KAAK,EAAE,SAAS;AAChB,oCAAA,QAAQ,EAAE,MAAM;AAChB,oCAAA,UAAU,EAAE,KAAK;;AAEjB,oCAAA,UAAU,EAAE,QAAQ;AACpB,oCAAA,SAAS,EAAE,QAAQ;AACnB,oCAAA,UAAU,EAAE,MAAM;;AAEnB,iCAAA,EAAA,QAAA,EAEA,CAAC,CAAC,gCAAgC,CAAC,GAChC,EACNA,GAAA,CAAA,IAAA,EAAA,EAAA,CAAM,EACNC,IAAA,CAAC,UAAU,EAAA,EAAC,OAAO,EAAC,IAAI,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,aACjD,CAAC,CAAC,WAAW,CAAC,OAAG,EAAE,EACnB,CACC,CAAA,EAAA,UAAU,EAAE,QAAQ;0CAChB,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;AAC3C,4CAAA,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9B,0CAAE,IACN,CAAE,CAAA,CAAA,EAAA,CACS,EACbD,GAAA,CAAA,IAAA,EAAA,EAAA,CAAM,EACNA,GAAA,CAAA,KAAA,EAAA,EACE,SAAS,EACP,UAAU,EAAE,gBAAgB;sCACxB,OAAO,CAAC,SAAS;AACnB,sCAAE,OAAO,CAAC,QAAQ,YAGtBC,IAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,cAAc,EAC3B,QAAA,EAAA,CAAAD,GAAA,CAAC,oBAAoB,EAAA,EACnB,EAAE,EAAE;AACF,gDAAA,QAAQ,EAAE,MAAM;AAChB,gDAAA,OAAO,EAAE,KAAK;AACd,gDAAA,YAAY,EAAE,KAAK;AACnB,gDAAA,OAAO,EAAE,MAAM;AACf,gDAAA,MAAM,EAAE,QAAQ;AAChB,gDAAA,SAAS,EAAE;AACT,oDAAA,YAAY,EAAE,mBAAmB;AAClC,iDAAA;6CACF,EACD,SAAS,EACP,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,EAE1D,KAAK,EAAE,UAAU,EAAE,gBAAgB,GAAG,OAAO,GAAG,SAAS,EACzD,CAAA,EACD,UAAU,EAAE,UAAU,IACrBC,IACE,CAAAE,UAAA,EAAA,EAAA,QAAA,EAAA,CAAAH,GAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE;wDACL,MAAM,EAAE,UAAU,EAAE,UAAU;AAC5B,8DAAE,mBAAmB;AACrB,8DAAE,gBAAgB;AACrB,qDAAA,EAAA,CACI,EACPA,GACE,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,8BAA8B,EACxC,KAAK,EAAE;wDACL,MAAM,EAAE,UAAU,EAAE,UAAU;AAC5B,8DAAE,mBAAmB;AACrB,8DAAE,eAAe;AACpB,qDAAA,EAAA,CACI,EACPA,GACE,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,8BAA8B,EACxC,KAAK,EAAE;wDACL,MAAM,EAAE,UAAU,EAAE,UAAU;AAC5B,8DAAE,mBAAmB;AACrB,8DAAE,eAAe;AACpB,qDAAA,EAAA,CACI,CACN,EAAA,CAAA,IACD,IAAI,CACJ,EAAA,CAAA,EAAA,CACF,EAENA,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,OAAO,CAAC,SAAS,EAC/B,QAAA,EAAAC,IAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAC/B,QAAA,EAAA,CAAAD,GAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,UAAU,CAAC,UAAU,GAAG,UAAU,GAAG,MAAM,YACzDA,GACE,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,KAAK,EACf,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,GAAG,KAAK,GAAG,IAAI,EAAE,EACjD,CAAA,EAAA,CACH,EACNA,GAAA,CAAA,IAAA,EAAA,EACE,KAAK,EAAE;AACL,gDAAA,OAAO,EAAE,MAAM;AACf,gDAAA,SAAS,EAAE,MAAM;AACjB,gDAAA,cAAc,EAAE,cAAc;gDAC9B,KAAK,EAAE,UAAU,EAAE,gBAAgB;AACjC,sDAAE,oBAAoB;AACtB,sDAAE,SAAS;6CACd,EAEA,QAAA,EAAA,UAAU,EAAE,gBAAgB;kDACzB,UAAU,EAAE,WAAW;kDACvB,UAAU,EAAE,OAAO;AACnB,sDAAE,CAAC,CAAC,mBAAmB,CAAC;sDACtB,UAAU,EAAE,UAAU;AACtB,0DAAE,CAAC,CAAC,oBAAoB,CAAC;0DACvB,IAAI,EACT,CAAA,CAAA,EAAA,CACD,GACF,CACF,EAAA,CAAA,EACNC,IACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,4BAAA,OAAO,EAAE,MAAM;AACf,4BAAA,cAAc,EAAE,QAAQ;AACxB,4BAAA,MAAM,EAAE,eAAe;;AAEvB,4BAAA,GAAG,EAAE,MAAM;AACZ,yBAAA,EAAA,QAAA,EAAA,CAEDD,GAAC,CAAA,cAAc,EACb,EAAA,SAAS,QACT,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,OAAO,EAAE,MAAK;AACZ,oCAAA,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1B,iCAAC,EACD,SAAS,EAAE,OAAO,CAAC,UAAU;;;;AAI7B,gCAAA,KAAK,EAAE;AACL,oCAAA,MAAM,EAAE,8BAA8B;AACtC,oCAAA,KAAK,EAAE,qBAAqB;AAC5B,oCAAA,UAAU,EAAE,qBAAqB;AACjC,oCAAA,YAAY,EAAE,MAAM;AACpB,oCAAA,QAAQ,EAAE,KAAK;iCAChB,EAEA,QAAA,EAAA,CAAC,CAAC,UAAU,CAAC,EAAA,CACC,EACjBA,GAAC,CAAA,cAAc,EACb,EAAA,KAAK,EAAE;oCACL,YAAY,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;oCACjD,MAAM,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;oCAC5C,KAAK,EAAE,UAAU,CAAC,OAAO,GAAG,KAAK,GAAG,MAAM;oCAC1C,QAAQ,EAAE,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;;;AAG/C,iCAAA,EACD,QAAQ,EAAE,UAAU,CAAC,OAAO,EAC5B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,YAAY,EAClD,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,OAAO,CAAC,UAAU,EAAA,QAAA,EAE5B,UAAU,CAAC,OAAO,IACjBA,GAAC,CAAA,gBAAgB,EACf,EAAA,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,GAAG,EACd,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAA,CACxB,KAEF,CAAC,CAAC,kBAAkB,CAAC,CACtB,GACc,CACb,EAAA,CAAA,CAAA,EAAA,CACD,EACG,CAAA,EAAA,CACH,EACX;AACJ,CAAC;;AC/MM,MAAM,OAAO,GAAG,YAAW;AAChC,IAAA,IAAI,aAAa,GAAG;AAClB,QAAA,OAAO,EAAE,EAAE;AACX,QAAA,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;AAC7C,IAAA,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,sCAAsC,EAAE;AACtE,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,OAAO,EAAE;AACP,YAAA,MAAM,EAAE,kBAAkB;AAC1B,YAAA,cAAc,EAAE,kBAAkB;AACnC,SAAA;AACD,QAAA,IAAI,EAAE,QAAQ;AACf,KAAA,CAAC,CAAC;AACH,IAAA,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,CAAC;AACzC,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC;;ACdD,MAAM,aAAa,GAAG,CAAC,aAAqB,KAAI;IAC9C,IAAI,SAAS,GAAG,gBAAgB,CAAC;IACjC,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE;QACzD,OAAO,EAAE,EAAE,GAAG,CAAC;AACf,QAAA,UAAU,EAAE,IAAI;AACjB,KAAA,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;;AAGjC,IAAA,IAAI,GAAG,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;;IAG9D,IAAI,EAAE,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;;;AAK5E,IAAA,IAAI,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAC5B;AACE,QAAA,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CACrE;AACF,KAAA,EACD,GAAG,EACH;AACE,QAAA,EAAE,EAAE,EAAE;AACP,KAAA,CACF,CAAC;AACF,IAAA,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAEhF,CAAC,CAAC;AAEK,MAAM,WAAW,GAAG,OAAO,IAAS,EAAE,aAAqB,KAAI;IACpE,IAAI,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;;AAE5C,QAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC5B,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB,SAAA;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,OAAY,EAAE,CAAS,KAAI;YAC7C,IAAI;gBACF,IAAI,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACtD,gBAAA,IAAI,aAAa,GAAG;AAClB,oBAAA,eAAe,EAAE,eAAe;AAChC,oBAAA,YAAY,EAAE,aAAa;AAC3B,oBAAA,OAAO,EAAE,KAAK;iBACf,CAAC;gBACF,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC7C,MAAM,KAAK,CAAC,qCAAqC,EAAE;AACjD,oBAAA,MAAM,EAAE,MAAM;AACd,oBAAA,OAAO,EAAE;AACP,wBAAA,MAAM,EAAE,kBAAkB;AAC1B,wBAAA,cAAc,EAAE,kBAAkB;AACnC,qBAAA;AACD,oBAAA,IAAI,EAAE,QAAQ;iBACf,CAAC;qBACC,IAAI,CAAC,CAAC,QAAa,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;AACxC,qBAAA,IAAI,CAAC,CAAC,QAAa,KAAI;oBACtB,IAAI,QAAQ,EAAE,SAAS,KAAK,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;AACrD,wBAAA,OAAO,CAAC;AACN,4BAAA,MAAM,EAAE,IAAI;AACZ,4BAAA,SAAS,EAAE,GAAG;AACd,4BAAA,YAAY,EAAE,EAAE;AAChB,4BAAA,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,OAAO,CAAC,KAAK;AACrB,yBAAA,CAAC,CAAC;wBACH,OAAO;AACR,qBAAA;AAED,oBAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE;AACzB,wBAAA,OAAO,CAAC;AACN,4BAAA,MAAM,EAAE,KAAK;4BACb,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,YAAY,EAAE,QAAQ,CAAC,YAAY;AACnC,4BAAA,OAAO,EAAE,KAAK;AACf,yBAAA,CAAC,CAAC;wBACH,OAAO;AACR,qBAAA;AACH,iBAAC,CAAC;AACD,qBAAA,KAAK,CAAC,CAAC,MAAM,KAAI;AAChB,oBAAA,OAAO,CAAC;AACN,wBAAA,MAAM,EAAE,KAAK;AACb,wBAAA,SAAS,EAAE,KAAK;AAChB,wBAAA,YAAY,EAAE,MAAM;AACpB,wBAAA,OAAO,EAAE,IAAI;AACd,qBAAA,CAAC,CAAC;AACL,iBAAC,CAAC,CAAC;AACN,aAAA;AAAC,YAAA,OAAO,GAAG,EAAE;AACZ,gBAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,gBAAA,OAAO,CAAC;AACN,oBAAA,MAAM,EAAE,KAAK;AACb,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,YAAY,EAAE,uBAAuB;AACrC,oBAAA,OAAO,EAAE,IAAI;AACd,iBAAA,CAAC,CAAC;AACJ,aAAA;AACH,SAAC,CAAC,CAAC;AACL,KAAC,CAAC,CAAC;AACH,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC;;AC9FM,MAAM,WAAW,GAAG,CAAC,EAAE,aAAa,EAAO,KAAI;IACpD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAa,IAAI,CAAC,CAAC;AACrE,IAAA,MAAM,MAAM,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACjC,IAAA,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;;;;;;;;;IAY5B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,CAAC,CAAC;IAEhD,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;YAC7B,IAAI,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACvD,YAAA,MAAM,CAAC,OAAO;AACZ,gBAAA,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;AACvC,sBAAE,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;sBACzB,EAAE,CAAC;AACT,YAAA,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAClC,SAAA;AACH,KAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACb,QACEA,GAEE,CAAAG,UAAA,EAAA,EAAA,QAAA,EAAAF,IAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAA,IAAA,EAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAC1D,QAAA,EAAA,CAAAD,GAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAC,IAAA,EAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAA,QAAA,EAC1DA,GACE,CAAA,KAAA,EAAA,EAAA,GAAG,EAAC,EAAE,EACN,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,MAAM;AACb,4BAAA,MAAM,EAAE,MAAM;AACd,4BAAA,SAAS,EAAE,OAAO;AAClB,4BAAA,cAAc,EAAE,QAAQ;AACzB,yBAAA,EACD,GAAG,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,aAAa,GAAG,EAAE,GAChD,EACG,CAAA,EACPA,GAAC,CAAA,IAAI,IACH,IAAI,EAAA,IAAA,EACJ,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,EACN,KAAK,EAAE;AACL,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,UAAU,EAAE,qBAAqB;AAClC,qBAAA,EAAA,QAAA,EAEDC,IAAC,CAAA,SAAS,EAAC,EAAA,QAAQ,EAAC,IAAI,EACtB,QAAA,EAAA,CAAAA,IAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE;AACL,oCAAA,KAAK,EAAE,OAAO;AACd,oCAAA,SAAS,EAAE,QAAQ;AACnB,oCAAA,QAAQ,EAAE,MAAM;AAChB,oCAAA,UAAU,EAAE,MAAM;iCACnB,EAEA,QAAA,EAAA,CAAA,MAAM,CAAC,WAAW,IAAI,EAAE,EACzBD,GAAA,CAAA,MAAA,EAAA,EAAM,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAE9C,CACH,EAAA,CAAA,EACNA,GACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,oCAAA,UAAU,EAAE,MAAM;AAClB,oCAAA,QAAQ,EAAE,MAAM;AAChB,oCAAA,UAAU,EAAE,OAAO;AACnB,oCAAA,aAAa,EAAE,QAAQ;AACvB,oCAAA,KAAK,EAAE,SAAS;AAChB,oCAAA,QAAQ,EAAE,OAAO;iCAClB,EAEA,QAAA,EAAA,MAAM,CAAC,UAAU,IAAI,EAAE,EACpB,CAAA,CAAA,EAAA,CACI,EACP,CAAA,CAAA,EAAA,CACF,EAEN,CAAA,EACH;AACJ,CAAC;;AC5EM,MAAM,gBAAgB,GAAG,CAAC,EAC/B,OAAO,EACP,aAAa,EACb,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,SAAS,EACT,WAAW,GACZ,KAAI;AACH,IAAA,MAAM,cAAc,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACzC,IAAA,MAAM,EAAE,eAAe,EAAE,GAAG,WAAW,EAAE,CAAC;AAC1C,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;AAC/B,IAAA,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC;AACjC,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,WAAW,EAAE,EAAE;AACf,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,eAAe,EAAE,EAAE;AACpB,KAAA,CAAC,CAAC;AACH,IAAA,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC;AAC5C,QAAA,OAAO,EAAE,KAAK;AACd,QAAA,YAAY,EAAE,EAAE;AAChB,QAAA,SAAS,EAAE,KAAK;AAChB,QAAA,aAAa,EAAE,KAAK;AACpB,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,aAAa,EAAE,KAAK;AACpB,QAAA,gBAAgB,EAAE,EAAE;AACpB,QAAA,oBAAoB,EAAE,KAAK;AAC3B,QAAA,uBAAuB,EAAE,EAAE;AAC5B,KAAA,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAK;QAC5B,WAAW,CAAC,EAAE,CAAC,CAAC;AAClB,KAAC,CAAC;AACF,IAAA,MAAM,iBAAiB,GAAG,YAAW;QACnC,IAAI,OAAO,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,UAAU,GAAG;AACf,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,YAAY,EAAE,EAAE;AAChB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,gBAAgB,EAAE,EAAE;AACpB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,gBAAgB,EAAE,EAAE;AACpB,YAAA,oBAAoB,EAAE,KAAK;AAC3B,YAAA,uBAAuB,EAAE,EAAE;SAC5B,CAAC;AACF,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;AAC/B,YAAA,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAChC,YAAA,UAAU,CAAC,gBAAgB,GAAG,+BAA+B,CAAC;YAC9D,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;QAED,IAAI,OAAO,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC5D,QAAA,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;AACpB,YAAA,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAChC,YAAA,UAAU,CAAC,gBAAgB,GAAG,OAAO,CAAC;YACtC,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;AACD,QAAA,IACE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;AAC1B,YAAA,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;AACvB,YAAA,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,QAAQ,EACpC;AACA,YAAA,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAChC,YAAA,UAAU,CAAC,gBAAgB;AACzB,gBAAA,yDAAyD,CAAC;YAC5D,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;AACD,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE;AACnC,YAAA,UAAU,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACvC,YAAA,UAAU,CAAC,uBAAuB,GAAG,mCAAmC,CAAC;YACzE,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;AAAM,aAAA,IACL,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;AACvB,YAAA,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,eAAe,EACxC;AACA,YAAA,UAAU,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACvC,YAAA,UAAU,CAAC,uBAAuB;AAChC,gBAAA,mDAAmD,CAAC;YACtD,OAAO,GAAG,IAAI,CAAC;AAChB,SAAA;AACD,QAAA,IAAI,OAAO,EAAE;YACX,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAC9B,SAAA;AAAM,aAAA;AACL,YAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/D,IAAI,QAAQ,GAAG,MAAM,aAAa,CAChC,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,QAAQ,EACd,WAAW,EACX,SAAS,CACV,CAAC;AACF,YAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAChE,YAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;gBAC3B,eAAe,CAAC,gCAAgC,EAAE;AAChD,oBAAA,OAAO,EAAE,SAAS;AACnB,iBAAA,CAAC,CAAC;gBACH,WAAW,CAAC,GAAG,CAAC,CAAC;AAClB,aAAA;AAAM,iBAAA;AACL,gBAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM;AAC5B,oBAAA,GAAG,MAAM;AACT,oBAAA,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,QAAQ,CAAC,OAAO;AAC/B,iBAAA,CAAC,CAAC,CAAC;AACL,aAAA;AACF,SAAA;AACH,KAAC,CAAC;AACF,IAAA,MAAM,YAAY,GAAG,CAAC,KAAK,KAAI;AAC7B,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;AAC/B,QAAA,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,IAAI,KAAK,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AAC5C,YAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACrE,SAAA;aAAM,IAAI,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AAChD,YAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACrE,SAAA;aAAM,IAAI,IAAI,KAAK,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AACvD,YAAA,gBAAgB,CAAC,CAAC,MAAM,MAAM;AAC5B,gBAAA,GAAG,MAAM;AACT,gBAAA,oBAAoB,EAAE,KAAK;AAC5B,aAAA,CAAC,CAAC,CAAC;AACL,SAAA;AACD,QAAA,QAAQ,CAAC,CAAC,MAAM,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AACvD,KAAC,CAAC;IAEF,QACEA,IAAC,QAAQ,EAAA,EAAA,QAAA,EACPA,IAAC,SAAS,EAAA,EAAC,QAAQ,EAAC,IAAI,YACtBC,IAAC,CAAA,IAAI,IAAC,UAAU,EAAC,QAAQ,EACvB,QAAA,EAAA,CAAAD,GAAA,CAAA,KAAA,EAAA,EACE,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,oBAAoB;AAC3B,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,KAAK;AACjB,4BAAA,UAAU,EAAE,QAAQ;AACpB,4BAAA,SAAS,EAAE,QAAQ;yBACpB,EAED,QAAA,EAAAA,GAAA,CAAA,IAAA,EAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAA0B,GACtB,EACNA,GAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAC,EAAE,EACZ,KAAK,EAAE;AACL,4BAAA,KAAK,EAAE,SAAS;AAChB,4BAAA,QAAQ,EAAE,MAAM;AAChB,4BAAA,UAAU,EAAE,KAAK;AACjB,4BAAA,UAAU,EAAE,QAAQ;AACpB,4BAAA,SAAS,EAAE,QAAQ;AACnB,4BAAA,KAAK,EAAE,OAAO;AACf,yBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAGG,EACNC,IAAK,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAA,QAAA,EAAA,CAC9BD,GAAC,CAAA,SAAS,IACR,KAAK,EAAE,SAAS,EAChB,WAAW,EAAC,eAAe,EAC3B,SAAS,QACT,IAAI,EAAE,MAAM,EACZ,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,EAC3B,QAAQ,EAAE,YAAY,EACtB,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EACjC,QAAQ,EAAE,IAAI,EACd,YAAY,EAAC,KAAK,EAClB,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC7B,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAA,CAC/B,EACFA,GAAC,CAAA,SAAS,IACR,SAAS,EAAE,IAAI,EACf,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAC,wBAAwB,EACpC,SAAS,EAAA,IAAA,EACT,IAAI,EAAE,UAAU,EAChB,IAAI,EAAC,aAAa,EAClB,KAAK,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE,EAC9B,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,QAAQ,CAAC,aAAa,EAC7B,UAAU,EACR,QAAQ,CAAC,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAE5D,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EACjC,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAC5B,YAAY,EAAC,KAAK,EAClB,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,oCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,wCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,qCAAA;iCACF,EACD,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC7B,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,GAC/B,EACFA,GAAA,CAAC,SAAS,EAAA,EACR,KAAK,EAAE,cAAc,EACrB,WAAW,EAAC,oBAAoB,EAChC,SAAS,EACT,IAAA,EAAA,IAAI,EAAE,UAAU,EAChB,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,EAC3B,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,QAAQ,CAAC,aAAa,EAC7B,UAAU,EACR,QAAQ,CAAC,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAE5D,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EACjC,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAC5B,YAAY,EAAC,KAAK,EAClB,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,oCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,wCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,qCAAA;AACH,iCAAC,EACD,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC7B,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAC/B,CAAA,EACFA,GAAC,CAAA,SAAS,EACR,EAAA,KAAK,EAAE,sBAAsB,EAC7B,WAAW,EAAC,4BAA4B,EACxC,SAAS,EACT,IAAA,EAAA,IAAI,EAAE,UAAU,EAChB,IAAI,EAAC,iBAAiB,EACtB,KAAK,EAAE,KAAK,CAAC,eAAe,IAAI,EAAE,EAClC,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,QAAQ,CAAC,oBAAoB,EACpC,UAAU,EACR,QAAQ,CAAC,oBAAoB;AAC3B,sCAAE,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;sCACnC,EAAE,EAER,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EACjC,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAC5B,YAAY,EAAC,KAAK,EAClB,SAAS,EAAE,CAAC,CAAC,KAAI;AACf,oCAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;AACrB,wCAAA,cAAc,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AACpC,qCAAA;iCACF,EACD,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC7B,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAA,CAC/B,EACD,QAAQ,CAAC,OAAO,IACfA,GAAC,CAAA,cAAc,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EACpC,QAAA,EAAA,QAAQ,CAAC,YAAY,EAAA,CACP,IACf,IAAI,CACJ,EAAA,CAAA,EACNC,IACE,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE;AACL,4BAAA,OAAO,EAAE,MAAM;AACf,4BAAA,GAAG,EAAE,MAAM;AACX,4BAAA,MAAM,EAAE,eAAe;AACvB,4BAAA,KAAK,EAAE,KAAK;yBACb,EAED,QAAA,EAAA,CAAAD,GAAA,CAAC,cAAc,EACb,EAAA,SAAS,QACT,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAC5B,OAAO,EAAE,gBAAgB,EACzB,SAAS,EAAE,OAAO,CAAC,UAAU,EAC7B,KAAK,EAAE;AACL,oCAAA,MAAM,EAAE,8BAA8B;AACtC,oCAAA,KAAK,EAAE,qBAAqB;;AAE5B,oCAAA,YAAY,EAAE,MAAM;AACrB,iCAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAGc,EACjBA,GAAA,CAAC,cAAc,EAAA,EACb,KAAK,EAAE;oCACL,YAAY,EAAE,QAAQ,CAAC,SAAS,GAAG,KAAK,GAAG,MAAM;oCACjD,MAAM,EAAE,QAAQ,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM;oCAC5C,KAAK,EAAE,QAAQ,CAAC,SAAS,GAAG,KAAK,GAAG,MAAM;oCAC1C,QAAQ,EAAE,QAAQ,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM;iCAC/C,EACD,SAAS,EACT,IAAA,EAAA,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAC5B,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,OAAO,CAAC,UAAU,EAAA,QAAA,EAE5B,QAAQ,CAAC,SAAS,IACjBA,GAAC,CAAA,gBAAgB,EAAC,EAAA,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAA,CAAI,KAE9C,QAAQ,CACT,EACc,CAAA,CAAA,EAAA,CACb,CACD,EAAA,CAAA,EAAA,CACG,EACH,CAAA,EACX;AACJ,CAAC;;AClSD,MAAM,aAAa,GAAG;AACpB,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,UAAU,EAAE,KAAK;AACjB,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,eAAe,EAAE,KAAK;AACtB,IAAA,eAAe,EAAE,KAAK;AACtB,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,cAAc,EAAE,EAAE;AAClB,IAAA,sBAAsB,EAAE,EAAE;AAC1B,IAAA,sBAAsB,EAAE,EAAE;AAC1B,IAAA,WAAW,EAAE,UAAU;AACvB,IAAA,aAAa,EAAE,EAAE;AACjB,IAAA,YAAY,EAAE,EAAE;AAChB,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,UAAU,EAAE,KAAK;AACjB,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,SAAS,EAAE,GAAG;AACd,IAAA,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,KAAI;IAChC,QAAQ,MAAM,CAAC,IAAI;AACjB,QAAA,KAAK,iCAAiC,CAAC;QACvC,KAAK,0BAA0B,EAAE;YAC/B,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,gBAAgB,EAAE,KAAK;AACvB,gBAAA,WAAW,EAAE,EAAE;aAChB,CAAC;AACH,SAAA;QACD,KAAK,4BAA4B,EAAE;AACjC,YAAA,OAAO,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAChE,SAAA;QACD,KAAK,6BAA6B,EAAE;YAClC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,eAAe,EAAE,IAAI;AACrB,gBAAA,eAAe,EAAE,IAAI;AACrB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AACnC,gBAAA,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;AACtD,gBAAA,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;AACtD,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,aAAa,EAAE,EAAE;aAClB,CAAC;AACH,SAAA;AACD,QAAA,KAAK,6BAA6B;YAChC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,eAAe,EAAE,IAAI;AACrB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AACnC,gBAAA,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;AACtD,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,aAAa,EAAE,EAAE;aAClB,CAAC;QACJ,KAAK,6BAA6B,EAAE;YAClC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,eAAe,EAAE,IAAI;AACrB,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AACnC,gBAAA,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;AACtD,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,aAAa,EAAE,EAAE;aAClB,CAAC;AACH,SAAA;QACD,KAAK,+BAA+B,EAAE;YACpC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,eAAe,EAAE,KAAK;AACtB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,WAAW,EAAE,EAAE;AACf,gBAAA,sBAAsB,EAAE,EAAE;AAC1B,gBAAA,sBAAsB,EAAE,EAAE;AAC1B,gBAAA,QAAQ,EAAE,EAAE;AACZ,gBAAA,aAAa,EAAE,EAAE;AACjB,gBAAA,YAAY,EAAE,EAAE;aACjB,CAAC;AACH,SAAA;QACD,KAAK,kBAAkB,EAAE;YACvB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;AACnC,gBAAA,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;AAC3C,gBAAA,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;aACxC,CAAC;AACH,SAAA;QACD,KAAK,yBAAyB,EAAE;YAC9B,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;aACvD,CAAC;AACH,SAAA;QACD,KAAK,gCAAgC,EAAE;YACrC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;AAC7C,gBAAA,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;AACnC,gBAAA,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;AACrC,gBAAA,cAAc,EAAE,EAAE;AAClB,gBAAA,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;AAC3C,gBAAA,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;AACvC,gBAAA,aAAa,EAAE,KAAK;AACpB,gBAAA,WAAW,EAAE,KAAK;AAClB,gBAAA,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;AACnC,gBAAA,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;AACrC,gBAAA,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;AACzC,gBAAA,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;aACvC,CAAC;AACH,SAAA;QACD,KAAK,gCAAgC,EAAE;YACrC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,cAAc,EAAE,EAAE;AAClB,gBAAA,aAAa,EAAE,KAAK;aACrB,CAAC;AACH,SAAA;AACD,QAAA,KAAK,8BAA8B;YACjC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,gBAAgB,EAAE,IAAI;AACtB,gBAAA,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AACnC,gBAAA,UAAU,EAAE,KAAK;aAClB,CAAC;AACJ,QAAA,KAAK,iCAAiC;YACpC,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,gBAAgB,EAAE,KAAK;gBACvB,KAAK,EAAE,MAAM,CAAC,OAAO;AACrB,gBAAA,UAAU,EAAE,KAAK;aAClB,CAAC;QACJ,KAAK,yBAAyB,EAAE;YAC9B,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,cAAc,EAAE,EAAE;aACnB,CAAC;AACH,SAAA;QACD,KAAK,uBAAuB,EAAE;YAC5B,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;gBACtC,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;aACvD,CAAC;AACH,SAAA;QACD,KAAK,kBAAkB,EAAE;YACvB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;aAC9C,CAAC;AACH,SAAA;QACD,KAAK,4BAA4B,EAAE;YACjC,OAAO;AACL,gBAAA,GAAG,aAAa;AAChB,gBAAA,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;AACzC,gBAAA,sBAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;aACtD,CAAC;AACH,SAAA;AAED,QAAA,SAAS;AACP,YAAA,OAAO,KAAK,CAAC;AACd,SAAA;AACF,KAAA;AACH,CAAC,CAAC;MAgBW,qBAAqB,GAAkC,CAAC,EACnE,aAAa,EACb,OAAO,EACP,OAAO,EACP,yBAAyB,EACzB,SAAS,EACT,gBAAgB,EAChB,aAAa,GACd,KAAI;;AAEH,IAAA,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;;AAE5B,IAAA,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACjE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AACxD,IAAA,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAa,IAAI,CAAC,CAAC;AAC3E,IAAA,MAAM,MAAM,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;AACjC,IAAA,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;AAC/B,IAAA,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;IAqB/B,SAAS,CAAC,MAAK;AACb,QAAA,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YACpB,IAAI,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC9C,YAAA,MAAM,CAAC,OAAO;AACZ,gBAAA,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;AACvC,sBAAE,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;sBACzB,EAAE,CAAC;AACT,YAAA,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACrC,SAAA;AACH,KAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;;;;IAMd,MAAM,sBAAsB,GAAG,OAAO,QAAQ,EAAE,QAAQ,KAAI;QAC1D,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC1C,YAAA,OAAO,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAAC,CAAC;AACnD,YAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,GACzD,MAAM,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACtD,YAAA,IAAI,MAAM,KAAK,GAAG,IAAI,YAAY,KAAK,GAAG,EAAE;AAC1C,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,OAAO,EAAE;AACP,wBAAA,QAAQ,EAAE,QAAQ;wBAClB,YAAY,EAAE,YAAY,EAAE,YAAY;wBACxC,UAAU,EAAE,YAAY,EAAE,UAAU;AACrC,qBAAA;AACF,iBAAA,CAAC,CAAC;gBACH,eAAe,CAAC,IAAI,CAAC,CAAC;AACvB,aAAA;iBAAM,IAAI,MAAM,KAAK,GAAG,EAAE;AACzB,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,gCAAgC;AACtC,oBAAA,OAAO,EAAE;wBACP,aAAa,EAAE,IAAI,EAAE,UAAU;AAC/B,wBAAA,QAAQ,EAAE,QAAQ;wBAClB,YAAY,EAAE,YAAY,EAAE,YAAY;wBACxC,UAAU,EAAE,YAAY,EAAE,UAAU;wBACpC,QAAQ,EAAE,IAAI,EAAE,SAAS;AACzB,wBAAA,SAAS,EAAE;AACT,4BAAA;AACE,gCAAA,UAAU,EAAE,IAAI,EAAE,YAAY,IAAI,EAAE;gCACpC,SAAS,EAAE,IAAI,EAAE,cAAc;AAChC,6BAAA;AACF,yBAAA;wBACD,WAAW,EAAE,IAAI,EAAE,SAAS;AAC7B,qBAAA;AACF,iBAAA,CAAC,CAAC;AACJ,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,6BAA6B;oBACnC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE;AACpD,iBAAA,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;aAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACnD,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,6BAA6B;AACnC,gBAAA,OAAO,EAAE;AACP,oBAAA,KAAK,EAAE,gCAAgC;AACvC,oBAAA,aAAa,EAAE,oBAAoB;AACnC,oBAAA,aAAa,EAAE,oBAAoB;AACpC,iBAAA;AACF,aAAA,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC7B,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,6BAA6B;AACnC,gBAAA,OAAO,EAAE;AACP,oBAAA,KAAK,EAAE,oBAAoB;AAC3B,oBAAA,aAAa,EAAE,oBAAoB;AACpC,iBAAA;AACF,aAAA,CAAC,CAAC;AACJ,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,6BAA6B;AACnC,gBAAA,OAAO,EAAE;AACP,oBAAA,KAAK,EAAE,oBAAoB;AAC3B,oBAAA,aAAa,EAAE,oBAAoB;AACpC,iBAAA;AACF,aAAA,CAAC,CAAC;AACJ,SAAA;AACH,KAAC,CAAC;AAEF,IAAA,MAAM,SAAS,GAAG,OAAO,SAAS,KAAI;AACpC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;AAC3D,YAAA,OAAO,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;AAC9C,YAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAC/C,UAAU,CAAC,aAAa;;AAExB,YAAA,UAAU,CAAC,QAAQ,EACnB,SAAS,EACT,UAAU,CAAC,YAAY,EACvB,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,QAAQ,CACpB,CAAC;AACF,YAAA,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YACrC,IAAI,MAAM,KAAK,GAAG,EAAE;;;;;;AAMlB,gBAAA,OAAO,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,CAAC;AACf,aAAA;iBAAM,IAAI,MAAM,KAAK,KAAK,EAAE;AAC3B,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE;AACjD,iBAAA,CAAC,CAAC;;AAEJ,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE;AAClD,iBAAA,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;AAAM,aAAA;AACL,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,uBAAuB;AAC7B,gBAAA,OAAO,EAAE,EAAE,KAAK,EAAE,mCAAmC,EAAE;AACxD,aAAA,CAAC,CAAC;AACJ,SAAA;AACH,KAAC,CAAC;AAEF,IAAA,MAAM,2BAA2B,GAAG,CAAC,IAAI,KAAI;QAC3C,IAAI,IAAI,KAAK,GAAG,EAAE;AAChB,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,yBAAyB;AAC/B,gBAAA,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;AACjC,aAAA,CAAC,CAAC;AACJ,SAAA;QACD,eAAe,CAAC,KAAK,CAAC,CAAC;AACzB,KAAC,CAAC;IACF,MAAM,cAAc,GAAG,CAAC,OAAO,GAAG,KAAK,EAAE,YAAY,GAAG,EAAE,KAAI;AAC5D,QAAA,OAAO,CAAC;AACN,YAAA,IAAI,EAAE,4BAA4B;AAClC,YAAA,OAAO,EAAE;AACP,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,YAAY,EAAE,YAAY;AAC3B,aAAA;AACF,SAAA,CAAC,CAAC;AACL,KAAC,CAAC;AACF,IAAA,MAAM,YAAY,GAAG,YAAW;QAC9B,IAAI;AACF,YAAA,OAAO,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC;AAChD,YAAA,MAAM,cAAc,GAAG,MAAMI,OAAW,EAAE,CAAC;AAC3C,YAAA,IAAI,cAAc,EAAE,SAAS,KAAK,GAAG,EAAE;AACrC,gBAAA,OAAO,CAAC,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC,CAAC;AACrD,gBAAA,MAAM,OAAO,GAAQ,MAAM,WAAW,CACpC,UAAU,CAAC,SAAS,EACpB,cAAc,CAAC,WAAW,CAC3B,CAAC;gBACF,IAAI,OAAO,CAAC,OAAO,EAAE;AACnB,oBAAA,OAAO,CAAC;AACN,wBAAA,IAAI,EAAE,8BAA8B;AACpC,wBAAA,OAAO,EAAE;AACP,4BAAA,KAAK,EAAE,OAAO,EAAE,YAAY,IAAI,uBAAuB;AACxD,yBAAA;AACF,qBAAA,CAAC,CAAC;AACJ,iBAAA;AAAM,qBAAA;oBACL,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAC/C,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,QAAQ,EACnB,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,EAC7B,UAAU,CAAC,YAAY,EACvB,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,QAAQ,EACnB,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,GAAG,CAC3B,CAAC;AACF,oBAAA,IAAI,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE;AACpC,wBAAA,OAAO,CAAC,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC,CAAC;wBACrD,OAAO,CAAC,IAAI,CAAC,CAAC;AACf,qBAAA;yBAAM,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;wBAC5C,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;AAChD,wBAAA,OAAO,CAAC;AACN,4BAAA,IAAI,EAAE,8BAA8B;AACpC,4BAAA,OAAO,EAAE;AACP,gCAAA,KAAK,EAAE,mCAAmC;AAC3C,6BAAA;AACF,yBAAA,CAAC,CAAC;AACH,wBAAA,IAAI,YAAY,CAAC,OAAO,IAAI,CAAC;AAC3B,4BAAA,cAAc,CAAC,IAAI,EAAE,mCAAmC,CAAC,CAAC;AAC7D,qBAAA;yBAAM,IAAI,MAAM,KAAK,IAAI,EAAE;AAC1B,wBAAA,OAAO,CAAC;AACN,4BAAA,IAAI,EAAE,8BAA8B;AACpC,4BAAA,OAAO,EAAE;gCACP,KAAK,EAAE,OAAO,IAAI,mCAAmC;AACtD,6BAAA;AACF,yBAAA,CAAC,CAAC;AACJ,qBAAA;yBAAM,IAAI,MAAM,KAAK,KAAK,EAAE;AAC3B,wBAAA,OAAO,CAAC;AACN,4BAAA,IAAI,EAAE,8BAA8B;AACpC,4BAAA,OAAO,EAAE;gCACP,KAAK,EAAE,OAAO,IAAI,mCAAmC;AACtD,6BAAA;AACF,yBAAA,CAAC,CAAC;AACH,wBAAA,cAAc,CACZ,IAAI,EACJ,OAAO,IAAI,mCAAmC,CAC/C,CAAC;AACH,qBAAA;AAAM,yBAAA;AACL,wBAAA,OAAO,CAAC;AACN,4BAAA,IAAI,EAAE,8BAA8B;AACpC,4BAAA,OAAO,EAAE;gCACP,KAAK,EAAE,OAAO,IAAI,mCAAmC;AACtD,6BAAA;AACF,yBAAA,CAAC,CAAC;AACJ,qBAAA;AACF,iBAAA;AACF,aAAA;AAAM,iBAAA;AACL,gBAAA,OAAO,CAAC;AACN,oBAAA,IAAI,EAAE,8BAA8B;AACpC,oBAAA,OAAO,EAAE;wBACP,KAAK,EACH,cAAc,EAAE,YAAY,IAAI,CAAC,CAAC,0BAA0B,CAAC;AAChE,qBAAA;AACF,iBAAA,CAAC,CAAC;AACJ,aAAA;AACF,SAAA;AAAC,QAAA,OAAO,CAAM,EAAE;AACf,YAAA,OAAO,CAAC;AACN,gBAAA,IAAI,EAAE,8BAA8B;AACpC,gBAAA,OAAO,EAAE;oBACP,KAAK,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,+BAA+B,CAAC;AACxD,iBAAA;AACF,aAAA,CAAC,CAAC;AACJ,SAAA;AACH,KAAC,CAAC;IACF,QACEJ,GACE,CAAAG,UAAA,EAAA,EAAA,QAAA,EAAAF,IAAA,CAAC,IAAI,EAAA,EAAC,SAAS,EAAC,IAAA,EAAA,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAA,QAAA,EAAA,CAC5DD,GAAC,CAAA,WAAW,EAAC,EAAA,aAAa,EAAE,aAAa,EAAI,CAAA,EAC7CC,KAAC,IAAI,EAAA,EAAC,IAAI,EAAA,IAAA,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAA,QAAA,EAAA,CACpCD,GAAC,CAAA,IAAI,EACH,EAAA,SAAS,EACT,IAAA,EAAA,SAAS,EAAC,KAAK,EACf,cAAc,EAAC,UAAU,EACzB,UAAU,EAAC,QAAQ,EACnB,OAAO,EAAE,MAAM,EAEf,QAAA,EAAAA,GAAA,CAAC,OAAO,EAAC,EAAA,aAAa,EAAC,IAAA,EAAA,KAAK,EAAC,yBAAyB,EACpD,QAAA,EAAAA,GAAA,CAAA,KAAA,EAAA,EACE,GAAG,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,GAAG,EAAE,EACtD,GAAG,EAAC,MAAM,EACV,CAAA,EAAA,CACM,GACL,EAaN,YAAY,IACXA,GAAC,CAAA,gBAAgB,EACf,EAAA,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAC7B,WAAW,EAAE,UAAU,CAAC,YAAY,EACpC,SAAS,EAAE,UAAU,CAAC,UAAU,EAChC,WAAW,EAAE,2BAA2B,EAAA,CACxC,KAEFA,GACG,CAAAG,UAAA,EAAA,EAAA,QAAA,EAAA,UAAU,CAAC,WAAW,KAAK,UAAU,IACpCH,GAAC,CAAA,qBAAqB,EAEpB,EAAA,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,sBAAsB,EAAE,sBAAsB,IAH1C,UAAU,CAId,KAEFA,GACG,CAAAG,UAAA,EAAA,EAAA,QAAA,EAAA,UAAU,CAAC,QAAQ,KAAK,KAAK,IAC5BH,GAAA,CAAC,QAAQ,EAAA,EAEP,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,cAAc,EAC5B,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE,cAAc,IAAI,EAAE,CAAC,EAC7C,WAAW,EAAE,CAAC,KAAK,KAAI;AACrB,wCAAA,OAAO,CAAC;AACN,4CAAA,IAAI,EAAE,uBAAuB;AAC7B,4CAAA,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;AAC1B,yCAAA,CAAC,CAAC;AACL,qCAAC,EACD,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,cAAc,EAC3B,UAAU,EAAE,OAAO,EACnB,eAAe,EAAE,CAAC,YAAY,KAAI;AAChC,wCAAA,OAAO,CAAC;AACN,4CAAA,IAAI,EAAE,kBAAkB;AACxB,4CAAA,OAAO,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;AACzC,yCAAA,CAAC,CAAC;wCACH,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;AAClD,qCAAC,EACD,cAAc,EAAE,YAAY,CAAC,OAAO,EAAA,EAvBhC,KAAK,CAwBT,IACA,UAAU,CAAC,QAAQ,KAAK,MAAM,IAChCC,IAAA,CAAAE,UAAA,EAAA,EAAA,QAAA,EAAA,CACG,GAAG,EACJH,GAAA,CAAC,YAAY,EAAA,EAEX,gBAAgB,EAAE,gBAAgB,EAClC,OAAO,EAAE,OAAO;;4CAEhB,WAAW,EAAE,cAAc,EAC3B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,UAAU,EAAE,cAAc,IAAI,EAAE,EAC1C,WAAW,EAAE,CAAC,KAAK,KAAI;AACrB,gDAAA,OAAO,CAAC;AACN,oDAAA,IAAI,EAAE,uBAAuB;AAC7B,oDAAA,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;AAC1B,iDAAA,CAAC,CAAC;6CACJ,EACD,UAAU,EAAE,OAAO,EACnB,eAAe,EAAE,CAAC,YAAY,KAAI;AAChC,gDAAA,OAAO,CAAC;AACN,oDAAA,IAAI,EAAE,kBAAkB;AACxB,oDAAA,OAAO,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;AACzC,iDAAA,CAAC,CAAC;gDACH,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;6CACjD,EACD,cAAc,EAAE,YAAY,CAAC,OAAO,EAAA,EAtB/B,SAAS,CAuBd,CAAA,EAAA,CACD,KAEHA,GAAA,CAAC,YAAY,EAEX,EAAA,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,cAAc,EAAA,EAJxB,WAAW,CAKf,CACH,GACA,CACJ,EAAA,CACA,CACJ,CACI,EAAA,CAAA,CAAA,EAAA,CACF,EACN,CAAA,EACH;AACJ;;;;","x_google_ignoreList":[3]}
|