idmission-web-sdk 1.0.76 → 1.0.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom/client"),require("styled-components"),require("@tensorflow/tfjs")):"function"==typeof define&&define.amd?define(["exports","react","react-dom/client","styled-components","@tensorflow/tfjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Sdk2={},e.React,e.ReactDOM,e.styled,e.tf)}(this,(function(e,t,n,a,r){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var s=i(t),l=o(t),c=o(n),u=i(a),d=o(r),h=function(e,t){return h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},h(e,t)};function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}h(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var p=function(){return p=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},p.apply(this,arguments)};function m(e,t,n,a){return new(n||(n=Promise))((function(r,i){function o(e){try{l(a.next(e))}catch(e){i(e)}}function s(e){try{l(a.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}l((a=a.apply(e,t||[])).next())}))}function g(e,t){var n,a,r,i,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(o=0)),o;)try{if(n=1,a&&(r=2&s[0]?a.return:s[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,s[1])).done)return r;switch(a=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,a=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){o.label=s[1];break}if(6===s[0]&&o.label<r[1]){o.label=r[1],r=s;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(s);break}r[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],a=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}function v(e,t,n){if(n||2===arguments.length)for(var a,r=0,i=t.length;r<i;r++)!a&&r in t||(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}function y(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var b,w,x="1.0.76";function E(){return window.platform}function C(e){return m(this,void 0,void 0,(function(){return g(this,(function(t){return[2,e.replace(/^data:image\/(png|jpeg);base64,/,"")]}))}))}function k(e){return e.replace(/^data:.*;base64,/,"")}function S(e){var t,n;return null!==(n=null===(t=e.match(/^(data:.*;base64),/))||void 0===t?void 0:t[1])&&void 0!==n?n:""}!function(e){e.NONE="NONE",e.ENROLL="ENROLL",e.IDENTIFY="IDENTIFY",e.VALIDATE="VALIDATE",e.VERIFY="VERIFY"}(b||(b={})),function(e){e.READY="READY",e.SUBMITTING="SUBMITTING",e.SUBMITTED="SUBMITTED",e.FAILED="FAILED"}(w||(w={}));var T={prod:"https://api.idmission.com",demo:"https://apidemo.idmission.com"},I=t.createContext({submit:function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){return[2,null]}))}))},submissionStatus:w.READY,submissionRequest:null,submissionResponse:null,submissionError:null,submissionEnvironment:"prod",idFrontImage:null,idBackImage:null,passportImage:null,selfieImage:null,signatureData:null,signatureVideoUrl:null,idCaptureVideoUrl:null,additionalDocuments:null,setIdFrontImage:function(){return null},setIdBackImage:function(){return null},setPassportImage:function(){return null},setSelfieImage:function(){return null},setSignatureData:function(){return null},setSignatureVideoUrl:function(){return null},setIdCaptureVideoUrl:function(){return null},setAdditionalDocuments:function(){return null},logIdFrontCaptureAttempt:function(){return null},logIdBackCaptureAttempt:function(){return null},logSelfieCaptureAttempt:function(){return null},livenessCheckRequest:null,checkLiveness:function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){throw new Error("checkLiveness is not implemented")}))}))},retryLocationAccess:function(){return null}});function R(e){var t=e.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),n=decodeURIComponent(window.atob(t).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""));return JSON.parse(n)}function D(e,t){if(t)switch(R(t).iss){case"https://auth.idmission.com/auth/realms/identity":return T.prod;case"https://demoauth.idmission.com/auth/realms/identity":return T.demo}var n=T[e];if(!n)throw new Error("unrecognized SubmissionEnvironment ".concat(e));return n}function A(e){var t={"Content-Type":"application/json",Origin:"*"};return e&&(t.Authorization="Bearer ".concat(e)),t}function N(e,t){var n=t.geolocationResult,a={selfie:t.selfieCaptureAttempts,front:t.idFrontCaptureAttempts,back:t.idBackCaptureAttempts,isRealIDCheckRequired:"false",sdkVersion:"WebSDK_".concat(x),Resolution:"".concat(window.innerWidth," x ").concat(window.innerHeight)},r=E();r&&(a.os=r.os.family,a.osVersion=r.os.version,a.browserVersion="".concat(r.name," ").concat(r.version)),n&&(a.GeoLocation=JSON.stringify(n)),e.additionalData.metadata=JSON.stringify(a)}function _(e){return new Promise((function(t){var n=new FileReader;n.onloadend=function(){t(k(n.result))},fetch(e).then((function(e){return e.blob()})).then((function(e){return n.readAsDataURL(e)}))}))}var F,M=u.default.div(F||(F=y(["\n ","\n\n ","\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"],["\n ","\n\n ","\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"])),(function(e){var t;return!1===e.theme.isFullscreen?"":"\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ".concat(null!==(t=e.$heightOffset)&&void 0!==t?t:0,"px\n );\n overflow-x: hidden;\n overflow-y: auto;\n ")}),(function(e){return e.theme.fontFamily?"font-family: ".concat(e.theme.fontFamily,";"):""})),P=t.forwardRef((function(e,n){var a=e.children,r=e.className,i=e.heightOffset,o=void 0===i?0:i,l=e.style,c=e.onClick,u=t.useState(!1),d=u[0],h=u[1];return t.useEffect((function(){h(!1);var e=function(){var e=document.documentElement;e.style.setProperty("--app-width","".concat(window.innerWidth,"px")),e.style.setProperty("--app-height","".concat(window.innerHeight,"px"))};return window.addEventListener("resize",e),e(),h(!0),function(){window.removeEventListener("resize",e)}}),[]),s.default.createElement(M,{ref:n,style:l,onClick:c,className:r,$heightOffset:o},d&&a)}));P.displayName="PageContainer";var L,B,O,U,j=u.default(P)(L||(L=y(["\n background: ",";\n ","\n z-index: 10000;\n"],["\n background: ",";\n ","\n z-index: 10000;\n"])),(function(e){return e.theme.background?"".concat(e.theme.background):"white"}),(function(e){return e.theme.textColor?"color: ".concat(e.theme.textColor,";"):""})),z=u.default.div(B||(B=y(["\n text-align: ",";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n max-height: var(--app-height);\n height: 100%;\n ","\n"],["\n text-align: ",";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n max-height: var(--app-height);\n height: 100%;\n ","\n"])),(function(e){var t;return null!==(t=e.theme.textAlign)&&void 0!==t?t:"center"}),(function(e){return e.theme.padding?"box-sizing: border-box; padding: ".concat(e.theme.padding,";"):""})),G=u.default.div(O||(O=y(["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"],["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"]))),$=u.default.div(U||(U=y(["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100vh - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"],["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100vh - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"])));"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function q(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function V(e,t){return e(t={exports:{}},t.exports),t.exports}const W={};function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"==typeof t[0]&&W[t[0]]||("string"==typeof t[0]&&(W[t[0]]=new Date),function(){if(console&&console.warn){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"==typeof t[0]&&(t[0]=`react-i18next:: ${t[0]}`),console.warn(...t)}}(...t))}const K=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout((()=>{e.off("initialized",n)}),0),t()};e.on("initialized",n)}};function Y(e,t,n){e.loadNamespaces(t,K(e,n))}function X(e,t,n,a){"string"==typeof n&&(n=[n]),n.forEach((t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)})),e.loadLanguages(t,K(e,a))}const J=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Z={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},Q=e=>Z[e];let ee,te={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(J,Q)};const ne={type:"3rdParty",init(e){!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};te={...te,...e}}(e.options.react),function(e){ee=e}(e)}},ae=t.createContext();class re{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach((e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)}))}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const ie=(e,n)=>{const a=t.useRef();return t.useEffect((()=>{a.current=n?a.current:e}),[e,n]),a.current};function oe(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{i18n:a}=n,{i18n:r,defaultNS:i}=t.useContext(ae)||{},o=a||r||ee;if(o&&!o.reportNamespaces&&(o.reportNamespaces=new re),!o){H("You will need to pass in an i18next instance by using initReactI18next");const e=(e,t)=>"string"==typeof t?t:t&&"object"==typeof t&&"string"==typeof t.defaultValue?t.defaultValue:Array.isArray(e)?e[e.length-1]:e,t=[e,{},!1];return t.t=e,t.i18n={},t.ready=!1,t}o.options.react&&void 0!==o.options.react.wait&&H("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const s={...te,...o.options.react,...n},{useSuspense:l,keyPrefix:c}=s;let u=e||i||o.options&&o.options.defaultNS;u="string"==typeof u?[u]:u||["translation"],o.reportNamespaces.addUsedNamespaces&&o.reportNamespaces.addUsedNamespaces(u);const d=(o.isInitialized||o.initializedStoreOnce)&&u.every((e=>function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.languages&&t.languages.length?void 0!==t.options.ignoreJSONStructure?t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,a)=>{if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!a(t.isLanguageChangingTo,e))return!1}}):function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=t.languages[0],r=!!t.options&&t.options.fallbackLng,i=t.languages[t.languages.length-1];if("cimode"===a.toLowerCase())return!0;const o=(e,n)=>{const a=t.services.backendConnector.state[`${e}|${n}`];return-1===a||2===a};return!(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!o(t.isLanguageChangingTo,e)||!t.hasResourceBundle(a,e)&&t.services.backendConnector.backend&&(!t.options.resources||t.options.partialBundledLanguages)&&(!o(a,e)||r&&!o(i,e)))}(e,t,n):(H("i18n.languages were undefined or empty",t.languages),!0)}(e,o,s)));function h(){return o.getFixedT(n.lng||null,"fallback"===s.nsMode?u:u[0],c)}const[f,p]=t.useState(h);let m=u.join();n.lng&&(m=`${n.lng}${m}`);const g=ie(m),v=t.useRef(!0);t.useEffect((()=>{const{bindI18n:e,bindI18nStore:t}=s;function a(){v.current&&p(h)}return v.current=!0,d||l||(n.lng?X(o,n.lng,u,(()=>{v.current&&p(h)})):Y(o,u,(()=>{v.current&&p(h)}))),d&&g&&g!==m&&v.current&&p(h),e&&o&&o.on(e,a),t&&o&&o.store.on(t,a),()=>{v.current=!1,e&&o&&e.split(" ").forEach((e=>o.off(e,a))),t&&o&&t.split(" ").forEach((e=>o.store.off(e,a)))}}),[o,m]);const y=t.useRef(!0);t.useEffect((()=>{v.current&&!y.current&&p(h),y.current=!1}),[o,c]);const b=[f,o,d];if(b.t=f,b.i18n=o,b.ready=d,d)return b;if(!d&&!l)return b;throw new Promise((e=>{n.lng?X(o,n.lng,u,(()=>e())):Y(o,u,(()=>e()))}))}var se,le,ce,ue=function(e){var n=e.children,a=e.className,r=e.colors,i=void 0===r?{}:r,o=e.disabled,l=e.finished,c=e.onClick,u=e.style,d=e.variant,h=void 0===d?"primary":d,f=t.useRef(null),p=t.useRef(null),m=t.useState(!1),g=m[0],v=m[1];return t.useEffect((function(){var e;return Promise.resolve().then((function(){return mb})).then((function(t){if(f.current){p.current=t.create(f.current),p.current.start(),v(!0);var n=0;e=setInterval((function(){var e;n<.9&&(n+=.1),null===(e=p.current)||void 0===e||e.setProgress(n)}),250)}})),function(){var t;null===(t=p.current)||void 0===t||t.remove(),clearInterval(e)}}),[]),t.useEffect((function(){var e;g&&l&&(null===(e=p.current)||void 0===e||e.stop())}),[l,g]),s.default.createElement(de,{className:"ladda-button ".concat(a),"data-style":"expand-right",disabled:o,ref:f,onClick:c,$backgroundColor:i.backgroundColor,$textColor:i.textColor,$disabledBackgroundColor:i.loadingBackgroundColor,$disabledTextColor:i.loadingTextColor,$variant:h,style:u},s.default.createElement("span",{className:"ladda-label"},n))},de=u.default.button(se||(se=y(["\n ","\n\n /*!\n * Ladda\n * http://lab.hakim.se/ladda\n * MIT licensed\n *\n * Copyright (C) 2018 Hakim El Hattab, http://hakim.se\n */\n @keyframes ladda-spinner-line-fade {\n 0%,\n 100% {\n opacity: 0.22;\n }\n 1% {\n opacity: 1;\n }\n }\n\n position: relative;\n\n .ladda-spinner {\n position: absolute;\n z-index: 2;\n display: inline-block;\n width: 32px;\n top: 50%;\n margin-top: 0;\n opacity: 0;\n pointer-events: none;\n }\n .ladda-label {\n position: relative;\n z-index: 3;\n }\n .ladda-progress {\n position: absolute;\n width: 0;\n height: 100%;\n left: 0;\n top: 0;\n background: rgba(0, 0, 0, 0.2);\n display: none;\n transition: 0.1s linear all !important;\n }\n &[data-loading] .ladda-progress {\n display: block;\n }\n\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n\n .ladda-spinner,\n .ladda-label {\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n }\n &[data-style='zoom-in'],\n &[data-style='zoom-in'] .ladda-spinner,\n &[data-style='zoom-in'] .ladda-label,\n &[data-style='zoom-out'],\n &[data-style='zoom-out'] .ladda-spinner,\n &[data-style='zoom-out'] .ladda-label {\n transition: 0.3s ease all !important;\n }\n &[data-style='expand-right'] .ladda-spinner {\n right: -6px;\n }\n &[data-style='expand-right'][data-size='s'] .ladda-spinner,\n &[data-style='expand-right'][data-size='xs'] .ladda-spinner {\n right: -12px;\n }\n &[data-style='expand-right'][data-loading] {\n padding-right: 56px;\n }\n &[data-style='expand-right'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-right'][data-loading][data-size='s'],\n &[data-style='expand-right'][data-loading][data-size='xs'] {\n padding-right: 40px;\n }\n &[data-style='expand-left'] .ladda-spinner {\n left: 26px;\n }\n &[data-style='expand-left'][data-size='s'] .ladda-spinner,\n &[data-style='expand-left'][data-size='xs'] .ladda-spinner {\n left: 4px;\n }\n &[data-style='expand-left'][data-loading] {\n padding-left: 56px;\n }\n &[data-style='expand-left'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-left'][data-loading][data-size='s'],\n &[data-style='expand-left'][data-loading][data-size='xs'] {\n padding-left: 40px;\n }\n &[data-style='expand-up'] {\n overflow: hidden;\n }\n &[data-style='expand-up'] .ladda-spinner {\n top: -32px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-up'][data-loading] {\n padding-top: 54px;\n }\n &[data-style='expand-up'][data-loading] .ladda-spinner {\n opacity: 1;\n top: 26px;\n margin-top: 0;\n }\n &[data-style='expand-up'][data-loading][data-size='s'],\n &[data-style='expand-up'][data-loading][data-size='xs'] {\n padding-top: 32px;\n }\n &[data-style='expand-up'][data-loading][data-size='s'] .ladda-spinner,\n &[data-style='expand-up'][data-loading][data-size='xs'] .ladda-spinner {\n top: 4px;\n }\n &[data-style='expand-down'] {\n overflow: hidden;\n }\n &[data-style='expand-down'] .ladda-spinner {\n top: 62px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-down'][data-size='s'] .ladda-spinner,\n &[data-style='expand-down'][data-size='xs'] .ladda-spinner {\n top: 40px;\n }\n &[data-style='expand-down'][data-loading] {\n padding-bottom: 54px;\n }\n &[data-style='expand-down'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-down'][data-loading][data-size='s'],\n &[data-style='expand-down'][data-loading][data-size='xs'] {\n padding-bottom: 32px;\n }\n &[data-style='slide-left'] {\n overflow: hidden;\n }\n &[data-style='slide-left'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-left'] .ladda-spinner {\n left: 100%;\n margin-left: 0;\n }\n &[data-style='slide-left'][data-loading] .ladda-label {\n opacity: 0;\n left: -100%;\n }\n &[data-style='slide-left'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-right'] {\n overflow: hidden;\n }\n &[data-style='slide-right'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-right'] .ladda-spinner {\n right: 100%;\n margin-left: 0;\n left: 16px;\n }\n [dir='rtl'] &[data-style='slide-right'] .ladda-spinner {\n right: auto;\n }\n &[data-style='slide-right'][data-loading] .ladda-label {\n opacity: 0;\n left: 100%;\n }\n &[data-style='slide-right'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-up'] {\n overflow: hidden;\n }\n &[data-style='slide-up'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-up'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: 1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-label {\n opacity: 0;\n top: -1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='slide-down'] {\n overflow: hidden;\n }\n &[data-style='slide-down'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-down'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: -2em;\n }\n &[data-style='slide-down'][data-loading] .ladda-label {\n opacity: 0;\n top: 1em;\n }\n &[data-style='slide-down'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='zoom-out'] {\n overflow: hidden;\n }\n &[data-style='zoom-out'] .ladda-spinner {\n left: 50%;\n margin-left: 32px;\n transform: scale(2.5);\n }\n &[data-style='zoom-out'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-out'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(0.5);\n }\n &[data-style='zoom-out'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='zoom-in'] {\n overflow: hidden;\n }\n &[data-style='zoom-in'] .ladda-spinner {\n left: 50%;\n margin-left: -16px;\n transform: scale(0.2);\n }\n &[data-style='zoom-in'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-in'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(2.2);\n }\n &[data-style='zoom-in'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='contract'] {\n overflow: hidden;\n width: 100px;\n }\n &[data-style='contract'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract'][data-loading] {\n border-radius: 50%;\n width: 52px;\n }\n &[data-style='contract'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='contract-overlay'] {\n overflow: hidden;\n width: 100px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0);\n }\n &[data-style='contract-overlay'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract-overlay'][data-loading] {\n border-radius: 50%;\n width: 52px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0.8);\n }\n &[data-style='contract-overlay'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract-overlay'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n [dir='rtl'] .ladda-spinner > div {\n left: 25% !important;\n }\n"],["\n ","\n\n /*!\n * Ladda\n * http://lab.hakim.se/ladda\n * MIT licensed\n *\n * Copyright (C) 2018 Hakim El Hattab, http://hakim.se\n */\n @keyframes ladda-spinner-line-fade {\n 0%,\n 100% {\n opacity: 0.22;\n }\n 1% {\n opacity: 1;\n }\n }\n\n position: relative;\n\n .ladda-spinner {\n position: absolute;\n z-index: 2;\n display: inline-block;\n width: 32px;\n top: 50%;\n margin-top: 0;\n opacity: 0;\n pointer-events: none;\n }\n .ladda-label {\n position: relative;\n z-index: 3;\n }\n .ladda-progress {\n position: absolute;\n width: 0;\n height: 100%;\n left: 0;\n top: 0;\n background: rgba(0, 0, 0, 0.2);\n display: none;\n transition: 0.1s linear all !important;\n }\n &[data-loading] .ladda-progress {\n display: block;\n }\n\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n\n .ladda-spinner,\n .ladda-label {\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n }\n &[data-style='zoom-in'],\n &[data-style='zoom-in'] .ladda-spinner,\n &[data-style='zoom-in'] .ladda-label,\n &[data-style='zoom-out'],\n &[data-style='zoom-out'] .ladda-spinner,\n &[data-style='zoom-out'] .ladda-label {\n transition: 0.3s ease all !important;\n }\n &[data-style='expand-right'] .ladda-spinner {\n right: -6px;\n }\n &[data-style='expand-right'][data-size='s'] .ladda-spinner,\n &[data-style='expand-right'][data-size='xs'] .ladda-spinner {\n right: -12px;\n }\n &[data-style='expand-right'][data-loading] {\n padding-right: 56px;\n }\n &[data-style='expand-right'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-right'][data-loading][data-size='s'],\n &[data-style='expand-right'][data-loading][data-size='xs'] {\n padding-right: 40px;\n }\n &[data-style='expand-left'] .ladda-spinner {\n left: 26px;\n }\n &[data-style='expand-left'][data-size='s'] .ladda-spinner,\n &[data-style='expand-left'][data-size='xs'] .ladda-spinner {\n left: 4px;\n }\n &[data-style='expand-left'][data-loading] {\n padding-left: 56px;\n }\n &[data-style='expand-left'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-left'][data-loading][data-size='s'],\n &[data-style='expand-left'][data-loading][data-size='xs'] {\n padding-left: 40px;\n }\n &[data-style='expand-up'] {\n overflow: hidden;\n }\n &[data-style='expand-up'] .ladda-spinner {\n top: -32px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-up'][data-loading] {\n padding-top: 54px;\n }\n &[data-style='expand-up'][data-loading] .ladda-spinner {\n opacity: 1;\n top: 26px;\n margin-top: 0;\n }\n &[data-style='expand-up'][data-loading][data-size='s'],\n &[data-style='expand-up'][data-loading][data-size='xs'] {\n padding-top: 32px;\n }\n &[data-style='expand-up'][data-loading][data-size='s'] .ladda-spinner,\n &[data-style='expand-up'][data-loading][data-size='xs'] .ladda-spinner {\n top: 4px;\n }\n &[data-style='expand-down'] {\n overflow: hidden;\n }\n &[data-style='expand-down'] .ladda-spinner {\n top: 62px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-down'][data-size='s'] .ladda-spinner,\n &[data-style='expand-down'][data-size='xs'] .ladda-spinner {\n top: 40px;\n }\n &[data-style='expand-down'][data-loading] {\n padding-bottom: 54px;\n }\n &[data-style='expand-down'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-down'][data-loading][data-size='s'],\n &[data-style='expand-down'][data-loading][data-size='xs'] {\n padding-bottom: 32px;\n }\n &[data-style='slide-left'] {\n overflow: hidden;\n }\n &[data-style='slide-left'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-left'] .ladda-spinner {\n left: 100%;\n margin-left: 0;\n }\n &[data-style='slide-left'][data-loading] .ladda-label {\n opacity: 0;\n left: -100%;\n }\n &[data-style='slide-left'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-right'] {\n overflow: hidden;\n }\n &[data-style='slide-right'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-right'] .ladda-spinner {\n right: 100%;\n margin-left: 0;\n left: 16px;\n }\n [dir='rtl'] &[data-style='slide-right'] .ladda-spinner {\n right: auto;\n }\n &[data-style='slide-right'][data-loading] .ladda-label {\n opacity: 0;\n left: 100%;\n }\n &[data-style='slide-right'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-up'] {\n overflow: hidden;\n }\n &[data-style='slide-up'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-up'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: 1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-label {\n opacity: 0;\n top: -1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='slide-down'] {\n overflow: hidden;\n }\n &[data-style='slide-down'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-down'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: -2em;\n }\n &[data-style='slide-down'][data-loading] .ladda-label {\n opacity: 0;\n top: 1em;\n }\n &[data-style='slide-down'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='zoom-out'] {\n overflow: hidden;\n }\n &[data-style='zoom-out'] .ladda-spinner {\n left: 50%;\n margin-left: 32px;\n transform: scale(2.5);\n }\n &[data-style='zoom-out'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-out'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(0.5);\n }\n &[data-style='zoom-out'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='zoom-in'] {\n overflow: hidden;\n }\n &[data-style='zoom-in'] .ladda-spinner {\n left: 50%;\n margin-left: -16px;\n transform: scale(0.2);\n }\n &[data-style='zoom-in'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-in'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(2.2);\n }\n &[data-style='zoom-in'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='contract'] {\n overflow: hidden;\n width: 100px;\n }\n &[data-style='contract'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract'][data-loading] {\n border-radius: 50%;\n width: 52px;\n }\n &[data-style='contract'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='contract-overlay'] {\n overflow: hidden;\n width: 100px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0);\n }\n &[data-style='contract-overlay'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract-overlay'][data-loading] {\n border-radius: 50%;\n width: 52px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0.8);\n }\n &[data-style='contract-overlay'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract-overlay'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n [dir='rtl'] .ladda-spinner > div {\n left: 25% !important;\n }\n"])),(function(e){var t,n,a,r,i,o,s,l,c,u,d,h,f,p,m,g,v,y,b,w,x;return"bootstrap"===(null===(t=e.theme.buttons)||void 0===t?void 0:t.style)&&"\n border-radius: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n \n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n \n &:focus:not(:focus-visible) {\n outline: 0;\n }\n \n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n //transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,\n // border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n \n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n \n &:hover {\n filter: brightness(1.15);\n }\n \n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n \n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n \n --bs-btn-color: ".concat(null!==(o=null!==(n=e.$textColor)&&void 0!==n?n:null===(i=null===(a=e.theme.buttons)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"primary"])||void 0===i?void 0:i.textColor)&&void 0!==o?o:"#fff",";\n --bs-btn-bg: ").concat(null!==(d=null!==(s=e.$backgroundColor)&&void 0!==s?s:null===(u=null===(l=e.theme.buttons)||void 0===l?void 0:l[null!==(c=e.$variant)&&void 0!==c?c:"primary"])||void 0===u?void 0:u.backgroundColor)&&void 0!==d?d:"#0d6efd",";\n --bs-btn-border-color: ").concat(null!==(h=e.$backgroundColor)&&void 0!==h?h:"#0d6efd",";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ").concat(null!==(g=null!==(f=e.$disabledTextColor)&&void 0!==f?f:null===(m=null===(p=e.theme.buttons)||void 0===p?void 0:p.loading)||void 0===m?void 0:m.textColor)&&void 0!==g?g:"#fff",";\n --bs-btn-disabled-bg: ").concat(null!==(w=null!==(v=e.$disabledBackgroundColor)&&void 0!==v?v:null===(b=null===(y=e.theme.buttons)||void 0===y?void 0:y.loading)||void 0===b?void 0:b.backgroundColor)&&void 0!==w?w:"gray",";\n --bs-btn-disabled-border-color: ").concat(null!==(x=e.$disabledBackgroundColor)&&void 0!==x?x:"#0d6efd",";\n \n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n ")})),he=function(e){var n=e.accessBlockedImageUrl,a=oe().t,r=t.useContext(I).retryLocationAccess;return s.default.createElement(j,null,s.default.createElement("div",{style:{display:"flex",height:"100%"}},s.default.createElement(z,{style:{maxWidth:500,height:"auto",margin:"auto"}},s.default.createElement(G,{style:{flexGrow:0}},s.default.createElement("img",{src:n,alt:""})),s.default.createElement("h3",null,a("Your location access is disabled")),s.default.createElement("p",{style:{lineHeight:1.5,marginBottom:50}},a("This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.")),s.default.createElement(ue,{variant:"primary",onClick:r,style:{width:200,marginLeft:"auto",marginRight:"auto"},finished:!0},a("Retry")))))},fe=function(e){function t(t){var n=e.call(this,t.statusMessage)||this;return n.status=t,n}return f(t,e),t}(Error),pe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return f(t,e),t}(Error),me=function(e){function t(t,n){var a=e.call(this,t.message)||this;return a.err=t,a.host=n,a}return f(t,e),t}(Error),ge=function(e){var t=e.error;return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},t instanceof pe?s.default.createElement(ye,{error:t,onRetry:e.onRetry}):s.default.createElement(ve,{error:t})))},ve=function(e){var t=e.error,n=(0,oe().t)("We're sorry, an unexpected error has occurred.");return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",{style:{marginBottom:8}},n),t.status.statusCode&&s.default.createElement("p",{style:{marginBottom:0}},s.default.createElement("code",null,"Status: ",t.status.statusCode)),s.default.createElement("p",{style:{marginBottom:0}},"Message: ",s.default.createElement("code",null,t.message)),t.status.errorData&&s.default.createElement("p",{style:{marginBottom:0}},"Data: ",s.default.createElement("code",null,t.status.errorData)))},ye=function(e){var t=e.onRetry,n=oe().t,a=n("Network unreachable"),r=n("We're having trouble reaching our services, please check your connection and try again."),i=n("Retry");return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",{style:{marginBottom:8}},a),s.default.createElement("p",{style:{marginBottom:0}},r),t&&s.default.createElement("div",{style:{marginTop:32}},s.default.createElement(ue,{variant:"warning",finished:!0,onClick:t},i)))},be=function(){return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is missing."),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},we=function(){return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is invalid."),s.default.createElement("p",null,"JSON Web Tokens consist of three parts separated by dots (",s.default.createElement("code",null,"."),"), which are:"),s.default.createElement("div",{style:{display:"flex"}},s.default.createElement("ul",{style:{display:"inline",margin:"0 auto"}},s.default.createElement("li",null,"Header"),s.default.createElement("li",null,"Payload"),s.default.createElement("li",null,"Signature"))),s.default.createElement("p",null,"Therefore, a JWT typically looks like the following:"," ",s.default.createElement("code",null,"xxxxx.yyyyy.zzzzz")),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},xe=function(){return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," could not be validated."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"The signature of your token could not be validated. Check your token generation routine, it's possible that some malicious behavior is at play. This can also happen if you attempt to manually modify your token before passing it to the IDmission WebSDK."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"If you believe you have reached this page in error, please contact us at ",s.default.createElement("a",{href:"mailto:support@idmission.com"},"support@idmission.com"),".")))},Ee=function(){return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is expired."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"Ensure you are generating a fresh token for each request to the IDmission WebSDK."),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},Ce=function(e){var t=e.error;return s.default.createElement(j,null,s.default.createElement(z,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},(null==t?void 0:t.host)?s.default.createElement(s.default.Fragment,null,"Failed to reach ",s.default.createElement("code",null,t.host),"."):s.default.createElement(s.default.Fragment,null,"Failed to obtain public key for ",s.default.createElement("code",null,"submissionToken"),".")),(null==t?void 0:t.message)&&s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},s.default.createElement("code",null,t.message)),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"Please ensure that IDmission's servers can be reached. If you believe you have reached this page in error, please contact us at"," ",s.default.createElement("a",{href:"mailto:support@idmission.com"},"support@idmission.com"),".")))},ke=function(e){var n=e.action,a=e.children,r=e.url,i=e.environment,o=void 0===i?"prod":i,l=e.token,c=e.companyId,u=e.enrollmentId,d=e.personalData,h=e.cardData,f=e.bypassAgeValidation,y=void 0!==f&&f,x=e.bypassNameMatching,E=void 0===x||x,k=e.needImmediateResponse,S=void 0!==k&&k,T=e.manualReviewRequired,F=void 0!==T&&T,M=e.idBackImageRequired,P=void 0===M||M,L=e.idImageResolutionCheck,B=void 0===L||L,O=e.verifyIdWithExternalDatabases,U=void 0!==O&&O,j=e.deduplicationEnabled,z=void 0!==j&&j,G=e.deduplicationSynchronous,$=void 0!==G&&G,q=e.geolocationEnabled,V=void 0===q||q,W=e.geolocationRequired,H=void 0!==W&&W,K=e.webhooksEnabled,Y=void 0!==K&&K,X=e.webhooksClientTraceId,J=e.webhooksStripSpecialCharacters,Z=void 0===J||J,Q=e.webhooksSendInputImages,ee=void 0!==Q&&Q,te=e.webhooksSendProcessedImages,ne=void 0!==te&&te,ae=e.webhooksFireOnReview,re=void 0!==ae&&ae,ie=e.onSubmit,oe=e.onBeforeSubmit,se=e.onBeforeLivenessCheck,le=e.onResponseReceived,ce=e.onRequestFailure,ue=t.useState(w.READY),de=ue[0],ve=ue[1],ye=t.useState(null),ke=ye[0],Te=ye[1],Ie=t.useState(null),Re=Ie[0],De=Ie[1],Ae=t.useState(null),Ne=Ae[0],_e=Ae[1],Fe=t.useState(null),Me=Fe[0],Pe=Fe[1],Le=t.useState(null),Be=Le[0],Oe=Le[1],Ue=t.useState(null),je=Ue[0],ze=Ue[1],Ge=t.useState(null),$e=Ge[0],qe=Ge[1],Ve=t.useState(null),We=Ve[0],He=Ve[1],Ke=t.useState(null),Ye=Ke[0],Xe=Ke[1],Je=t.useState(null),Ze=Je[0],Qe=Je[1],et=t.useState(null),tt=et[0],nt=et[1],at=t.useState(null),rt=at[0],it=at[1],ot=t.useState(null),st=ot[0],lt=ot[1],ct=t.useState(null),ut=ct[0],dt=ct[1],ht=t.useState(0),ft=ht[0],pt=ht[1],mt=t.useState(!1),gt=mt[0],vt=mt[1],yt=t.useState([]),bt=yt[0],wt=yt[1],xt=t.useState([]),Et=xt[0],Ct=xt[1],kt=t.useState([]),St=kt[0],Tt=kt[1],It=t.useCallback((function(e){wt((function(t){return v(v([],t,!0),[e],!1)}))}),[]),Rt=t.useCallback((function(e){Ct((function(t){return v(v([],t,!0),[e],!1)}))}),[]),Dt=t.useCallback((function(e){Tt((function(t){return v(v([],t,!0),[e],!1)}))}),[]),At=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,a,r,i;return g(this,(function(o){switch(o.label){case 0:return e={securityData:{userName:"",password:"",merchantId:0},customerData:{idData:{idType:"NSP",idCountry:"NSP",idState:""}},additionalData:{uniqueRequestId:(new Date).getTime().toString(),manualReviewRequired:F?"Y":"N",bypassAgeValidation:y?"Y":"N",bypassNameMatching:E?"Y":"N",postDataAPIRequired:Y?"Y":"N",postDataOnReviewRequired:re?"Y":"N",sendInputImagesInPost:ee?"Y":"N",sendProcessedImagesInPost:ne?"Y":"N",needImmediateResponse:S?"Y":"N",deDuplicationRequired:z?"Y":"N",deduplicationSynchronous:$?"Y":"N",verifyDataWithHost:U?"Y":"N",idBackImageRequired:P?"Y":"N",stripSpecialCharacters:Z?"Y":"N",idImageResolutionCheck:B?"Y":"N"}},je&&(e.customerData.idData.idImageFront=je),$e&&(e.customerData.idData.idImageBack=$e),We&&(e.customerData.idData.idImageFront=We),Ye&&(n===b.IDENTIFY?e.biometricData={selfie:Ye}:e.customerData.biometricData={selfie:Ye}),c&&(e.employee={companyId:c}),d&&(e.customerData.personalData=d),h&&(e.customerData.cardData=h),u&&((i=e.customerData).personalData||(i.personalData={}),e.customerData.personalData.uniqueNumber=u),X&&(e.additionalData.clientTraceId=X),Ze&&(e.customerData.signatureData={signatureImage:JSON.stringify(Ze)}),st&&(e.customerData.additionalDocuments=st.map((function(t){return p(p({},t),{additionalDocument:JSON.stringify(p(p({},t.additionalDocument),{uniqueId:e.additionalData.uniqueRequestId}))})}))),rt||tt?(e.biometricData||(e.biometricData={}),t=e.biometricData,[4,_(null!==(r=null!=rt?rt:tt)&&void 0!==r?r:"")]):[3,2];case 1:t.videoData=o.sent(),o.label=2;case 2:return N(e,{selfieCaptureAttempts:St,idFrontCaptureAttempts:bt,idBackCaptureAttempts:Et,geolocationResult:ut}),oe?[4,oe(e)]:[3,4];case 3:(a=o.sent())&&(e=a),o.label=4;case 4:return[2,e]}}))}))}),[n,st,y,E,h,c,z,$,u,ut,Et,$e,P,rt,bt,je,B,F,S,oe,We,d,St,Ye,Ze,tt,U,X,Y,re,ee,ne,Z]),Nt=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,a,i,s,c,u,d,h,f;return g(this,(function(p){switch(p.label){case 0:if(n===b.NONE)return e={status:{statusCode:"000"},resultData:{}},ve(w.SUBMITTED),De(e),[2,e];ve(w.SUBMITTING),p.label=1;case 1:return p.trys.push([1,7,,8]),[4,At()];case 2:return t=p.sent(),a=r||D(o,l),i=function(e,t,n,a){var r=a?"v4":"v3";switch(e){case b.ENROLL:return"/".concat(r,t?"/customer/enroll":"/customer/enroll-biometrics");case b.IDENTIFY:return"/".concat(r,"/customer/identify");case b.VALIDATE:return"/".concat(r,n?"/customer/validate-id-match-face":"/customer/validate-id");case b.VERIFY:return"/".concat(r,"/customer/verify");default:throw new Error("unrecognized SubmissionAction ".concat(e))}}(n,!!(je||$e||We),!!Ye,!!l),[4,fetch(a+i,{method:"POST",headers:A(l),body:JSON.stringify(t)}).catch((function(e){throw new pe(e.message)}))];case 3:return(s=p.sent())&&s.ok?[3,5]:[4,null==s?void 0:s.text()];case 4:if(!(c=p.sent())||"Load failed"===c)throw new pe(c);throw new fe({statusCode:null!==(f=null==s?void 0:s.statusText)&&void 0!==f?f:"???",statusMessage:c});case 5:return[4,s.json()];case 6:if("000"!==(u=p.sent()).status.statusCode)throw new fe(u.status);return Te(t),De(u),ve(w.SUBMITTED),null==le||le(u,t),[2,u];case 7:throw d=p.sent(),h=d,ve(w.FAILED),_e(d instanceof fe||d instanceof pe?d:"Load failed"===h.message?new pe:new fe({statusCode:"",statusMessage:h.message})),Pe((function(){return["VERIFY","IDENTIFY"].includes(n)?function(){return null}:Nt})),null==ce||ce(h),h;case 8:return[2]}}))}))}),[n,At,o,$e,je,ce,le,We,Ye,l,r]),_t=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return ie?(e=ie,[4,At()]):[3,2];case 1:return[2,e.apply(void 0,[t.sent()])];case 2:return[4,Nt()];case 3:return[2,t.sent()]}}))}))}),[At,Nt,ie]),Ft=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t,n,a,i,s,c,u,d,h,f,p,m;return g(this,(function(g){switch(g.label){case 0:return g.trys.push([0,8,,9]),f={securityData:{userName:"",password:"",merchantId:0}},p={},m={},[4,C(e)];case 1:return f.customerData=(p.biometricData=(m.selfie=g.sent(),m),p),f.additionalData={uniqueRequestId:(new Date).getTime().toString(),stripSpecialCharacters:Z?"Y":"N",estimateAge:"N",predictGender:"N"},N(t=f,{selfieCaptureAttempts:St,idFrontCaptureAttempts:bt,idBackCaptureAttempts:Et,geolocationResult:ut}),Oe(t),se?[4,se(t)]:[3,3];case 2:(n=g.sent())&&(t=n),g.label=3;case 3:return a=r||D(o,l),i="/".concat(!!l?"v4":"v3","/customer/live-check"),[4,fetch(a+i,{method:"POST",headers:A(l),body:JSON.stringify(t)}).catch((function(e){throw new pe(e.message)}))];case 4:return(s=g.sent()).ok?[3,6]:[4,s.text()];case 5:if(!(c=g.sent())||"Load failed"===c)throw new pe(c);throw new fe({statusCode:s.statusText,statusMessage:c});case 6:return[4,s.json()];case 7:if("000"!==(u=g.sent()).status.statusCode)throw new fe(u.status);return De(u),[2,u];case 8:throw d=g.sent(),h=d,ve(w.FAILED),_e(d instanceof fe||d instanceof pe?d:"Load failed"===h.message?new pe:new fe({statusCode:"",statusMessage:h.message})),Pe((function(){return function(){return null}})),null==ce||ce(h),h;case 9:return[2]}}))}))}),[o,ut,Et,bt,se,ce,St,l,r,Z]),Mt=t.useCallback((function(){pt((function(e){return e+1}))}),[]);t.useEffect((function(){V&&(console.log("making geolocation attempt",ft),navigator.geolocation.getCurrentPosition((function(e){dt(e),vt(!1)}),(function(e){if(1!==e.code)throw new Error(e.message);vt(!0)})))}),[ft,V,H]);var Pt=t.useCallback((function(){Me&&(_e(null),ve(w.READY),Me())}),[Me]),Lt=t.useState("NOT_PARSED"),Bt=Lt[0],Ot=Lt[1],Ut=t.useState(null),jt=Ut[0],zt=Ut[1];t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t,n,a,r,i,o,s,c;return g(this,(function(u){switch(u.label){case 0:if(Ot("PARSING"),!l)return[2,Ot("MISSING")];try{e=R(l)}catch(e){return console.error("error parsing token",e),[2,Ot("INVALID_FORMAT")]}t=e.iss,u.label=1;case 1:return u.trys.push([1,4,,5]),[4,fetch(t).then((function(e){return e.json()}))];case 2:return a=u.sent(),[4,(d="-----BEGIN PUBLIC KEY-----\n".concat(a.public_key,"\n-----END PUBLIC KEY-----"),h=d.substring("-----BEGIN PUBLIC KEY-----".length,d.length-"-----END PUBLIC KEY-----".length-1),f=window.atob(h),p=Se(f),window.crypto.subtle.importKey("spki",p,{name:"RSASSA-PKCS1-v1_5",hash:"SHA-256"},!0,["verify"]))];case 3:return n=u.sent(),[3,5];case 4:return r=u.sent(),console.error("error fetching public key",r),zt(new me(r,t)),[2,Ot("PUBLIC_KEY_LOAD_FAILED")];case 5:i=!1,u.label=6;case 6:return u.trys.push([6,8,,9]),o=l.split("."),[4,window.crypto.subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,Se(o[1]),Se(o[2]))];case 7:return u.sent(),i=!0,[3,9];case 8:return s=u.sent(),console.error("error validating token",s),[3,9];case 9:return i?(c=e.exp,Date.now()>=1e3*c?[2,Ot("EXPIRED")]:(Ot("GOOD"),[2])):[2,Ot("INVALID_SIGNATURE")]}var d,h,f,p}))}))}),[l]);var Gt={submit:_t,submissionStatus:de,submissionRequest:ke,submissionResponse:Re,submissionError:Ne,submissionEnvironment:o,idFrontImage:je,idBackImage:$e,passportImage:We,selfieImage:Ye,signatureData:Ze,signatureVideoUrl:tt,idCaptureVideoUrl:rt,additionalDocuments:st,setIdFrontImage:ze,setIdBackImage:qe,setPassportImage:He,setSelfieImage:Xe,setSignatureData:Qe,setSignatureVideoUrl:nt,setIdCaptureVideoUrl:it,setAdditionalDocuments:lt,logIdFrontCaptureAttempt:It,logIdBackCaptureAttempt:Rt,logSelfieCaptureAttempt:Dt,livenessCheckRequest:Be,checkLiveness:Ft,retryLocationAccess:Mt};return"MISSING"===Bt?s.default.createElement(be,null):"INVALID_FORMAT"===Bt?s.default.createElement(we,null):"INVALID_SIGNATURE"===Bt?s.default.createElement(xe,null):"EXPIRED"===Bt?s.default.createElement(Ee,null):"PUBLIC_KEY_LOAD_FAILED"===Bt?s.default.createElement(Ce,{error:jt}):s.default.createElement(I.Provider,{value:Gt},H&&gt?s.default.createElement(he,null):a,Ne&&s.default.createElement(ge,{error:Ne,onRetry:Pt}))};function Se(e){for(var t=new ArrayBuffer(e.length),n=new Uint8Array(t),a=0,r=e.length;a<r;a++)n[a]=e.charCodeAt(a);return t}function Te(e){return m(this,void 0,void 0,(function(){var t,n,a,r,i,o;return g(this,(function(s){switch(s.label){case 0:return ce?[2,ce]:[4,d.loadGraphModel(e)];case 1:return ce=s.sent(),[4,d.ready()];case 2:return s.sent(),t=d.zeros([448,448,3]),n=d.cast(t,"int32"),a=d.tensor4d(Array.from(n.dataSync()),[1,448,448,3]),r=d.cast(a,"int32"),o=(i=d).dispose,[4,ce.executeAsync(r)];case 3:return o.apply(i,[s.sent()]),n.dispose(),r.dispose(),a.dispose(),d.dispose(t),[2,ce]}}))}))}!function(e){e.NONE="NONE",e.ID_CARD="ID_CARD",e.ID_CARD_FRONT="ID_CARD_FRONT",e.ID_CARD_BACK="ID_CARD_BACK",e.PASSPORT="PASSPORT"}(le||(le={}));var Ie={1:"Document",2:"MRZ",3:"PDF417",4:"Primary face",5:"Secondary face",6:"Glare",7:"Punch Hole",8:"Passport Page"};function Re(e,t,n){return e[t]?e[t][0]?e[t][0][n]:e[t][n]:"contentBoxSize"===t?e.contentRect["inlineSize"===n?"width":"height"]:void 0}function De(e){void 0===e&&(e={});var n=e.onResize,a=t.useRef(void 0);a.current=n;var r=e.round||Math.round,i=t.useRef(),o=t.useState({width:void 0,height:void 0}),s=o[0],l=o[1],c=t.useRef(!1);t.useEffect((function(){return c.current=!1,function(){c.current=!0}}),[]);var u=t.useRef({width:void 0,height:void 0}),d=function(e,n){var a=t.useRef(null),r=t.useRef(null);r.current=n;var i=t.useRef(null);t.useEffect((function(){o()}));var o=t.useCallback((function(){var t=r.current,n=i.current||(t?t instanceof Element?t:t.current:null);a.current&&a.current.element===n&&a.current.subscriber===e||(a.current&&a.current.cleanup&&a.current.cleanup(),a.current={element:n,subscriber:e,cleanup:n?e(n):void 0})}),[e]);return t.useEffect((function(){return function(){a.current&&a.current.cleanup&&(a.current.cleanup(),a.current=null)}}),[]),t.useCallback((function(e){i.current=e,o()}),[o])}(t.useCallback((function(t){return i.current&&i.current.box===e.box&&i.current.round===r||(i.current={box:e.box,round:r,instance:new ResizeObserver((function(t){var n=t[0],i="border-box"===e.box?"borderBoxSize":"device-pixel-content-box"===e.box?"devicePixelContentBoxSize":"contentBoxSize",o=Re(n,i,"inlineSize"),s=Re(n,i,"blockSize"),d=o?r(o):void 0,h=s?r(s):void 0;if(u.current.width!==d||u.current.height!==h){var f={width:d,height:h};u.current.width=d,u.current.height=h,a.current?a.current(f):c.current||l(f)}}))}),i.current.instance.observe(t,{box:e.box}),function(){i.current&&i.current.instance.unobserve(t)}}),[e.box,r]),e.ref);return t.useMemo((function(){return{ref:d,width:s.width,height:s.height}}),[d,s.width,s.height])}var Ae=t.createContext({orientation:"landscape",wrapperWidth:1,wrapperHeight:1,wrapperAspectRatio:0,imageAspectRatio:0,wrapperRef:null,setDimensions:function(){return null},onImageLoaded:function(){return null}});let Ne;function _e(e){if(void 0!==Ne)return Ne;if(e||"undefined"!=typeof navigator&&null!=navigator){if(e||(e=navigator),"ReactNative"===e.product)return!0;const t=e.userAgent||e.vendor||("undefined"!=typeof window?window.opera:"");if(!t){return e.userAgentData&&e.userAgentData.mobile}return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}return!1}var Fe,Me,Pe,Le,Be,Oe,Ue,je,ze=u.default.div(Fe||(Fe=y(["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"],["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"]))),Ge=u.default.div(Me||(Me=y(["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n"],["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n"]))),$e=u.default.div(Pe||(Pe=y(["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background: ",";\n color: ",";\n text-align: center;\n ","\n ","\n"],["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background: ",";\n color: ",";\n text-align: center;\n ","\n ","\n"])),(function(e){var t,n,a,r;return null!==(r=null===(a=null===(n=null===(t=e.theme)||void 0===t?void 0:t.idCapture)||void 0===n?void 0:n.guideOverlay)||void 0===a?void 0:a.backgroundColor)&&void 0!==r?r:"rgba(0, 0, 0, 0.5)"}),(function(e){var t,n,a,r;return null!==(r=null===(a=null===(n=null===(t=e.theme)||void 0===t?void 0:t.idCapture)||void 0===n?void 0:n.guideOverlay)||void 0===a?void 0:a.textColor)&&void 0!==r?r:"white"}),(function(e){return e.$minWidth?"min-width: ".concat(e.$minWidth,"px;"):""}),(function(e){return e.$minHeight?"min-width: ".concat(e.$minHeight,"px;"):""})),qe=u.default.div(Le||(Le=y(["\n ","\n box-sizing: border-box;\n"],["\n ","\n box-sizing: border-box;\n"])),(function(e){return e.$isMirrored?"transform: scaleX(-1);":""})),Ve=u.default.div(Be||(Be=y(["\n position: relative;\n border: ",";\n"],["\n position: relative;\n border: ",";\n"])),(function(e){var t,n;return"".concat(null!==(t=e.$borderWidth)&&void 0!==t?t:4,"px solid ").concat(null!==(n=e.$borderColor)&&void 0!==n?n:"white")})),We=u.default.span(Oe||(Oe=y(["\n align-content: center;\n margin-top: 12px;\n margin-bottom: 12px;\n"],["\n align-content: center;\n margin-top: 12px;\n margin-bottom: 12px;\n"]))),He=u.default.img(Ue||(Ue=y(["\n display: block;\n ","\n ","\n"],["\n display: block;\n ","\n ","\n"])),(function(e){return e.$width?"width: ".concat(e.$width,"px; max-width: ").concat(e.$width,"px;"):"max-width: none;"}),(function(e){return e.$height?"height: ".concat(e.$height,"px; max-height: ").concat(e.$height,"px;"):"max-width: none;"})),Ke=function(e){var n,r,i,o=e.classNames,l=void 0===o?{}:o,c=e.width,u=void 0===c?0:c,d=e.height,h=void 0===d?0:d,f=e.padding,p=void 0===f?_e()?0:50:f,m=e.borderWidth,g=e.borderColor,v=e.isMirrored,y=void 0!==v&&v,b=e.instruction,w=void 0===b?"":b,x=e.portraitGuidesImageUrl,E=e.landscapeGuidesImageUrl,C=e.onClick,k=t.useContext(Ae),S=k.orientation,T=k.wrapperRef,I=k.wrapperWidth,R=k.wrapperHeight,D=k.imageAspectRatio,A=k.wrapperAspectRatio,N=k.onImageLoaded,_=k.setDimensions,F=a.useTheme();void 0===m&&(m=null!==(i=null===(r=null===(n=F.idCapture)||void 0===n?void 0:n.guideBox)||void 0===r?void 0:r.borderWidth)&&void 0!==i?i:4),0==u&&(u=I),0==h&&(h=R),t.useEffect((function(){_({width:u,height:h})}),[h,_,u]);var M=2*p+2*m,P="portrait"===S?x:E,L=void 0,B=void 0;return D>=A?L=I-M:B=R-M,s.default.createElement(Ye,{ref:T,onClick:C,className:l.container},s.default.createElement(ze,{className:l.inner},s.default.createElement($e,{$minHeight:p,className:Xe(l,"Top")},""!==w&&s.default.createElement(We,{className:l.guideText},w)),s.default.createElement(Ge,{className:l.centerRow},s.default.createElement($e,{$minWidth:p,className:Xe(l,"Left")}),s.default.createElement(qe,{$isMirrored:y,className:l.centerRegion},s.default.createElement(Ve,{$borderWidth:m,$borderColor:g,className:l.centerRegionInner},s.default.createElement(He,{src:P,alt:"",onLoad:N,className:l.image,$width:L,$height:B}))),s.default.createElement($e,{$minWidth:p,className:Xe(l,"Right")})),s.default.createElement($e,{$minHeight:p,className:Xe(l,"Bottom")},""!==w&&s.default.createElement(We,{style:{opacity:0}},w))))},Ye=u.default(P)(je||(je=y(["\n z-index: 1000;\n"],["\n z-index: 1000;\n"]))),Xe=function(e,t){return[e.dimmingRegion,e["dimmingRegion".concat(t)]].filter((function(e){return e})).join(" ")};function Je(e){return m(this,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return"BarcodeDetector"in window?(t=new BarcodeDetector({formats:["pdf417"]}),console.log("this is a real native result!"),[4,t.detect(e)]):[2,[]];case 1:return[2,n.sent()]}}))}))}function Ze(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a,r,i,o,s,l,c,u;return g(this,(function(d){switch(d.label){case 0:return[4,new Promise((function(o){if(r=e.naturalWidth,i=e.naturalHeight,n=document.createElement("canvas"),!(a=n.getContext("2d")))return[];if(t){console.log("rotating!!"),n.width=i,n.height=r,a.setTransform(0,1,-1,0,n.width,0),a.drawImage(e,0,0,r,i);var s=new Image;s.width=n.width,s.height=n.height,s.onload=function(){o(s)},n.toBlob((function(e){e&&(s.src=URL.createObjectURL(e))}))}else a.drawImage(e,0,0,n.width,n.height),o(e)}))];case 1:return o=d.sent(),s=new ZXing.BitmapLuminanceSource(a,o),l=new ZXing.Common.HybridBinarizer(s),c=new ZXing.BinaryBitmap(l),u=ZXing.PDF417.PDF417Reader.decode(c,null,!1),a.clearRect(0,0,n.width,n.height),n.remove(),[2,u]}}))}))}function Qe(){return"BarcodeDetector"in window}function et(e,t){var n=this;return new Promise((function(a){var r=new Image;r.onload=function(){return m(n,void 0,void 0,(function(){var e,n,i,o;return g(this,(function(s){switch(s.label){case 0:return Qe()?[4,Je(r)]:[3,2];case 1:return n=s.sent(),console.log("native result",n,"".concat(r.width,"x").concat(r.height)),a(n.length>0?p(p({},n[0]),{Source:"native"}):null),[3,4];case 2:return e=(null!==(i=null==t?void 0:t[2])&&void 0!==i?i:0)<(null!==(o=null==t?void 0:t[3])&&void 0!==o?o:0),[4,Ze(r,e)];case 3:n=s.sent(),console.log("zxing result",n),a(n.length>0?p(p({},n[0]),{Source:"zxing"}):null),s.label=4;case 4:return[2]}}))}))},r.src=URL.createObjectURL(e)}))}function tt(){if(!(["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document))return!1;var e=window.screen.width<window.screen.height?window.screen.width:window.screen.height,t=window.screen.width*window.devicePixelRatio,n=window.screen.height*window.devicePixelRatio;return 1179==t&&2556==n||1290==t&&2796==n&&(393==e||430==e)}var nt,at=["front","avant","anteriore","cameraaanvoorzijde","kamerapåframsidan","forsidekamera","kamerapåforsiden","aparatprzedni","etukamera","kameradepan","ÖnKamera","cameramặttrước","camerăfață","prednákamera","prednjakamera","előlapikamera","přednífotoaparát","μπροστινήκάμερα","переднякамера","передняякамера","преднакамера","алдыңғыкамера","מצלמה קדמית","الكاميرا الأمامية","फ़्रंटकैमरा","前置相机","前置鏡頭","前面カメラ","전면카메라","กล้องด้านหน้า"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),rt=["back","rear","posterior","trasera","traseira","arrière","rückkamera","fotocamera(posteriore)","cameraaanachterzijde","kamerapåbaksidan","kamerapåbaksiden","bagsidekamera","aparattylny","takakamera","arkakamera","kamerabelakang","cameramặtsau","camerăspate","stražnjakamera","zadnákamera","hátoldalikamera","zadnífotoaparát","πίσωκάμερα","заднякамера","Задняякамера","заднакамера","артқыкамера","מצלמה אחורית","الكاميرا الخلفية","बैककैमरा","后置相机","後置鏡頭","背面カメラ","후면카메라","กล้องด้านหลัง"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),it=["backultrawidecamera","ultraampliaposterior","ultra-angulartraseira","ultragrandeangulartraseira","ultragrandangle","ultragranangular","ultra-weitwinkelkamera","ultra-grandangolo","ultrabredecameraaanachterzijde","ultravidvinkelkamerapåbaksidan","ultravidvinkelkameraetpåbagsiden","ultravidvinkelkamerabak","ultragenişkameraarkayüzü","ultralaajakulmainentakakamera","tylnyaparatultraszerokokątny","cameracựcrộngmặtsau","camerăcuobiectivultra‑superangularspate","ultraszéleslátószögűkamera","kameraultralebarbelakang","stražnjaultraširokakamera","zadníultraširokoúhlýfotoaparát","ultraširokouhlá","πίσωυπερευρείακάμερα","заднянадширококутнакамера","Задняясверхширокоугольнаякамера","Задна свръх широкоъгълна камера","артқыультракеңбұрыштыкамера","מצלמה אולטרה רחבה אחורית","كاميرا خلفية عريضة جدًا","बैकअल्ट्रावाइडकैमरा","后置超广角相机","後置超廣角鏡頭相機","背面超広角カメラ","후면울트라와이드카메라","กล้องด้านหลังอัลตร้าไวด์"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),ot=function(e,t){var n=e instanceof MediaDeviceInfo?st(e):e;return("string"==typeof t?[t]:t).some((function(e){return n.includes(e)}))},st=function(e){return e.label.toLocaleLowerCase().split(" ").join("")};function lt(){nt&&(console.log("releasing camera access..."),nt.release(),nt=void 0)}var ct,ut=function(e){var n=void 0===e?{preferFrontFacingCamera:!1,preferContinuityCamera:!0,requestMicrophoneAccess:!1}:e,a=n.preferFrontFacingCamera,r=void 0!==a&&a,i=n.preferContinuityCamera,o=void 0===i||i,s=n.requestMicrophoneAccess,l=void 0!==s&&s,c=t.useRef(null),u=t.useRef(null),d=t.useState(!1),h=d[0],f=d[1],p=t.useState(null),y=p[0],b=p[1],w=t.useState(!1),x=w[0],C=w[1],k=t.useState(!1),S=k[0],T=k[1],I=t.useState(o),R=I[0],D=I[1],A=t.useState(!1),N=A[0],_=A[1],F=t.useState(!1),M=F[0],P=F[1];t.useEffect((function(){console.log("iphone continuity camera allowed changed",R),lt(),u.current=null,C(!1)}),[R]);var L=t.useCallback((function(){P(!1)}),[]);t.useEffect((function(){M||(f(!1),function(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a;return g(this,(function(r){switch(r.label){case 0:return[4,navigator.mediaDevices.getUserMedia({video:{facingMode:{exact:e}},audio:t})];case 1:return n=r.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:return a=r.sent().filter((function(e){return"videoinput"===e.kind})),n.getVideoTracks().forEach((function(e){e.enabled=!1,e.stop()})),n=null,[2,a]}}))}))}().then((function(e){var t,n=E();if(N||n&&"OS X"!==n.os.family)"Android"===(null==n?void 0:n.os.family)&&e.reverse();else{var a=e.find((function(e){return ot(e,"iphone")}));T(!!a),a&&R&&(t=a)}r&&(t=e.find((function(e){return ot(e,at)}))),tt()?t||(t=e.find((function(e){return ot(e,it)}))):t||(t=e.find((function(e){return ot(e,rt)&&!ot(e,it)}))),t||(t=e.find((function(e){return ot(e,rt)}))),!r&&"iOS"===(null==n?void 0:n.os.family)&&e.length>0&&(t||(t=e[1])),t||(t=e[0]),b(t)})).catch((function(e){if("NotAllowedError"!==e.name)throw console.error("camera access encountered some other error",e),e;console.error("camera access has been blocked by the user",e),P(!0)})))}),[M,R,N,r]),t.useEffect((function(){var e;if(y){var t=function(){lt(),u.current=null,C(!1)};return(null===(e=navigator.mediaDevices)||void 0===e?void 0:e.getUserMedia)?(m(void 0,void 0,void 0,(function(){var e,t,n;return g(this,(function(a){switch(a.label){case 0:e=null,a.label=1;case 1:return a.trys.push([1,3,,4]),[4,navigator.mediaDevices.getUserMedia({audio:l,video:{deviceId:{exact:y.deviceId},width:{ideal:1920},aspectRatio:1.777777778}})];case 2:return e=a.sent(),[3,4];case 3:return"NotAllowedError"===a.sent().name?(R?(T(!1),_(!0)):P(!0),[2]):[3,4];case 4:if(e)return[3,8];a.label=5;case 5:return a.trys.push([5,7,,8]),[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 6:return e=a.sent(),console.log("opened stream with no width and height constraints"),[3,8];case 7:return a.sent(),console.log("cannot open stream at all"),[3,8];case 8:if(!e)throw new Error("failed to open camera");return t=function(){S&&R?(console.log("someone unplugged the continuity camera"),lt(),u.current=null,T(!1),_(!0),b(null)):(console.log("someone unplugged the webcam"),lt(),u.current=null,C(!1),P(!0))},null===(n=c.current)||void 0===n||n.addEventListener("ended",t),e.getVideoTracks().forEach((function(e){e.onended=t})),u.current=function(e,t,n){lt(),console.log("obtaining camera access...");var a=e.getVideoTracks()[0].getSettings(),r=a.width,i=a.height,o=t.toLocaleLowerCase().split(" ").join(""),s=ot(o,v(v(v([],rt,!0),it,!0),["iphone"],!1));return r||(r=0),i||(i=0),nt={label:t,stream:e,width:r,height:i,isRearFacing:s,release:function(){e.getTracks().forEach((function(e){e.enabled=!1,e.stop()})),n&&(n.pause(),n.srcObject=null,n.src="")}},n&&(n.srcObject=e),nt}(e,y.label,c.current),[2]}}))})),t):t}}),[R,S,l,y]),t.useEffect((function(){f(!1),y&&x&&f(!0)}),[x,y]);var B=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,n,a,r;return g(this,(function(i){switch(i.label){case 0:return e=document.createElement("canvas"),(t=e.getContext("2d"))&&u.current&&c.current?(e.width=null===(a=c.current)||void 0===a?void 0:a.videoWidth,e.height=null===(r=c.current)||void 0===r?void 0:r.videoHeight,t.drawImage(c.current,0,0,e.width,e.height),n=e.toDataURL("image/jpeg",.98),[4,fetch(n)]):[2,null];case 1:return[4,i.sent().blob()];case 2:return[2,i.sent()]}}))}))}),[]);return{videoRef:c,videoDevice:y,videoLoaded:x,setVideoLoaded:C,cameraRef:u,cameraReady:h,cameraAccessDenied:M,retryCameraAccess:L,releaseCameraAccess:lt,iphoneContinuityCameraAvailable:S,iphoneContinuityCameraAllowed:R,setIphoneContinuityCameraAllowed:D,takePhoto:B}},dt=t.createContext({videoRef:{current:null},videoLoaded:!1,cameraRef:{current:null},cameraReady:!1,cameraAccessDenied:!1,retryCameraAccess:function(){return null},releaseCameraAccess:function(){return null},iphoneContinuityCameraAvailable:!1,iphoneContinuityCameraAllowed:!0,setIphoneContinuityCameraAllowed:function(){return null},takePhoto:function(){return Promise.resolve(null)},setVideoLoaded:function(){return null}}),ht=function(e){var n=e.children,a=e.preferFrontFacingCamera,r=e.preferContinuityCamera,i=e.requestMicrophoneAccess,o=ut({preferFrontFacingCamera:void 0!==a&&a,preferContinuityCamera:void 0===r||r,requestMicrophoneAccess:void 0!==i&&i}),l=o.videoRef,c=o.videoLoaded,u=o.setVideoLoaded,d=o.cameraRef,h=o.cameraReady,f=o.cameraAccessDenied,p=o.retryCameraAccess,m=o.releaseCameraAccess,g=o.iphoneContinuityCameraAvailable,v=o.iphoneContinuityCameraAllowed,y=o.setIphoneContinuityCameraAllowed,b=o.takePhoto;return t.useEffect((function(){return function(){m()}}),[m]),s.default.createElement(dt.Provider,{value:{videoRef:l,videoLoaded:c,setVideoLoaded:u,cameraRef:d,cameraReady:h,cameraAccessDenied:f,releaseCameraAccess:m,retryCameraAccess:p,iphoneContinuityCameraAvailable:g,iphoneContinuityCameraAllowed:v,setIphoneContinuityCameraAllowed:y,takePhoto:b}},n)};function ft(e){return m(this,void 0,void 0,(function(){var t,n,a,r,i,o,s,l,c;return g(this,(function(u){switch(u.label){case 0:return ct?[2,ct]:[4,d.loadLayersModel(e)];case 1:return ct=u.sent(),[4,d.ready()];case 2:return u.sent(),t=d.zeros([448,448,3]),n=d.cast(t,"int32"),i=(r=d).tensor4d,s=(o=Array).from,[4,n.data()];case 3:return a=i.apply(r,[s.apply(o,[u.sent()]),[1,448,448,3]]),l=d.cast(a,"int32"),[4,ct.predict(l)];case 4:return[4,(c=u.sent()).data()];case 5:return u.sent(),d.dispose(c),n.dispose(),l.dispose(),a.dispose(),d.dispose(t),[2,ct]}}))}))}class pt{refCount(e){return mt("refCount")}incRef(e){return mt("incRef")}timerAvailable(){return!0}time(e){return mt("time")}read(e){return mt("read")}readSync(e){return mt("readSync")}readToGPU(e,t){return mt("readToGPU")}numDataIds(){return mt("numDataIds")}disposeData(e,t){return mt("disposeData")}write(e,t,n){return mt("write")}move(e,t,n,a,r){return mt("move")}createTensorFromGPUData(e,t,n){return mt("createTensorFromGPUData")}memory(){return mt("memory")}floatPrecision(){return mt("floatPrecision")}epsilon(){return 32===this.floatPrecision()?1e-7:1e-4}dispose(){return mt("dispose")}}function mt(e){throw new Error(`'${e}' not yet implemented or not found in the registry. This kernel may not be supported by the tfjs backend you have chosen`)}function gt(e,t){if(!e)throw new Error("string"==typeof t?t:t())}function vt(e){if(0===e.length)return 1;let t=e[0];for(let n=1;n<e.length;n++)t*=e[n];return t}function yt(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function bt(e,t){return t<=e.length?e:e+" ".repeat(t-e.length)}function wt(e){if("float32"===e||"int32"===e)return 4;if("complex64"===e)return 8;if("bool"===e)return 1;throw new Error(`Unknown dtype ${e}`)}function xt(e){return"string"==typeof e||e instanceof String}function Et(e){return Array.isArray(e)?Et(e[0]):e instanceof Float32Array?"float32":e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray?"int32":"number"==typeof e?"float32":xt(e)?"string":function(e){return"boolean"==typeof e}(e)?"bool":"float32"}function Ct(e){return!!(e&&e.constructor&&e.call&&e.apply)}function kt(e){const t=e.length;if(t<2)return[];const n=new Array(t-1);n[t-2]=e[t-1];for(let a=t-3;a>=0;--a)n[a]=n[a+1]*e[a+1];return n}function St(e,t,n,a=!1){const r=new Array;if(1===t.length){const i=t[0]*(a?2:1);for(let t=0;t<i;t++)r[t]=n[e+t]}else{const i=t[0],o=t.slice(1),s=o.reduce(((e,t)=>e*t))*(a?2:1);for(let t=0;t<i;t++)r[t]=St(e+t*s,o,n,a)}return r}function Tt(e,t,n=!1){if(0===e.length)return t[0];const a=e.reduce(((e,t)=>e*t))*(n?2:1);if(0===a)return[];if(a!==t.length)throw new Error(`[${e}] does not match the input size ${t.length}${n?" for a complex tensor":""}.`);return St(0,e,t,n)}function It(e,t){if(null==t||"float32"===t||"complex64"===t)return new Float32Array(e);if("int32"===t)return new Int32Array(e);if("bool"===t)return new Uint8Array(e);throw new Error(`Unknown data type ${t}`)}function Rt(e){e.forEach((t=>{gt(Number.isInteger(t)&&t>=0,(()=>`Tensor must have a shape comprised of positive integers but got shape [${e}].`))}))}function Dt(e){return e&&e.then&&"function"==typeof e.then}const At="tfjsflags";class Nt{constructor(e){this.global=e,this.flags={},this.flagRegistry={},this.urlFlags={},this.getQueryParams=_t,this.populateURLFlags()}setPlatform(e,t){null!=this.platform&&(Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(`Platform ${this.platformName} has already been set. Overwriting the platform with ${e}.`)),this.platformName=e,this.platform=t}registerFlag(e,t,n){if(this.flagRegistry[e]={evaluationFn:t,setHook:n},null!=this.urlFlags[e]){const t=this.urlFlags[e];Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(`Setting feature override from URL ${e}: ${t}.`),this.set(e,t)}}async getAsync(e){return e in this.flags||(this.flags[e]=await this.evaluateFlag(e)),this.flags[e]}get(e){if(e in this.flags)return this.flags[e];const t=this.evaluateFlag(e);if(Dt(t))throw new Error(`Flag ${e} cannot be synchronously evaluated. Please use getAsync() instead.`);return this.flags[e]=t,this.flags[e]}getNumber(e){return this.get(e)}getBool(e){return this.get(e)}getString(e){return this.get(e)}getFlags(){return this.flags}get features(){return this.flags}set(e,t){if(null==this.flagRegistry[e])throw new Error(`Cannot set flag ${e} as it has not been registered.`);this.flags[e]=t,null!=this.flagRegistry[e].setHook&&this.flagRegistry[e].setHook(t)}evaluateFlag(e){if(null==this.flagRegistry[e])throw new Error(`Cannot evaluate flag '${e}': no evaluation function found.`);return this.flagRegistry[e].evaluationFn()}setFlags(e){this.flags=Object.assign({},e)}reset(){this.flags={},this.urlFlags={},this.populateURLFlags()}populateURLFlags(){if(void 0===this.global||void 0===this.global.location||void 0===this.global.location.search)return;const e=this.getQueryParams(this.global.location.search);if(At in e){e[At].split(",").forEach((e=>{const[t,n]=e.split(":");this.urlFlags[t]=function(e,t){const n=t.toLowerCase();return"true"===n||"false"===n?"true"===n:""+ +n===n?+n:t}(0,n)}))}}}function _t(e){const t={};return e.replace(/[?&]([^=?&]+)(?:=([^&]*))?/g,((e,...n)=>(function(e,t,n){e[decodeURIComponent(t)]=decodeURIComponent(n||"")}(t,n[0],n[1]),n.join("=")))),t}function Ft(){return Pt}let Mt,Pt=null;function Lt(){if(null==Mt){let e;if("undefined"!=typeof window)e=window;else if("undefined"!=typeof global)e=global;else if("undefined"!=typeof process)e=process;else{if("undefined"==typeof self)throw new Error("Could not find a global object");e=self}Mt=e}return Mt}function Bt(e,t){const n=function(){const e=Lt();return null==e._tfGlobals&&(e._tfGlobals=new Map),e._tfGlobals}();if(n.has(e))return n.get(e);{const a=t();return n.set(e,a),n.get(e)}}const Ot="Add",Ut="Cast",jt="Identity";function zt(...e){Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(...e)}const Gt=Bt("kernelRegistry",(()=>new Map)),$t=Bt("gradRegistry",(()=>new Map));function qt(e,t){const n=function(e,t){return`${t}_${e}`}(e,t);return Gt.get(n)}function Vt(e){return $t.get(e)}function Wt(e){const t=Gt.entries(),n=[];for(;;){const{done:a,value:r}=t.next();if(a)break;const[i,o]=r,[s]=i.split("_");s===e&&n.push(o)}return n}function Ht(e){return e instanceof Float32Array||e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray}function Kt(e,t){if("string"===t)throw new Error("Cannot convert a string[] to a TypedArray");if(Array.isArray(e)&&(e=Zt(e)),Ft().getBool("DEBUG")&&function(e,t){for(let n=0;n<e.length;n++){const a=e[n];if(isNaN(a)||!isFinite(a))throw Error(`A tensor of type ${t} being uploaded contains ${a}.`)}}(e,t),function(e,t){return e instanceof Float32Array&&"float32"===t||e instanceof Int32Array&&"int32"===t||e instanceof Uint8Array&&"bool"===t}(e,t))return e;if(null==t||"float32"===t||"complex64"===t)return new Float32Array(e);if("int32"===t)return new Int32Array(e);if("bool"===t){const t=new Uint8Array(e.length);for(let n=0;n<t.length;++n)0!==Math.round(e[n])&&(t[n]=1);return t}throw new Error(`Unknown data type ${t}`)}function Yt(){return Ft().platform.now()}function Xt(e,t="utf-8"){return t=t||"utf-8",Ft().platform.decode(e,t)}function Jt(e){return null!=Ft().platform.isTypedArray?Ft().platform.isTypedArray(e):Ht(e)}function Zt(e,t=[],n=!1){if(null==t&&(t=[]),"boolean"==typeof e||"number"==typeof e||"string"==typeof e||Dt(e)||null==e||Jt(e)&&n)t.push(e);else if(Array.isArray(e)||Jt(e))for(let a=0;a<e.length;++a)Zt(e[a],t,n);else{let a=-1;for(const t of Object.keys(e))/^([1-9]+[0-9]*|0)$/.test(t)&&(a=Math.max(a,Number(t)));for(let r=0;r<=a;r++)Zt(e[r],t,n)}return t}class Qt{constructor(e,t){this.backendTimer=e,this.logger=t,null==t&&(this.logger=new tn)}profileKernel(e,t,n){let a;const r=()=>{a=n()};let i;const o=Yt();if(this.backendTimer.timerAvailable())i=this.backendTimer.time(r);else{r();for(const e of a)e.dataSync();i=Promise.resolve({kernelMs:Yt()-o})}if(Ft().getBool("CHECK_COMPUTATION_FOR_ERRORS"))for(let t=0;t<a.length;t++){const n=a[t];n.data().then((t=>{en(t,n.dtype,e)}))}return{kernelName:e,outputs:a,inputs:t,timeMs:i.then((e=>e.kernelMs)),extraInfo:i.then((e=>null!=e.getExtraProfileInfo?e.getExtraProfileInfo():""))}}logKernelProfile(e){const{kernelName:t,outputs:n,timeMs:a,inputs:r,extraInfo:i}=e;n.forEach((e=>{Promise.all([e.data(),a,i]).then((n=>{this.logger.logKernelProfile(t,e,n[0],n[1],r,n[2])}))}))}}function en(e,t,n){if("float32"!==t)return!1;for(let t=0;t<e.length;t++){const a=e[t];if(isNaN(a)||!isFinite(a))return console.warn(`Found ${a} in the result of '${n}'`),!0}return!1}class tn{logKernelProfile(e,t,n,a,r,i){const o="number"==typeof a?bt(`${a}ms`,9):a.error,s=bt(e,25),l=t.rank,c=t.size,u=bt(t.shape.toString(),14);let d="";for(const e in r){const n=r[e];if(null!=n){const a=n.shape||t.shape,r=a.length;d+=`${e}: ${r}D ${r>0?a:""} `}}console.log(`%c${s}\t%c${o}\t%c${l}D ${u}\t%c${c}\t%c${d}\t%c${i}`,"font-weight:bold","color:red","color:blue","color: orange","color: green","color: steelblue")}}const nn=20,an=3,rn=7;function on(e,t,n,a){const r=kt(t),i=function(e,t,n,a){const r=vt(t),i=a[a.length-1],o=new Array(i).fill(0),s=t.length,l="complex64"===n?un(e):e;if(s>1)for(let e=0;e<r/i;e++){const t=e*i;for(let e=0;e<i;e++)o[e]=Math.max(o[e],sn(l[t+e],0,n).length)}return o}(e,t,n,r),o=t.length,s=cn(e,t,n,r,i),l=["Tensor"];return a&&(l.push(` dtype: ${n}`),l.push(` rank: ${o}`),l.push(` shape: [${t}]`),l.push(" values:")),l.push(s.map((e=>" "+e)).join("\n")),l.join("\n")}function sn(e,t,n){let a;return a=Array.isArray(e)?`${parseFloat(e[0].toFixed(rn))} + ${parseFloat(e[1].toFixed(rn))}j`:xt(e)?`'${e}'`:"bool"===n?ln(e):parseFloat(e.toFixed(rn)).toString(),bt(a,t)}function ln(e){return 0===e?"false":"true"}function cn(e,t,n,a,r,i=!0){const o="complex64"===n?2:1,s=t[0],l=t.length;if(0===l){if("complex64"===n){return[sn(un(e)[0],0,n)]}return"bool"===n?[ln(e[0])]:[e[0].toString()]}if(1===l){if(s>nn){let t=Array.from(e.slice(0,an*o)),a=Array.from(e.slice((s-an)*o,s*o));return"complex64"===n&&(t=un(t),a=un(a)),["["+t.map(((e,t)=>sn(e,r[t],n))).join(", ")+", ..., "+a.map(((e,t)=>sn(e,r[s-an+t],n))).join(", ")+"]"]}return["["+("complex64"===n?un(e):Array.from(e)).map(((e,t)=>sn(e,r[t],n))).join(", ")+"]"]}const c=t.slice(1),u=a.slice(1),d=a[0]*o,h=[];if(s>nn){for(let t=0;t<an;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,!1))}h.push("...");for(let t=s-an;t<s;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,t===s-1))}}else for(let t=0;t<s;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,t===s-1))}const f=2===l?",":"";h[0]="["+(s>0?h[0]+f:"");for(let e=1;e<h.length-1;e++)h[e]=" "+h[e]+f;let p=",\n";for(let e=2;e<l;e++)p+="\n";return h[h.length-1]=" "+h[h.length-1]+"]"+(i?"":p),h}function un(e){const t=[];for(let n=0;n<e.length;n+=2)t.push([e[n],e[n+1]]);return t}class dn{constructor(e,t,n){if(this.dtype=t,this.shape=e.slice(),this.size=vt(e),null!=n){const e=n.length;gt(e===this.size,(()=>`Length of values '${e}' does not match the size inferred by the shape '${this.size}'.`))}if("complex64"===t)throw new Error("complex64 dtype TensorBuffers are not supported. Please create a TensorBuffer for the real and imaginary parts separately and call tf.complex(real, imag).");this.values=n||function(e,t){let n=null;if(null==e||"float32"===e)n=new Float32Array(t);else if("int32"===e)n=new Int32Array(t);else if("bool"===e)n=new Uint8Array(t);else{if("string"!==e)throw new Error(`Unknown data type ${e}`);n=new Array(t)}return n}(t,this.size),this.strides=kt(e)}set(e,...t){0===t.length&&(t=[0]),gt(t.length===this.rank,(()=>`The number of provided coordinates (${t.length}) must match the rank (${this.rank})`));const n=this.locToIndex(t);this.values[n]=e}get(...e){0===e.length&&(e=[0]);let t=0;for(const n of e){if(n<0||n>=this.shape[t]){throw new Error(`Requested out of range element at ${e}. Buffer shape=${this.shape}`)}t++}let n=e[e.length-1];for(let t=0;t<e.length-1;++t)n+=this.strides[t]*e[t];return this.values[n]}locToIndex(e){if(0===this.rank)return 0;if(1===this.rank)return e[0];let t=e[e.length-1];for(let n=0;n<e.length-1;++n)t+=this.strides[n]*e[n];return t}indexToLoc(e){if(0===this.rank)return[];if(1===this.rank)return[e];const t=new Array(this.shape.length);for(let n=0;n<t.length-1;++n)t[n]=Math.floor(e/this.strides[n]),e-=t[n]*this.strides[n];return t[t.length-1]=e,t}get rank(){return this.shape.length}toTensor(){return hn().makeTensor(this.values,this.shape,this.dtype)}}let hn=null,fn=null;class pn{constructor(e,t,n,a){this.kept=!1,this.isDisposedInternal=!1,this.shape=e.slice(),this.dtype=t||"float32",this.size=vt(e),this.strides=kt(e),this.dataId=n,this.id=a,this.rankType=this.rank<5?this.rank.toString():"higher"}get rank(){return this.shape.length}async buffer(){const e=await this.data();return fn.buffer(this.shape,this.dtype,e)}bufferSync(){return fn.buffer(this.shape,this.dtype,this.dataSync())}async array(){const e=await this.data();return Tt(this.shape,e,"complex64"===this.dtype)}arraySync(){return Tt(this.shape,this.dataSync(),"complex64"===this.dtype)}async data(){this.throwIfDisposed();const e=hn().read(this.dataId);if("string"===this.dtype){const t=await e;try{return t.map((e=>Xt(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}}return e}dataToGPU(e){return this.throwIfDisposed(),hn().readToGPU(this.dataId,e)}dataSync(){this.throwIfDisposed();const e=hn().readSync(this.dataId);if("string"===this.dtype)try{return e.map((e=>Xt(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}return e}async bytes(){this.throwIfDisposed();const e=await hn().read(this.dataId);return"string"===this.dtype?e:new Uint8Array(e.buffer)}dispose(){this.isDisposed||(hn().disposeTensor(this),this.isDisposedInternal=!0)}get isDisposed(){return this.isDisposedInternal}throwIfDisposed(){if(this.isDisposed)throw new Error("Tensor is disposed.")}print(e=!1){return fn.print(this,e)}clone(){return this.throwIfDisposed(),fn.clone(this)}toString(e=!1){return on(this.dataSync(),this.shape,this.dtype,e)}cast(e){return this.throwIfDisposed(),fn.cast(this,e)}variable(e=!0,t,n){return this.throwIfDisposed(),hn().makeVariable(this,e,t,n)}}Object.defineProperty(pn,Symbol.hasInstance,{value:e=>!!e&&null!=e.data&&null!=e.dataSync&&null!=e.throwIfDisposed}),Bt("Tensor",(()=>pn));class mn extends pn{constructor(e,t,n,a){super(e.shape,e.dtype,e.dataId,a),this.trainable=t,this.name=n}assign(e){if(e.dtype!==this.dtype)throw new Error(`dtype of the new value (${e.dtype}) and previous value (${this.dtype}) must match`);if(!yt(e.shape,this.shape))throw new Error(`shape of the new value (${e.shape}) and previous value (${this.shape}) must match`);hn().disposeTensor(this),this.dataId=e.dataId,hn().incRef(this,null)}dispose(){hn().disposeVariable(this),this.isDisposedInternal=!0}}var gn,vn,yn,bn,wn;Object.defineProperty(mn,Symbol.hasInstance,{value:e=>e instanceof pn&&null!=e.assign&&e.assign instanceof Function}),function(e){e.R0="R0",e.R1="R1",e.R2="R2",e.R3="R3",e.R4="R4",e.R5="R5",e.R6="R6"}(gn||(gn={})),function(e){e.float32="float32",e.int32="int32",e.bool="int32",e.complex64="complex64"}(vn||(vn={})),function(e){e.float32="float32",e.int32="int32",e.bool="bool",e.complex64="complex64"}(yn||(yn={})),function(e){e.float32="float32",e.int32="float32",e.bool="float32",e.complex64="complex64"}(bn||(bn={})),function(e){e.float32="complex64",e.int32="complex64",e.bool="complex64",e.complex64="complex64"}(wn||(wn={}));const xn={float32:bn,int32:vn,bool:yn,complex64:wn};function En(e){return null!=e&&"object"==typeof e&&"texture"in e&&e.texture instanceof WebGLTexture}function Cn(e){return"undefined"!=typeof GPUBuffer&&null!=e&&"object"==typeof e&&"buffer"in e&&e.buffer instanceof GPUBuffer}function kn(e,t){if(e.dtype===t.dtype)return[e,t];const n=function(e,t){if("string"===e||"string"===t){if("string"===e&&"string"===t)return"string";throw new Error(`Can not upcast ${e} with ${t}`)}return xn[e][t]}(e.dtype,t.dtype);return[e.cast(n),t.cast(n)]}function Sn(e){const t=[];return Tn(e,t,new Set),t}function Tn(e,t,n){if(null==e)return;if(e instanceof pn)return void t.push(e);if(a=e,!Array.isArray(a)&&"object"!=typeof a)return;var a;const r=e;for(const e in r){const a=r[e];n.has(a)||(n.add(a),Tn(a,t,n))}}function In(e){return null!=e.kernelName}class Rn{constructor(){this.registeredVariables={},this.nextTapeNodeId=0,this.numBytes=0,this.numTensors=0,this.numStringTensors=0,this.numDataBuffers=0,this.gradientDepth=0,this.kernelDepth=0,this.scopeStack=[],this.numDataMovesStack=[],this.nextScopeId=0,this.tensorInfo=new WeakMap,this.profiling=!1,this.activeProfile={newBytes:0,newTensors:0,peakBytes:0,kernels:[],result:null,get kernelNames(){return Array.from(new Set(this.kernels.map((e=>e.name))))}}}dispose(){for(const e in this.registeredVariables)this.registeredVariables[e].dispose()}}class Dn{constructor(e){this.ENV=e,this.registry={},this.registryFactory={},this.pendingBackendInitId=0,this.state=new Rn}async ready(){if(null!=this.pendingBackendInit)return this.pendingBackendInit.then((()=>{}));if(null!=this.backendInstance)return;const e=this.getSortedBackends();for(let t=0;t<e.length;t++){const n=e[t];if(await this.initializeBackend(n).success)return void await this.setBackend(n)}throw new Error("Could not initialize any backends, all backend initializations failed.")}get backend(){if(null!=this.pendingBackendInit)throw new Error(`Backend '${this.backendName}' has not yet been initialized. Make sure to await tf.ready() or await tf.setBackend() before calling other methods`);if(null==this.backendInstance){const{name:e,asyncInit:t}=this.initializeBackendsAndReturnBest();if(t)throw new Error(`The highest priority backend '${e}' has not yet been initialized. Make sure to await tf.ready() or await tf.setBackend() before calling other methods`);this.setBackend(e)}return this.backendInstance}backendNames(){return Object.keys(this.registryFactory)}findBackend(e){if(!(e in this.registry)){if(!(e in this.registryFactory))return null;{const{asyncInit:t}=this.initializeBackend(e);if(t)return null}}return this.registry[e]}findBackendFactory(e){return e in this.registryFactory?this.registryFactory[e].factory:null}registerBackend(e,t,n=1){return e in this.registryFactory?(zt(`${e} backend was already registered. Reusing existing backend factory.`),!1):(this.registryFactory[e]={factory:t,priority:n},!0)}async setBackend(e){if(null==this.registryFactory[e])throw new Error(`Backend name '${e}' not found in registry`);if(this.backendName=e,null==this.registry[e]){this.backendInstance=null;const{success:t,asyncInit:n}=this.initializeBackend(e);if(!(n?await t:t))return!1}return this.backendInstance=this.registry[e],this.setupRegisteredKernels(),this.profiler=new Qt(this.backendInstance),!0}setupRegisteredKernels(){Wt(this.backendName).forEach((e=>{null!=e.setupFunc&&e.setupFunc(this.backendInstance)}))}disposeRegisteredKernels(e){Wt(e).forEach((t=>{null!=t.disposeFunc&&t.disposeFunc(this.registry[e])}))}initializeBackend(e){const t=this.registryFactory[e];if(null==t)throw new Error(`Cannot initialize backend ${e}, no registration found.`);try{const n=t.factory();if(!n||n instanceof pt||"function"!=typeof n.then)return this.registry[e]=n,{success:!0,asyncInit:!1};{const t=++this.pendingBackendInitId,a=n.then((n=>!(t<this.pendingBackendInitId)&&(this.registry[e]=n,this.pendingBackendInit=null,!0))).catch((n=>(t<this.pendingBackendInitId||(this.pendingBackendInit=null,zt(`Initialization of backend ${e} failed`),zt(n.stack||n.message)),!1)));return this.pendingBackendInit=a,{success:a,asyncInit:!0}}}catch(t){return zt(`Initialization of backend ${e} failed`),zt(t.stack||t.message),{success:!1,asyncInit:!1}}}removeBackend(e){if(!(e in this.registryFactory))throw new Error(`${e} backend not found in registry`);this.backendName===e&&null!=this.pendingBackendInit&&this.pendingBackendInitId++,e in this.registry&&(this.disposeRegisteredKernels(e),this.registry[e].dispose(),delete this.registry[e]),delete this.registryFactory[e],this.backendName===e&&(this.pendingBackendInit=null,this.backendName=null,this.backendInstance=null)}getSortedBackends(){if(0===Object.keys(this.registryFactory).length)throw new Error("No backend found in registry.");return Object.keys(this.registryFactory).sort(((e,t)=>this.registryFactory[t].priority-this.registryFactory[e].priority))}initializeBackendsAndReturnBest(){const e=this.getSortedBackends();for(let t=0;t<e.length;t++){const n=e[t],{success:a,asyncInit:r}=this.initializeBackend(n);if(r||a)return{name:n,asyncInit:r}}throw new Error("Could not initialize any backends, all backend initializations failed.")}moveData(e,t){const n=this.state.tensorInfo.get(t),a=n.backend,r=this.readSync(t),i=a.refCount(t);a.disposeData(t,!0),n.backend=e,e.move(t,r,n.shape,n.dtype,i),this.shouldCheckForMemLeaks()&&this.state.numDataMovesStack[this.state.numDataMovesStack.length-1]++}tidy(e,t){let n,a=null;if(null==t){if("function"!=typeof e)throw new Error("Please provide a function to tidy()");t=e}else{if("string"!=typeof e&&!(e instanceof String))throw new Error("When calling with two arguments, the first argument to tidy() must be a string");if("function"!=typeof t)throw new Error("When calling with two arguments, the 2nd argument to tidy() must be a function");a=e}return this.scopedRun((()=>this.startScope(a)),(()=>this.endScope(n)),(()=>(n=t(),n instanceof Promise&&console.error("Cannot return a Promise inside of tidy."),n)))}scopedRun(e,t,n){e();try{const e=n();return t(),e}catch(e){throw t(),e}}nextTensorId(){return Dn.nextTensorId++}nextVariableId(){return Dn.nextVariableId++}clone(e){const t=Nn.runKernel(jt,{x:e});return this.addTapeNode(this.state.activeScope.name,{x:e},[t],(e=>({x:()=>Nn.runKernel(Ut,{x:e},{dtype:"float32"})})),[],{}),t}runKernel(e,t,n){if(!(null!=qt(e,this.backendName)))throw new Error(`Kernel '${e}' not registered for backend '${this.backendName}'`);return this.runKernelFunc({kernelName:e,inputs:t,attrs:n})}shouldCheckForMemLeaks(){return this.ENV.getBool("IS_TEST")}checkKernelForMemLeak(e,t,n){const a=this.backend.numDataIds();let r=0;n.forEach((e=>{r+="complex64"===e.dtype?3:1}));const i=a-t-r-this.state.numDataMovesStack[this.state.numDataMovesStack.length-1];if(i>0)throw new Error(`Backend '${this.backendName}' has an internal memory leak (${i} data ids) after running '${e}'`)}runKernelFunc(e){let t,n=[];const a=this.isTapeOn(),r=this.state.numBytes,i=this.state.numTensors;let o,s;this.shouldCheckForMemLeaks()&&this.state.numDataMovesStack.push(0);const l=In(e)?e.kernelName:null!=this.state.activeScope?this.state.activeScope.name:"";if(In(e)){const{kernelName:t,inputs:r,attrs:i}=e,l=qt(t,this.backendName);gt(null!=l,(()=>`Cannot find registered kernel '${t}' for backend '${this.backendName}'`)),o=()=>{const e=this.backend.numDataIds();s=l.kernelFunc({inputs:r,attrs:i,backend:this.backend});const o=Array.isArray(s)?s:[s];this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(t,e,o);const c=o.map((e=>null!=e.rank?e:this.makeTensorFromTensorInfo(e)));if(a){const e=this.getTensorsForGradient(t,r,c);n=this.saveTensorsForBackwardMode(e)}return c}}else{const{forwardFunc:t}=e,r=e=>{a&&(n=e.map((e=>this.keep(this.clone(e)))))};o=()=>{const e=this.backend.numDataIds();s=this.tidy((()=>t(this.backend,r)));const n=Array.isArray(s)?s:[s];return this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(l,e,n),n}}const{inputs:c,attrs:u}=e,d=In(e)?null:e.backwardsFunc;let h;return this.scopedRun((()=>this.state.kernelDepth++),(()=>this.state.kernelDepth--),(()=>{this.ENV.getBool("DEBUG")||this.state.profiling?(h=this.profiler.profileKernel(l,c,(()=>o())),this.ENV.getBool("DEBUG")&&this.profiler.logKernelProfile(h),t=h.outputs):t=o()})),a&&this.addTapeNode(l,c,t,d,n,u),this.state.profiling&&this.state.activeProfile.kernels.push({name:l,bytesAdded:this.state.numBytes-r,totalBytesSnapshot:this.state.numBytes,tensorsAdded:this.state.numTensors-i,totalTensorsSnapshot:this.state.numTensors,inputShapes:Object.keys(c).map((e=>null!=c[e]?c[e].shape:null)),outputShapes:t.map((e=>e.shape)),kernelTimeMs:h.timeMs,extraInfo:h.extraInfo}),Array.isArray(s)?t:t[0]}saveTensorsForBackwardMode(e){return e.map((e=>this.keep(this.clone(e))))}getTensorsForGradient(e,t,n){const a=Vt(e);if(null!=a){const e=a.inputsToSave||[],r=a.outputsToSave||[];let i;a.saveAllInputs?(gt(Array.isArray(t),(()=>"saveAllInputs is true, expected inputs to be an array.")),i=Object.keys(t).map((e=>t[e]))):i=e.map((e=>t[e]));const o=n.filter(((e,t)=>r[t]));return i.concat(o)}return[]}makeTensor(e,t,n,a){if(null==e)throw new Error("Values passed to engine.makeTensor() are null");a=a||this.backend;let r=e;"string"===(n=n||"float32")&&xt(e[0])&&(r=e.map((e=>function(e,t="utf-8"){return t=t||"utf-8",Ft().platform.encode(e,t)}(e))));const i=a.write(r,t,n),o=new pn(t,n,i,this.nextTensorId());if(this.trackTensor(o,a),"string"===n){const e=this.state.tensorInfo.get(i),t=function(e){if(null==e)return 0;let t=0;return e.forEach((e=>t+=e.length)),t}(r);this.state.numBytes+=t-e.bytes,e.bytes=t}return o}makeTensorFromDataId(e,t,n,a){return this.makeTensorFromTensorInfo({dataId:e,shape:t,dtype:n=n||"float32"},a)}makeTensorFromTensorInfo(e,t){const{dataId:n,shape:a,dtype:r}=e,i=new pn(a,r,n,this.nextTensorId());return this.trackTensor(i,t),i}makeVariable(e,t=!0,n,a){n=n||this.nextVariableId().toString(),null!=a&&a!==e.dtype&&(e=e.cast(a));const r=new mn(e,t,n,this.nextTensorId());if(null!=this.state.registeredVariables[r.name])throw new Error(`Variable with name ${r.name} was already registered`);return this.state.registeredVariables[r.name]=r,this.incRef(r,this.backend),r}trackTensor(e,t){this.state.numTensors++,"string"===e.dtype&&this.state.numStringTensors++;let n=0;"complex64"!==e.dtype&&"string"!==e.dtype&&(n=e.size*wt(e.dtype)),this.state.numBytes+=n,this.state.tensorInfo.has(e.dataId)||(this.state.numDataBuffers++,this.state.tensorInfo.set(e.dataId,{backend:t||this.backend,dtype:e.dtype,shape:e.shape,bytes:n})),e instanceof mn||this.track(e)}incRef(e,t){this.trackTensor(e,t),this.backend.incRef(e.dataId)}removeDataId(e,t){this.state.tensorInfo.has(e)&&this.state.tensorInfo.get(e).backend===t&&(this.state.tensorInfo.delete(e),this.state.numDataBuffers--)}disposeTensor(e){if(!this.state.tensorInfo.has(e.dataId))return;const t=this.state.tensorInfo.get(e.dataId);if(this.state.numTensors--,"string"===e.dtype&&(this.state.numStringTensors--,this.state.numBytes-=t.bytes),"complex64"!==e.dtype&&"string"!==e.dtype){const t=e.size*wt(e.dtype);this.state.numBytes-=t}t.backend.disposeData(e.dataId)&&this.removeDataId(e.dataId,t.backend)}disposeVariables(){for(const e in this.state.registeredVariables){this.disposeVariable(this.state.registeredVariables[e])}}disposeVariable(e){this.disposeTensor(e),null!=this.state.registeredVariables[e.name]&&delete this.state.registeredVariables[e.name]}memory(){const e=this.backend.memory();return e.numTensors=this.state.numTensors,e.numDataBuffers=this.state.numDataBuffers,e.numBytes=this.state.numBytes,this.state.numStringTensors>0&&(e.unreliable=!0,null==e.reasons&&(e.reasons=[]),e.reasons.push("Memory usage by string tensors is approximate (2 bytes per character)")),e}async profile(e){this.state.profiling=!0;const t=this.state.numBytes,n=this.state.numTensors;this.state.activeProfile.kernels=[],this.state.activeProfile.result=await e(),this.state.profiling=!1,this.state.activeProfile.peakBytes=Math.max(...this.state.activeProfile.kernels.map((e=>e.totalBytesSnapshot))),this.state.activeProfile.newBytes=this.state.numBytes-t,this.state.activeProfile.newTensors=this.state.numTensors-n;for(const e of this.state.activeProfile.kernels)e.kernelTimeMs=await e.kernelTimeMs,e.extraInfo=await e.extraInfo;return this.state.activeProfile}isTapeOn(){return this.state.gradientDepth>0&&0===this.state.kernelDepth}addTapeNode(e,t,n,a,r,i){const o={id:this.state.nextTapeNodeId++,kernelName:e,inputs:t,outputs:n,saved:r},s=Vt(e);null!=s&&(a=s.gradFunc),null!=a&&(o.gradient=e=>(e=e.map(((e,t)=>{if(null==e){const e=n[t],a=It(e.size,e.dtype);return this.makeTensor(a,e.shape,e.dtype)}return e})),a(e.length>1?e:e[0],r,i))),this.state.activeTape.push(o)}keep(e){return e.kept=!0,e}startTape(){0===this.state.gradientDepth&&(this.state.activeTape=[]),this.state.gradientDepth++}endTape(){this.state.gradientDepth--}startScope(e){const t={track:[],name:"unnamed scope",id:this.state.nextScopeId++};e&&(t.name=e),this.state.scopeStack.push(t),this.state.activeScope=t}endScope(e){const t=Sn(e),n=new Set(t.map((e=>e.id)));for(let e=0;e<this.state.activeScope.track.length;e++){const t=this.state.activeScope.track[e];t.kept||n.has(t.id)||t.dispose()}const a=this.state.scopeStack.pop();this.state.activeScope=0===this.state.scopeStack.length?null:this.state.scopeStack[this.state.scopeStack.length-1],t.forEach((e=>{e.kept||e.scopeId!==a.id||this.track(e)}))}gradients(e,t,n,a=!1){if(gt(t.length>0,(()=>"gradients() received an empty list of xs.")),null!=n&&"float32"!==n.dtype)throw new Error(`dy must have 'float32' dtype, but has '${n.dtype}'`);const r=this.scopedRun((()=>this.startTape()),(()=>this.endTape()),(()=>this.tidy("forward",e)));gt(r instanceof pn,(()=>"The result y returned by f() must be a tensor."));const i=function(e,t,n){const a={},r={};for(let e=0;e<t.length;e++)a[t[e].id]=!0;for(let n=0;n<e.length;n++){const i=e[n],o=i.inputs;for(const e in o){const n=o[e];let s=!1;for(let e=0;e<t.length;e++)if(a[n.id]){i.outputs.forEach((e=>a[e.id]=!0)),s=!0,r[i.id]=!0;break}if(s)break}}const i={};i[n.id]=!0;const o={};for(let t=e.length-1;t>=0;t--){const n=e[t],a=n.inputs;for(let e=0;e<n.outputs.length;e++)if(i[n.outputs[e].id]){for(const e in a)i[a[e].id]=!0,o[n.id]=!0;break}}const s=[];for(let t=0;t<e.length;t++){const n=e[t];if(r[n.id]&&o[n.id]){const e={};for(const t in n.inputs){const r=n.inputs[t];a[r.id]&&(e[t]=r)}const t=Object.assign({},n);t.inputs=e,t.outputs=n.outputs,s.push(t)}}return s}(this.state.activeTape,t,r);if(!a&&0===i.length&&t.length>0)throw new Error("Cannot compute gradient of y=f(x) with respect to x. Make sure that the f you passed encloses all operations that lead from x to y.");return this.tidy("backward",(()=>{const e={};e[r.id]=null==n?function(e){const t=function(e,t){const n=It(e,t);for(let e=0;e<n.length;e++)n[e]=1;return n}(vt(e),"float32");return Nn.makeTensor(t,e,"float32")}(r.shape):n,function(e,t,n,a){for(let r=t.length-1;r>=0;r--){const i=t[r],o=[];if(i.outputs.forEach((t=>{const n=e[t.id];o.push(null!=n?n:null)})),null==i.gradient)throw new Error(`Cannot compute gradient: gradient function not found for ${i.kernelName}.`);const s=i.gradient(o);for(const t in i.inputs){if(!(t in s))throw new Error(`Cannot backprop through input ${t}. Available gradients found: ${Object.keys(s)}.`);const r=n((()=>s[t]()));if("float32"!==r.dtype)throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input ${t} must have 'float32' dtype, but has '${r.dtype}'`);const o=i.inputs[t];if(!yt(r.shape,o.shape))throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input '${t}' has shape '${r.shape}', which does not match the shape of the input '${o.shape}'`);if(null==e[o.id])e[o.id]=r;else{const t=e[o.id];e[o.id]=a(t,r),t.dispose()}}}}(e,i,(e=>this.tidy(e)),_n);const a=t.map((t=>e[t.id]));return 0===this.state.gradientDepth&&(this.state.activeTape.forEach((e=>{for(const t of e.saved)t.dispose()})),this.state.activeTape=null),{value:r,grads:a}}))}customGrad(e){return gt(Ct(e),(()=>"The f passed in customGrad(f) must be a function.")),(...t)=>{let n;gt(t.every((e=>e instanceof pn)),(()=>"The args passed in customGrad(f)(x1, x2,...) must all be tensors"));const a={};t.forEach(((e,t)=>{a[t]=e}));return this.runKernelFunc({forwardFunc:(a,r)=>(n=e(...t,r),gt(n.value instanceof pn,(()=>"The function f passed in customGrad(f) must return an object where `obj.value` is a tensor")),gt(Ct(n.gradFunc),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function.")),n.value),backwardsFunc:(e,a)=>{const r=n.gradFunc(e,a),i=Array.isArray(r)?r:[r];gt(i.length===t.length,(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns the same number of tensors as inputs passed to f(...).")),gt(i.every((e=>e instanceof pn)),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns a list of only tensors."));const o={};return i.forEach(((e,t)=>{o[t]=()=>e})),o},inputs:a})}}readSync(e){return this.state.tensorInfo.get(e).backend.readSync(e)}read(e){return this.state.tensorInfo.get(e).backend.read(e)}readToGPU(e,t){return this.state.tensorInfo.get(e).backend.readToGPU(e,t)}async time(e){const t=Yt(),n=await this.backend.time(e);return n.wallMs=Yt()-t,n}track(e){return null!=this.state.activeScope&&(e.scopeId=this.state.activeScope.id,this.state.activeScope.track.push(e)),e}get registeredVariables(){return this.state.registeredVariables}reset(){this.pendingBackendInitId++,this.state.dispose(),this.ENV.reset(),this.state=new Rn;for(const e in this.registry)this.disposeRegisteredKernels(e),this.registry[e].dispose(),delete this.registry[e];this.backendName=null,this.backendInstance=null,this.pendingBackendInit=null}}function An(){const e=Lt();if(null==e._tfengine){const t=new Nt(e);e._tfengine=new Dn(t)}return Pt=e._tfengine.ENV,function(e){hn=e}((()=>e._tfengine)),e._tfengine}Dn.nextTensorId=0,Dn.nextVariableId=0;const Nn=An();function _n(e,t){return Nn.runKernel(Ot,{a:e,b:t})}const Fn=Ft();function Mn(e,t){let n=e;if(Jt(e))return"string"===t?[]:[e.length];if(En(e)){return[e.height,e.width*(e.channels||"RGBA").length]}if(Cn(e))return[e.buffer.size/(null==t?4:wt(t))];if(!Array.isArray(e))return[];const a=[];for(;Array.isArray(n)||Jt(n)&&"string"!==t;)a.push(n.length),n=n[0];return Array.isArray(e)&&Ft().getBool("TENSORLIKE_CHECK_SHAPE_CONSISTENCY")&&Pn(e,a,[]),a}function Pn(e,t,n){if(n=n||[],!Array.isArray(e)&&!Jt(e))return void gt(0===t.length,(()=>`Element arr[${n.join("][")}] is a primitive, but should be an array/TypedArray of ${t[0]} elements`));gt(t.length>0,(()=>`Element arr[${n.join("][")}] should be a primitive, but is an array of ${e.length} elements`)),gt(e.length===t[0],(()=>`Element arr[${n.join("][")}] should have ${t[0]} elements, but has ${e.length} elements`));const a=t.slice(1);for(let t=0;t<e.length;++t)Pn(e[t],a,n.concat(t))}function Ln(e,t,n,a){if("string_or_numeric"!==e){if(null==e)throw new Error("Expected dtype cannot be null.");if("numeric"!==e&&e!==t||"numeric"===e&&"string"===t)throw new Error(`Argument '${n}' passed to '${a}' must be ${e} tensor, but got ${t} tensor`)}}function Bn(e,t,n,a="numeric"){if(e instanceof pn)return Ln(a,e.dtype,t,n),e;let r=Et(e);if("string"!==r&&["bool","int32","float32"].indexOf(a)>=0&&(r=a),Ln(a,r,t,n),null==e||!Jt(e)&&!Array.isArray(e)&&"number"!=typeof e&&"boolean"!=typeof e&&"string"!=typeof e){throw new Error(`Argument '${t}' passed to '${n}' must be a Tensor or TensorLike, but got '${null==e?"null":e.constructor.name}'`)}const i=Mn(e,r);Jt(e)||Array.isArray(e)||(e=[e]);const o="string"!==r?Kt(e,r):Zt(e,[],!0);return Nn.makeTensor(o,i,r)}Fn.registerFlag("DEBUG",(()=>!1),(e=>{e&&console.warn("Debugging mode is ON. The output of every math call will be downloaded to CPU and checked for NaNs. This significantly impacts performance.")})),Fn.registerFlag("IS_BROWSER",(()=>"undefined"!=typeof window&&null!=window.document||"undefined"!=typeof WorkerGlobalScope)),Fn.registerFlag("IS_NODE",(()=>"undefined"!=typeof process&&void 0!==process.versions&&void 0!==process.versions.node)),Fn.registerFlag("IS_CHROME",(()=>"undefined"!=typeof navigator&&null!=navigator&&null!=navigator.userAgent&&/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor))),Fn.registerFlag("IS_SAFARI",(()=>"undefined"!=typeof navigator&&null!=navigator&&null!=navigator.userAgent&&/Safari/.test(navigator.userAgent)&&/Apple/.test(navigator.vendor))),Fn.registerFlag("PROD",(()=>!1)),Fn.registerFlag("TENSORLIKE_CHECK_SHAPE_CONSISTENCY",(()=>Fn.getBool("DEBUG"))),Fn.registerFlag("DEPRECATION_WARNINGS_ENABLED",(()=>!0)),Fn.registerFlag("IS_TEST",(()=>!1)),Fn.registerFlag("CHECK_COMPUTATION_FOR_ERRORS",(()=>Fn.getBool("DEBUG"))),Fn.registerFlag("WRAP_TO_IMAGEBITMAP",(()=>!1)),Fn.registerFlag("CANVAS2D_WILL_READ_FREQUENTLY_FOR_GPU",(()=>!1)),Fn.registerFlag("USE_SETTIMEOUTCUSTOM",(()=>!1));function On(e){const t=Object.keys(e);if(1!==t.length)throw new Error(`Please provide an object with a single key (operation name) mapping to a function. Got an object with ${t.length} keys.`);let n=t[0];const a=e[n];n.endsWith("_")&&(n=n.substring(0,n.length-1)),n+="__op";const r=(...e)=>{Nn.startScope(n);try{const t=a(...e);return Dt(t)&&console.error("Cannot return a Promise inside of tidy."),Nn.endScope(t),t}catch(e){throw Nn.endScope(null),e}};return Object.defineProperty(r,"name",{value:n,configurable:!0}),r}class Un{static join(e){return new Un(e).slice()}constructor(e){if(this.shards=[],this.previousShardIndex=0,null==e)return;if(e instanceof Array||(e=[e]),0===(e=e.map((e=>Jt(e)?e.buffer:e))).length)return;this.bufferUniformSize=e[0].byteLength;let t=0;for(let n=0;n<e.length;n++){const a=e[n];n!==e.length-1&&a.byteLength!==this.bufferUniformSize&&(this.bufferUniformSize=void 0);const r=t+a.byteLength;this.shards.push({buffer:a,start:t,end:r}),t=r}0===this.shards.length&&(this.byteLength=0),this.byteLength=this.shards[this.shards.length-1].end}slice(e=0,t=this.byteLength){if(0===this.shards.length)return new ArrayBuffer(0);if(e=isNaN(Number(e))?0:e,t=isNaN(Number(t))?0:t,e=Math.max(0,e),(t=Math.min(this.byteLength,t))<=e)return new ArrayBuffer(0);const n=this.findShardForByte(e);if(-1===n)throw new Error(`Could not find start shard for byte ${e}`);const a=new ArrayBuffer(t-e),r=new Uint8Array(a);let i=0;for(let a=n;a<this.shards.length;a++){const n=this.shards[a],o=e+i-n.start,s=i,l=Math.min(t,n.end),c=new Uint8Array(n.buffer,o,l-n.start-o);if(r.set(c,s),i+=c.length,t<n.end)break}return a}findShardForByte(e){if(0===this.shards.length||e<0||e>=this.byteLength)return-1;if(null!=this.bufferUniformSize)return this.previousShardIndex=Math.floor(e/this.bufferUniformSize),this.previousShardIndex;function t(t){return e<t.start?-1:e>=t.end?1:0}if(0===t(this.shards[this.previousShardIndex]))return this.previousShardIndex;const n=function(e,t){let n=0,a=e.length;for(;n<=a;){const r=Math.floor((a-n)/2)+n,i=t(e[r]);if(0===i)return r;i<0?a=r:n=r+1}return-1}(this.shards,t);return-1===n?-1:(this.previousShardIndex=n,this.previousShardIndex)}}const jn="undefined"!=typeof Buffer&&("undefined"==typeof Blob||"undefined"==typeof atob||"undefined"==typeof btoa);function zn(e){return jn?Buffer.byteLength(e,"utf8"):new Blob([e]).size}function Gn(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("Expected JSON model topology, received ArrayBuffer.");return{dateSaved:new Date,modelTopologyType:"JSON",modelTopologyBytes:null==e.modelTopology?0:zn(JSON.stringify(e.modelTopology)),weightSpecsBytes:null==e.weightSpecs?0:zn(JSON.stringify(e.weightSpecs)),weightDataBytes:null==e.weightData?0:new Un(e.weightData).byteLength}}class $n{constructor(){this.saveRouters=[],this.loadRouters=[]}static getInstance(){return null==$n.instance&&($n.instance=new $n),$n.instance}static registerSaveRouter(e){$n.getInstance().saveRouters.push(e)}static registerLoadRouter(e){$n.getInstance().loadRouters.push(e)}static getSaveHandlers(e){return $n.getHandlers(e,"save")}static getLoadHandlers(e,t){return $n.getHandlers(e,"load",t)}static getHandlers(e,t,n){const a=[];return("load"===t?$n.getInstance().loadRouters:$n.getInstance().saveRouters).forEach((t=>{const r=t(e,n);null!==r&&a.push(r)})),a}}const qn="tensorflowjs",Vn="models_store",Wn="model_info_store";function Hn(){if(!Ft().getBool("IS_BROWSER"))throw new Error("Failed to obtain IndexedDB factory because the current environmentis not a web browser.");const e="undefined"==typeof window?self:window,t=e.indexedDB||e.mozIndexedDB||e.webkitIndexedDB||e.msIndexedDB||e.shimIndexedDB;if(null==t)throw new Error("The current browser does not appear to support IndexedDB.");return t}function Kn(e){const t=e.result;t.createObjectStore(Vn,{keyPath:"modelPath"}),t.createObjectStore(Wn,{keyPath:"modelPath"})}class Yn{constructor(e){if(this.indexedDB=Hn(),null==e||!e)throw new Error("For IndexedDB, modelPath must not be null, undefined or empty.");this.modelPath=e}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");return this.databaseAction(this.modelPath,e)}async load(){return this.databaseAction(this.modelPath)}databaseAction(e,t){return new Promise(((e,n)=>{const a=this.indexedDB.open(qn,1);a.onupgradeneeded=()=>Kn(a),a.onsuccess=()=>{const r=a.result;if(null==t){const t=r.transaction(Vn,"readonly"),a=t.objectStore(Vn).get(this.modelPath);a.onsuccess=()=>{if(null==a.result)return r.close(),n(new Error(`Cannot find model with path '${this.modelPath}' in IndexedDB.`));e(a.result.modelArtifacts)},a.onerror=e=>(r.close(),n(a.error)),t.oncomplete=()=>r.close()}else{const a=Gn(t),i=r.transaction(Wn,"readwrite");let o,s,l=i.objectStore(Wn);try{o=l.put({modelPath:this.modelPath,modelArtifactsInfo:a})}catch(e){return n(e)}o.onsuccess=()=>{s=r.transaction(Vn,"readwrite");const o=s.objectStore(Vn);let c;try{c=o.put({modelPath:this.modelPath,modelArtifacts:t,modelArtifactsInfo:a})}catch(e){return n(e)}c.onsuccess=()=>e({modelArtifactsInfo:a}),c.onerror=e=>{l=i.objectStore(Wn);const t=l.delete(this.modelPath);t.onsuccess=()=>(r.close(),n(c.error)),t.onerror=e=>(r.close(),n(c.error))}},o.onerror=e=>(r.close(),n(o.error)),i.oncomplete=()=>{null==s?r.close():s.oncomplete=()=>r.close()}}},a.onerror=e=>n(a.error)}))}}Yn.URL_SCHEME="indexeddb://";const Xn=e=>{return Ft().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(Yn.URL_SCHEME)?(t=e.slice(Yn.URL_SCHEME.length),new Yn(t)):null;var t};$n.registerSaveRouter(Xn),$n.registerLoadRouter(Xn);class Jn{constructor(){this.indexedDB=Hn()}async listModels(){return new Promise(((e,t)=>{const n=this.indexedDB.open(qn,1);n.onupgradeneeded=()=>Kn(n),n.onsuccess=()=>{const a=n.result,r=a.transaction(Wn,"readonly"),i=r.objectStore(Wn).getAll();i.onsuccess=()=>{const t={};for(const e of i.result)t[e.modelPath]=e.modelArtifactsInfo;e(t)},i.onerror=e=>(a.close(),t(i.error)),r.oncomplete=()=>a.close()},n.onerror=e=>t(n.error)}))}async removeModel(e){var t;return e=(t=e).startsWith(Yn.URL_SCHEME)?t.slice(Yn.URL_SCHEME.length):t,new Promise(((t,n)=>{const a=this.indexedDB.open(qn,1);a.onupgradeneeded=()=>Kn(a),a.onsuccess=()=>{const r=a.result,i=r.transaction(Wn,"readwrite"),o=i.objectStore(Wn),s=o.get(e);let l;s.onsuccess=()=>{if(null==s.result)return r.close(),n(new Error(`Cannot find model with path '${e}' in IndexedDB.`));{const a=o.delete(e),i=()=>{l=r.transaction(Vn,"readwrite");const a=l.objectStore(Vn).delete(e);a.onsuccess=()=>t(s.result.modelArtifactsInfo),a.onerror=e=>n(s.error)};a.onsuccess=i,a.onerror=e=>(i(),r.close(),n(s.error))}},s.onerror=e=>(r.close(),n(s.error)),i.oncomplete=()=>{null==l?r.close():l.oncomplete=()=>r.close()}},a.onerror=e=>n(a.error)}))}}const Zn="/",Qn="tensorflowjs_models",ea="info",ta="model_topology",na="weight_specs",aa="weight_data",ra="model_metadata";function ia(e){return{info:[Qn,e,ea].join(Zn),topology:[Qn,e,ta].join(Zn),weightSpecs:[Qn,e,na].join(Zn),weightData:[Qn,e,aa].join(Zn),modelMetadata:[Qn,e,ra].join(Zn)}}function oa(e){for(const t of Object.values(e))window.localStorage.removeItem(t)}function sa(e){const t=e.split(Zn);if(t.length<3)throw new Error(`Invalid key format: ${e}`);return t.slice(1,t.length-1).join(Zn)}class la{constructor(e){if(!Ft().getBool("IS_BROWSER")||"undefined"==typeof window||void 0===window.localStorage)throw new Error("The current environment does not support local storage.");if(this.LS=window.localStorage,null==e||!e)throw new Error("For local storage, modelPath must not be null, undefined or empty.");this.modelPath=e,this.keys=ia(this.modelPath)}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");{const t=JSON.stringify(e.modelTopology),n=JSON.stringify(e.weightSpecs),a=Gn(e),r=Un.join(e.weightData);try{this.LS.setItem(this.keys.info,JSON.stringify(a)),this.LS.setItem(this.keys.topology,t),this.LS.setItem(this.keys.weightSpecs,n),this.LS.setItem(this.keys.weightData,function(e){if(jn)return Buffer.from(e).toString("base64");const t=new Uint8Array(e);let n="";for(let e=0,a=t.length;e<a;e++)n+=String.fromCharCode(t[e]);return btoa(n)}(r));return this.LS.setItem(this.keys.modelMetadata,JSON.stringify({format:e.format,generatedBy:e.generatedBy,convertedBy:e.convertedBy,signature:null!=e.signature?e.signature:void 0,userDefinedMetadata:null!=e.userDefinedMetadata?e.userDefinedMetadata:void 0,modelInitializer:null!=e.modelInitializer?e.modelInitializer:void 0,initializerSignature:null!=e.initializerSignature?e.initializerSignature:void 0,trainingConfig:null!=e.trainingConfig?e.trainingConfig:void 0})),{modelArtifactsInfo:a}}catch(e){throw oa(this.keys),new Error(`Failed to save model '${this.modelPath}' to local storage: size quota being exceeded is a possible cause of this failure: modelTopologyBytes=${a.modelTopologyBytes}, weightSpecsBytes=${a.weightSpecsBytes}, weightDataBytes=${a.weightDataBytes}.`)}}}async load(){const e=JSON.parse(this.LS.getItem(this.keys.info));if(null==e)throw new Error(`In local storage, there is no model with name '${this.modelPath}'`);if("JSON"!==e.modelTopologyType)throw new Error("BrowserLocalStorage does not support loading non-JSON model topology yet.");const t={},n=JSON.parse(this.LS.getItem(this.keys.topology));if(null==n)throw new Error(`In local storage, the topology of model '${this.modelPath}' is missing.`);t.modelTopology=n;const a=JSON.parse(this.LS.getItem(this.keys.weightSpecs));if(null==a)throw new Error(`In local storage, the weight specs of model '${this.modelPath}' are missing.`);t.weightSpecs=a;const r=this.LS.getItem(this.keys.modelMetadata);if(null!=r){const e=JSON.parse(r);t.format=e.format,t.generatedBy=e.generatedBy,t.convertedBy=e.convertedBy,null!=e.signature&&(t.signature=e.signature),null!=e.userDefinedMetadata&&(t.userDefinedMetadata=e.userDefinedMetadata),null!=e.modelInitializer&&(t.modelInitializer=e.modelInitializer),null!=e.initializerSignature&&(t.initializerSignature=e.initializerSignature),null!=e.trainingConfig&&(t.trainingConfig=e.trainingConfig)}const i=this.LS.getItem(this.keys.weightData);if(null==i)throw new Error(`In local storage, the binary weight values of model '${this.modelPath}' are missing.`);return t.weightData=function(e){if(jn){const t=Buffer.from(e,"base64");return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}const t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;++e)n.set([t.charCodeAt(e)],e);return n.buffer}(i),t}}la.URL_SCHEME="localstorage://";const ca=e=>{return Ft().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(la.URL_SCHEME)?(t=e.slice(la.URL_SCHEME.length),new la(t)):null;var t};$n.registerSaveRouter(ca),$n.registerLoadRouter(ca);class ua{constructor(){gt(Ft().getBool("IS_BROWSER"),(()=>"Current environment is not a web browser")),gt("undefined"==typeof window||void 0!==window.localStorage,(()=>"Current browser does not appear to support localStorage")),this.LS=window.localStorage}async listModels(){const e={},t=Qn+Zn,n=Zn+ea;for(let a=0;a<this.LS.length;++a){const r=this.LS.key(a);if(r.startsWith(t)&&r.endsWith(n)){e[sa(r)]=JSON.parse(this.LS.getItem(r))}}return e}async removeModel(e){var t;const n=ia(e=(t=e).startsWith(la.URL_SCHEME)?t.slice(la.URL_SCHEME.length):t);if(null==this.LS.getItem(n.info))throw new Error(`Cannot find model at path '${e}'`);const a=JSON.parse(this.LS.getItem(n.info));return oa(n),a}}class da{constructor(){this.managers={}}static getInstance(){return null==da.instance&&(da.instance=new da),da.instance}static registerManager(e,t){gt(null!=e,(()=>"scheme must not be undefined or null.")),e.endsWith("://")&&(e=e.slice(0,e.indexOf("://"))),gt(e.length>0,(()=>"scheme must not be an empty string."));const n=da.getInstance();gt(null==n.managers[e],(()=>`A model store manager is already registered for scheme '${e}'.`)),n.managers[e]=t}static getManager(e){const t=da.getInstance().managers[e];if(null==t)throw new Error(`Cannot find model manager for scheme '${e}'`);return t}static getSchemes(){return Object.keys(da.getInstance().managers)}}class ha{constructor(){this.messageName="setTimeoutCustom",this.functionRefs=[],this.handledMessageCount=0,this.hasEventListener=!1}fetch(e,t){return fetch(e,t)}now(){return performance.now()}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Browser's encoder only supports utf-8, but got ${t}`);return null==this.textEncoder&&(this.textEncoder=new TextEncoder),this.textEncoder.encode(e)}decode(e,t){return new TextDecoder(t).decode(e)}setTimeoutCustom(e,t){"undefined"!=typeof window&&Ft().getBool("USE_SETTIMEOUTCUSTOM")?(this.functionRefs.push(e),setTimeout((()=>{window.postMessage({name:this.messageName,index:this.functionRefs.length-1},"*")}),t),this.hasEventListener||(this.hasEventListener=!0,window.addEventListener("message",(e=>{if(e.source===window&&e.data.name===this.messageName){e.stopPropagation();(0,this.functionRefs[e.data.index])(),this.handledMessageCount++,this.handledMessageCount===this.functionRefs.length&&(this.functionRefs=[],this.handledMessageCount=0)}}),!0))):setTimeout(e,t)}isTypedArray(e){return Ht(e)}}if(Ft().get("IS_BROWSER")){Ft().setPlatform("browser",new ha);try{da.registerManager(la.URL_SCHEME,new ua)}catch(e){}try{da.registerManager(Yn.URL_SCHEME,new Jn)}catch(e){}}const fa=()=>require("node-fetch");let pa;class ma{constructor(){this.util=require("util"),this.textEncoder=new this.util.TextEncoder}fetch(e,t){return null!=Ft().global.fetch?Ft().global.fetch(e,t):(null==pa&&(pa=fa()),pa(e,t))}now(){const e=process.hrtime();return 1e3*e[0]+e[1]/1e6}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Node built-in encoder only supports utf-8, but got ${t}`);return this.textEncoder.encode(e)}decode(e,t){return 0===e.length?"":new this.util.TextDecoder(t).decode(e)}isTypedArray(e){return this.util.types.isFloat32Array(e)||this.util.types.isInt32Array(e)||this.util.types.isUint8Array(e)||this.util.types.isUint8ClampedArray(e)}}Ft().get("IS_NODE")&&!Ft().get("IS_BROWSER")&&Ft().setPlatform("node",new ma);const ga=On({cast_:function(e,t){const n=Bn(e,"x","cast");if(!function(e){return"bool"===e||"complex64"===e||"float32"===e||"int32"===e||"string"===e}(t))throw new Error(`Failed to cast to unknown dtype ${t}`);if("string"===t&&"string"!==n.dtype||"string"!==t&&"string"===n.dtype)throw new Error("Only strings can be casted to strings");return Nn.runKernel(Ut,{x:n},{dtype:t})}});const va=On({clone_:function(e){const t=Bn(e,"x","clone","string_or_numeric");return Nn.runKernel(jt,{x:t})}});An();const ya={buffer:function(e,t="float32",n){return t=t||"float32",Rt(e),new dn(e,t,n)},cast:ga,clone:va,print:function(e,t=!1){console.log(e.toString(t))}};function ba(e,t){return Nn.tidy(e,t)}function wa(e){Sn(e).forEach((e=>e.dispose()))}fn=ya;const xa=On({add_:function(e,t){let n=Bn(e,"a","add"),a=Bn(t,"b","add");return[n,a]=kn(n,a),Nn.runKernel(Ot,{a:n,b:a})}});const Ea=On({floorDiv_:function(e,t){let n=Bn(e,"a","floorDiv"),a=Bn(t,"b","floorDiv");return[n,a]=kn(n,a),Nn.runKernel("FloorDiv",{a:n,b:a})}});const Ca=On({div_:function(e,t){let n=Bn(e,"a","div"),a=Bn(t,"b","div");return[n,a]=kn(n,a),"int32"===n.dtype&&"int32"===a.dtype?Ea(n,a):Nn.runKernel("RealDiv",{a:n,b:a},{})}});const ka=On({mul_:function(e,t){let n=Bn(e,"a","mul"),a=Bn(t,"b","mul");return[n,a]=kn(n,a),Nn.runKernel("Multiply",{a:n,b:a})}});const Sa=On({abs_:function(e){const t=Bn(e,"x","abs");if("complex64"===t.dtype){return Nn.runKernel("ComplexAbs",{x:t})}return Nn.runKernel("Abs",{x:t})}});const Ta=On({zerosLike_:function(e){const t=Bn(e,"x","zerosLike");return Nn.runKernel("ZerosLike",{x:t})}});const Ia=On({pow_:function(e,t){let n=Bn(e,"base","pow"),a=Bn(t,"exp","pow");return[n,a]=kn(n,a),Nn.runKernel("Pow",{a:n,b:a})}});function Ra(e,t){if((Jt(e)&&"string"!==t||Array.isArray(e))&&"complex64"!==t)throw new Error("Error creating a new Scalar: value must be a primitive (number|boolean|string)");if("string"===t&&Jt(e)&&!(e instanceof Uint8Array))throw new Error("When making a scalar from encoded string, the value must be `Uint8Array`.");return function(e,t,n,a){if(null==a)a=Et(e);else if("complex64"===a)throw new Error("Cannot construct a complex64 tensor directly. Please use tf.complex(real, imag).");if(Cn(e)||En(e)){if("float32"!==a&&"int32"!==a)throw new Error(`Creating tensor from GPU data only supports 'float32'|'int32' dtype, while the dtype is ${a}.`);return Nn.backend.createTensorFromGPUData(e,t||n,a)}if(!Jt(e)&&!Array.isArray(e)&&"number"!=typeof e&&"boolean"!=typeof e&&"string"!=typeof e)throw new Error("values passed to tensor(values) must be a number/boolean/string or an array of numbers/booleans/strings, or a TypedArray");if(null!=t){Rt(t);const e=vt(t),a=vt(n);gt(e===a,(()=>`Based on the provided shape, [${t}], the tensor should have ${e} values but has ${a}`));for(let e=0;e<n.length;++e){const a=e!==n.length-1||n[e]!==vt(t.slice(e));gt(n[e]===t[e]||!a,(()=>`Error creating a new Tensor. Inferred shape (${n}) does not match the provided shape (${t}). `))}}return Jt(e)||Array.isArray(e)||(e=[e]),t=t||n,e="string"!==a?Kt(e,a):Zt(e,[],!0),Nn.makeTensor(e,t,a)}(e,[],[],t)}const Da=On({sqrt_:function(e){const t=Bn(e,"x","sqrt","float32");return Nn.runKernel("Sqrt",{x:t})}});const Aa=On({square_:function(e){const t=Bn(e,"x","square");return Nn.runKernel("Square",{x:t},{})}});const Na=On({sub_:function(e,t){let n=Bn(e,"a","sub"),a=Bn(t,"b","sub");return[n,a]=kn(n,a),Nn.runKernel("Sub",{a:n,b:a})}});const _a=On({maximum_:function(e,t){let n=Bn(e,"a","maximum"),a=Bn(t,"b","maximum");return[n,a]=kn(n,a),"bool"===n.dtype&&(n=ga(n,"int32"),a=ga(a,"int32")),function(e,t){const n=Math.max(e.length,t.length),a=new Array(n);for(let r=0;r<n;r++){let i=e[e.length-r-1];null==i&&(i=1);let o=t[t.length-r-1];if(null==o&&(o=1),1===i)a[n-r-1]=o;else if(1===o)a[n-r-1]=i;else{if(i!==o)throw Error(`Operands could not be broadcast together with shapes ${e} and ${t}.`);a[n-r-1]=i}}}(n.shape,a.shape),Nn.runKernel("Maximum",{a:n,b:a})}});class Fa{getClassName(){return this.constructor.className}static fromConfig(e,t){return new e(t)}}class Ma{constructor(){this.classNameMap={}}static getMap(){return null==Ma.instance&&(Ma.instance=new Ma),Ma.instance}static register(e){Ma.getMap().classNameMap[e.className]=[e,e.fromConfig]}}function Pa(e){gt(null!=e.className,(()=>"Class being registered does not have the static className property defined.")),gt("string"==typeof e.className,(()=>"className is required to be a string, but got type "+typeof e.className)),gt(e.className.length>0,(()=>"Class being registered has an empty-string as its className, which is disallowed.")),Ma.register(e)}class La extends Fa{minimize(e,t=!1,n){const{value:a,grads:r}=this.computeGradients(e,n);if(null!=n){const e=n.map((e=>({name:e.name,tensor:r[e.name]})));this.applyGradients(e)}else this.applyGradients(r);return wa(r),t?a:(a.dispose(),null)}get iterations(){return null==this.iterations_&&(this.iterations_=0),this.iterations_}incrementIterations(){this.iterations_=this.iterations+1}computeGradients(e,t){return function(e,t){gt(Ct(e),(()=>"The f passed in variableGrads(f) must be a function")),gt(null==t||Array.isArray(t)&&t.every((e=>e instanceof mn)),(()=>"The varList passed in variableGrads(f, varList) must be an array of variables"));const n=null!=t;if(!n){t=[];for(const e in Nn.registeredVariables)t.push(Nn.registeredVariables[e])}const a=n?t.filter((e=>!e.trainable)):null,r=t.length;gt((t=t.filter((e=>e.trainable))).length>0,(()=>`variableGrads() expects at least one of the input variables to be trainable, but none of the ${r} variables is trainable.`));const{value:i,grads:o}=Nn.gradients(e,t,null,!0);gt(o.some((e=>null!=e)),(()=>"Cannot find a connection between any variable and the result of the loss function y=f(x). Please make sure the operations that use variables are inside the function f passed to minimize().")),gt(0===i.rank,(()=>`The f passed in variableGrads(f) must return a scalar, but it returned a rank-${i.rank} tensor`));const s={};return t.forEach(((e,t)=>{null!=o[t]&&(s[e.name]=o[t])})),null!=a&&a.forEach((e=>s[e.name]=null)),{value:i,grads:s}}(e,t)}dispose(){null!=this.iterations_&&wa(this.iterations_)}async saveIterations(){return null==this.iterations_&&(this.iterations_=0),{name:"iter",tensor:Ra(this.iterations_,"int32")}}async getWeights(){throw new Error("getWeights() is not implemented for this optimizer yet.")}async setWeights(e){throw new Error(`setWeights() is not implemented for this optimizer class ${this.getClassName()}`)}async extractIterations(e){return this.iterations_=(await e[0].tensor.data())[0],e.slice(1)}}Object.defineProperty(La,Symbol.hasInstance,{value:e=>null!=e.minimize&&null!=e.computeGradients&&null!=e.applyGradients});class Ba extends La{static get className(){return"SGD"}constructor(e){super(),this.learningRate=e,this.setLearningRate(e)}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);t.forEach(((t,n)=>{const a=Array.isArray(e)?e[n].tensor:e[t];if(null==a)return;const r=Nn.registeredVariables[t];ba((()=>{const e=xa(ka(this.c,a),r);r.assign(e)}))})),this.incrementIterations()}setLearningRate(e){var t;this.learningRate=e,null!=this.c&&this.c.dispose(),this.c=(t=Ra(-e),Nn.keep(t))}dispose(){this.c.dispose()}async getWeights(){return[await this.saveIterations()]}async setWeights(e){if(0!==(e=await this.extractIterations(e)).length)throw new Error("SGD optimizer does not have settable weights.")}getConfig(){return{learningRate:this.learningRate}}static fromConfig(e,t){return new e(t.learningRate)}}const Oa=[class extends La{static get className(){return"Adadelta"}constructor(e,t,n=null){super(),this.learningRate=e,this.rho=t,this.epsilon=n,this.accumulatedGrads=[],this.accumulatedUpdates=[],null==n&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];null==this.accumulatedGrads[n]&&(this.accumulatedGrads[n]={originalName:`${t}/accum_grad`,variable:ba((()=>Ta(a).variable(false)))}),null==this.accumulatedUpdates[n]&&(this.accumulatedUpdates[n]={originalName:`${t}/accum_var`,variable:ba((()=>Ta(a).variable(false)))});const r=Array.isArray(e)?e[n].tensor:e[t];if(null==r)return;const i=this.accumulatedGrads[n].variable,o=this.accumulatedUpdates[n].variable;ba((()=>{const e=xa(ka(i,this.rho),ka(Aa(r),1-this.rho)),t=ka(Ca(Da(xa(o,this.epsilon)),Da(xa(i,this.epsilon))),r),n=xa(ka(o,this.rho),ka(Aa(t),1-this.rho));i.assign(e),o.assign(n);const s=xa(ka(t,-this.learningRate),a);a.assign(s)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedUpdates&&(wa(this.accumulatedGrads.map((e=>e.variable))),wa(this.accumulatedUpdates.map((e=>e.variable))))}async getWeights(){const e=[...this.accumulatedGrads,...this.accumulatedUpdates];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){const t=(e=await this.extractIterations(e)).length/2;this.accumulatedGrads=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedUpdates=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,rho:this.rho,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.rho,t.epsilon)}},class extends La{static get className(){return"Adagrad"}constructor(e,t=.1){super(),this.learningRate=e,this.initialAccumulatorValue=t,this.accumulatedGrads=[]}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];if(null==this.accumulatedGrads[n]){const e=!1;this.accumulatedGrads[n]={originalName:`${t}/accumulator`,variable:ba((()=>function(e,t,n){return Rt(e),n=n||Et(t),Nn.runKernel("Fill",{},{shape:e,value:t,dtype:n})}(a.shape,this.initialAccumulatorValue).variable(e)))}}const r=Array.isArray(e)?e[n].tensor:e[t];if(null==r)return;const i=this.accumulatedGrads[n].variable;ba((()=>{const e=xa(i,Aa(r));i.assign(e);const t=xa(ka(Ca(r,Da(xa(e,Nn.backend.epsilon()))),-this.learningRate),a);a.assign(t)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedGrads&&wa(this.accumulatedGrads.map((e=>e.variable)))}async getWeights(){return[await this.saveIterations()].concat(this.accumulatedGrads.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulatedGrads=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,initialAccumulatorValue:this.initialAccumulatorValue}}static fromConfig(e,t){return new e(t.learningRate,t.initialAccumulatorValue)}},class extends La{static get className(){return"Adam"}constructor(e,t,n,a=null){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=a,this.accumulatedFirstMoment=[],this.accumulatedSecondMoment=[],ba((()=>{this.accBeta1=Ra(t).variable(),this.accBeta2=Ra(n).variable()})),null==a&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);ba((()=>{const n=Na(1,this.accBeta1),a=Na(1,this.accBeta2);t.forEach(((t,r)=>{const i=Nn.registeredVariables[t];null==this.accumulatedFirstMoment[r]&&(this.accumulatedFirstMoment[r]={originalName:`${t}/m`,variable:ba((()=>Ta(i).variable(false)))}),null==this.accumulatedSecondMoment[r]&&(this.accumulatedSecondMoment[r]={originalName:`${t}/v`,variable:ba((()=>Ta(i).variable(false)))});const o=Array.isArray(e)?e[r].tensor:e[t];if(null==o)return;const s=this.accumulatedFirstMoment[r].variable,l=this.accumulatedSecondMoment[r].variable,c=xa(ka(s,this.beta1),ka(o,1-this.beta1)),u=xa(ka(l,this.beta2),ka(Aa(o),1-this.beta2)),d=Ca(c,n),h=Ca(u,a);s.assign(c),l.assign(u);const f=xa(ka(Ca(d,xa(Da(h),this.epsilon)),-this.learningRate),i);i.assign(f)})),this.accBeta1.assign(ka(this.accBeta1,this.beta1)),this.accBeta2.assign(ka(this.accBeta2,this.beta2))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.accBeta2.dispose(),null!=this.accumulatedFirstMoment&&wa(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedSecondMoment&&wa(this.accumulatedSecondMoment.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedFirstMoment,...this.accumulatedSecondMoment];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e),ba((()=>{this.accBeta1.assign(Ia(this.beta1,this.iterations_+1)),this.accBeta2.assign(Ia(this.beta2,this.iterations_+1))}));const t=e.length/2;this.accumulatedFirstMoment=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedSecondMoment=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon)}},class extends La{static get className(){return"Adamax"}constructor(e,t,n,a=null,r=0){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=a,this.decay=r,this.accumulatedFirstMoment=[],this.accumulatedWeightedInfNorm=[],ba((()=>{this.iteration=Ra(0).variable(),this.accBeta1=Ra(t).variable()})),null==a&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);ba((()=>{const n=Na(1,this.accBeta1),a=Ca(-this.learningRate,xa(ka(this.iteration,this.decay),1));t.forEach(((t,r)=>{const i=Nn.registeredVariables[t];null==this.accumulatedFirstMoment[r]&&(this.accumulatedFirstMoment[r]={originalName:`${t}/m`,variable:Ta(i).variable(false)}),null==this.accumulatedWeightedInfNorm[r]&&(this.accumulatedWeightedInfNorm[r]={originalName:`${t}/v`,variable:Ta(i).variable(false)});const o=Array.isArray(e)?e[r].tensor:e[t];if(null==o)return;const s=this.accumulatedFirstMoment[r].variable,l=this.accumulatedWeightedInfNorm[r].variable,c=xa(ka(s,this.beta1),ka(o,1-this.beta1)),u=ka(l,this.beta2),d=Sa(o),h=_a(u,d);s.assign(c),l.assign(h);const f=xa(ka(Ca(a,n),Ca(c,xa(h,this.epsilon))),i);i.assign(f)})),this.iteration.assign(xa(this.iteration,1)),this.accBeta1.assign(ka(this.accBeta1,this.beta1))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.iteration.dispose(),null!=this.accumulatedFirstMoment&&wa(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedWeightedInfNorm&&wa(this.accumulatedWeightedInfNorm.map((e=>e.variable)))}async getWeights(){throw new Error("getWeights() is not implemented for Adamax yet.")}async setWeights(e){throw new Error("setWeights() is not implemented for Adamax yet.")}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon,decay:this.decay}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon,t.decay)}},class extends Ba{static get className(){return"Momentum"}constructor(e,t,n=!1){super(e),this.learningRate=e,this.momentum=t,this.useNesterov=n,this.accumulations=[],this.m=Ra(this.momentum)}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];if(null==this.accumulations[n]){const e=!1;this.accumulations[n]={originalName:`${t}/momentum`,variable:ba((()=>Ta(a).variable(e)))}}const r=this.accumulations[n].variable,i=Array.isArray(e)?e[n].tensor:e[t];null!=i&&ba((()=>{let e;const t=xa(ka(this.m,r),i);e=xa(ka(this.c,this.useNesterov?xa(i,ka(t,this.m)):t),a),r.assign(t),a.assign(e)}))})),this.incrementIterations()}dispose(){this.m.dispose(),null!=this.accumulations&&wa(this.accumulations.map((e=>e.variable)))}setMomentum(e){this.momentum=e}async getWeights(){return[await this.saveIterations()].concat(this.accumulations.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulations=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,momentum:this.momentum,useNesterov:this.useNesterov}}static fromConfig(e,t){return new e(t.learningRate,t.momentum,t.useNesterov)}},class extends La{static get className(){return"RMSProp"}constructor(e,t=.9,n=0,a=null,r=!1){if(super(),this.learningRate=e,this.decay=t,this.momentum=n,this.epsilon=a,this.accumulatedMeanSquares=[],this.accumulatedMoments=[],this.accumulatedMeanGrads=[],this.centered=r,null==a&&(this.epsilon=Nn.backend.epsilon()),null==e)throw new Error("learningRate for RMSPropOptimizer must be defined.")}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t],r=!1;null==this.accumulatedMeanSquares[n]&&(this.accumulatedMeanSquares[n]={originalName:`${t}/rms`,variable:ba((()=>Ta(a).variable(r)))}),null==this.accumulatedMoments[n]&&(this.accumulatedMoments[n]={originalName:`${t}/momentum`,variable:ba((()=>Ta(a).variable(r)))}),null==this.accumulatedMeanGrads[n]&&this.centered&&(this.accumulatedMeanGrads[n]={originalName:`${t}/mg`,variable:ba((()=>Ta(a).variable(r)))});const i=Array.isArray(e)?e[n].tensor:e[t];if(null==i)return;const o=this.accumulatedMeanSquares[n].variable,s=this.accumulatedMoments[n].variable;ba((()=>{const e=xa(ka(o,this.decay),ka(Aa(i),1-this.decay));if(this.centered){const t=this.accumulatedMeanGrads[n].variable,r=xa(ka(t,this.decay),ka(i,1-this.decay)),l=Ca(ka(i,this.learningRate),Da(Na(e,xa(Aa(r),this.epsilon)))),c=xa(ka(s,this.momentum),l);o.assign(e),t.assign(r),s.assign(c);const u=Na(a,c);a.assign(u)}else{const e=xa(ka(o,this.decay),ka(Aa(i),1-this.decay)),t=xa(ka(s,this.momentum),Ca(ka(i,this.learningRate),Da(xa(e,this.epsilon))));o.assign(e),s.assign(t);const n=Na(a,t);a.assign(n)}}))})),this.incrementIterations()}dispose(){null!=this.accumulatedMeanSquares&&wa(this.accumulatedMeanSquares.map((e=>e.variable))),null!=this.accumulatedMeanGrads&&this.centered&&wa(this.accumulatedMeanGrads.map((e=>e.variable))),null!=this.accumulatedMoments&&wa(this.accumulatedMoments.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedMeanSquares,...this.accumulatedMoments];return this.centered&&e.push(...this.accumulatedMeanGrads),[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);const t=this.centered?e.length/3:e.length/2,n=!1;this.accumulatedMeanSquares=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.accumulatedMoments=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.centered&&(this.accumulatedMeanGrads=e.slice(2*t,3*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))))}getConfig(){return{learningRate:this.learningRate,decay:this.decay,momentum:this.momentum,epsilon:this.epsilon,centered:this.centered}}static fromConfig(e,t){return new e(t.learningRate,t.decay,t.momentum,t.epsilon,t.centered)}},Ba];!function(){for(const e of Oa)Pa(e)}();const Ua={},ja={alpha:!1,antialias:!1,premultipliedAlpha:!1,preserveDrawingBuffer:!1,depth:!1,stencil:!1,failIfMajorPerformanceCaveat:!0};function za(e,t){if(!(e in Ua)||null!=t){const n=function(e,t){if(1!==e&&2!==e)throw new Error("Cannot get WebGL rendering context, WebGL is disabled.");const n=null==t?function(e){if(Ft().getBool("IS_SAFARI")||"undefined"==typeof OffscreenCanvas||2!==e){if("undefined"!=typeof document)return document.createElement("canvas");throw new Error("Cannot create a canvas in this context")}return new OffscreenCanvas(300,150)}(e):t;n.addEventListener("webglcontextlost",(t=>{t.preventDefault(),delete Ua[e]}),!1),Ft().getBool("SOFTWARE_WEBGL_ENABLED")&&(ja.failIfMajorPerformanceCaveat=!1);if(1===e)return n.getContext("webgl",ja)||n.getContext("experimental-webgl",ja);return n.getContext("webgl2",ja)}(e,t);if(null===n)return console.log("Could not get context for WebGL version",e),null;Ua[e]=n}const n=Ua[e];return null==n||n.isContextLost()?(delete Ua[e],za(e)):(n.disable(n.DEPTH_TEST),n.disable(n.STENCIL_TEST),n.disable(n.BLEND),n.disable(n.DITHER),n.disable(n.POLYGON_OFFSET_FILL),n.disable(n.SAMPLE_COVERAGE),n.enable(n.SCISSOR_TEST),n.enable(n.CULL_FACE),n.cullFace(n.BACK),Ua[e])}var Ga="https://websdk-cdn-dev.idmission.com/assets";function $a(e){var t=e.width,n=e.height;return e instanceof HTMLVideoElement&&(t=e.videoWidth,n=e.videoHeight),[t,n]}var qa,Va=u.default.canvas(qa||(qa=y(["\n display: none;\n"],["\n display: none;\n"])));function Wa(e,t,n,a){if(e){var r=e.getContext("2d");if(r){if(!n||!a){var i=$a(t);n||(n=i[0]),a||(a=i[1])}e.width=n,e.height=a,r.drawImage(t,0,0,n,a)}}}function Ha(e){if(e){var t=e.getContext("2d");t&&t.clearRect(0,0,e.width,e.height)}}function Ka(e,t,n,a){if(!e||!t)return"";var r=e.getContext("2d"),i=t.getContext("2d");if(!r||!i)throw new Error("could not get 2d context");e.width=n.width,e.height=n.height,r.putImageData(n,0,0);var o=a.box,s=o.width,l=.6*n.height-s,c=Math.max(0,o.xMin-l/2);_e()?(t.width=n.width,t.height=n.height,i.drawImage(e,0,0,t.width,t.height)):(t.width=s+l,t.height=n.height,i.drawImage(e,c,0,t.width,t.height,0,0,t.width,t.height));var u=t.toDataURL("image/jpeg",.92);return Ha(e),Ha(t),u}var Ya={boxes:0,scores:7,labels:4},Xa=t.createContext({ready:!1,working:{current:!1},error:null,thresholds:{},setThresholds:function(){return null},makePrediction:function(){return null},onPredictionMade:function(){return null},detectionTime:0,focusPredictionTime:0,getBestFrame:function(){return Promise.resolve(null)},resetBestFrame:function(){return null}}),Ja="".concat(Ga,"/models/documentdetection448/model.json"),Za="".concat(Ga,"/models/focus/model.json"),Qa=function(e){var n=e.children,a=e.documentDetectionModelUrl,i=e.focusModelUrl,o=e.logPredictions,l=void 0!==o&&o,c=t.useState(!1),u=c[0],h=c[1],f=t.useState(0),p=f[0],v=f[1],y=t.useState(0),b=y[0],w=y[1],x=t.useState(0),E=x[0],C=x[1],k=t.useState(0),S=k[0],T=k[1],I=t.useState(0),R=I[0],D=I[1],A=t.useRef(!1),N=t.useRef(),_=t.useRef(null),F=t.useState(0),M=F[0],P=F[1],L=t.useState(0),B=L[0],O=L[1],U=t.useState(null),j=U[0],z=U[1];t.useEffect((function(){h(!1);var e=a||Ja,t=i||Za;function n(){return m(this,void 0,void 0,(function(){return g(this,(function(n){switch(n.label){case 0:return d.ENV.set("WEBGL_DELETE_TEXTURE_THRESHOLD",52428800),[4,d.setBackend("webgl")];case 1:return n.sent(),[4,d.ready()];case 2:return n.sent(),[4,Promise.all([Te(e),ft(t)])];case 3:return n.sent(),[2]}}))}))}function o(){return m(this,void 0,void 0,(function(){var a;return g(this,(function(i){switch(i.label){case 0:return h(!1),ce=null,ct=null,delete Ua[2],(a=document.createElement("canvas").getContext("webgl2"))&&e&&t?(r.setWebGLContext(2,a),function(){try{d.backend().dispose()}catch(e){console.error("failed to dispose backend",e)}}(),[4,n()]):[3,2];case 1:i.sent(),h(!0),i.label=2;case 2:return[2]}}))}))}n().then((function(){h(!0)})).catch((function(e){z(e)}));var s=za(2).canvas;return s.addEventListener("webglcontextlost",o),function(){var e;null===(e=s.removeEventListener)||void 0===e||e.call(s,"webglcontextlost",o)}}),[a,i]);var G=t.useMemo((function(){return{document:p,passport:b,mrz:E,pdf417:S,focus:R}}),[p,R,E,b,S]),$=t.useCallback((function(e){e.document&&v(e.document),e.passport&&w(e.passport),e.mrz&&C(e.mrz),e.pdf417&&T(e.pdf417),e.focus&&D(e.focus)}),[]),q=t.useState(0),V=q[0],W=q[1],H=t.useRef(null),K=t.useRef(0),Y=t.useCallback((function(e){A.current=!0,m(void 0,void 0,void 0,(function(){var t,n;return g(this,(function(a){switch(a.label){case 0:return ce&&ct&&_.current?[4,er(e,_.current,G,l)]:[2];case 1:return t=a.sent(),P(t.detectionTime),O(t.focusPredictionTime),K.current<=t.focusScore&&(K.current=t.focusScore,Wa(H.current,e)),t.allZero&&W((function(e){return e+1})),null===(n=N.current)||void 0===n||n.call(N,t),A.current=!1,[2]}}))}))}),[l,G]);t.useEffect((function(){V>=2&&z(new Error("model is returning all zeroes"))}),[V]);var X=t.useCallback((function(e){N.current=e}),[]),J=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return H.current?(e=H.current.toDataURL("image/jpeg",.98),[4,fetch(e)]):[2,null];case 1:return[4,t.sent().blob()];case 2:return[2,t.sent()]}}))}))}),[]),Z=t.useCallback((function(){K.current=0,Ha(H.current)}),[]),Q=t.useMemo((function(){return{ready:u,working:A,thresholds:G,setThresholds:$,makePrediction:Y,onPredictionMade:X,detectionTime:M,focusPredictionTime:B,getBestFrame:J,resetBestFrame:Z,error:j}}),[M,B,J,j,Y,X,u,Z,$,G]);return s.default.createElement(Xa.Provider,{value:Q},n,s.default.createElement(Va,{ref:_}),s.default.createElement(Va,{ref:H}))};function er(e,t,n,a){var r,i,o,s,l,c,u,d,h,f;return void 0===a&&(a=!1),m(this,void 0,void 0,(function(){var p,m,v,y,b,w,x,E,C,k,S,T,I,R,D,A,N,_,F,M,P,L,B,O,U,j,z,G,$,q;return g(this,(function(g){switch(g.label){case 0:return p=$a(e),m=p[0],v=p[1],Wa(t,e),[4,tr(e,a)];case 1:return y=g.sent(),w=y.scores,x=y.labels,E=y.time,C=(b=y.boxes).length>0&&!b.some((function(e){return e.some((function(e){return e>0}))})),k=function(e){var t={};return e.forEach((function(e,n){e&&(t[e.label]||(t[e.label]=[0,-1]),e.score>t[e.label][0]&&(t[e.label]=[e.score,n]))})),Object.keys(t).map((function(n){return e[t[n][1]]})).filter((function(e){return!!e}))}(b.map((function(e,t){return function(e,t,n){var a=e[0],r=e[1];return{score:t,bbox:[r,a,e[3]-r,e[2]-a],label:Ie[n]}}(e,w[t],x[t])}))),S=k.find((function(e){return"Document"===e.label})),T=k.find((function(e){return"Passport Page"===e.label})),I=null!==(r=null==S?void 0:S.score)&&void 0!==r?r:0,R=null!==(i=null==T?void 0:T.score)&&void 0!==i?i:0,D=R>=(null!==(o=n.passport)&&void 0!==o?o:0),A=I>R?S:T,_=(N=D?R:I)>=(null!==(s=n.document)&&void 0!==s?s:0),F=le.NONE,D?F=le.PASSPORT:_&&(F=le.ID_CARD),M=k.find((function(e){return"MRZ"===e.label})),P=null!==(l=null==M?void 0:M.score)&&void 0!==l?l:0,L=P>=(null!==(c=n.mrz)&&void 0!==c?c:0),B=k.find((function(e){return"PDF417"===e.label})),O=null!==(u=null==B?void 0:B.score)&&void 0!==u?u:0,U=O>=(null!==(d=n.pdf417)&&void 0!==d?d:0),j=null,z=0,G=0,$=!1,_?[4,nr(e,null==A?void 0:A.bbox,a)]:[3,3];case 2:q=g.sent(),z=q[1],G=null!==(h=null==(j=q[0])?void 0:j[1])&&void 0!==h?h:0,$=G>=(null!==(f=n.focus)&&void 0!==f?f:0),g.label=3;case 3:return[2,{detectedObjects:k,detectionScore:N,detectionTime:E,detectionThresholdMet:_,detectedDocumentType:F,passportDetectionScore:R,passportDetectionThresholdMet:D,mrzDetectionScore:P,mrzDetectionThresholdMet:L,pdf417DetectionScore:O,pdf417DetectionThresholdMet:U,bestDocumentOrPassport:A,bestMrz:M,bestPdf417:B,focusScore:G,focusThresholdMet:$,focusPredictionTime:z,frameWidth:m,frameHeight:v,allZero:C}]}}))}))}function tr(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a,r,i,o,s,l,c,u,h,f,p,m,v,y,b,w;return g(this,(function(g){switch(g.label){case 0:if(!ce)throw new Error("document detection model is not loaded");n=new Date,g.label=1;case 1:return g.trys.push([1,7,,8]),a=d.browser.fromPixels(e),t&&console.time("resize"),r=d.image.resizeBilinear(a,[448,448]),t&&console.timeEnd("resize"),a.dispose(),t&&console.time("convert to int32"),i=d.cast(r,"int32"),r.dispose(),l=(s=d).tensor4d,u=(c=Array).from,[4,i.data()];case 2:return o=l.apply(s,[u.apply(c,[g.sent()]),[1,448,448,3]]),i.dispose(),h=d.cast(o,"int32"),t&&console.timeEnd("convert to int32"),o.dispose(),t&&console.time("predictions"),[4,ce.executeAsync(h)];case 3:return f=g.sent(),t&&console.timeEnd("predictions"),h.dispose(),p=f,t&&console.log("predictions made!",p.map((function(e){return e.arraySync()}))),[4,p[Ya.boxes].array()];case 4:return m=g.sent()[0],[4,p[Ya.scores].array()];case 5:return v=g.sent()[0],[4,p[Ya.labels].array()];case 6:return y=(y=g.sent()[0]).map((function(e){return Math.round(e)})),d.dispose(f),b=(new Date).getTime()-n.getTime(),[2,{boxes:m,scores:v,labels:y,time:b}];case 7:return w=g.sent(),console.error("caught error in makeDocumentDetectionPredictions",w),[2,{boxes:[],scores:[],labels:[],time:0}];case 8:return[2]}}))}))}function nr(e,t,n){return void 0===n&&(n=!1),m(this,void 0,void 0,(function(){var a,r,i,o,s,l,c,u,h,f,p,m,v;return g(this,(function(g){switch(g.label){case 0:if(!ct)throw new Error("focus model is not loaded");a=new Date,g.label=1;case 1:return g.trys.push([1,5,,6]),r=void 0,r=d.browser.fromPixels(t?function(e,t){var n=document.createElement("canvas"),a=n.getContext("2d");if(!a)throw new Error("could not get 2d context");var r=$a(e),i=r[0],o=r[1],s=t[0],l=t[1],c=t[2],u=t[3];return n.width=c*i,n.height=u*o,a.drawImage(e,s*i,l*o,c*i,u*o,0,0,c*i,u*o),n}(e,t):e),i=d.image.resizeBilinear(r,[448,448]),r.dispose(),o=d.cast(i,"int32"),i.dispose(),c=(l=d).tensor4d,h=(u=Array).from,[4,o.data()];case 2:return s=c.apply(l,[h.apply(u,[g.sent()]),[1,448,448,3]]),o.dispose(),f=d.cast(s,"int32"),s.dispose(),n&&console.time("focus prediction"),[4,ct.predict(f)];case 3:return p=g.sent(),f.dispose(),[4,p.array()];case 4:return m=g.sent()[0],n&&console.timeEnd("focus prediction"),d.dispose(p),v=(new Date).getTime()-a.getTime(),[2,[m,v]];case 5:return g.sent(),[2,[[0,0],0]];case 6:return[2]}}))}))}var ar,rr,ir,or,sr=u.default.span(ar||(ar=y(["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"],["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"]))),lr=u.default.div(rr||(rr=y(["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ","\n"],["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ","\n"])),(function(e){return e.$flipX?"transform: scaleX(-1);":""})),cr=u.default.div(ir||(ir=y(["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ",";\n color: ",";\n ","\n"],["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ",";\n color: ",";\n ","\n"])),(function(e){var t=e.$color;return null!=t?t:"green"}),(function(e){var t=e.$color;return null!=t?t:"green"}),(function(e){return e.$flipX?"transform: scaleX(-1);":""})),ur=u.default.div(or||(or=y(["\n position: absolute;\n width: 4px;\n height: 4px;\n border: 2px solid ",";\n font: 10px monospace;\n color: ",";\n border-radius: 50%;\n ","\n"],["\n position: absolute;\n width: 4px;\n height: 4px;\n border: 2px solid ",";\n font: 10px monospace;\n color: ",";\n border-radius: 50%;\n ","\n"])),(function(e){var t=e.$color;return null!=t?t:"red"}),(function(e){var t=e.$color;return null!=t?t:"red"}),(function(e){return e.$flipX?"transform: scaleX(-1);":""}));function dr(e){var n=e.enabled,a=void 0===n||n,r=e.pageWidth,i=e.pageHeight,o=e.videoWidth,s=e.videoHeight;return t.useMemo((function(){var e=!1,t=0,n=0,l=0,c=0;return a&&((e=r/i<o/s)?l=((t=o*(i/s))-r)/2:c=((n=s*(r/o))-i)/2),{horizontal:e,pageWidth:r,pageHeight:i,videoWidth:o,videoHeight:s,scaledWidth:t,scaledHeight:n,xOffset:l,yOffset:c}}),[a,i,r,s,o])}function hr(e){var t=e.obj,n=e.color,a=e.scaling,r=a.pageWidth,i=a.pageHeight,o=a.scaledWidth,l=a.scaledHeight,c=[t.bbox[1],t.bbox[0],t.bbox[2],t.bbox[3]],u=c[0],d=c[1],h=c[2],f=c[3];return a.horizontal?(u*=i,d*=o-a.xOffset,h*=o,f*=i):(u*=l-a.yOffset,d*=r,h*=r,f*=l),s.default.createElement(cr,{$flipX:e.flipX,$color:void 0===n?"green":n,style:{top:u,left:d,width:h,height:f}},t.label," (",t.score.toFixed(3),")")}function fr(e){var t,n,a,r,i=e.face,o=e.flipX,l=e.color,c=e.scaling,u=c.pageWidth,d=c.pageHeight,h=c.videoWidth,f=c.videoHeight,p=c.scaledWidth,m=c.scaledHeight;return c.horizontal?(t=i.box.yMin/f*d,n=i.box.xMin/h*p-c.xOffset,a=i.box.width/h*p,r=i.box.height/f*d):(t=i.box.yMin/f*m-c.yOffset,n=i.box.xMin/h*u,a=i.box.width/h*u,r=i.box.height/f*m),s.default.createElement(s.default.Fragment,null,s.default.createElement(cr,{$flipX:o,$color:void 0===l?"green":l,style:{top:t,left:n,width:a,height:r}}),i.keypoints.map((function(e,t){return s.default.createElement(pr,{key:t,point:e,scaling:c,flipX:o})})))}function pr(e){var t,n,a=e.point,r=e.color,i=e.scaling,o=i.videoWidth,l=i.videoHeight;return i.horizontal?(t=a.x/o*i.scaledWidth-i.xOffset,n=a.y/l*i.pageHeight):(t=a.x/o*i.pageWidth,n=a.y/l*i.scaledHeight-i.yOffset),s.default.createElement(ur,{$flipX:e.flipX,$color:void 0===r?"red":r,style:{top:n-=2,left:t-=2}})}var mr,gr,vr,yr,br,wr,xr=u.default.button(mr||(mr=y(["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"],["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"]))),Er=function(e){return s.default.createElement(xr,{onClick:e.onClick,className:e.className},s.default.createElement("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"19.3 19.3 25.499999999999996 25.499999999999996",enableBackground:"new 0 0 64 64",width:16,height:16},s.default.createElement("g",{id:"close-outline-bot_x5F_s1g1_x5F_s2g2_x5F_s3g1_x5F_s4g1"},s.default.createElement("line",{fill:"none",stroke:"#000000",strokeWidth:"1",strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:"10",x1:"19.75",y1:"44.25",x2:"44.25",y2:"19.75"})),s.default.createElement("g",{id:"close-outline-top_x5F_s1g1_x5F_s2g2_x5F_s3g1_x5F_s4g1"},s.default.createElement("line",{fill:"none",stroke:"#000000",strokeWidth:"1",strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:"10",x1:"44.25",y1:"44.25",x2:"19.75",y2:"19.75"}))))},Cr=u.default.div(gr||(gr=y(["\n display: inline-block;\n width: ","px;\n height: ","px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ","px;\n height: ","px;\n margin: 8px;\n border-radius: 50%;\n border: ","px solid\n ",";\n border-color: "," transparent\n "," transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"],["\n display: inline-block;\n width: ","px;\n height: ","px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ","px;\n height: ","px;\n margin: 8px;\n border-radius: 50%;\n border: ","px solid\n ",";\n border-color: "," transparent\n "," transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"])),(function(e){var t=e.$size;return null!=t?t:80}),(function(e){var t=e.$size;return null!=t?t:80}),(function(e){var t=e.$size;return(null!=t?t:80)-16}),(function(e){var t=e.$size;return(null!=t?t:80)-16}),(function(e){var t=e.$thickness;return null!=t?t:6}),(function(e){var t=e.$color;return null!=t?t:"#888"}),(function(e){var t=e.$color;return null!=t?t:"#888"}),(function(e){var t=e.$color;return null!=t?t:"#888"})),kr=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.text,r=e.imageUrl;return s.default.createElement(Ir,{className:n.container},a&&s.default.createElement(Rr,{className:n.text},a),s.default.createElement(Dr,{className:n.imageContainer},s.default.createElement("img",{src:r,alt:"",className:n.image})))},Sr=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.text,r=e.imageUrl;return s.default.createElement(Ir,{className:n.container},s.default.createElement(Rr,{className:n.text},s.default.createElement(Tr,{className:n.spinner,$size:24,$color:"white",$thickness:3}),a),s.default.createElement(Dr,{className:n.imageContainer},s.default.createElement("img",{src:r,alt:"",className:n.image})))},Tr=u.default(Cr)(vr||(vr=y(["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"],["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"]))),Ir=u.default.div(yr||(yr=y(["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"],["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"]))),Rr=u.default.div(br||(br=y(["\n display: block;\n position: absolute;\n top: -32px;\n font: 14px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,\n Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"],["\n display: block;\n position: absolute;\n top: -32px;\n font: 14px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,\n Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"]))),Dr=u.default.div(wr||(wr=y(["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"],["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"])));function Ar(e){return Ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ar(e)}function Nr(e){var t=function(e,t){if("object"!==Ar(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==Ar(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Ar(t)?t:String(t)}function _r(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,Nr(a.key),a)}}var Fr=[],Mr=Fr.forEach,Pr=Fr.slice;var Lr=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Br=function(e,t,n,a){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{path:"/",sameSite:"strict"};n&&(r.expires=new Date,r.expires.setTime(r.expires.getTime()+60*n*1e3)),a&&(r.domain=a),document.cookie=function(e,t,n){var a=n||{};a.path=a.path||"/";var r=encodeURIComponent(t),i="".concat(e,"=").concat(r);if(a.maxAge>0){var o=a.maxAge-0;if(Number.isNaN(o))throw new Error("maxAge should be a Number");i+="; Max-Age=".concat(Math.floor(o))}if(a.domain){if(!Lr.test(a.domain))throw new TypeError("option domain is invalid");i+="; Domain=".concat(a.domain)}if(a.path){if(!Lr.test(a.path))throw new TypeError("option path is invalid");i+="; Path=".concat(a.path)}if(a.expires){if("function"!=typeof a.expires.toUTCString)throw new TypeError("option expires is invalid");i+="; Expires=".concat(a.expires.toUTCString())}if(a.httpOnly&&(i+="; HttpOnly"),a.secure&&(i+="; Secure"),a.sameSite)switch("string"==typeof a.sameSite?a.sameSite.toLowerCase():a.sameSite){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return i}(e,encodeURIComponent(t),r)},Or=function(e){for(var t="".concat(e,"="),n=document.cookie.split(";"),a=0;a<n.length;a++){for(var r=n[a];" "===r.charAt(0);)r=r.substring(1,r.length);if(0===r.indexOf(t))return r.substring(t.length,r.length)}return null},Ur={name:"cookie",lookup:function(e){var t;if(e.lookupCookie&&"undefined"!=typeof document){var n=Or(e.lookupCookie);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupCookie&&"undefined"!=typeof document&&Br(t.lookupCookie,e,t.cookieMinutes,t.cookieDomain,t.cookieOptions)}},jr={name:"querystring",lookup:function(e){var t;if("undefined"!=typeof window){var n=window.location.search;!window.location.search&&window.location.hash&&window.location.hash.indexOf("?")>-1&&(n=window.location.hash.substring(window.location.hash.indexOf("?")));for(var a=n.substring(1).split("&"),r=0;r<a.length;r++){var i=a[r].indexOf("=");if(i>0)a[r].substring(0,i)===e.lookupQuerystring&&(t=a[r].substring(i+1))}}return t}},zr=null,Gr=function(){if(null!==zr)return zr;try{zr="undefined"!==window&&null!==window.localStorage;var e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch(e){zr=!1}return zr},$r={name:"localStorage",lookup:function(e){var t;if(e.lookupLocalStorage&&Gr()){var n=window.localStorage.getItem(e.lookupLocalStorage);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupLocalStorage&&Gr()&&window.localStorage.setItem(t.lookupLocalStorage,e)}},qr=null,Vr=function(){if(null!==qr)return qr;try{qr="undefined"!==window&&null!==window.sessionStorage;var e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch(e){qr=!1}return qr},Wr={name:"sessionStorage",lookup:function(e){var t;if(e.lookupSessionStorage&&Vr()){var n=window.sessionStorage.getItem(e.lookupSessionStorage);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupSessionStorage&&Vr()&&window.sessionStorage.setItem(t.lookupSessionStorage,e)}},Hr={name:"navigator",lookup:function(e){var t=[];if("undefined"!=typeof navigator){if(navigator.languages)for(var n=0;n<navigator.languages.length;n++)t.push(navigator.languages[n]);navigator.userLanguage&&t.push(navigator.userLanguage),navigator.language&&t.push(navigator.language)}return t.length>0?t:void 0}},Kr={name:"htmlTag",lookup:function(e){var t,n=e.htmlTag||("undefined"!=typeof document?document.documentElement:null);return n&&"function"==typeof n.getAttribute&&(t=n.getAttribute("lang")),t}},Yr={name:"path",lookup:function(e){var t;if("undefined"!=typeof window){var n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(n instanceof Array)if("number"==typeof e.lookupFromPathIndex){if("string"!=typeof n[e.lookupFromPathIndex])return;t=n[e.lookupFromPathIndex].replace("/","")}else t=n[0].replace("/","")}return t}},Xr={name:"subdomain",lookup:function(e){var t="number"==typeof e.lookupFromSubdomainIndex?e.lookupFromSubdomainIndex+1:1,n="undefined"!=typeof window&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(n)return n[t]}};var Jr=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.type="languageDetector",this.detectors={},this.init(t,n)}var t,n,a;return t=e,n=[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.services=e||{languageUtils:{}},this.options=function(e){return Mr.call(Pr.call(arguments,1),(function(t){if(t)for(var n in t)void 0===e[n]&&(e[n]=t[n])})),e}(t,this.options||{},{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(e){return e}}),"string"==typeof this.options.convertDetectedLanguage&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(e){return e.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=n,this.addDetector(Ur),this.addDetector(jr),this.addDetector($r),this.addDetector(Wr),this.addDetector(Hr),this.addDetector(Kr),this.addDetector(Yr),this.addDetector(Xr)}},{key:"addDetector",value:function(e){this.detectors[e.name]=e}},{key:"detect",value:function(e){var t=this;e||(e=this.options.order);var n=[];return e.forEach((function(e){if(t.detectors[e]){var a=t.detectors[e].lookup(t.options);a&&"string"==typeof a&&(a=[a]),a&&(n=n.concat(a))}})),n=n.map((function(e){return t.options.convertDetectedLanguage(e)})),this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}},{key:"cacheUserLanguage",value:function(e,t){var n=this;t||(t=this.options.caches),t&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(e)>-1||t.forEach((function(t){n.detectors[t]&&n.detectors[t].cacheUserLanguage(e,n.options)})))}}],n&&_r(t.prototype,n),a&&_r(t,a),Object.defineProperty(t,"prototype",{writable:!1}),e}();Jr.type="languageDetector";const Zr={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class Qr{constructor(e){this.init(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{})}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||Zr,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,a){return a&&!this.debug?null:("string"==typeof e[0]&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new Qr(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new Qr(this.logger,e)}}var ei=new Qr;class ti{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]=this.observers[e]||[],this.observers[e].push(t)})),this}off(e,t){this.observers[e]&&(t?this.observers[e]=this.observers[e].filter((e=>e!==t)):delete this.observers[e])}emit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];if(this.observers[e]){[].concat(this.observers[e]).forEach((e=>{e(...n)}))}if(this.observers["*"]){[].concat(this.observers["*"]).forEach((t=>{t.apply(t,[e,...n])}))}}}function ni(){let e,t;const n=new Promise(((n,a)=>{e=n,t=a}));return n.resolve=e,n.reject=t,n}function ai(e){return null==e?"":""+e}function ri(e,t,n){function a(e){return e&&e.indexOf("###")>-1?e.replace(/###/g,"."):e}function r(){return!e||"string"==typeof e}const i="string"!=typeof t?[].concat(t):t.split(".");for(;i.length>1;){if(r())return{};const t=a(i.shift());!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{}}return r()?{}:{obj:e,k:a(i.shift())}}function ii(e,t,n){const{obj:a,k:r}=ri(e,t,Object);a[r]=n}function oi(e,t){const{obj:n,k:a}=ri(e,t);if(n)return n[a]}function si(e,t,n){for(const a in t)"__proto__"!==a&&"constructor"!==a&&(a in e?"string"==typeof e[a]||e[a]instanceof String||"string"==typeof t[a]||t[a]instanceof String?n&&(e[a]=t[a]):si(e[a],t[a],n):e[a]=t[a]);return e}function li(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var ci={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function ui(e){return"string"==typeof e?e.replace(/[&<>"'\/]/g,(e=>ci[e])):e}const di=[" ",",","?","!",";"];function hi(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const a=t.split(n);let r=e;for(let e=0;e<a.length;++e){if(!r)return;if("string"==typeof r[a[e]]&&e+1<a.length)return;if(void 0===r[a[e]]){let i=2,o=a.slice(e,e+i).join(n),s=r[o];for(;void 0===s&&a.length>e+i;)i++,o=a.slice(e,e+i).join(n),s=r[o];if(void 0===s)return;if(null===s)return null;if(t.endsWith(o)){if("string"==typeof s)return s;if(o&&"string"==typeof s[o])return s[o]}const l=a.slice(e+i).join(n);return l?hi(s,l,n):void 0}r=r[a[e]]}return r}function fi(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class pi extends ti{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=void 0!==a.keySeparator?a.keySeparator:this.options.keySeparator,i=void 0!==a.ignoreJSONStructure?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let o=[e,t];n&&"string"!=typeof n&&(o=o.concat(n)),n&&"string"==typeof n&&(o=o.concat(r?n.split(r):n)),e.indexOf(".")>-1&&(o=e.split("."));const s=oi(this.data,o);return s||!i||"string"!=typeof n?s:hi(this.data&&this.data[e]&&this.data[e][t],n,r)}addResource(e,t,n,a){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const i=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator;let o=[e,t];n&&(o=o.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(o=e.split("."),a=t,t=o[1]),this.addNamespaces(t),ii(this.data,o,a),r.silent||this.emit("added",e,t,n,a)}addResources(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const a in n)"string"!=typeof n[a]&&"[object Array]"!==Object.prototype.toString.apply(n[a])||this.addResource(e,t,a,n[a],{silent:!0});a.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,a,r){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},o=[e,t];e.indexOf(".")>-1&&(o=e.split("."),a=n,n=t,t=o[1]),this.addNamespaces(t);let s=oi(this.data,o)||{};a?si(s,n,r):s={...s,...n},ii(this.data,o,s),i.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var mi={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,a,r){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,n,a,r))})),t}};const gi={};class vi extends ti{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(),function(e,t,n){e.forEach((e=>{t[e]&&(n[e]=t[e])}))}(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=ei.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){if(null==e)return!1;const t=this.resolve(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}});return t&&void 0!==t.res}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const a=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let r=t.ns||this.options.defaultNS||[];const i=n&&e.indexOf(n)>-1,o=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||function(e,t,n){t=t||"",n=n||"";const a=di.filter((e=>t.indexOf(e)<0&&n.indexOf(e)<0));if(0===a.length)return!0;const r=new RegExp(`(${a.map((e=>"?"===e?"\\?":e)).join("|")})`);let i=!r.test(e);if(!i){const t=e.indexOf(n);t>0&&!r.test(e.substring(0,t))&&(i=!0)}return i}(e,n,a));if(i&&!o){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:r};const i=e.split(n);(n!==a||n===a&&this.options.ns.indexOf(i[0])>-1)&&(r=i.shift()),e=i.join(a)}return"string"==typeof r&&(r=[r]),{key:e,namespaces:r}}translate(e,t,n){if("object"!=typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof t&&(t={...t}),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);const a=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:i,namespaces:o}=this.extractFromKey(e[e.length-1],t),s=o[o.length-1],l=t.lng||this.language,c=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(c){const e=t.nsSeparator||this.options.nsSeparator;return a?{res:`${s}${e}${i}`,usedKey:i,exactUsedKey:i,usedLng:l,usedNS:s}:`${s}${e}${i}`}return a?{res:i,usedKey:i,exactUsedKey:i,usedLng:l,usedNS:s}:i}const u=this.resolve(e,t);let d=u&&u.res;const h=u&&u.usedKey||i,f=u&&u.exactUsedKey||i,p=Object.prototype.toString.apply(d),m=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject;if(g&&d&&("string"!=typeof d&&"boolean"!=typeof d&&"number"!=typeof d)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(p)<0&&("string"!=typeof m||"[object Array]"!==p)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,d,{...t,ns:o}):`key '${i} (${this.language})' returned an object instead of string.`;return a?(u.res=e,u):e}if(r){const e="[object Array]"===p,n=e?[]:{},a=e?f:h;for(const e in d)if(Object.prototype.hasOwnProperty.call(d,e)){const i=`${a}${r}${e}`;n[e]=this.translate(i,{...t,joinArrays:!1,ns:o}),n[e]===i&&(n[e]=d[e])}d=n}}else if(g&&"string"==typeof m&&"[object Array]"===p)d=d.join(m),d&&(d=this.extendTranslation(d,e,t,n));else{let a=!1,o=!1;const c=void 0!==t.count&&"string"!=typeof t.count,h=vi.hasDefaultValue(t),f=c?this.pluralResolver.getSuffix(l,t.count,t):"",p=t.ordinal&&c?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",m=t[`defaultValue${f}`]||t[`defaultValue${p}`]||t.defaultValue;!this.isValidLookup(d)&&h&&(a=!0,d=m),this.isValidLookup(d)||(o=!0,d=i);const g=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&o?void 0:d,v=h&&m!==d&&this.options.updateMissing;if(o||a||v){if(this.logger.log(v?"updateKey":"missingKey",l,s,i,v?m:d),r){const e=this.resolve(i,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const n=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&n&&n[0])for(let t=0;t<n.length;t++)e.push(n[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const a=(e,n,a)=>{const r=h&&a!==d?a:g;this.options.missingKeyHandler?this.options.missingKeyHandler(e,s,n,r,v,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,s,n,r,v,t),this.emit("missingKey",e,s,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&c?e.forEach((e=>{this.pluralResolver.getSuffixes(e,t).forEach((n=>{a([e],i+n,t[`defaultValue${n}`]||m)}))})):a(e,i,m))}d=this.extendTranslation(d,e,t,u,n),o&&d===i&&this.options.appendNamespaceToMissingKey&&(d=`${s}:${i}`),(o||a)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${s}:${i}`:i,a?d:void 0):this.options.parseMissingKeyHandler(d))}return a?(u.res=d,u):d}extendTranslation(e,t,n,a,r){var i=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const o="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let s;if(o){const t=e.match(this.interpolator.nestingRegexp);s=t&&t.length}let l=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,n.lng||this.language,n),o){const t=e.match(this.interpolator.nestingRegexp);s<(t&&t.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&a&&a.res&&(n.lng=a.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,a=new Array(e),o=0;o<e;o++)a[o]=arguments[o];return r&&r[0]===a[0]&&!n.context?(i.logger.warn(`It seems you are nesting recursively key: ${a[0]} in key: ${t[0]}`),null):i.translate(...a,t)}),n)),n.interpolation&&this.interpolator.reset()}const o=n.postProcess||this.options.postProcess,s="string"==typeof o?[o]:o;return null!=e&&s&&s.length&&!1!==n.applyPostProcessor&&(e=mi.handle(s,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:a,...n}:n,this)),e}resolve(e){let t,n,a,r,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const s=this.extractFromKey(e,o),l=s.key;n=l;let c=s.namespaces;this.options.fallbackNS&&(c=c.concat(this.options.fallbackNS));const u=void 0!==o.count&&"string"!=typeof o.count,d=u&&!o.ordinal&&0===o.count&&this.pluralResolver.shouldUseIntlApi(),h=void 0!==o.context&&("string"==typeof o.context||"number"==typeof o.context)&&""!==o.context,f=o.lngs?o.lngs:this.languageUtils.toResolveHierarchy(o.lng||this.language,o.fallbackLng);c.forEach((e=>{this.isValidLookup(t)||(i=e,!gi[`${f[0]}-${e}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(i)&&(gi[`${f[0]}-${e}`]=!0,this.logger.warn(`key "${n}" for languages "${f.join(", ")}" won't get resolved as namespace "${i}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),f.forEach((n=>{if(this.isValidLookup(t))return;r=n;const i=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(i,l,n,e,o);else{let e;u&&(e=this.pluralResolver.getSuffix(n,o.count,o));const t=`${this.options.pluralSeparator}zero`,a=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(i.push(l+e),o.ordinal&&0===e.indexOf(a)&&i.push(l+e.replace(a,this.options.pluralSeparator)),d&&i.push(l+t)),h){const n=`${l}${this.options.contextSeparator}${o.context}`;i.push(n),u&&(i.push(n+e),o.ordinal&&0===e.indexOf(a)&&i.push(n+e.replace(a,this.options.pluralSeparator)),d&&i.push(n+t))}}let s;for(;s=i.pop();)this.isValidLookup(t)||(a=s,t=this.getResource(n,e,s,o))})))}))})),{res:t,usedKey:n,exactUsedKey:a,usedLng:r,usedNS:i}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,a):this.resourceStore.getResource(e,t,n,a)}static hasDefaultValue(e){const t="defaultValue";for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,t.length)&&void 0!==e[n])return!0;return!1}}function yi(e){return e.charAt(0).toUpperCase()+e.slice(1)}class bi{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ei.create("languageUtils")}getScriptPartFromCode(e){if(!(e=fi(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=fi(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if("string"==typeof e&&e.indexOf("-")>-1){const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=e.split("-");return this.options.lowerCaseLng?n=n.map((e=>e.toLowerCase())):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=yi(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=yi(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=yi(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const n=this.getLanguagePartFromCode(e);if(this.isSupportedCode(n))return t=n;t=this.options.supportedLngs.find((e=>e===n?e:e.indexOf("-")<0&&n.indexOf("-")<0?void 0:0===e.indexOf(n)?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],e),a=[],r=e=>{e&&(this.isSupportedCode(e)?a.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return"string"==typeof e&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):"string"==typeof e&&r(this.formatLanguageCode(e)),n.forEach((e=>{a.indexOf(e)<0&&r(this.formatLanguageCode(e))})),a}}let wi=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],xi={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}};const Ei=["v1","v2","v3"],Ci=["v4"],ki={zero:0,one:1,two:2,few:3,many:4,other:5};class Si{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=ei.create("pluralResolver"),this.options.compatibilityJSON&&!Ci.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=function(){const e={};return wi.forEach((t=>{t.lngs.forEach((n=>{e[n]={numbers:t.nr,plurals:xi[t.fc]}}))})),e}()}addRule(e,t){this.rules[e]=t}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(fi(e),{type:t.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){const t=this.getRule(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{});return this.shouldUseIntlApi()?t&&t.resolvedOptions().pluralCategories.length>1:t&&t.numbers.length>1}getPluralFormsOfKey(e,t){return this.getSuffixes(e,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).map((e=>`${t}${e}`))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort(((e,t)=>ki[e]-ki[t])).map((e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`)):n.numbers.map((n=>this.getSuffix(e,n,t))):[]}getSuffix(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=this.getRule(e,n);return a?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a.select(t)}`:this.getSuffixRetroCompatible(a,t):(this.logger.warn(`no plural rule found for: ${e}`),"")}getSuffixRetroCompatible(e,t){const n=e.plurals(e.noAbs?t:Math.abs(t));let a=e.numbers[n];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===a?a="plural":1===a&&(a=""));const r=()=>this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString();return"v1"===this.options.compatibilityJSON?1===a?"":"number"==typeof a?`_plural_${a.toString()}`:r():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?r():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!Ei.includes(this.options.compatibilityJSON)}}function Ti(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=function(e,t,n){const a=oi(e,n);return void 0!==a?a:oi(t,n)}(e,t,n);return!i&&r&&"string"==typeof n&&(i=hi(e,n,a),void 0===i&&(i=hi(t,n,a))),i}class Ii{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=ei.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const t=e.interpolation;this.escape=void 0!==t.escape?t.escape:ui,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?li(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?li(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?li(t.nestingPrefix):t.nestingPrefixEscaped||li("$t("),this.nestingSuffix=t.nestingSuffix?li(t.nestingSuffix):t.nestingSuffixEscaped||li(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){this.regexp=new RegExp(`${this.prefix}(.+?)${this.suffix}`,"g");this.regexpUnescape=new RegExp(`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`,"g");this.nestingRegexp=new RegExp(`${this.nestingPrefix}(.+?)${this.nestingSuffix}`,"g")}interpolate(e,t,n,a){let r,i,o;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function l(e){return e.replace(/\$/g,"$$$$")}const c=e=>{if(e.indexOf(this.formatSeparator)<0){const r=Ti(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(r,void 0,n,{...a,...t,interpolationkey:e}):r}const r=e.split(this.formatSeparator),i=r.shift().trim(),o=r.join(this.formatSeparator).trim();return this.format(Ti(t,s,i,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...a,...t,interpolationkey:i})};this.resetRegExp();const u=a&&a.missingInterpolationHandler||this.options.missingInterpolationHandler,d=a&&a.interpolation&&void 0!==a.interpolation.skipOnVariables?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>l(e)},{regex:this.regexp,safeValue:e=>l(this.escapeValue?this.escape(e):e)}].forEach((t=>{for(o=0;r=t.regex.exec(e);){const n=r[1].trim();if(i=c(n),void 0===i)if("function"==typeof u){const t=u(e,r,a);i="string"==typeof t?t:""}else if(a&&Object.prototype.hasOwnProperty.call(a,n))i="";else{if(d){i=r[0];continue}this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),i=""}else"string"==typeof i||this.useRawValueToEscape||(i=ai(i));const s=t.safeValue(i);if(e=e.replace(r[0],s),d?(t.regex.lastIndex+=i.length,t.regex.lastIndex-=r[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}})),e}nest(e,t){let n,a,r,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function o(e,t){const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const a=e.split(new RegExp(`${n}[ ]*{`));let i=`{${a[1]}`;e=a[0],i=this.interpolate(i,r);const o=i.match(/'/g),s=i.match(/"/g);(o&&o.length%2==0&&!s||s.length%2!=0)&&(i=i.replace(/'/g,'"'));try{r=JSON.parse(i),t&&(r={...t,...r})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return delete r.defaultValue,e}for(;n=this.nestingRegexp.exec(e);){let s=[];r={...i},r=r.replace&&"string"!=typeof r.replace?r.replace:r,r.applyPostProcessor=!1,delete r.defaultValue;let l=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){const e=n[1].split(this.formatSeparator).map((e=>e.trim()));n[1]=e.shift(),s=e,l=!0}if(a=t(o.call(this,n[1].trim(),r),r),a&&n[0]===e&&"string"!=typeof a)return a;"string"!=typeof a&&(a=ai(a)),a||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${e}`),a=""),l&&(a=s.reduce(((e,t)=>this.format(e,t,i.lng,{...i,interpolationkey:n[1].trim()})),a.trim())),e=e.replace(n[0],a),this.regexp.lastIndex=0}return e}}function Ri(e){const t={};return function(n,a,r){const i=a+JSON.stringify(r);let o=t[i];return o||(o=e(fi(a),r),t[i]=o),o(n)}}class Di{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=ei.create("formatter"),this.options=e,this.formats={number:Ri(((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)})),currency:Ri(((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)})),datetime:Ri(((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)})),relativetime:Ri(((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")})),list:Ri(((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)}))},this.init(e)}init(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Ri(t)}format(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=t.split(this.formatSeparator).reduce(((e,t)=>{const{formatName:r,formatOptions:i}=function(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const a=e.split("(");t=a[0].toLowerCase().trim();const r=a[1].substring(0,a[1].length-1);"currency"===t&&r.indexOf(":")<0?n.currency||(n.currency=r.trim()):"relativetime"===t&&r.indexOf(":")<0?n.range||(n.range=r.trim()):r.split(";").forEach((e=>{if(!e)return;const[t,...a]=e.split(":"),r=a.join(":").trim().replace(/^'+|'+$/g,"");n[t.trim()]||(n[t.trim()]=r),"false"===r&&(n[t.trim()]=!1),"true"===r&&(n[t.trim()]=!0),isNaN(r)||(n[t.trim()]=parseInt(r,10))}))}return{formatName:t,formatOptions:n}}(t);if(this.formats[r]){let t=e;try{const o=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{};t=this.formats[r](e,o.locale||o.lng||a.locale||a.lng||n,{...i,...a,...o})}catch(e){this.logger.warn(e)}return t}return this.logger.warn(`there was no format function for ${r}`),e}),e);return r}}class Ai extends ti{constructor(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=a,this.logger=ei.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,a.backend,a)}queueLoad(e,t,n,a){const r={},i={},o={},s={};return e.forEach((e=>{let a=!0;t.forEach((t=>{const o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(1===this.state[o]?void 0===i[o]&&(i[o]=!0):(this.state[o]=1,a=!1,void 0===i[o]&&(i[o]=!0),void 0===r[o]&&(r[o]=!0),void 0===s[t]&&(s[t]=!0)))})),a||(o[e]=!0)})),(Object.keys(r).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(r),pending:Object.keys(i),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){const a=e.split("|"),r=a[0],i=a[1];t&&this.emit("failedLoading",r,i,t),n&&this.store.addResourceBundle(r,i,n),this.state[e]=t?-1:2;const o={};this.queue.forEach((n=>{!function(e,t,n,a){const{obj:r,k:i}=ri(e,t,Object);r[i]=r[i]||[],a&&(r[i]=r[i].concat(n)),a||r[i].push(n)}(n.loaded,[r],i),function(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((e=>{o[e]||(o[e]={});const t=n.loaded[e];t.length&&t.forEach((t=>{void 0===o[e][t]&&(o[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",o),this.queue=this.queue.filter((e=>!e.done))}read(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:a,wait:r,callback:i});this.readingCalls++;const o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}o&&s&&a<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,n,a+1,2*r,i)}),r):i(o,s)},s=this.backend[n].bind(this.backend);if(2!==s.length)return s(e,t,o);try{const n=s(e,t);n&&"function"==typeof n.then?n.then((e=>o(null,e))).catch(o):o(null,n)}catch(e){o(e)}}prepareLoading(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),a&&a();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);const r=this.queueLoad(e,t,n,a);if(!r.toLoad.length)return r.pending.length||a(),null;r.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=e.split("|"),a=n[0],r=n[1];this.read(a,r,"read",void 0,void 0,((n,i)=>{n&&this.logger.warn(`${t}loading namespace ${r} for language ${a} failed`,n),!n&&i&&this.logger.log(`${t}loaded namespace ${r} for language ${a}`,i),this.loaded(e,n,i)}))}saveMissing(e,t,n,a,r){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){const s={...i,isUpdate:r},l=this.backend.create.bind(this.backend);if(l.length<6)try{let r;r=5===l.length?l(e,t,n,a,s):l(e,t,n,a),r&&"function"==typeof r.then?r.then((e=>o(null,e))).catch(o):o(null,r)}catch(e){o(e)}else l(e,t,n,a,o,s)}e&&e[0]&&this.store.addResource(e[0],t,n,a)}}}function Ni(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){let t={};if("object"==typeof e[1]&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach((e=>{t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:(e,t,n,a)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function _i(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Fi(){}class Mi extends ti{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n;if(super(),this.options=_i(e),this.services={},this.logger=ei,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach((e=>{"function"==typeof n[e]&&(n[e]=n[e].bind(n))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&("string"==typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const a=Ni();function r(e){return e?"function"==typeof e?new e:e:null}if(this.options={...a,...this.options,..._i(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...a.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){let t;ei.init(this.modules.logger?r(this.modules.logger):null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!=typeof Intl&&(t=Di);const n=new bi(this.options);this.store=new pi(this.options.resources,this.options);const i=this.services;i.logger=ei,i.resourceStore=this.store,i.languageUtils=n,i.pluralResolver=new Si(n,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==a.interpolation.format||(i.formatter=r(t),i.formatter.init(i,this.options),this.options.interpolation.format=i.formatter.format.bind(i.formatter)),i.interpolator=new Ii(this.options),i.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},i.backendConnector=new Ai(r(this.modules.backend),i.resourceStore,i,this.options),i.backendConnector.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];e.emit(t,...a)})),this.modules.languageDetector&&(i.languageDetector=r(this.modules.languageDetector),i.languageDetector.init&&i.languageDetector.init(i,this.options.detection,this.options)),this.modules.i18nFormat&&(i.i18nFormat=r(this.modules.i18nFormat),i.i18nFormat.init&&i.i18nFormat.init(this)),this.translator=new vi(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];e.emit(t,...a)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,n||(n=Fi),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const i=ni(),o=()=>{const e=(e,t)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),i.resolve(t),n(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?o():setTimeout(o,0),i}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fi;const n="string"==typeof e?e:this.language;if("function"==typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(n&&"cimode"===n.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],a=t=>{if(!t)return;if("cimode"===t)return;this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};if(n)a(n);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>a(e)))}this.options.preload&&this.options.preload.forEach((e=>a(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,n){const a=ni();return e||(e=this.languages),t||(t=this.options.ns),n||(n=Fi),this.services.backendConnector.reload(e,t,(e=>{a.resolve(),n(e)})),a}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&mi.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}}changeLanguage(e,t){var n=this;this.isLanguageChangingTo=e;const a=ni();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(e,i)=>{i?(r(i),this.translator.changeLanguage(i),this.isLanguageChangingTo=void 0,this.emit("languageChanged",i),this.logger.log("languageChanged",i)):this.isLanguageChangingTo=void 0,a.resolve((function(){return n.t(...arguments)})),t&&t(e,(function(){return n.t(...arguments)}))},o=t=>{e||t||!this.services.languageDetector||(t=[]);const n="string"==typeof t?t:this.services.languageUtils.getBestMatchFromCodes(t);n&&(this.language||r(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(n)),this.loadResources(n,(e=>{i(e,n)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(o):this.services.languageDetector.detect(o):o(e):o(this.services.languageDetector.detect()),a}getFixedT(e,t,n){var a=this;const r=function(e,t){let i;if("object"!=typeof t){for(var o=arguments.length,s=new Array(o>2?o-2:0),l=2;l<o;l++)s[l-2]=arguments[l];i=a.options.overloadTranslationOptionHandler([e,t].concat(s))}else i={...t};i.lng=i.lng||r.lng,i.lngs=i.lngs||r.lngs,i.ns=i.ns||r.ns,i.keyPrefix=i.keyPrefix||n||r.keyPrefix;const c=a.options.keySeparator||".";let u;return u=i.keyPrefix&&Array.isArray(e)?e.map((e=>`${i.keyPrefix}${c}${e}`)):i.keyPrefix?`${i.keyPrefix}${c}${e}`:e,a.t(u,i)};return"string"==typeof e?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=n,r}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],a=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const i=(e,t)=>{const n=this.services.backendConnector.state[`${e}|${t}`];return-1===n||2===n};if(t.precheck){const e=t.precheck(this,i);if(void 0!==e)return e}return!!this.hasResourceBundle(n,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!i(n,e)||a&&!i(r,e)))}loadNamespaces(e,t){const n=ni();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=ni();"string"==typeof e&&(e=[e]);const a=this.options.preload||[],r=e.filter((e=>a.indexOf(e)<0));return r.length?(this.options.preload=a.concat(r),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new bi(Ni());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new Mi(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fi;const n=e.forkResourceStore;n&&delete e.forkResourceStore;const a={...this.options,...e,isClone:!0},r=new Mi(a);void 0===e.debug&&void 0===e.prefix||(r.logger=r.logger.clone(e));return["store","services","language"].forEach((e=>{r[e]=this[e]})),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},n&&(r.store=new pi(this.store.data,a),r.services.resourceStore=r.store),r.translator=new vi(r.services,a),r.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];r.emit(e,...n)})),r.init(a,t),r.translator.options=a,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Pi=Mi.createInstance();Pi.createInstance=Mi.createInstance;var Li={en:{translation:{}},es:{translation:{"Use your device camera to capture your ID":"Para capturar la identificación hay que utilizar la cámara del dispositivo.","Use your iPhone as a webcam":"Usar el iPhone como cámara web","Models warming up...":"Cargando modelos...","Camera initializing...":"Inicializando la cámara...","Camera access blocked":"Acceso bloqueado a la cámara","Location access blocked":"Acceso bloqueado a la localización",Continue:"Continuar","Processing...":"Procesando...","Your camera permission is disabled":"El permiso de la cámara está desactivado","This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.":"Esta aplicación requiere el acceso a la cámara para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la cámara en el explorador actual.","Your location permission is disabled":"El permiso de la localización está desactivado","This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.":"Esta aplicación requiere el acceso a la localización para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la localización en el explorador actual.",Retry:"Reintentar","Scan the front of ID":"Escanear el frente de la ID","Scan the back of ID":"Escanear el reverso de la ID","Scan the ID page of passport":"Escanear la página de datos del pasaporte","ID Card Front":"Frente de la ID","ID Card Back":"Reverso de la ID",Passport:"Pasaporte","Document not detected":"No se ha detectado el documento","Document is not centered":"Documento no centrado","Document out of focus – try improving the lighting":"Documento no enfocado - hay que tratar de mejorar la iluminación","Document detected, hold still...":"Se ha detectado el documento, no moverse por favor...","Capturing...":"Capturando...","Capture failed!":"Falló la captura","Please flip your ID card...":"Por favor voltea la identificación...","ID card front captured.":"Se ha capturado el frente de la identificación.","ID Capture Successful":"Captura Exitosa de ID","Verify the entire ID was captured clearly with no glare.":"Hay que verificar que toda la ID se vea completa y sin reflejos.",Submit:"Enviar","Submitting...":"Enviando...","Use your device camera to capture your face":"Hay que utilizar la cámara del dispositivo para capturar el rostro","Remove Sunglasses & Hat":"Hay que quitarse lentes y/o la gorra","Avoid Excessive Backlighting":"Hay que evitar demasiada luz en el fondo","Hold still for a few seconds...":"Hay que permanecer quieto por unos segundos...","Look straight into the camera...":"Hay que mirar directamente a la cámara...","Move back...":"Hay que hacerse hacia atrás..","Move forward...":"Hay que hacerse hacia adelante...","Move to the center...":"Hay que moverse hacia el centro...","Please remove your eye coverings (sunglasses, eye patch, etc.)...":"Hay que quitarse lo que cubre los ojos (lentes, parche, etc.)...","Please remove your head coverings (hat, scarf, etc.)...":"Hay que quitarse lo que cubre la cabeza (gorra, mascada, etc.)...","Please remove your mask...":"Hay que quitarse el cubrebocas...","Live face not detected, please try again":"Rostro vivo no detectado. Por favor hay que intentar de nuevo.",Exit:"Salir","Face liveness has been verified!":"Se ha verificado la Prueba de Vida en rostro!",Done:"Terminar","Customer has been identified!":"¡Se ha identificado al cliente!","Customer not found":"Cliente no encontrado","Additional document capture":"Captura de otro documento",Next:"Siguiente","Please sign the box below":"Por favor, hay que firmar en el recuadro de abajo",Accept:"Aceptar",Clear:"Borrar","Video signature has been successfully captured!":"La video firma ha sido exitosa.","Network unreachable":"No hay conexión a internet.","We're having trouble reaching our services, please check your connection and try again.":"Estamos teniendo problemas para alcanzar nuestros servicios, por favor verificar la conexión a internet e intentar de nuevo.","We're sorry, an unexpected error has occurred.":"Lo sentimos, se ha producido un error inesperado."}}};var Bi=function(e){var n=oe().i18n;t.useEffect((function(){"auto"!==e?n.changeLanguage(e):n.changeLanguage()}),[n,e])};function Oi(e,t,n,a){if("string"==typeof n)return n;if("object"==typeof n){var r=n;if(r[t])return r[t];var i=t.split("-")[0];if(r[i])return r[i]}return e(a)}function Ui(e,n){var a=oe(),r=a.t,i=a.i18n;return t.useMemo((function(){return Oi(r,i.language,e,n)}),[n,i.language,r,e])}function ji(e,n){var a=oe(),r=a.t,i=a.i18n;return t.useMemo((function(){return p(p({},e),Object.keys(n).reduce((function(t,a){var o;return p(p({},t),((o={})[a]=Oi(r,i.language,null==e?void 0:e[a],n[a]),o))}),{}))}),[n,i.language,r,e])}var zi,Gi,$i,qi,Vi,Wi,Hi,Ki,Yi,Xi,Ji,Zi,Qi,eo=u.default.div(zi||(zi=y(["\n position: absolute;\n top: calc(",");\n font-weight: bold;\n width: 100%;\n display: flex;\n"],["\n position: absolute;\n top: calc(",");\n font-weight: bold;\n width: 100%;\n display: flex;\n"])),(function(e){var t=e.$top;return null!=t?t:"10vh"})),to=u.default.div(Gi||(Gi=y(["\n margin-left: auto;\n margin-right: auto;\n background: ",";\n color: ",";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"],["\n margin-left: auto;\n margin-right: auto;\n background: ",";\n color: ",";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"])),(function(e){var t,n,a,r,i,o;return null!==(o=null!==(t=e.$background)&&void 0!==t?t:null===(i=null===(a=null===(n=e.theme)||void 0===n?void 0:n.guidanceMessages)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"default"])||void 0===i?void 0:i.backgroundColor)&&void 0!==o?o:"#ccc"}),(function(e){var t,n,a,r,i,o;return null!==(o=null!==(t=e.$textColor)&&void 0!==t?t:null===(i=null===(a=null===(n=e.theme)||void 0===n?void 0:n.guidanceMessages)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"default"])||void 0===i?void 0:i.textColor)&&void 0!==o?o:"black"})),no={videoWidth:0,videoHeight:0,captureStartedAt:null,detectedObjects:[],bestDocument:void 0,bestMrz:void 0,bestPdf417:void 0,documentType:le.NONE,documentInBounds:!1,documentDetectionScore:0,documentDetectionThresholdMet:!1,passportPageDetectionScore:0,passportPageDetectionThresholdMet:!1,mrzDetectionScore:0,mrzDetectionThresholdMet:!1,pdf417DetectionScore:0,pdf417DetectionThresholdMet:!1,focusScore:0,focusThresholdMet:!1,barcodeScanningEnabled:!1,barcodeResult:null,waitingForBarcodeScan:!1,shouldScanBarcode:!1,autoCaptureBarcodeRequired:"mobile",barcodeScanFailedAttempts:0,maxBarcodeScanAttempts:10,isGoodFrame:!1,goodFramesCount:0,goodFramesThreshold:3,goodFramesThresholdMet:!1,lastFrameCapturedAt:null,frameCaptureRate:0,capturing:!1,captured:!1,captureFailed:!1},ao=function(e,t){switch(t.type){case"configure":return p(p(p({},e),t.payload),{goodFramesCount:0,captureStartedAt:new Date,capturing:!1,captured:!1,captureFailed:!1});case"objectsDetected":var n=t.payload.prediction,a=n.detectedObjects,r=n.detectionScore,i=n.detectionThresholdMet,o=n.detectedDocumentType,s=n.passportDetectionScore,l=n.passportDetectionThresholdMet,c=n.mrzDetectionScore,u=n.mrzDetectionThresholdMet,d=n.pdf417DetectionScore,h=n.pdf417DetectionThresholdMet,f=n.bestDocumentOrPassport,m=n.bestMrz,g=n.bestPdf417,v=n.focusScore,y=n.focusThresholdMet,b=n.frameWidth,w=n.frameHeight,x=new Date,E=0,C=e.goodFramesThreshold;e.lastFrameCapturedAt&&(E=1e3/(x.getTime()-e.lastFrameCapturedAt.getTime()))>0&&(C=Math.ceil(3*E));var k=!1;if(f){var S=f.bbox,T=S[0],I=S[1],R=S[2],D=S[3];T*=b,R*=b,k=(I*=w)>20&&I+(D*=w)+20<w&&(T>20||T<20&&T+R>.8*b)&&T+R+20<b}var A=!0===e.autoCaptureBarcodeRequired||"mobile"===e.autoCaptureBarcodeRequired&&_e(),N=e.barcodeScanningEnabled&&h&&A,_=N&&!e.barcodeResult,F=i&&k&&y,M=e.goodFramesCount;return F&&(M+=1),p(p({},e),{videoWidth:b,videoHeight:w,detectedObjects:a,bestDocument:f,bestMrz:m,bestPdf417:g,documentType:o,documentInBounds:k,documentDetectionScore:r,documentDetectionThresholdMet:i,mrzDetectionScore:c,mrzDetectionThresholdMet:u,pdf417DetectionScore:d,pdf417DetectionThresholdMet:h,passportPageDetectionScore:s,passportPageDetectionThresholdMet:l,focusScore:v,focusThresholdMet:y,shouldScanBarcode:N,waitingForBarcodeScan:_,isGoodFrame:F,goodFramesCount:M,goodFramesThreshold:C,goodFramesThresholdMet:M>=C,lastFrameCapturedAt:x,frameCaptureRate:E});case"barcodeScanned":return p(p({},e),{barcodeResult:t.payload.result,waitingForBarcodeScan:!1,autoCaptureBarcodeRequired:!1});case"barcodeScanFailed":var P=p(p({},e),{barcodeScanFailedAttempts:e.barcodeScanFailedAttempts+1});return P.barcodeScanFailedAttempts>=P.maxBarcodeScanAttempts&&(P.autoCaptureBarcodeRequired=!1,P.shouldScanBarcode=!1,P.waitingForBarcodeScan=!1),P;case"capturing":return p(p({},e),{capturing:!0,captured:!1,captureFailed:!1});case"captured":return p(p({},e),{capturing:!1,captured:!0,captureFailed:!1});case"captureFailed":return p(p({},e),{capturing:!1,captured:!1,captureFailed:!0});default:return e}},ro=function(e){var n,r,i,o,l,c,u,d,h,f,p=e.requiredDocumentType,v=e.autoCaptureEnabled,y=void 0===v||v,b=e.autoCaptureScoreThreshold,w=void 0===b?.8:b,x=e.autoCaptureGoodFramesRequired,E=void 0===x?3:x,C=e.autoCaptureBarcodeRequired,k=void 0===C?"mobile":C,S=e.mrzDetectionScoreThreshold,T=void 0===S?.25:S,I=e.passportPageDetectionThreshold,R=void 0===I?.6:I,D=e.pdf417DetectionThreshold,A=void 0===D?.15:D,N=e.focusScoreThreshold,_=void 0===N?.3:N,F=e.barcodeScanningEnabled,M=void 0===F||F,L=e.maxBarcodeScanAttempts,B=void 0===L?10:L,O=e.guidanceMessage,U=e.guidanceSatisfied,j=e.onPrediction,z=e.onBarcodeScanned,G=e.onCapture,$=e.onExit,q=e.processingScreen,V=e.processingDelay,W=void 0===V?0:V,H=e.assets,K=void 0===H?{}:H,Y=e.classNames,X=void 0===Y?{}:Y,J=e.colors,Z=void 0===J?{}:J,Q=e.verbiage,ee=void 0===Q?{}:Q,te=e.debugMode,ne=void 0!==te&&te,ae=De(),re=ae.ref,ie=ae.width,oe=void 0===ie?1:ie,se=ae.height,le=void 0===se?1:se,ce=t.useReducer(ao,no),ue=ce[0],de=ce[1],he=t.useState(""),fe=he[0],pe=he[1],me=t.useState(!1),ge=me[0],ve=me[1],ye=t.useContext(dt),be=ye.cameraRef,we=ye.cameraReady,xe=ye.takePhoto,Ee=ye.videoRef,Ce=ye.videoLoaded,ke=t.useRef(),Se=t.useContext(Xa),Te=Se.ready,Ie=Se.working,Re=Se.setThresholds,Ae=Se.makePrediction,Ne=Se.onPredictionMade,_e=Se.detectionTime,Fe=Se.focusPredictionTime,Me=Se.getBestFrame,Pe=Se.resetBestFrame;t.useEffect((function(){ke.current=new Date}),[]),t.useEffect((function(){de({type:"configure",payload:{requiredDocumentType:p,goodFramesThreshold:E,autoCaptureBarcodeRequired:k,barcodeScanningEnabled:M,maxBarcodeScanAttempts:B}}),Pe(),Re({document:w,passport:R,mrz:T,pdf417:A,focus:_})}),[p,w,_,T,E,k,M,B,R,A,Pe,Re]);var Le=t.useRef(0),Be=t.useRef(!1);t.useEffect((function(){Be.current=Ce&&we&&Te&&!ue.capturing&&!ue.captured}),[we,ue.captured,ue.capturing,Te,Ce]);var Oe=t.useState(null),Ue=Oe[0],je=Oe[1];t.useEffect((function(){if(Te&&we&&Ce)return Le.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){var t,n;return g(this,(function(a){switch(a.label){case 0:if(!Be.current||Ie.current)return[3,5];a.label=1;case 1:return a.trys.push([1,4,,5]),ue.shouldScanBarcode?[4,xe()]:[3,3];case 2:if(!(t=a.sent()))return Le.current=requestAnimationFrame(e),[2];je(t),a.label=3;case 3:return Ee.current&&Ae(Ee.current),[3,5];case 4:return n=a.sent(),console.error("error capturing frame",n),[3,5];case 5:return Le.current=requestAnimationFrame(e),[2]}}))}))})),function(){cancelAnimationFrame(Le.current)}}),[we,Ae,Te,Ie,ue.shouldScanBarcode,xe,Ce,Ee]),t.useEffect((function(){Ne((function(e){de({type:"objectsDetected",payload:{prediction:e}}),null==j||j(e)}))}),[j,Ne]),t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return ue.shouldScanBarcode&&Ue?[4,et(Ue,null===(t=ue.bestPdf417)||void 0===t?void 0:t.bbox)]:[3,2];case 1:(e=n.sent())?(de({type:"barcodeScanned",payload:{result:e}}),null==z||z(e)):de({type:"barcodeScanFailed"}),n.label=2;case 2:return[2]}}))}))}),[z,ue.shouldScanBarcode,null===(n=ue.bestPdf417)||void 0===n?void 0:n.bbox,xe,Ue]);var ze=y&&ue.goodFramesThresholdMet&&!ue.capturing&&!ue.captured&&!ue.waitingForBarcodeScan&&io(ue.captureStartedAt)>=3e3;t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t,n,a,r,i,o,s,l;return g(this,(function(c){switch(c.label){case 0:return ze?(de({type:"capturing"}),[4,Me()]):[2];case 1:return(e=c.sent())?(ve(!0),[4,(u=e,new Promise((function(e){var t=new Image;t.onload=function(){e([t.naturalWidth,t.naturalHeight])},t.src=URL.createObjectURL(u)})))]):(console.log("uh oh, i did not get a photo"),de({type:"captureFailed"}),[2]);case 2:return t=c.sent(),n=t[0],a=t[1],(r=document.createElement("canvas")).width=n,r.height=a,[4,createImageBitmap(e)];case 3:if(i=c.sent(),(n>1920&&a>1080||n>1080&&a>1920)&&ue.barcodeResult){if(n>a?(r.width=1920,r.height=a*(1920/n)):(r.height=1920,r.width=n*(1920/a)),!(o=r.getContext("2d")))return[2];o.drawImage(i,0,0,r.width,r.height)}else{if(!(s=r.getContext("bitmaprenderer")))return[2];s.transferFromImageBitmap(i)}return l=r.toDataURL("image/jpeg",.92),pe(l),setTimeout((function(){var e,t=(new Date).getTime()-(null!==(e=ke.current)&&void 0!==e?e:new Date).getTime();null==G||G(l,n,a,{autoCapture:"Y",captureTime:t}),de({type:"captured"}),ve(!1)}),W),[2]}var u}))}))}),[Me,G,W,ze,ue.barcodeResult]),K.portraitGuidesImageUrl||(K.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),K.landscapeGuidesImageUrl||(K.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg"));var Ge=a.useTheme();Z.guideBoxUnsatisfiedColor||(Z.guideBoxUnsatisfiedColor=null!==(o=null===(i=null===(r=Ge.idCapture)||void 0===r?void 0:r.guideBox)||void 0===i?void 0:i.unsatisfiedColor)&&void 0!==o?o:"white"),Z.guideBoxSatisfiedColor||(Z.guideBoxSatisfiedColor=null!==(u=null===(c=null===(l=Ge.idCapture)||void 0===l?void 0:l.guideBox)||void 0===c?void 0:c.satisfiedColor)&&void 0!==u?u:"green");var $e=ji(ee,{instructionText:"Scan the front of ID",processingIdCardText:"ID card front captured.",capturingText:"Capturing...",captureFailedText:"Capture failed!",guidanceSatisfiedText:"Document detected, hold still...",guidanceTooBlurryText:"Document out of focus – try improving the lighting",guidanceNotCenteredText:"Document is not centered",guidanceNotDetectedText:"Document not detected"}),qe=dr({enabled:ne,pageWidth:oe,pageHeight:le,videoWidth:ue.videoWidth,videoHeight:ue.videoHeight}),Ve=ue.isGoodFrame;return"boolean"==typeof U&&(Ve=U),O||(O=Ve?$e.guidanceSatisfiedText:ue.documentDetectionThresholdMet?ue.documentInBounds?ue.focusThresholdMet?"":$e.guidanceTooBlurryText:$e.guidanceNotCenteredText:$e.guidanceNotDetectedText),ge?s.default.createElement(s.default.Fragment,null,q,fe&&s.default.createElement(kr,{classNames:X.imagePreview,text:$e.processingIdCardText,imageUrl:fe})):""!==fe?s.default.createElement("img",{src:fe,alt:"",style:{maxWidth:"100%",maxHeight:"100%"}}):s.default.createElement(P,{ref:re,className:"flex ".concat(null!==(d=X.container)&&void 0!==d?d:"")},s.default.createElement(Ke,{classNames:X.guides,width:oe,height:le,instruction:ue.captureFailed?$e.captureFailedText:ue.capturing?null==$e?void 0:$e.capturingText:$e.instructionText,portraitGuidesImageUrl:K.portraitGuidesImageUrl,landscapeGuidesImageUrl:K.landscapeGuidesImageUrl,isMirrored:!(null===(h=be.current)||void 0===h?void 0:h.isRearFacing),borderColor:ue.isGoodFrame?Z.guideBoxSatisfiedColor:Z.guideBoxUnsatisfiedColor}),""!==O&&s.default.createElement(eo,{$top:"82.5vh",className:X.guidanceMessageContainer},s.default.createElement(to,{$variant:Ve?"positive":"default",className:X.guidanceMessage},O)),ne&&ue.detectedObjects.length>0&&s.default.createElement(lr,{$flipX:!(null===(f=be.current)||void 0===f?void 0:f.isRearFacing)},ue.detectedObjects.map((function(e,t){var n;return s.default.createElement(hr,{key:t,obj:e,scaling:qe,flipX:!(null===(n=be.current)||void 0===n?void 0:n.isRearFacing)})}))),ne&&s.default.createElement(sr,null,be.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",be.current.label," (",be.current.width,"x",be.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),ue.frameCaptureRate>.75?"✅":"👎"," Frame Rate:"," ",Math.round(1e3*(ue.frameCaptureRate+Number.EPSILON))/1e3," ","fps (",_e,"ms doc detect, ",Fe,"ms focus)",s.default.createElement("br",null),Te?s.default.createElement(s.default.Fragment,null,ue.documentDetectionThresholdMet?"✅":"❌"," Document Score: ",ue.documentDetectionScore," (",ue.documentType,")",s.default.createElement("br",null),ue.documentInBounds?"✅":"❌"," Document In Bounds",s.default.createElement("br",null),ue.focusThresholdMet?"✅":"❌"," Focus Score:"," ",ue.focusScore,s.default.createElement("br",null),ue.goodFramesThresholdMet?"✅":"❌"," Good Frame Count:"," ",ue.goodFramesCount,"/",ue.goodFramesThreshold,M&&ue.autoCaptureBarcodeRequired?s.default.createElement(s.default.Fragment,null,s.default.createElement("br",null),ue.barcodeResult?"✅":"❌"," Barcode Scanned (",Qe()?"Native":"ZXing",","," ",ue.barcodeScanFailedAttempts,"/",ue.maxBarcodeScanAttempts," failed attempts)"):null):s.default.createElement(s.default.Fragment,null,"❌ Models not ready")),s.default.createElement(Er,{onClick:$,className:X.exitCaptureBtn}))},io=function(e){return e?Math.abs((new Date).getTime()-e.getTime()):0},oo=function(e){var n,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(dt).retryCameraAccess;r.imageUrl||(r.imageUrl=Ga+"/camera-disable-icon.png");var f=ji(d,{headingText:"Your camera permission is disabled",descriptionText:"This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.",retryBtnText:"Retry"});return s.default.createElement(j,{className:"flex ".concat(null!==(n=o.container)&&void 0!==n?n:"")},s.default.createElement(so,{className:o.inner},s.default.createElement(lo,{className:o.imageContainer},s.default.createElement("img",{src:r.imageUrl,alt:"",className:o.image})),s.default.createElement("h3",{className:o.heading},f.headingText),s.default.createElement(co,{className:o.description},f.descriptionText),s.default.createElement(uo,{variant:"warning",onClick:h,colors:c.retryBtn,className:o.retryBtn,finished:!0},f.retryBtnText)))},so=u.default(z)($i||($i=y(["\n max-width: 500px;\n height: auto;\n margin: auto;\n"],["\n max-width: 500px;\n height: auto;\n margin: auto;\n"]))),lo=u.default(G)(qi||(qi=y(["\n flex-grow: 0;\n"],["\n flex-grow: 0;\n"]))),co=u.default.p(Vi||(Vi=y(["\n line-height: 1.5;\n margin-bottom: 50px;\n"],["\n line-height: 1.5;\n margin-bottom: 50px;\n"]))),uo=u.default(ue)(Wi||(Wi=y(["\n width: 200px;\n margin: 0 auto;\n"],["\n width: 200px;\n margin: 0 auto;\n"]))),ho=u.default.div(Hi||(Hi=y(["\n height: 48px;\n margin-top: -48px;\n margin-bottom: 8px;\n padding-top: 26px;\n"],["\n height: 48px;\n margin-top: -48px;\n margin-bottom: 8px;\n padding-top: 26px;\n"]))),fo=u.default.input(Ki||(Ki=y(["\n margin-right: 8px;\n"],["\n margin-right: 8px;\n"]))),po=function(e){var n=e.onDismissed,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(Xa).ready,f=t.useContext(dt),p=f.cameraReady,m=f.cameraAccessDenied,g=f.iphoneContinuityCameraAvailable,v=f.setIphoneContinuityCameraAllowed,y=t.useState(!1),b=y[0],w=y[1];r.instructionImageUrl||(r.instructionImageUrl="".concat(Ga,"/WebSDK-Instruction-DL-Capture-3-Portrait.png"));var x=ji(d,{headingText:"Use your device camera to capture your ID",useContinuityCameraText:"Use your iPhone as a webcam",modelsWarmingUpText:"Models warming up...",cameraInitializingText:"Camera initializing...",continueText:"Continue"});return t.useEffect((function(){if(h&&p)return function(){return null};var e=setTimeout((function(){w(!1)}),500);return function(){clearTimeout(e)}}),[p,h]),b?s.default.createElement(s.default.Fragment,null):m?s.default.createElement(oo,{assets:r.cameraAccessDenied,classNames:o.cameraAccessDenied,colors:c.cameraAccessDenied,verbiage:d.cameraAccessDenied}):s.default.createElement(j,{className:o.container},s.default.createElement(z,{className:o.inner},s.default.createElement("h3",{className:o.heading},x.headingText),s.default.createElement(G,{className:o.imageContainer,style:{pointerEvents:"none"}},s.default.createElement("img",{alt:x.headingText,src:r.instructionImageUrl,className:o.image})),s.default.createElement(ho,{className:o.continuityCameraCheckboxContainer},g&&s.default.createElement(s.default.Fragment,null,s.default.createElement(fo,{className:o.continuityCameraCheckbox,id:"use-continuity-camera",type:"checkbox",defaultChecked:!0,onChange:function(e){v(e.target.checked)}}),s.default.createElement("label",{htmlFor:"use-continuity-camera",className:o.continuityCameraCheckboxLabel},x.useContinuityCameraText))),s.default.createElement(ue,{className:o.continueBtn,variant:"positive",disabled:!p||!h,finished:h&&p,colors:c.continueBtn,onClick:function(){w(!0),null==n||n()}},p&&h?x.continueText:h?x.cameraInitializingText:x.modelsWarmingUpText)))},mo=u.default(He)(Yi||(Yi=y(["\n backface-visibility: hidden;\n transform-style: preserve-3d;\n position: relative;\n top: 0;\n left: 0;\n transition: transform ","s;\n transform: ",";\n"],["\n backface-visibility: hidden;\n transform-style: preserve-3d;\n position: relative;\n top: 0;\n left: 0;\n transition: transform ","s;\n transform: ",";\n"])),(function(e){return e.$transitionTime}),(function(e){return e.$transforms})),go=u.default(mo)(Xi||(Xi=y(["\n position: absolute;\n"],["\n position: absolute;\n"]))),vo=function(e){var n,a,r=e.assets,i=void 0===r?{}:r,o=e.classNames,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=De(),h=d.ref,f=d.width,p=void 0===f?1:f,m=d.height,g=void 0===m?1:m,v=t.useContext(dt).cameraRef;i.frontPortraitGuidesImageUrl||(i.frontPortraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),i.frontLandscapeGuidesImageUrl||(i.frontLandscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),i.backPortraitGuidesImageUrl||(i.backPortraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Portrait-2.svg")),i.backLandscapeGuidesImageUrl||(i.backLandscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var y=Ui(u.instructionText,"Please flip your ID card..."),b=_e()?0:50,w=!(null===(n=v.current)||void 0===n?void 0:n.isRearFacing),x=t.useContext(Ae),E=x.orientation,C=x.wrapperRef,k=x.wrapperWidth,S=x.wrapperHeight,T=x.imageAspectRatio,I=x.wrapperAspectRatio,R=x.onImageLoaded,D=x.setDimensions;t.useEffect((function(){D({width:p,height:g})}),[g,D,p]);var A=2*b+8,N=void 0,_=void 0;T>=I?N=k-A:_=S-A;var F=t.useState(1),M=F[0],L=F[1],B=t.useState(0),O=B[0],U=B[1],j=["rotateY(".concat(O,"deg)")];w&&j.push("scaleX(-1)");var z=["rotateY(".concat(180-O,"deg)")];return w&&z.push("scaleX(-1)"),t.useEffect((function(){var e=function(){L(1),U(180),setTimeout((function(){L(0),U(0)}),1500)};setTimeout(e,250);var t=setInterval(e,2500);return function(){clearInterval(t)}}),[]),s.default.createElement(P,{ref:h,className:"flex ".concat(null!==(a=l.container)&&void 0!==a?a:"")},s.default.createElement(ze,{ref:C,className:l.inner},s.default.createElement($e,{$minHeight:b,className:yo(l,"Top")},""!==y&&s.default.createElement(We,{className:l.guideText},y)),s.default.createElement(Ge,{className:l.centerRow},s.default.createElement($e,{$minWidth:b,className:yo(l,"Left")}),s.default.createElement(Ve,{$borderWidth:4,$borderColor:"white",className:l.centerRegion},s.default.createElement(mo,{src:"portrait"===E?i.frontPortraitGuidesImageUrl:i.frontLandscapeGuidesImageUrl,alt:"",className:l.image,$width:N,$height:_,$transitionTime:M,$transforms:j.join(" "),onLoad:R}),s.default.createElement(go,{src:"portrait"===E?i.backPortraitGuidesImageUrl:i.backLandscapeGuidesImageUrl,alt:"",className:l.image,$width:N,$height:_,$transitionTime:M,$transforms:z.join(" ")})),s.default.createElement($e,{$minWidth:b,className:yo(l,"Right")})),s.default.createElement($e,{$minHeight:b,className:yo(l,"Bottom")},""!==y&&s.default.createElement(We,{style:{opacity:0}},y))))},yo=function(e,t){return[e.dimmingRegion,e["dimmingRegion".concat(t)]].filter((function(e){return e})).join(" ")},bo=u.default.div(Ji||(Ji=y(["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n"],["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n"]))),wo=u.default.p(Zi||(Zi=y(["\n font-size: 18px;\n margin: 30px 0;\n"],["\n font-size: 18px;\n margin: 30px 0;\n"]))),xo=function(e){var n=e.capturedDocuments,a=e.onSubmitClick,r=e.onRetryClick,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(I).submissionStatus,f=n.ID_CARD_FRONT,p=n.ID_CARD_BACK,m=n.PASSPORT,g=ji(d,{headingText:"ID Capture Successful",idCardFrontText:"ID Card Front",idCardBackText:"ID Card Back",passportText:"Passport",instructionText:"Verify the entire ID was captured clearly with no glare.",retryText:"Retry",submittingText:"Submitting...",submitText:"Done"});return s.default.createElement(j,{className:o.container},s.default.createElement(z,{className:o.inner},s.default.createElement("h1",{className:o.heading},g.headingText),s.default.createElement(G,{className:o.imageContainer},s.default.createElement($,{className:o.imageRow},f&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.idCardFrontText),s.default.createElement("img",{className:o.image,src:f.imageData,alt:g.idCardFrontText,width:f.width,height:f.height})),p&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.idCardBackText),s.default.createElement("img",{className:o.image,src:p.imageData,alt:g.idCardBackText,width:p.width,height:p.height})),m&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.passportText),s.default.createElement("img",{className:o.image,src:m.imageData,alt:g.passportText,width:m.width,height:m.height})))),s.default.createElement(wo,{className:o.instruction},g.instructionText),s.default.createElement(bo,{className:o.buttonsRow},s.default.createElement(ue,{className:o.retryBtn,variant:"warning",onClick:r,colors:c.retryBtn,finished:!0},g.retryText),s.default.createElement(ue,{className:o.submitBtn,variant:"positive",onClick:a,disabled:h===w.SUBMITTING,colors:c.doneBtn,finished:!0},h===w.SUBMITTING?g.submittingText:g.submitText))))},Eo=function(e){var n,a=e.className,r=t.useContext(dt),i=r.videoRef,o=r.setVideoLoaded,l=r.cameraRef;t.useEffect((function(){o(!1)}),[o]),t.useEffect((function(){var e;i.current&&(null===(e=l.current)||void 0===e?void 0:e.stream)&&(i.current.srcObject=l.current.stream)}),[l,i]);var c=t.useCallback((function(){o(!0)}),[o]);return s.default.createElement(Co,{className:a,autoPlay:!0,playsInline:!0,muted:!0,ref:i,onLoadedData:c,$isRearFacing:null===(n=l.current)||void 0===n?void 0:n.isRearFacing})},Co=u.default.video(Qi||(Qi=y(["\n transform: ",";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"],["\n transform: ",";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"])),(function(e){return e.$isRearFacing?"":"scaleX(-1)"}));function ko(e,n,a){var r=this,i=t.useState(!1),o=i[0],s=i[1];return t.useEffect((function(){n&&e&&("function"==typeof e?m(r,void 0,void 0,(function(){return g(this,(function(t){switch(t.label){case 0:return[4,e()];case 1:return t.sent()?null==a||a():s(!0),[2]}}))})):null==a||a())}),[n,a,e]),!e||o}var So,To,Io,Ro,Do,Ao,No,_o=function(e){var n=e.onCapture,a=e.onFinished,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=t.useRef(null),h=t.useState([]),f=h[0],p=h[1],m=ji(u,{headingText:"We're having some trouble.",descriptionText:"On-device capture guidance failed, please capture photos of your ID card or passport manually.",firstInstructionText:"Please capture the front of your ID card, or the ID page of your passport.",secondInstructionText:"Please capture the back of your ID card, or click Done if submitting a passport.",captureBtnText:"Capture",captureMoreBtnText:"Capture back of ID Card",doneBtnText:"Done"});return s.default.createElement(j,{className:i.container},s.default.createElement(Fo,{className:i.inner},s.default.createElement(Mo,{className:i.heading},m.headingText),s.default.createElement(Po,{className:i.description},m.descriptionText),f.length>0&&s.default.createElement($,{className:i.imageContainer},f.map((function(e,t){return s.default.createElement(Bo,{key:t,className:i.imageCol},s.default.createElement("img",{src:e,alt:"",className:i.image}))}))),f.length<2&&s.default.createElement(Lo,{className:i.instruction},0===f.length?m.firstInstructionText:m.secondInstructionText),s.default.createElement("input",{ref:d,type:"file",accept:"image/*",onChange:function(e){var t,a=null===(t=e.target.files)||void 0===t?void 0:t[0];if(a){var r=new FileReader;r.addEventListener("load",(function(e){var t,a=null===(t=e.target)||void 0===t?void 0:t.result;p((function(e){return v(v([],e,!0),[a],!1)})),null==n||n(a)})),r.readAsDataURL(a)}},hidden:!0}),s.default.createElement(Oo,{className:i.buttonsRow},f.length<2&&s.default.createElement(ue,{variant:f.length>0?"secondary":"positive",className:f.length>0?i.captureMoreBtn:i.captureBtn,colors:f.length>0?l.captureMoreBtn:l.captureBtn,finished:!0,onClick:function(){var e;null===(e=d.current)||void 0===e||e.click()}},f.length>0?m.captureMoreBtnText:m.captureBtnText),f.length>0&&s.default.createElement(ue,{variant:"positive",className:i.doneBtn,colors:l.doneBtn,finished:!0,onClick:function(){null==a||a(f)}},m.doneBtnText))))},Fo=u.default(z)(So||(So=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),Mo=u.default.h3(To||(To=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Po=u.default.p(Io||(Io=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Lo=u.default.p(Ro||(Ro=y(["\n font-weight: bold;\n"],["\n font-weight: bold;\n"]))),Bo=u.default.div(Do||(Do=y(["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"],["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"]))),Oo=u.default(bo)(Ao||(Ao=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"])));!function(e){e.CAPTURING="CAPTURING",e.COMPLETE="COMPLETE"}(No||(No={}));var Uo,jo,zo={captureState:No.CAPTURING,capturedDocuments:{},requestedDocumentType:le.ID_CARD_FRONT,currentDocumentType:le.NONE,differentDocumentTypeDetections:0,barcodeResult:null},Go=function(e,t){var n;switch(t.type){case"predictionMade":var a=t.payload.prediction;return(r=p(p({},e),{currentDocumentType:a.detectedDocumentType})).currentDocumentType===e.requestedDocumentType&&(r.differentDocumentTypeDetections=0),"PASSPORT"===a.detectedDocumentType&&"PASSPORT"!==e.requestedDocumentType&&(r.requestedDocumentType=le.PASSPORT),"PASSPORT"===e.requestedDocumentType&&a.passportDetectionScore<.3&&(r.requestedDocumentType=le.ID_CARD_FRONT),r;case"barcodeScanned":return p(p({},e),{barcodeResult:t.payload.result});case"imageCaptured":var r=p(p({},e),{capturedDocuments:p(p({},e.capturedDocuments),(n={},n[e.requestedDocumentType]=t.payload,n))});return"ID_CARD_FRONT"!==e.requestedDocumentType||e.capturedDocuments.ID_CARD_BACK?"ID_CARD_BACK"!==e.requestedDocumentType||e.capturedDocuments.ID_CARD_FRONT?r.captureState=No.COMPLETE:r.requestedDocumentType=le.ID_CARD_FRONT:r.requestedDocumentType=le.ID_CARD_BACK,r;case"imageCapturedManually":r=p({},e);var i=p(p({},t.payload),{width:0,height:0});return 0===Object.keys(e.capturedDocuments).length?r.capturedDocuments[le.PASSPORT]=i:(r.capturedDocuments={},r.capturedDocuments[le.ID_CARD_FRONT]=e.capturedDocuments[le.PASSPORT],r.capturedDocuments[le.ID_CARD_BACK]=i),r;case"reset":return p({},zo)}},$o=function(e){var n,a,r,i,o,l,c,u,d,h,f,p=e.onSuccess,m=e.onExitCapture,g=e.autoCaptureEnabled,v=void 0===g||g,y=e.autoCaptureGoodFramesRequired,b=void 0===y?3:y,x=e.autoCaptureBarcodeRequired,E=void 0===x?"mobile":x,C=e.barcodeScanningEnabled,S=void 0!==C&&C,T=e.idCardAutoCaptureScoreThreshold,R=void 0===T?.8:T,D=e.passportAutoCaptureScoreThreshold,A=void 0===D?.75:D,N=e.mrzDetectionScoreThreshold,_=void 0===N?.25:N,F=e.idCardFocusScoreThreshold,M=void 0===F?.3:F,L=e.passportFocusScoreThreshold,B=void 0===L?.3:L,O=e.skipSuccessScreen,U=void 0!==O&&O,j=e.releaseCameraAccessOnExit,z=void 0===j||j,G=e.assets,$=void 0===G?{}:G,q=e.classNames,V=void 0===q?{}:q,W=e.colors,H=void 0===W?{}:W,K=e.verbiage,Y=void 0===K?{}:K,X=e.debugMode,J=void 0!==X&&X,Z=t.useReducer(Go,zo),Q=Z[0],ee=Z[1],te=t.useContext(dt).releaseCameraAccess,ne=t.useState(!1),ae=ne[0],re=ne[1],ie=t.useContext(I),oe=ie.submissionStatus,se=ie.setIdFrontImage,ce=ie.setIdBackImage,ue=ie.setPassportImage,de=ie.logIdFrontCaptureAttempt,he=ie.logIdBackCaptureAttempt,fe=t.useContext(Xa).error,pe=t.useRef();t.useEffect((function(){pe.current=new Date}),[Q.capturedDocuments.length]);var me=t.useCallback((function(e){var t;e.operationTime=(new Date).getTime()-(null!==(t=pe.current)&&void 0!==t?t:new Date).getTime(),"ID_CARD_BACK"===Q.requestedDocumentType?he(e):de(e)}),[he,de,Q.requestedDocumentType]),ge=t.useCallback((function(e){ee({type:"predictionMade",payload:{prediction:e}})}),[]),ve=t.useCallback((function(e){ee({type:"barcodeScanned",payload:{result:e}})}),[]),ye=t.useCallback((function(e,t,n,a){me(a),ee({type:"imageCaptured",payload:{imageData:e,width:t,height:n}})}),[me]),be=t.useCallback((function(){var e=Q.capturedDocuments.ID_CARD_FRONT,t=Q.capturedDocuments.ID_CARD_BACK,n=Q.capturedDocuments.PASSPORT,a=e&&k(e.imageData),r=t&&k(t.imageData),i=n&&k(n.imageData);se(a),ce(r),ue(i),z&&te(),setTimeout((function(){null==p||p({idFrontImage:a,idBackImage:r,passportImage:i})}),0)}),[p,te,z,ce,se,ue,Q.capturedDocuments]),we=ko(U,Q.captureState===No.COMPLETE,be),xe=t.useCallback((function(){ee({type:"reset"})}),[]),Ee=t.useState(0),Ce=Ee[0],ke=Ee[1],Se=t.useCallback((function(){re(!1),ke((function(e){return e+1})),ee({type:"reset"}),null==m||m()}),[m]);t.useEffect((function(){oe!==w.READY&&z&&te()}),[te,z,oe]),$.idCardFront||($.idCardFront={}),(a=$.idCardFront).portraitGuidesImageUrl||(a.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),(r=$.idCardFront).landscapeGuidesImageUrl||(r.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),$.idCardBack||($.idCardBack={}),(i=$.idCardBack).portraitGuidesImageUrl||(i.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Portrait-2.svg")),(o=$.idCardBack).landscapeGuidesImageUrl||(o.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg")),$.passport||($.passport={}),(l=$.passport).portraitGuidesImageUrl||(l.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-Passport-Front-SVG-Portrait-2.svg")),(c=$.passport).landscapeGuidesImageUrl||(c.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-Passport-Front-SVG-Landscape-2.svg")),$.flipIdPrompt||($.flipIdPrompt={}),(u=$.flipIdPrompt).frontPortraitGuidesImageUrl||(u.frontPortraitGuidesImageUrl=$.idCardFront.portraitGuidesImageUrl),(d=$.flipIdPrompt).frontLandscapeGuidesImageUrl||(d.frontLandscapeGuidesImageUrl=$.idCardFront.landscapeGuidesImageUrl),(h=$.flipIdPrompt).backPortraitGuidesImageUrl||(h.backPortraitGuidesImageUrl=$.idCardBack.portraitGuidesImageUrl),(f=$.flipIdPrompt).backLandscapeGuidesImageUrl||(f.backLandscapeGuidesImageUrl=$.idCardBack.landscapeGuidesImageUrl);var Te=ji(Y.idCardFront,{instructionText:"Scan the front of ID",processingIdCardText:"ID card front captured."}),Ie=ji(Y.idCardBack,{instructionText:"Scan the back of ID"}),Re=ji(Y.idCardBack,{instructionText:"Scan the ID page of passport"});return fe?s.default.createElement(_o,{onFinished:be,onCapture:function(e){ee({type:"imageCapturedManually",payload:{imageData:e}})},classNames:V.fallback,colors:H.fallback,verbiage:Y.fallback}):s.default.createElement(P,{className:"flex ".concat(null!==(n=null==V?void 0:V.container)&&void 0!==n?n:"")},Q.captureState!==No.COMPLETE&&s.default.createElement(Eo,{className:null==V?void 0:V.cameraFeed}),ae&&function(){var e=Object.keys(Q.capturedDocuments).length;switch(Q.requestedDocumentType){case le.ID_CARD_FRONT:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Q.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:R,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:!1,mrzDetectionScoreThreshold:_,focusScoreThreshold:M,onPrediction:ge,onCapture:ye,onExit:Se,processingDelay:3500,assets:$.idCardFront,classNames:null==V?void 0:V.capture,colors:H,verbiage:Te,debugMode:J,processingScreen:s.default.createElement(vo,{assets:$.flipIdPrompt,classNames:V.flipIdPrompt,verbiage:Y.flipIdPrompt})});case le.ID_CARD_BACK:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Q.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:R,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:S,mrzDetectionScoreThreshold:_,focusScoreThreshold:M,onPrediction:ge,onBarcodeScanned:ve,onCapture:ye,onExit:Se,assets:$.idCardBack,classNames:null==V?void 0:V.capture,colors:H,verbiage:Ie,debugMode:J});case le.PASSPORT:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Q.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:A,mrzDetectionScoreThreshold:_,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:!1,focusScoreThreshold:B,onPrediction:ge,onBarcodeScanned:ve,onCapture:ye,onExit:Se,assets:$.passport,classNames:null==V?void 0:V.capture,colors:H,verbiage:Re,debugMode:J});default:return null}}(),!ae&&s.default.createElement(po,{key:Ce,assets:$.loadingOverlay,classNames:V.loadingOverlay,colors:H.loadingOverlay,verbiage:Y.loadingOverlay,onDismissed:function(){re(!0)}}),Q.captureState===No.COMPLETE&&we&&s.default.createElement(xo,{capturedDocuments:Q.capturedDocuments,barcodeResult:Q.barcodeResult,classNames:V.success,onSubmitClick:be,onRetryClick:xe,colors:H.success,verbiage:Y.success}))},qo=u.default.div(Uo||(Uo=y(["\n position: absolute;\n z-index: 1000;\n width: 100%;\n height: 100%;\n display: flex;\n"],["\n position: absolute;\n z-index: 1000;\n width: 100%;\n height: 100%;\n display: flex;\n"]))),Vo=u.default.div(jo||(jo=y(["\n border-width: ","px;\n border-color: ",";\n border-style: solid;\n border-radius: 50%;\n aspect-ratio: 1 / 1.618;\n height: 50%;\n margin: auto;\n"],["\n border-width: ","px;\n border-color: ",";\n border-style: solid;\n border-radius: 50%;\n aspect-ratio: 1 / 1.618;\n height: 50%;\n margin: auto;\n"])),(function(e){return e.$borderWidth}),(function(e){var t,n,a,r;return null!==(r=null!==(t=e.$borderColor)&&void 0!==t?t:null===(a=null===(n=e.theme.selfieCapture)||void 0===n?void 0:n.guides)||void 0===a?void 0:a["".concat(e.$variant,"Color")])&&void 0!==r?r:"white"})),Wo=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.variant,r=e.borderWidth;return s.default.createElement(qo,{className:n.container},s.default.createElement(Vo,{className:n.oval,$variant:void 0===a?"unsatisfied":a,$borderWidth:void 0===r?3:r,$borderColor:e.borderColor}))},Ho=self;function Ko(){throw Error("Invalid UTF8")}function Yo(e,t){return t=String.fromCharCode.apply(null,t),null==e?t:e+t}let Xo,Jo;const Zo="undefined"!=typeof TextDecoder;let Qo;const es="undefined"!=typeof TextEncoder;function ts(e){if(es)e=(Qo||=new TextEncoder).encode(e);else{let n=0;const a=new Uint8Array(3*e.length);for(let r=0;r<e.length;r++){var t=e.charCodeAt(r);if(128>t)a[n++]=t;else{if(2048>t)a[n++]=t>>6|192;else{if(55296<=t&&57343>=t){if(56319>=t&&r<e.length){const i=e.charCodeAt(++r);if(56320<=i&&57343>=i){a[n++]=(t=1024*(t-55296)+i-56320+65536)>>18|240,a[n++]=t>>12&63|128,a[n++]=t>>6&63|128,a[n++]=63&t|128;continue}r--}t=65533}a[n++]=t>>12|224,a[n++]=t>>6&63|128}a[n++]=63&t|128}}e=n===a.length?a:a.subarray(0,n)}return e}var ns,as;e:{for(var rs=["CLOSURE_FLAGS"],is=Ho,os=0;os<rs.length;os++)if(null==(is=is[rs[os]])){as=null;break e}as=is}var ss,ls=as&&as[610401301];ns=null!=ls&&ls;const cs=Ho.navigator;function us(e){return!!ns&&!!ss&&ss.brands.some((({brand:t})=>t&&-1!=t.indexOf(e)))}function ds(e){var t;return(t=Ho.navigator)&&(t=t.userAgent)||(t=""),-1!=t.indexOf(e)}function hs(){return!!ns&&!!ss&&0<ss.brands.length}function fs(){return hs()?us("Chromium"):(ds("Chrome")||ds("CriOS"))&&!(!hs()&&ds("Edge"))||ds("Silk")}ss=cs&&cs.userAgentData||null;var ps=!hs()&&(ds("Trident")||ds("MSIE"));!ds("Android")||fs(),fs(),ds("Safari")&&(fs()||!hs()&&ds("Coast")||!hs()&&ds("Opera")||!hs()&&ds("Edge")||(hs()?us("Microsoft Edge"):ds("Edg/"))||hs()&&us("Opera"));var ms={},gs=null;function vs(){if(!gs){gs={};for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"],n=0;5>n;n++){var a=e.concat(t[n].split(""));ms[n]=a;for(var r=0;r<a.length;r++){var i=a[r];void 0===gs[i]&&(gs[i]=r)}}}}var ys="undefined"!=typeof Uint8Array,bs=!ps&&"function"==typeof btoa;function ws(e){if(!bs){var t;void 0===t&&(t=0),vs(),t=ms[t];var n=Array(Math.floor(e.length/3)),a=t[64]||"";let l=0,c=0;for(;l<e.length-2;l+=3){var r=e[l],i=e[l+1],o=e[l+2],s=t[r>>2];n[c++]=s+(r=t[(3&r)<<4|i>>4])+(i=t[(15&i)<<2|o>>6])+(o=t[63&o])}switch(s=0,o=a,e.length-l){case 2:o=t[(15&(s=e[l+1]))<<2]||a;case 1:n[c]=t[(e=e[l])>>2]+t[(3&e)<<4|s>>4]+o+a}return n.join("")}for(t="",n=0,a=e.length-10240;n<a;)t+=String.fromCharCode.apply(null,e.subarray(n,n+=10240));return t+=String.fromCharCode.apply(null,n?e.subarray(n):e),btoa(t)}const xs=/[-_.]/g,Es={"-":"+",_:"/",".":"="};function Cs(e){return Es[e]||""}function ks(e){if(!bs)return function(e){var t=e.length,n=3*t/4;n%3?n=Math.floor(n):-1!="=.".indexOf(e[t-1])&&(n=-1!="=.".indexOf(e[t-2])?n-2:n-1);var a=new Uint8Array(n),r=0;return function(e,t){function n(t){for(;a<e.length;){var n=e.charAt(a++),r=gs[n];if(null!=r)return r;if(!/^[\s\xa0]*$/.test(n))throw Error("Unknown base64 encoding at char: "+n)}return t}vs();for(var a=0;;){var r=n(-1),i=n(0),o=n(64),s=n(64);if(64===s&&-1===r)break;t(r<<2|i>>4),64!=o&&(t(i<<4&240|o>>2),64!=s&&t(o<<6&192|s))}}(e,(function(e){a[r++]=e})),r!==n?a.subarray(0,r):a}(e);xs.test(e)&&(e=e.replace(xs,Cs)),e=atob(e);const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function Ss(e){return ys&&null!=e&&e instanceof Uint8Array}let Ts;function Is(){return Ts||=new Uint8Array(0)}var Rs={};let Ds;function As(e){if(e!==Rs)throw Error("illegal external caller")}function Ns(){return Ds||=new Fs(null,Rs)}function _s(e){As(Rs);var t=e.N;return null==(t=null==t||Ss(t)?t:"string"==typeof t?ks(t):null)?t:e.N=t}var Fs=class{constructor(e,t){if(As(t),this.N=e,null!=e&&0===e.length)throw Error("ByteString should be constructed with non-empty values")}ha(){const e=_s(this);return e?new Uint8Array(e):Is()}};function Ms(e,t){return Error(`Invalid wire type: ${e} (at position ${t})`)}function Ps(){return Error("Failed to read varint, encoding is invalid.")}function Ls(e,t){return Error(`Tried to read past the end of the data ${t} > ${e}`)}function Bs(e){return 0==e.length?Ns():new Fs(e,Rs)}function Os(e){if("string"==typeof e)return{buffer:ks(e),H:!1};if(Array.isArray(e))return{buffer:new Uint8Array(e),H:!1};if(e.constructor===Uint8Array)return{buffer:e,H:!1};if(e.constructor===ArrayBuffer)return{buffer:new Uint8Array(e),H:!1};if(e.constructor===Fs)return{buffer:_s(e)||Is(),H:!0};if(e instanceof Uint8Array)return{buffer:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),H:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}const Us="function"==typeof Uint8Array.prototype.slice;let js,zs=0,Gs=0;function $s(e){const t=0>e;let n=(e=Math.abs(e))>>>0;if(e=Math.floor((e-n)/4294967296),t){const[t,a]=Ks(n,e);e=a,n=t}zs=n>>>0,Gs=e>>>0}function qs(e){const t=js||=new DataView(new ArrayBuffer(8));t.setFloat32(0,+e,!0),Gs=0,zs=t.getUint32(0,!0)}function Vs(e,t){return 4294967296*t+(e>>>0)}function Ws(e,t){const n=2147483648&t;return n&&(t=~t>>>0,0==(e=1+~e>>>0)&&(t=t+1>>>0)),e=Vs(e,t),n?-e:e}function Hs(e){if(16>e.length)$s(Number(e));else if("function"==typeof BigInt)e=BigInt(e),zs=Number(e&BigInt(4294967295))>>>0,Gs=Number(e>>BigInt(32)&BigInt(4294967295));else{const t=+("-"===e[0]);Gs=zs=0;const n=e.length;for(let a=t,r=(n-t)%6+t;r<=n;a=r,r+=6){const t=Number(e.slice(a,r));Gs*=1e6,zs=1e6*zs+t,4294967296<=zs&&(Gs+=Math.trunc(zs/4294967296),Gs>>>=0,zs>>>=0)}if(t){const[e,t]=Ks(zs,Gs);zs=e,Gs=t}}}function Ks(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function Ys(e,t,{R:n=!1}={}){e.R=n,t&&(t=Os(t),e.h=t.buffer,e.s=t.H,e.v=0,e.l=e.h.length,e.g=e.v)}function Xs(e,t){if(e.g=t,t>e.l)throw Ls(e.l,t)}function Js(e,t){let n,a=0,r=0,i=0;const o=e.h;let s=e.g;do{n=o[s++],a|=(127&n)<<i,i+=7}while(32>i&&128&n);for(32<i&&(r|=(127&n)>>4),i=3;32>i&&128&n;i+=7)n=o[s++],r|=(127&n)<<i;if(Xs(e,s),128>n)return t(a>>>0,r>>>0);throw Ps()}function Zs(e){let t=0,n=e.g;const a=n+10,r=e.h;for(;n<a;){const a=r[n++];if(t|=a,0==(128&a))return Xs(e,n),!!(127&t)}throw Ps()}function Qs(e){var t=e.h;const n=e.g,a=t[n],r=t[n+1],i=t[n+2];return t=t[n+3],Xs(e,e.g+4),(a<<0|r<<8|i<<16|t<<24)>>>0}function el(e,t){if(0>t)throw Error(`Tried to read a negative byte length: ${t}`);const n=e.g,a=n+t;if(a>e.l)throw Ls(t,e.l-n);return e.g=a,n}function tl(e,t){if(0==t)return Ns();var n=el(e,t);return e.R&&e.s?n=e.h.subarray(n,n+t):(e=e.h,n=n===(t=n+t)?Is():Us?e.slice(n,t):new Uint8Array(e.subarray(n,t))),Bs(n)}var nl=class{constructor(e,t){this.h=null,this.s=!1,this.g=this.l=this.v=0,Ys(this,e,t)}m(){const e=this.h;let t=this.g,n=e[t++],a=127&n;if(128&n&&(n=e[t++],a|=(127&n)<<7,128&n&&(n=e[t++],a|=(127&n)<<14,128&n&&(n=e[t++],a|=(127&n)<<21,128&n&&(n=e[t++],a|=n<<28,128&n&&128&e[t++]&&128&e[t++]&&128&e[t++]&&128&e[t++]&&128&e[t++])))))throw Ps();return Xs(this,t),a}j(){return this.m()>>>0}A(){var e=Qs(this);const t=2*(e>>31)+1,n=e>>>23&255;return e&=8388607,255==n?e?NaN:1/0*t:0==n?t*Math.pow(2,-149)*e:t*Math.pow(2,n-150)*(e+Math.pow(2,23))}C(){return this.m()}},al=[];function rl(e){var t=e.g;if(t.g==t.l)return!1;e.l=e.g.g;var n=e.g.j();if(t=n>>>3,!(0<=(n&=7)&&5>=n))throw Ms(n,e.l);if(1>t)throw Error(`Invalid field number: ${t} (at position ${e.l})`);return e.m=t,e.h=n,!0}function il(e){switch(e.h){case 0:0!=e.h?il(e):Zs(e.g);break;case 1:Xs(e=e.g,e.g+8);break;case 2:if(2!=e.h)il(e);else{var t=e.g.j();Xs(e=e.g,e.g+t)}break;case 5:Xs(e=e.g,e.g+4);break;case 3:for(t=e.m;;){if(!rl(e))throw Error("Unmatched start-group tag: stream EOF");if(4==e.h){if(e.m!=t)throw Error("Unmatched end-group tag");break}il(e)}break;default:throw Ms(e.h,e.l)}}function ol(e,t,n){const a=e.g.l,r=e.g.j(),i=e.g.g+r;let o=i-a;if(0>=o&&(e.g.l=i,n(t,e,void 0,void 0,void 0),o=i-e.g.g),o)throw Error(`Message parsing ended unexpectedly. Expected to read ${r} bytes, instead read ${r-o} bytes, either the data ended unexpectedly or the message misreported its own length`);return e.g.g=i,e.g.l=a,t}function sl(e){var t=e.g.j(),n=el(e=e.g,t);if(e=e.h,Zo){var a,r=e;(a=Jo)||(a=Jo=new TextDecoder("utf-8",{fatal:!0})),e=n+t,r=0===n&&e===r.length?r:r.subarray(n,e);try{var i=a.decode(r)}catch(e){if(void 0===Xo){try{a.decode(new Uint8Array([128]))}catch(e){}try{a.decode(new Uint8Array([97])),Xo=!0}catch(e){Xo=!1}}throw!Xo&&(Jo=void 0),e}}else{t=(i=n)+t,n=[];let s,l=null;for(;i<t;){var o=e[i++];128>o?n.push(o):224>o?i>=t?Ko():(s=e[i++],194>o||128!=(192&s)?(i--,Ko()):n.push((31&o)<<6|63&s)):240>o?i>=t-1?Ko():(s=e[i++],128!=(192&s)||224===o&&160>s||237===o&&160<=s||128!=(192&(r=e[i++]))?(i--,Ko()):n.push((15&o)<<12|(63&s)<<6|63&r)):244>=o?i>=t-2?Ko():(s=e[i++],128!=(192&s)||0!=s-144+(o<<28)>>30||128!=(192&(r=e[i++]))||128!=(192&(a=e[i++]))?(i--,Ko()):(o=(7&o)<<18|(63&s)<<12|(63&r)<<6|63&a,n.push(55296+((o-=65536)>>10&1023),56320+(1023&o)))):Ko(),8192<=n.length&&(l=Yo(l,n),n.length=0)}i=Yo(l,n)}return i}function ll(e){const t=e.g.j();return tl(e.g,t)}function cl(e,t,n){var a=e.g.j();for(a=e.g.g+a;e.g.g<a;)n.push(t.call(e.g))}var ul=[];function dl(e){return e?/^\d+$/.test(e)?(Hs(e),new hl(zs,Gs)):null:fl||=new hl(0,0)}var hl=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let fl;function pl(e){return e?/^-?\d+$/.test(e)?(Hs(e),new ml(zs,Gs)):null:gl||=new ml(0,0)}var ml=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let gl;function vl(e,t,n){for(;0<n||127<t;)e.g.push(127&t|128),t=(t>>>7|n<<25)>>>0,n>>>=7;e.g.push(t)}function yl(e,t){for(;127<t;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function bl(e,t){if(0<=t)yl(e,t);else{for(let n=0;9>n;n++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function wl(e,t){e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function xl(e,t){0!==t.length&&(e.l.push(t),e.h+=t.length)}function El(e,t,n){yl(e.g,8*t+n)}function Cl(e,t){return El(e,t,2),t=e.g.end(),xl(e,t),t.push(e.h),t}function kl(e,t){var n=t.pop();for(n=e.h+e.g.length()-n;127<n;)t.push(127&n|128),n>>>=7,e.h++;t.push(n),e.h++}function Sl(e,t,n){El(e,t,2),yl(e.g,n.length),xl(e,e.g.end()),xl(e,n)}function Tl(e,t,n,a){null!=n&&(t=Cl(e,t),a(n,e),kl(e,t))}class Il{constructor(e,t,n){this.g=e,this.h=t,this.l=n}}function Rl(e){return Array.prototype.slice.call(e)}const Dl="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():void 0;var Al=Dl?(e,t)=>{e[Dl]|=t}:(e,t)=>{void 0!==e.D?e.D|=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Nl(e){const t=Fl(e);1!=(1&t)&&(Object.isFrozen(e)&&(e=Rl(e)),Pl(e,1|t))}var _l=Dl?(e,t)=>{e[Dl]&=~t}:(e,t)=>{void 0!==e.D&&(e.D&=~t)},Fl=Dl?e=>0|e[Dl]:e=>0|e.D,Ml=Dl?e=>e[Dl]:e=>e.D,Pl=Dl?(e,t)=>{e[Dl]=t}:(e,t)=>{void 0!==e.D?e.D=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Ll(){var e=[];return Al(e,1),e}function Bl(e){return Al(e,34),e}function Ol(e,t){Pl(t,-255&(0|e))}function Ul(e,t){Pl(t,-221&(34|e))}function jl(e){return 0==(e=e>>11&1023)?536870912:e}var zl,Gl={};function $l(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)&&e.constructor===Object}function ql(e,t,n){if(null!=e)if("string"==typeof e)e=e?new Fs(e,Rs):Ns();else if(e.constructor!==Fs)if(Ss(e))e=n?Bs(e):e.length?new Fs(new Uint8Array(e),Rs):Ns();else{if(!t)throw Error();e=void 0}return e}const Vl=[];function Wl(e){if(2&e)throw Error()}Pl(Vl,55),zl=Object.freeze(Vl);class Hl{constructor(e,t,n){this.l=0,this.g=e,this.h=t,this.m=n}next(){if(this.l<this.g.length){const e=this.g[this.l++];return{done:!1,value:this.h?this.h.call(this.m,e):e}}return{done:!0,value:void 0}}[Symbol.iterator](){return new Hl(this.g,this.h,this.m)}}var Kl={};let Yl,Xl;function Jl(e,t){(t=Yl?t[Yl]:void 0)&&(e[Yl]=Rl(t))}function Zl(e,t){e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity=t}function Ql(e){return null==e?e:"number"==typeof e||"NaN"===e||"Infinity"===e||"-Infinity"===e?Number(e):void 0}function ec(e){return null==e?e:"boolean"==typeof e||"number"==typeof e?!!e:void 0}function tc(e){return"number"==typeof e&&Number.isFinite(e)||!!e&&"string"==typeof e&&isFinite(e)}function nc(e){if(null==e)return e;if("string"==typeof e){if(!e)return;e=+e}return"number"==typeof e?e:void 0}function ac(e){if(null==e)return e;if("string"==typeof e){if(!e)return;e=+e}return"number"==typeof e?e:void 0}function rc(e){if("string"!=typeof e)throw Error();return e}function ic(e){if(null!=e&&"string"!=typeof e)throw Error();return e}function oc(e){return null==e||"string"==typeof e?e:void 0}function sc(e,t,n,a){var r=!1;return null==e||"object"!=typeof e||(r=Array.isArray(e))||e.M!==Gl?r?(0===(r=n=Fl(e))&&(r|=32&a),(r|=2&a)!==n&&Pl(e,r),new t(e)):(n?2&a?(e=t[lc])?t=e:(Bl((e=new t).u),t=t[lc]=e):t=new t:t=void 0,t):e}const lc="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():"di";function cc(e){return e}function uc(e,t,n){return"string"==typeof(e="number"==(t=typeof e)||"string"===t?e:n?0:void 0)&&(n=+e,Number.isSafeInteger(n))?n:e}let dc,hc,fc;function pc(e){switch(typeof e){case"boolean":return hc||=[0,void 0,!0];case"number":return 0<e?void 0:0===e?fc||=[0,void 0]:[-e,void 0];case"string":return[0,e];case"object":return e}}function mc(e,t){return gc(e,t[0],t[1])}function gc(e,t,n){if(null==e&&(e=dc),dc=void 0,null==e){var a=96;n?(e=[n],a|=512):e=[],t&&(a=-2095105&a|(1023&t)<<11)}else{if(!Array.isArray(e))throw Error();if(64&(a=Fl(e)))return Xl&&delete e[Xl],e;if(a|=64,n&&(a|=512,n!==e[0]))throw Error();e:{var r=(n=e).length;if(r){const e=r-1;var i=n[e];if($l(i)){1024<=(r=e-(t=+!!(512&(a|=256))-1))&&(vc(n,t,i),r=1023),a=-2095105&a|(1023&r)<<11;break e}}t&&(i=+!!(512&a)-1,1024<(t=Math.max(t,r-i))&&(vc(n,i,{}),a|=256,t=1023),a=-2095105&a|(1023&t)<<11)}}return Pl(e,a),e}function vc(e,t,n){const a=1023+t,r=e.length;for(let i=a;i<r;i++){const a=e[i];null!=a&&a!==n&&(n[i-t]=a)}e.length=a+1,e[a]=n}function yc(e){if(2&e.g)throw Error("Cannot mutate an immutable Map")}var bc=class extends Map{constructor(e,t,n=cc,a=cc){super();let r=Fl(e);r|=64,Pl(e,r),this.g=r,this.l=t,this.h=n||cc,this.j=this.l?wc:a||cc;for(let i=0;i<e.length;i++){const o=e[i],s=n(o[0],!1,!0);let l=o[1];t?void 0===l&&(l=null):l=a(o[1],!1,!0,void 0,void 0,r),super.set(s,l)}}s(e=xc){return this.m(e)}m(e=xc){const t=[],n=super.entries();for(var a;!(a=n.next()).done;)(a=a.value)[0]=e(a[0]),a[1]=e(a[1]),t.push(a);return t}clear(){yc(this),super.clear()}delete(e){return yc(this),super.delete(this.h(e,!0,!1))}entries(){var e=this.A();return new Hl(e,Ec,this)}keys(){return this.C()}values(){var e=this.A();return new Hl(e,bc.prototype.get,this)}forEach(e,t){super.forEach(((n,a)=>{e.call(t,this.get(a),a,this)}))}set(e,t){return yc(this),null==(e=this.h(e,!0,!1))?this:null==t?(super.delete(e),this):super.set(e,this.j(t,!0,!0,this.l,!1,this.g))}I(e){const t=this.h(e[0],!1,!0);e=e[1],e=this.l?void 0===e?null:e:this.j(e,!1,!0,void 0,!1,this.g),super.set(t,e)}has(e){return super.has(this.h(e,!1,!1))}get(e){e=this.h(e,!1,!1);const t=super.get(e);if(void 0!==t){var n=this.l;return n?((n=this.j(t,!1,!0,n,this.v,this.g))!==t&&super.set(e,n),n):t}}A(){return Array.from(super.keys())}C(){return super.keys()}[Symbol.iterator](){return this.entries()}};function wc(e,t,n,a,r,i){return e=sc(e,a,n,i),r&&(e=Ac(e)),e}function xc(e){return e}function Ec(e){return[e,this.get(e)]}function Cc(e,t,n,a,r,i){if(null!=e){if(Array.isArray(e))e=r&&0==e.length&&1&Fl(e)?void 0:i&&2&Fl(e)?e:kc(e,t,n,void 0!==a,r,i);else if($l(e)){const o={};for(let s in e)o[s]=Cc(e[s],t,n,a,r,i);e=o}else e=t(e,a);return e}}function kc(e,t,n,a,r,i){const o=a||n?Fl(e):0;a=a?!!(32&o):void 0;const s=Rl(e);for(let e=0;e<s.length;e++)s[e]=Cc(s[e],t,n,a,r,i);return n&&(Jl(s,e),n(o,s)),s}function Sc(e){return Cc(e,Tc,void 0,void 0,!1,!1)}function Tc(e){return e.M===Gl?e.toJSON():e instanceof bc?e.s(Sc):function(e){switch(typeof e){case"number":return isFinite(e)?e:String(e);case"boolean":return e?1:0;case"object":if(e&&!Array.isArray(e)){if(Ss(e))return ws(e);if(e instanceof Fs){const t=e.N;return null==t?"":"string"==typeof t?t:e.N=ws(t)}if(e instanceof bc)return e.s()}}return e}(e)}function Ic(e,t,n=Ul){if(null!=e){if(ys&&e instanceof Uint8Array)return t?e:new Uint8Array(e);if(Array.isArray(e)){var a=Fl(e);return 2&a?e:(t&&=0===a||!!(32&a)&&!(64&a||!(16&a)),t?(Pl(e,34|a),4&a&&Object.freeze(e),e):kc(e,Ic,4&a?Ul:n,!0,!1,!0))}return e.M===Gl?e=2&(a=Ml(n=e.u))?e:Rc(e,n,a,!0):e instanceof bc&&(n=Bl(e.m(Ic)),e=new bc(n,e.l,e.h,e.j)),e}}function Rc(e,t,n,a){return e=e.constructor,dc=t=Dc(t,n,a),t=new e(t),dc=void 0,t}function Dc(e,t,n){const a=n||2&t?Ul:Ol,r=!!(32&t);return e=function(e,t,n){const a=Rl(e);var r=a.length;const i=256&t?a[r-1]:void 0;for(r+=i?-1:0,t=512&t?1:0;t<r;t++)a[t]=n(a[t]);if(i){t=a[t]={};for(const e in i)t[e]=n(i[e])}return Jl(a,e),a}(e,t,(e=>Ic(e,r,a))),Al(e,32|(n?2:0)),e}function Ac(e){const t=e.u,n=Ml(t);return 2&n?Rc(e,t,n,!1):e}function Nc(e,t){return _c(e=e.u,Ml(e),t)}function _c(e,t,n,a){if(-1===n)return null;if(n>=jl(t)){if(256&t)return e[e.length-1][n]}else{var r=e.length;if(a&&256&t&&null!=(a=e[r-1][n]))return a;if((t=n+(+!!(512&t)-1))<r)return e[t]}}function Fc(e,t,n,a){const r=e.u,i=Ml(r);return Wl(i),Mc(r,i,t,n,a),e}function Mc(e,t,n,a,r){var i=jl(t);if(n>=i||r){if(r=t,256&t)i=e[e.length-1];else{if(null==a)return;i=e[i+(+!!(512&t)-1)]={},r|=256}i[n]=a,r!==t&&Pl(e,r)}else e[n+(+!!(512&t)-1)]=a,256&t&&n in(e=e[e.length-1])&&delete e[n]}function Pc(e,t,n,a,r){var i=2&t;let o=_c(e,t,n,r);Array.isArray(o)||(o=zl);const s=!(2&a),l=!(1&a);a=!!(32&t);let c=Fl(o);return 0!==c||!a||i||s?1&c||(c|=1,Pl(o,c)):(c|=33,Pl(o,c)),i?(2&c||Bl(o),l&&Object.freeze(o)):(i=2&c,l&&i?(o=Rl(o),i=1,a&&!s&&(i|=32),Pl(o,i),Mc(e,t,n,o,r)):s&&32&c&&!i&&_l(o,32)),o}function Lc(e,t){const n=Ml(e=e.u),a=_c(e,n,t),r=Ql(a);return null!=r&&r!==a&&Mc(e,n,t,r),r}function Bc(e){const t=Ml(e=e.u),n=_c(e,t,1),a=ql(n,!0,!!(34&t));return null!=a&&a!==n&&Mc(e,t,1,a),a}function Oc(e,t,n){const a=Ml(e=e.u),r=2&a;let i=Pc(e,a,t,1),o=Fl(i);if(!(4&o)){Object.isFrozen(i)&&(i=Rl(i),Pl(i,o=-3&o|32),Mc(e,a,t,i));let s=0,l=0;for(;s<i.length;s++){const e=n(i[s]);null!=e&&(i[l++]=e)}l<s&&(i.length=l),o|=21,r?o|=34:o&=-33,Pl(i,o),2&o&&Object.freeze(i)}return!r&&(2&o||Object.isFrozen(i))&&(i=Rl(i),Pl(i,-35&o),Mc(e,a,t,i)),i}let Uc;function jc(){return Uc??=new bc(Bl([]),void 0,void 0,void 0,Kl)}function zc(e){e=Rl(e);for(let t=0;t<e.length;t++){const n=e[t]=Rl(e[t]);Array.isArray(n[1])&&(n[1]=Bl(n[1]))}return e}function Gc(e,t,n){{const a=Ml(e=e.u);if(Wl(a),null==n)Mc(e,a,t);else{if(!(4&Fl(n))){Object.isFrozen(n)&&(n=Rl(n));for(let e=0;e<n.length;e++)n[e]=rc(n[e]);Pl(n,5)}Mc(e,a,t,n)}}}function $c(e,t){return qc(e=e.u,Ml(e),Fh)===t?t:-1}function qc(e,t,n){let a=0;for(let r=0;r<n.length;r++){const i=n[r];null!=_c(e,t,i)&&(0!==a&&Mc(e,t,a),a=i)}return a}function Vc(e,t,n,a){const r=Ml(e);Wl(r);const i=_c(e,r,n,a);let o;if(null!=i&&i.M===Gl)return(t=Ac(i))!==i&&Mc(e,r,n,t,a),t.u;if(Array.isArray(i)){const e=Fl(i);o=2&e?Dc(i,e,!1):i,o=mc(o,t)}else o=mc(void 0,t);return o!==i&&Mc(e,r,n,o,a),o}function Wc(e,t,n,a){const r=Ml(e=e.u),i=_c(e,r,n,a);return(t=sc(i,t,!1,r))!==i&&null!=t&&Mc(e,r,n,t,a),t}function Hc(e,t,n,a=!1){if(null==(t=Wc(e,t,n,a)))return t;const r=Ml(e=e.u);if(!(2&r)){const i=Ac(t);i!==t&&Mc(e,r,n,t=i,a)}return t}function Kc(e,t,n,a,r){var i=!!(2&t),o=Pc(e,t,a,1),s=o===zl;if(s&&2!==r)return o;if(s||!(4&Fl(o))){var l=o;o=!!(2&t),s=!!(2&Fl(l)),i=l,!o&&s&&(l=Rl(l));var c=t|((s=s||void 0)?2:0),u=s;s=!1;let d=0,h=0;for(;d<l.length;d++){const e=sc(l[d],n,!1,c);if(null==e)continue;const t=!!(2&Fl(e.u));u=u||t,s=s||!t,l[h++]=e}return h<d&&(l.length=h),c=5|(l=Fl(n=l)),u=u?-9&c:8|c,l!=(u=s?-17&u:16|u)&&(Object.isFrozen(n)&&(n=Rl(n)),Pl(n,u)),i!==(l=n)&&Mc(e,t,a,l),(o&&2!==r||1===r)&&Object.freeze(l),l}return 3===r||(i?2===r&&(r=Fl(o),o=Rl(o),Pl(o,r),Mc(e,t,a,o)):(i=Object.isFrozen(o),1===r?i||Object.freeze(o):(n=-33&(r=Fl(o)),i||2&r?(o=Rl(o),Pl(o,-3&n),Mc(e,t,a,o)):r!==n&&Pl(o,n)))),o}function Yc(e,t,n){var a=e.u;const r=Ml(a);if(t=Kc(a,r,t,n,(e=!!(2&r))?1:2),!(e||8&Fl(t))){for(n=0;n<t.length;n++)(e=t[n])!==(a=Ac(e))&&(t[n]=a);Al(t,8)}return t}function Xc(e,t,n,a,r){return null==a&&(a=void 0),Fc(e,n,a,r)}function Jc(e,t,n,a){null==a&&(a=void 0);const r=Ml(e=e.u);Wl(r),(n=qc(e,r,n))&&n!==t&&null!=a&&Mc(e,r,n),Mc(e,r,t,a)}function Zc(e,t,n){const a=Ml(e=e.u);Wl(a),e=Kc(e,a,t,1,2),t=null!=n?n:new t,e.push(t),2&Fl(t.u)?_l(e,8):_l(e,16)}function Qc(e,t){return nc(Nc(e,t))}function eu(e){return null==(e=Nc(e,2))||tc(e)?e:void 0}function tu(e,t){return oc(Nc(e,t))}function nu(e){return e??0}function au(e,t){return nu(Lc(e,t))}function ru(e,t,n){if(null!=n){if("boolean"!=typeof n)throw e=typeof n,Error(`Expected boolean but got ${"object"!=e?e:n?Array.isArray(n)?"array":e:"null"}: ${n}`);n=!!n}Fc(e,t,n)}function iu(e,t,n){if(null!=n){if("number"!=typeof n)throw Zl(e=Error(),"warning"),e;if(!Number.isFinite(n)){const e=Error();Zl(e,"incident"),function(e){Ho.setTimeout((()=>{throw e}),0)}(e)}}Fc(e,t,n)}function ou(e,t,n){if(null!=n&&"number"!=typeof n)throw Error(`Value of float/double field must be a number, found ${typeof n}: ${n}`);Fc(e,t,n)}function su(e,t,n){n=rc(n);const a=Ml(e=e.u);Wl(a),Pc(e,a,t,2).push(n)}function lu(e,t,n){t.g?t.m(e,t.g,t.h,n,!0):t.m(e,t.h,n,!0)}bc.prototype.toJSON=void 0;var cu=class{constructor(e,t){this.u=gc(e,t)}toJSON(){return uu(this,kc(this.u,Tc,void 0,void 0,!1,!1),!0)}l(){var e=Af;return e.g?e.l(this,e.g,e.h,!0):e.l(this,e.h,e.defaultValue,!0)}clone(){const e=this.u;return Rc(this,e,Ml(e),!1)}H(){return!!(2&Fl(this.u))}};function uu(e,t,n){var a=e.constructor.B,r=jl(Ml(n?e.u:t)),i=!1;if(a){if(!n){var o;if((t=Rl(t)).length&&$l(o=t[t.length-1]))for(i=0;i<a.length;i++)if(a[i]>=r){Object.assign(t[t.length-1]={},o);break}i=!0}var s;r=t,n=!n,e=jl(o=Ml(e.u)),o=+!!(512&o)-1;for(let t=0;t<a.length;t++){var l=a[t];if(l<e){var c=r[l+=o];null==c?r[l]=n?zl:Ll():n&&c!==zl&&Nl(c)}else{if(!s){var u=void 0;r.length&&$l(u=r[r.length-1])?s=u:r.push(s={})}c=s[l],null==s[l]?s[l]=n?zl:Ll():n&&c!==zl&&Nl(c)}}}if(!(a=t.length))return t;let d,h;if($l(s=t[a-1])){e:{var f=s;u={},r=!1;for(let e in f)n=f[e],Array.isArray(n)&&n!=n&&(r=!0),null!=n?u[e]=n:r=!0;if(r){for(let e in u){f=u;break e}f=null}}f!=s&&(d=!0),a--}for(;0<a&&null==(s=t[a-1]);a--)h=!0;return d||h?(t=i?t:Array.prototype.slice.call(t,0,a),i&&(t.length=a),f&&t.push(f),t):t}function du(e){return{ca:od,U:e}}function hu(e,t){if(Array.isArray(t)){var n=Fl(t);if(4&n)return t;for(var a=0,r=0;a<t.length;a++){const n=e(t[a]);null!=n&&(t[r++]=n)}return r<a&&(t.length=r),Pl(t,5|n),2&n&&Object.freeze(t),t}}cu.prototype.M=Gl,cu.prototype.toString=function(){return uu(this,this.u,!1).toString()};const fu=Symbol();function pu(e){let t=e[fu];if(!t){const n=wu(e),a=Nu(e),r=a.h;t=r?(e,t)=>r(e,t,a):(e,t)=>{for(;rl(t)&&4!=t.h;){var r=t.m,i=a[r];if(!i){var o=a.g;o&&(o=o[r])&&(i=a[r]=mu(o))}i&&i(t,e,r)||(r=(i=t).l,il(i),i.aa?i=void 0:(o=i.g.g-r,i.g.g=r,i=tl(i.g,o)),r=e,i&&(Yl||=Symbol(),(o=r[Yl])?o.push(i):r[Yl]=[i]))}for(const t in n){e[Xl||=Symbol()]=n;break}},e[fu]=t}return t}function mu(e){const t=function(e){if(e=e.U)return pu(e)}(e),n=e.ca.g;if(t){const a=Nu(e.U).L;return(e,r,i)=>n(e,r,i,a,t)}return(e,t,a)=>n(e,t,a)}const gu=Symbol();function vu(e,t,n,a){let r;if(a){const t=a[gu];r=t?t.L:pc(a[0]),n[e]=t??a}r&&r===hc?((t=n.xa)||(n.xa=t=[]),t.push(e)):t.l&&((t=n.Ba)||(n.Ba=t=[]),t.push(e))}function yu(e,t,n,a){vu(e,t,a)}function bu(e,t,n,a,r){vu(e,t,r,n)}function wu(e){let t=e[gu];return t||(t=e[gu]={},xu(e,t,yu,bu,t))}function xu(e,t,n,a,r){t.L=pc(e[0]);let i=1;if(e.length>i&&!(e[i]instanceof Il)){var o=e[i++];if(Array.isArray(o))return t.h=o[0],t.g=o[1],t;t.g=o}for(o=0;i<e.length;){var s=e[i++],l=e[i];for("number"==typeof l?(i++,o+=l):o++,l=i;l<e.length&&!(e[l]instanceof Il);)l++;if(l-=i){var c=e,u=i,d=c[u];if("function"==typeof d&&(d=d(),c[u]=d),(c=Array.isArray(d))&&!(c=Ru in d||ku in d)&&(c=0<d.length)){const e=pc(u=(c=d)[0]);null!=e&&e!==u&&(c[0]=e),c=null!=e}(d=c?d:void 0)?(i++,1===l?void 0!==(s=a(o,s,d,void 0,r))&&(t[o]=s):void 0!==(s=a(o,s,d,e[i++],r))&&(t[o]=s)):void 0!==(s=n(o,s,e[i++],r))&&(t[o]=s)}else void 0!==(s=n(o,s,void 0,r))&&(t[o]=s)}return t}const Eu=Symbol();function Cu(e){let t=e[Eu];if(!t){const n=Iu(e);t=(e,t)=>Fu(e,t,n),e[Eu]=t}return t}const ku=Symbol();function Su(e,t){return t.h}function Tu(e,t,n){let a,r;const i=t.h;return(e,t,o)=>i(e,t,o,r||=Iu(n).L,a||=Cu(n))}function Iu(e){let t=e[ku];return t||(t=xu(e,e[ku]={},Su,Tu),Ru in e&&ku in e&&(e.length=0),t)}const Ru=Symbol();function Du(e,t,n){const a=t.g;return n?(e,t,r)=>a(e,t,r,n):a}function Au(e,t,n,a){const r=t.g;let i,o;return(e,t,s)=>r(e,t,s,o||=Nu(n).L,i||=pu(n),a)}function Nu(e){let t=e[Ru];return t||(wu(e),t=xu(e,e[Ru]={},Du,Au),Ru in e&&ku in e&&(e.length=0),t)}function _u(e,t){var n=e[t];if(n)return n;if((n=e.g)&&(n=n[t])){var a=n.U,r=n.ca.h;if(a){const e=Cu(a),t=Iu(a).L;n=(n,a,i)=>r(n,a,i,t,e)}else n=r;return e[t]=n}}function Fu(e,t,n){for(var a=Ml(e),r=+!!(512&a)-1,i=e.length,o=512&a?1:0,s=i+(256&a?-1:0);o<s;o++){const a=e[o];if(null==a)continue;const i=o-r,s=_u(n,i);s&&s(t,a,i)}if(256&a){a=e[i-1];for(let e in a)r=+e,Number.isNaN(r)||null!=(i=a[e])&&(s=_u(n,r))&&s(t,i,r)}if(e=Yl?e[Yl]:void 0)for(xl(t,t.g.end()),n=0;n<e.length;n++)xl(t,_s(e[n])||Is())}function Mu(e,t){return new Il(e,t,!1)}function Pu(e,t){return new Il(e,t,!0)}function Lu(e,t,n){Mc(e,Ml(e),t,n)}var Bu=Mu((function(e,t,n,a,r){return 2===e.h&&(e=ol(e,mc([void 0,void 0],a),r),Wl(a=Ml(t)),(r=_c(t,a,n))instanceof bc?0!=(2&r.g)?((r=r.m()).push(e),Mc(t,a,n,r)):r.I(e):Array.isArray(r)?(2&Fl(r)&&Mc(t,a,n,r=zc(r)),r.push(e)):Mc(t,a,n,[e]),!0)}),(function(e,t,n,a,r){if(t instanceof bc)t.forEach(((t,i)=>{Tl(e,n,mc([i,t],a),r)}));else if(Array.isArray(t))for(let i=0;i<t.length;i++){const o=t[i];Array.isArray(o)&&Tl(e,n,mc(o,a),r)}}));function Ou(e,t,n){e:if(null!=t){if(tc(t)){if("string"==typeof t)break e;if("number"==typeof t)break e}t=void 0}null!=t&&("string"==typeof t&&pl(t),null!=t&&(El(e,n,0),"number"==typeof t?(e=e.g,$s(t),vl(e,zs,Gs)):(n=pl(t),vl(e.g,n.h,n.g))))}function Uu(e,t,n){null!=(t=nc(t))&&null!=t&&(El(e,n,0),bl(e.g,t))}function ju(e,t,n){null!=(t=ec(t))&&(El(e,n,0),e.g.g.push(t?1:0))}function zu(e,t,n){null!=(t=oc(t))&&Sl(e,n,ts(t))}function Gu(e,t,n,a,r){Tl(e,n,t instanceof cu?t.u:Array.isArray(t)?mc(t,a):void 0,r)}function $u(e,t,n){null!=(t=null==t||"string"==typeof t||Ss(t)||t instanceof Fs?t:void 0)&&Sl(e,n,Os(t).buffer)}function qu(e,t,n){return(5===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.A,t):t.push(e.g.A()),!0)}var Vu=Mu((function(e,t,n){if(1!==e.h)return!1;var a=e.g;e=Qs(a);const r=Qs(a);a=2*(r>>31)+1;const i=r>>>20&2047;return e=4294967296*(1048575&r)+e,Lu(t,n,2047==i?e?NaN:1/0*a:0==i?a*Math.pow(2,-1074)*e:a*Math.pow(2,i-1075)*(e+4503599627370496)),!0}),(function(e,t,n){null!=(t=Ql(t))&&(El(e,n,1),e=e.g,(n=js||=new DataView(new ArrayBuffer(8))).setFloat64(0,+t,!0),zs=n.getUint32(0,!0),Gs=n.getUint32(4,!0),wl(e,zs),wl(e,Gs))})),Wu=Mu((function(e,t,n){return 5===e.h&&(Lu(t,n,e.g.A()),!0)}),(function(e,t,n){null!=(t=Ql(t))&&(El(e,n,5),e=e.g,qs(t),wl(e,zs))})),Hu=Pu(qu,(function(e,t,n){if(null!=(t=hu(Ql,t)))for(let i=0;i<t.length;i++){var a=e,r=t[i];null!=r&&(El(a,n,5),a=a.g,qs(r),wl(a,zs))}})),Ku=Pu(qu,(function(e,t,n){if(null!=(t=hu(Ql,t))&&t.length){El(e,n,2),yl(e.g,4*t.length);for(let a=0;a<t.length;a++)n=e.g,qs(t[a]),wl(n,zs)}})),Yu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Js(e.g,Ws)),!0)}),Ou),Xu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,0===(e=Js(e.g,Ws))?void 0:e),!0)}),Ou),Ju=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Js(e.g,Vs)),!0)}),(function(e,t,n){e:if(null!=t){if(tc(t)){if("string"==typeof t)break e;if("number"==typeof t)break e}t=void 0}null!=t&&("string"==typeof t&&dl(t),null!=t&&(El(e,n,0),"number"==typeof t?(e=e.g,$s(t),vl(e,zs,Gs)):(n=dl(t),vl(e.g,n.h,n.g))))})),Zu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,e.g.m()),!0)}),Uu),Qu=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.m,t):t.push(e.g.m()),!0)}),(function(e,t,n){if(null!=(t=hu(nc,t))&&t.length){n=Cl(e,n);for(let n=0;n<t.length;n++)bl(e.g,t[n]);kl(e,n)}})),ed=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,0===(e=e.g.m())?void 0:e),!0)}),Uu),td=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Zs(e.g)),!0)}),ju),nd=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,!1===(e=Zs(e.g))?void 0:e),!0)}),ju),ad=Pu((function(e,t,n){if(2!==e.h)return!1;e=sl(e);const a=Ml(t);return Wl(a),Pc(t,a,n,2).push(e),!0}),(function(e,t,n){if(null!=(t=hu(oc,t)))for(let r=0;r<t.length;r++){var a=t[r];null!=a&&Sl(e,n,ts(a))}})),rd=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,""===(e=sl(e))?void 0:e),!0)}),zu),id=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,sl(e)),!0)}),zu),od=Mu((function(e,t,n,a,r){return 2===e.h&&(ol(e,Vc(t,a,n,!0),r),!0)}),Gu),sd=Mu((function(e,t,n,a,r){return 2===e.h&&(ol(e,Vc(t,a,n),r),!0)}),Gu),ld=Pu((function(e,t,n,a,r){if(2!==e.h)return!1;a=mc(void 0,a);const i=Ml(t);Wl(i);let o=Pc(t,i,n,3);return(Object.isFrozen(o)||4&Fl(o))&&(o=Rl(o),Mc(t,i,n,o)),o.push(a),ol(e,a,r),!0}),(function(e,t,n,a,r){if(Array.isArray(t))for(let i=0;i<t.length;i++)Gu(e,t[i],n,a,r)})),cd=Mu((function(e,t,n,a,r,i){if(2!==e.h)return!1;const o=Ml(t);return Wl(o),(i=qc(t,o,i))&&n!==i&&Mc(t,o,i),ol(e,t=Vc(t,a,n),r),!0}),Gu),ud=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,ll(e)),!0)}),$u),dd=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.j,t):t.push(e.g.j()),!0)}),(function(e,t,n){if(null!=(t=hu(ac,t)))for(let i=0;i<t.length;i++){var a=e,r=t[i];null!=r&&(El(a,n,0),yl(a.g,r))}})),hd=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,e.g.m()),!0)}),(function(e,t,n){null!=(t=nc(t))&&(t=parseInt(t,10),El(e,n,0),bl(e.g,t))})),fd=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.C,t):t.push(e.g.m()),!0)}),(function(e,t,n){if(null!=(t=hu(nc,t))&&t.length){n=Cl(e,n);for(let n=0;n<t.length;n++)bl(e.g,t[n]);kl(e,n)}}));class pd{constructor(e,t){this.h=e,this.g=t,this.l=Hc,this.m=Xc,this.defaultValue=void 0}}function md(e,t){return new pd(e,t)}function gd(e,t){return(n,a)=>{e:{if(ul.length){const e=ul.pop();e.o(a),Ys(e.g,n,a),n=e}else n=new class{constructor(e,t){if(al.length){const n=al.pop();Ys(n,e,t),e=n}else e=new nl(e,t);this.g=e,this.l=this.g.g,this.h=this.m=-1,this.o(t)}o({aa:e=!1}={}){this.aa=e}}(n,a);try{var r=new e;const a=r.u;pu(t)(a,n),Xl&&delete a[Xl];var i=r;break e}finally{(r=n.g).h=null,r.s=!1,r.v=0,r.l=0,r.g=0,r.R=!1,n.m=-1,n.h=-1,100>ul.length&&ul.push(n)}i=void 0}return i}}function vd(e){return function(){const t=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const e=this.g;return this.g=[],e}}}};Fu(this.u,t,Iu(e)),xl(t,t.g.end());const n=new Uint8Array(t.h),a=t.l,r=a.length;let i=0;for(let e=0;e<r;e++){const t=a[e];n.set(t,i),i+=t.length}return t.l=[n],n}}var yd=[0,rd,Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,(e=ll(e))===Ns()?void 0:e),!0)}),(function(e,t,n){if(null!=t){if(t instanceof cu){const a=t.Ea;return void(a&&(t=a(t),null!=t&&Sl(e,n,Os(t).buffer)))}if(Array.isArray(t))return}$u(e,t,n)}))],bd=[0,id],wd=[0,Zu,hd,td,td,Qu,hd,hd],xd=[0,td,td],Ed=class extends cu{constructor(){super()}};Ed.B=[6];var Cd=[0,td,id,td,hd,hd,fd,id,id,sd,xd,hd],kd=[0,id,id,id],Sd=class extends cu{constructor(){super()}},Td=[0],Id=[0,Zu],Rd=[1,2,3,4,5],Dd=class extends cu{constructor(e){super(e,2)}},Ad={},Nd=[-2,Ad,td];Ad[336783863]=du([0,id,td,td,Zu,sd,[0,cd,Td,Rd,cd,Cd,Rd,cd,kd,Rd,cd,Id,Rd,cd,wd,Rd],sd,bd]);var _d=[0,rd,nd],Fd=[0,Xu,Xu,nd,nd,nd,nd,Xu,Qu,rd,ed,Xu,Xu,nd,ed,nd,nd,nd,rd],Md=[-1,{}],Pd=[0,id,sd,2,Md],Ld=[0,id,ad,sd,Md];function Bd(e,t){t=ic(t);const n=Ml(e=e.u);Wl(n),Mc(e,n,2,""===t?void 0:t)}function Od(e,t){su(e,3,t)}function Ud(e,t){su(e,4,t)}var jd=class extends cu{constructor(e){super(e,500)}o(e){return Xc(this,0,7,e)}};jd.B=[3,4,5,6,8,13,17,1005];var zd=[-500,rd,rd,ad,ad,ad,ad,sd,Nd,ld,yd,ed,ed,sd,Pd,sd,Ld,ld,_d,rd,sd,Fd,ed,ad,ad,988],Gd=[0,rd,rd,sd,Md],$d=[-500,id,id,sd,[-1,{}],id,999],qd=[-500,id,ad,ad,sd,[-2,{},td],ad,998,ad],Vd=[-500,id,ad,sd,Md,ad,999];function Wd(e,t){Zc(e,jd,t)}function Hd(e,t){su(e,10,t)}function Kd(e,t){su(e,15,t)}var Yd=class extends cu{constructor(e){super(e,500)}o(e){return Xc(this,0,1001,e)}};Yd.B=[1,6,7,9,10,15,16,17,14,1002];var Xd=[-500,ld,zd,ld,5,$d,ld,qd,ed,ld,Vd,ad,ed,sd,Pd,sd,Ld,ld,Gd,ad,ad,ad,sd,Fd,rd,rd,nd,sd,980,Md,ld,yd],Jd=gd(Yd,Xd);Yd.prototype.g=vd(Xd);var Zd=[0,ld,[0,Zu,Zu,Zu]],Qd=class extends cu{constructor(e){super(e)}},eh=[0,Zu,Wu,id,id],th=class extends cu{constructor(e){super(e)}g(){return Yc(this,Qd,1)}};th.B=[1];var nh=[0,ld,eh],ah=gd(th,nh),rh=[0,Zu,Wu],ih=[0,Zu,Zu,sd,Zd],oh=class extends cu{constructor(e){super(e)}},sh=[0,Zu,Zu,Zu,Zu],lh=[0,Wu,Wu,Wu,Wu],ch=class extends cu{constructor(e){super(e)}},uh=[0,Wu,Wu,id,Wu],dh=class extends cu{constructor(e){super(e)}h(){return Hc(this,oh,2)}g(){return Yc(this,ch,5)}};dh.B=[5];var hh=[0,hd,sd,sh,sd,lh,sd,ih,ld,uh],fh=class extends cu{constructor(e){super(e)}};fh.B=[1,2,3,8,9];var ph=gd(fh,[0,ad,Qu,Ku,sd,hh,id,id,Yu,ld,rh,ad,Yu]),mh=class extends cu{constructor(e){super(e)}},gh=[0,Wu,Wu,Wu,Wu,Wu],vh=class extends cu{constructor(e){super(e)}};vh.B=[1];var yh=gd(vh,[0,ld,gh]),bh=class extends cu{constructor(e){super(e)}},wh=[0,Wu,Wu,Wu,Wu,Wu],xh=class extends cu{constructor(e){super(e)}};xh.B=[1];var Eh=gd(xh,[0,ld,wh]),Ch=class extends cu{constructor(e){super(e)}};Ch.B=[3];var kh=[0,Zu,Zu,Ku,hd],Sh=class extends cu{constructor(){super()}};Sh.prototype.g=vd([0,Wu,Wu,Wu,Wu,Wu,Yu]);var Th=class extends cu{constructor(e){super(e)}},Ih=[0,Zu,2,id,sd,nh],Rh=class extends cu{constructor(e){super(e)}};Rh.B=[1];var Dh=gd(Rh,[0,ld,Ih,Yu]),Ah=class extends cu{constructor(e){super(e)}};Ah.B=[1];var Nh=class extends cu{constructor(e){super(e)}fa(){const e=Bc(this);return null==e?Ns():e}},_h=class extends cu{constructor(e){super(e)}},Fh=[1,2],Mh=[0,cd,[0,Ku],Fh,cd,[0,ud],Fh,Zu,id],Ph=class extends cu{constructor(e){super(e)}};Ph.B=[1];var Lh=gd(Ph,[0,ld,Mh,Yu]),Bh=class extends cu{constructor(e){super(e)}};Bh.B=[4,5];var Oh=[0,id,Zu,Wu,ad,ad],Uh=class extends cu{constructor(e){super(e)}},jh=[0,td,td],zh=class extends cu{constructor(e){super(e)}},Gh=[1,2,3,4,5],$h=class extends cu{constructor(e){super(e)}g(){return null!=Bc(this)}h(){return null!=tu(this,2)}},qh=[0,ud,id,sd,[0,Zu,Yu,Yu],sd,[0,Ju,Yu]],Vh=class extends cu{constructor(e){super(e)}g(){return ec(Nc(this,2))??!1}},Wh=[0,sd,qh,td,sd,[0,cd,Id,Gh,cd,Cd,Gh,cd,wd,Gh,cd,Td,Gh,cd,kd,Gh]],Hh=class extends cu{constructor(e){super(e)}},Kh=[0,sd,Wh,Wu,Wu,Zu],Yh=md(502141897,Hh);Ad[502141897]=du(Kh);var Xh=[0,sd,qh];Ad[512499200]=du(Xh);var Jh=[0,sd,Xh];Ad[515723506]=du(Jh);var Zh=gd(class extends cu{constructor(e){super(e)}},[0,sd,[0,hd,hd,Hu,dd],sd,kh]),Qh=[0,sd,Wh];Ad[508981768]=du(Qh);var ef=class extends cu{constructor(e){super(e)}},tf=[0,sd,Wh,Wu,sd,Qh,td],nf=class extends cu{constructor(e){super(e)}},af=[0,sd,Wh,sd,Kh,sd,tf,Wu,sd,Jh];Ad[508968149]=du(tf);var rf=md(508968150,nf);Ad[508968150]=du(af);var of=class extends cu{constructor(e){super(e)}},sf=md(513916220,of);Ad[513916220]=du([0,sd,Wh,sd,af,Zu]);var lf=class extends cu{constructor(e){super(e)}h(){return Hc(this,Bh,2)}g(){Fc(this,2)}},cf=[0,sd,Wh,sd,Oh];Ad[478825465]=du(cf);var uf=[0,sd,Wh];Ad[478825422]=du(uf);var df=class extends cu{constructor(e){super(e)}},hf=[0,sd,Wh,sd,uf,sd,cf,sd,cf],ff=class extends cu{constructor(e){super(e)}},pf=[0,sd,Wh,Wu,Zu],mf=class extends cu{constructor(e){super(e)}},gf=[0,sd,Wh,Wu],vf=class extends cu{constructor(e){super(e)}},yf=[0,sd,Wh,sd,pf,sd,gf,Wu],bf=class extends cu{constructor(e){super(e)}},wf=[0,sd,Wh,sd,yf,sd,hf];Ad[463370452]=du(hf),Ad[464864288]=du(pf),Ad[474472470]=du(gf);var xf=md(462713202,vf);Ad[462713202]=du(yf);var Ef=md(479097054,bf);Ad[479097054]=du(wf);var Cf=class extends cu{constructor(e){super(e)}},kf=md(456383383,Cf);Ad[456383383]=du([0,sd,Wh,sd,Oh]);var Sf=class extends cu{constructor(e){super(e)}},Tf=md(476348187,Sf);Ad[476348187]=du([0,sd,Wh,sd,jh]);var If=class extends cu{constructor(e){super(e)}},Rf=[0,hd,hd],Df=class extends cu{constructor(e){super(e)}};Df.B=[3];var Af=md(458105876,class extends cu{constructor(e){super(e)}g(){var e=this.u;const t=Ml(e);var n=2&t;return e=function(e,t,n){var a=Df;const r=2&t;let i=!1;if(null==n){if(r)return jc();n=[]}else if(n.constructor===bc){if(0==(2&n.g)||r)return n;n=n.m()}else Array.isArray(n)?i=!!(2&Fl(n)):n=[];if(r){if(!n.length)return jc();i||(i=!0,Bl(n))}else i&&(i=!1,n=zc(n));return i||(64&Fl(n)?_l(n,32):32&t&&Al(n,32)),Mc(e,t,2,a=new bc(n,a,uc,void 0),!1),a}(e,t,_c(e,t,2)),null==e||!n&&Df&&(e.v=!0),e}});Ad[458105876]=du([0,sd,Rf,Bu,[!0,Yu,sd,[0,id,id,ad]]]);var Nf=class extends cu{constructor(e){super(e)}},_f=md(458105758,Nf);Ad[458105758]=du([0,sd,Wh,id,sd,Rf]);var Ff=class extends cu{constructor(e){super(e)}};Ff.B=[5,6];var Mf=md(443442058,Ff);Ad[443442058]=du([0,sd,Wh,id,Zu,Wu,ad,ad]);var Pf=class extends cu{constructor(e){super(e)}},Lf=[0,sd,Wh,Wu,Wu,Zu];Ad[514774813]=du(Lf);var Bf=class extends cu{constructor(e){super(e)}},Of=[0,sd,Wh,Wu,td],Uf=class extends cu{constructor(e){super(e)}},jf=[0,sd,Wh,sd,Lf,sd,Of,Wu];Ad[518928384]=du(Of);var zf=md(516587230,Uf);function Gf(e,t){return t=t?t.clone():new Bh,void 0!==e.displayNamesLocale?Fc(t,1,ic(e.displayNamesLocale)):void 0===e.displayNamesLocale&&Fc(t,1),void 0!==e.maxResults?iu(t,2,e.maxResults):"maxResults"in e&&Fc(t,2),void 0!==e.scoreThreshold?ou(t,3,e.scoreThreshold):"scoreThreshold"in e&&Fc(t,3),void 0!==e.categoryAllowlist?Gc(t,4,e.categoryAllowlist):"categoryAllowlist"in e&&Fc(t,4),void 0!==e.categoryDenylist?Gc(t,5,e.categoryDenylist):"categoryDenylist"in e&&Fc(t,5),t}function $f(e,t=-1,n=""){return{categories:e.map((e=>({index:nu(Qc(e,1))??-1,score:au(e,2)??0,categoryName:tu(e,3)??""??"",displayName:tu(e,4)??""??""}))),headIndex:t,headName:n}}function qf(e){var t=Oc(e,3,Ql),n=Oc(e,2,nc);const a=Oc(e,1,oc),r=Oc(e,9,oc),i={categories:[],keypoints:[]};for(let e=0;e<t.length;e++)i.categories.push({score:t[e],index:n[e]??-1,categoryName:a[e]??"",displayName:r[e]??""});if((t=Hc(e,dh,4)?.h())&&(i.boundingBox={originX:Qc(t,1)??0,originY:Qc(t,2)??0,width:Qc(t,3)??0,height:Qc(t,4)??0,angle:0}),Hc(e,dh,4)?.g().length)for(const t of Hc(e,dh,4).g())i.keypoints.push({x:Lc(t,1)??0,y:Lc(t,2)??0,score:Lc(t,4)??0,label:tu(t,3)??""});return i}function Vf(e){const t=[];for(const n of Yc(e,bh,1))t.push({x:au(n,1)??0,y:au(n,2)??0,z:au(n,3)??0});return t}function Wf(e){const t=[];for(const n of Yc(e,mh,1))t.push({x:au(n,1)??0,y:au(n,2)??0,z:au(n,3)??0});return t}function Hf(e){return Array.from(e,(e=>127<e?e-256:e))}function Kf(e,t){if(e.length!==t.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${e.length} vs. ${t.length}).`);let n=0,a=0,r=0;for(let i=0;i<e.length;i++)n+=e[i]*t[i],a+=e[i]*e[i],r+=t[i]*t[i];if(0>=a||0>=r)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return n/Math.sqrt(a*r)}let Yf;Ad[516587230]=du(jf);const Xf=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Jf(){if(void 0===Yf)try{await WebAssembly.instantiate(Xf),Yf=!0}catch{Yf=!1}return Yf}async function Zf(e,t=""){const n=await Jf()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${n}.js`,wasmBinaryPath:`${t}/${e}_${n}.wasm`}}var Qf=class{};function ep(){const e=navigator.userAgent;return e.includes("Safari")&&!e.includes("Chrome")}async function tp(e){if("function"!=typeof importScripts){const t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise(((e,n)=>{t.addEventListener("load",(()=>{e()}),!1),t.addEventListener("error",(e=>{n(e)}),!1),document.body.appendChild(t)}))}importScripts(e.toString())}function np(e,t,n){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),n(t=e.i.stringToNewUTF8(t)),e.i._free(t)}function ap(e,t,n){if(!e.i.canvas)throw Error("No OpenGL canvas configured.");if(n?e.i._bindTextureToStream(n):e.i._bindTextureToCanvas(),!(n=e.i.canvas.getContext("webgl2")||e.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");return e.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!0),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,t),e.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),t.videoWidth?(n=t.videoWidth,t=t.videoHeight):t.naturalWidth?(n=t.naturalWidth,t=t.naturalHeight):(n=t.width,t=t.height),!e.l||n===e.i.canvas.width&&t===e.i.canvas.height||(e.i.canvas.width=n,e.i.canvas.height=t),[n,t]}function rp(e,t,n){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const a=new Uint32Array(t.length);for(let n=0;n<t.length;n++)a[n]=e.i.stringToNewUTF8(t[n]);t=e.i._malloc(4*a.length),e.i.HEAPU32.set(a,t>>2),n(t);for(const t of a)e.i._free(t);e.i._free(t)}function ip(e,t,n){e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=n}function op(e,t,n){let a=[];e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=(e,t,r)=>{t?(n(a,r),a=[]):a.push(e)}}function sp(e,t){const n=Hc(e.baseOptions,$h,1)||new $h;"string"==typeof t?(Fc(n,2,ic(t)),Fc(n,1)):t instanceof Uint8Array&&(Fc(n,1,ql(t,!1,!1)),Fc(n,2)),Xc(e.baseOptions,0,1,n)}function lp(e){try{const t=e.J.length;if(1===t)throw Error(e.J[0].message);if(1<t)throw Error("Encountered multiple errors: "+e.J.map((e=>e.message)).join(", "))}finally{e.J=[]}}function cp(e,t){e.I=Math.max(e.I,t)}function up(e,t){e.A=new jd,Bd(e.A,"PassThroughCalculator"),Od(e.A,"free_memory"),Ud(e.A,"free_memory_unused_out"),Hd(t,"free_memory"),Wd(t,e.A)}function dp(e,t){Od(e.A,t),Ud(e.A,t+"_unused_out")}function hp(e){e.g.addBoolToStream(!0,"free_memory",e.I)}Qf.forVisionTasks=function(e){return Zf("vision",e)},Qf.forTextTasks=function(e){return Zf("text",e)},Qf.forAudioTasks=function(e){return Zf("audio",e)},Qf.isSimdSupported=function(){return Jf()};var fp=class{constructor(e){this.g=e,this.J=[],this.I=0,this.g.setAutoRenderToScreen(!1)}l(e,t=!0){if(t){const t=e.baseOptions||{};if(e.baseOptions?.modelAssetBuffer&&e.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(Hc(this.baseOptions,$h,1)?.g()||Hc(this.baseOptions,$h,1)?.h()||e.baseOptions?.modelAssetBuffer||e.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(e,t){let n=Hc(e.baseOptions,zh,3);if(!n){var a=n=new zh,r=new Sd;Jc(a,4,Gh,r)}"delegate"in t&&("GPU"===t.delegate?(t=n,a=new Ed,Jc(t,2,Gh,a)):(t=n,a=new Sd,Jc(t,4,Gh,a))),Xc(e.baseOptions,0,3,n)}(this,t),t.modelAssetPath)return fetch(t.modelAssetPath.toString()).then((e=>{if(e.ok)return e.arrayBuffer();throw Error(`Failed to fetch model: ${t.modelAssetPath} (${e.status})`)})).then((e=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(e),!0,!1,!1),sp(this,"/model.dat"),this.m(),this.P()}));sp(this,t.modelAssetBuffer)}return this.m(),this.P(),Promise.resolve()}P(){}W(){let e;if(this.g.W((t=>{e=Jd(t)})),!e)throw Error("Failed to retrieve CalculatorGraphConfig");return e}setGraph(e,t){this.g.attachErrorListener(((e,t)=>{this.J.push(Error(t))})),this.g.Aa(),this.g.setGraph(e,t),this.A=void 0,lp(this)}finishProcessing(){this.g.finishProcessing(),lp(this)}close(){this.A=void 0,this.g.closeGraph()}};function pp(e,t){if(null===e)throw Error(`Unable to obtain required WebGL resource: ${t}`);return e}fp.prototype.close=fp.prototype.close;class mp{constructor(e,t,n,a){this.g=e,this.h=t,this.m=n,this.l=a}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function gp(e,t,n){const a=e.h;if(n=pp(a.createShader(n),"Failed to create WebGL shader"),a.shaderSource(n,t),a.compileShader(n),!a.getShaderParameter(n,a.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${a.getShaderInfoLog(n)}`);return a.attachShader(e.g,n),n}function vp(e,t){const n=e.h,a=pp(n.createVertexArray(),"Failed to create vertex array");n.bindVertexArray(a);const r=pp(n.createBuffer(),"Failed to create buffer");n.bindBuffer(n.ARRAY_BUFFER,r),n.enableVertexAttribArray(e.s),n.vertexAttribPointer(e.s,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),n.STATIC_DRAW);const i=pp(n.createBuffer(),"Failed to create buffer");return n.bindBuffer(n.ARRAY_BUFFER,i),n.enableVertexAttribArray(e.A),n.vertexAttribPointer(e.A,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array(t?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),n.bindVertexArray(null),new mp(n,a,r,i)}function yp(e,t){if(e.h){if(t!==e.h)throw Error("Cannot change GL context once initialized")}else e.h=t}function bp(e,t,n,a){if(yp(e,t),!e.g){const t=e.h;if(e.g=pp(t.createProgram(),"Failed to create WebGL program"),e.C=gp(e,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",t.VERTEX_SHADER),e.v=gp(e,"\n precision mediump float;\n varying vec2 vTex;\n uniform sampler2D inputTexture;\n void main() {\n gl_FragColor = texture2D(inputTexture, vTex);\n }\n ",t.FRAGMENT_SHADER),t.linkProgram(e.g),!t.getProgramParameter(e.g,t.LINK_STATUS))throw Error(`Error during program linking: ${t.getProgramInfoLog(e.g)}`);e.s=t.getAttribLocation(e.g,"aVertex"),e.A=t.getAttribLocation(e.g,"aTex")}return n?(e.m||(e.m=vp(e,!0)),n=e.m):(e.j||(e.j=vp(e,!1)),n=e.j),t.useProgram(e.g),n.bind(),e=a(),n.g.bindVertexArray(null),e}function wp(e,t,n){yp(e,t),e.l||(e.l=pp(t.createFramebuffer(),"Failed to create framebuffe.")),t.bindFramebuffer(t.FRAMEBUFFER,e.l),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,n,0)}function xp(e){e.h?.bindFramebuffer(e.h.FRAMEBUFFER,null)}var Ep=class{close(){if(this.g){const e=this.h;e.deleteProgram(this.g),e.deleteShader(this.C),e.deleteShader(this.v)}this.l&&this.h.deleteFramebuffer(this.l),this.j&&this.j.close(),this.m&&this.m.close()}};function Cp(e,t){switch(t){case 0:return e.g.find((e=>e instanceof ImageData));case 1:return e.g.find((e=>"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap));case 2:return e.g.find((e=>"undefined"!=typeof WebGLTexture&&e instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function kp(e){var t=Cp(e,0);if(!t){t=Tp(e);const n=Ip(e),a=new Uint8Array(e.width*e.height*4);wp(n,t,Sp(e)),t.readPixels(0,0,e.width,e.height,t.RGBA,t.UNSIGNED_BYTE,a),xp(n),t=new ImageData(new Uint8ClampedArray(a.buffer),e.width,e.height),e.g.push(t)}return t}function Sp(e){let t=Cp(e,2);if(!t){const n=Tp(e);t=Dp(e);const a=Cp(e,1)||kp(e);n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,a),Ap(e)}return t}function Tp(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when iniitializing the image.");return e.h||(e.h=pp(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Ip(e){return e.l||(e.l=new Ep),e.l}function Rp(e){(e=Tp(e)).texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR)}function Dp(e){const t=Tp(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let n=Cp(e,2);return n?t.bindTexture(t.TEXTURE_2D,n):(n=pp(t.createTexture(),"Failed to create texture"),e.g.push(n),e.m=!0,t.bindTexture(t.TEXTURE_2D,n),Rp(e)),n}function Ap(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}function Np(e){const t=Tp(e);return bp(Ip(e),t,!0,(()=>function(e,t){const n=e.canvas;if(n.width===e.width&&n.height===e.height)return t();const a=n.width,r=n.height;return n.width=e.width,n.height=e.height,e=t(),n.width=a,n.height=r,e}(e,(()=>{if(t.bindFramebuffer(t.FRAMEBUFFER,null),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),t.drawArrays(t.TRIANGLE_FAN,0,4),!(e.canvas instanceof OffscreenCanvas))throw Error("Conversion to ImageBitmap requires that the MediaPipe Tasks is initialized with an OffscreenCanvas");return e.canvas.transferToImageBitmap()}))))}var _p=class{constructor(e,t,n,a,r,i,o){this.g=e,this.j=t,this.m=n,this.canvas=a,this.l=r,this.width=i,this.height=o,(this.j||this.m)&&0==--Fp&&console.error("You seem to be creating MPImage instances without invoking .close(). This leaks resources.")}va(){return!!Cp(this,0)}ba(){return!!Cp(this,1)}K(){return!!Cp(this,2)}ra(){return kp(this)}qa(){var e=Cp(this,1);return e||(Sp(this),Dp(this),e=Np(this),Ap(this),this.g.push(e),this.j=!0),e}V(){return Sp(this)}clone(){const e=[];for(const t of this.g){let n;if(t instanceof ImageData)n=new ImageData(t.data,this.width,this.height);else if(t instanceof WebGLTexture){const e=Tp(this),t=Ip(this);e.activeTexture(e.TEXTURE1),n=pp(e.createTexture(),"Failed to create texture"),e.bindTexture(e.TEXTURE_2D,n),Rp(this),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,this.width,this.height,0,e.RGBA,e.UNSIGNED_BYTE,null),e.bindTexture(e.TEXTURE_2D,null),wp(t,e,n),bp(t,e,!1,(()=>{Dp(this),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.TRIANGLE_FAN,0,4),Ap(this)})),xp(t),Ap(this)}else{if(!(t instanceof ImageBitmap))throw Error(`Type is not supported: ${t}`);Sp(this),Dp(this),n=Np(this),Ap(this)}e.push(n)}return new _p(e,this.ba(),this.K(),this.canvas,this.l,this.width,this.height)}close(){this.j&&Cp(this,1).close(),this.m&&Tp(this).deleteTexture(Cp(this,2)),Fp=-1}};_p.prototype.close=_p.prototype.close,_p.prototype.clone=_p.prototype.clone,_p.prototype.getAsWebGLTexture=_p.prototype.V,_p.prototype.getAsImageBitmap=_p.prototype.qa,_p.prototype.getAsImageData=_p.prototype.ra,_p.prototype.hasWebGLTexture=_p.prototype.K,_p.prototype.hasImageBitmap=_p.prototype.ba,_p.prototype.hasImageData=_p.prototype.va;var Fp=250;function Mp(e,t){switch(t){case 0:return e.g.find((e=>e instanceof Uint8Array));case 1:return e.g.find((e=>e instanceof Float32Array));case 2:return e.g.find((e=>"undefined"!=typeof WebGLTexture&&e instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function Pp(e){var t=Mp(e,1);if(!t){if(t=Mp(e,0))t=new Float32Array(t).map((e=>e/255));else{t=new Float32Array(e.width*e.height);const a=Bp(e);var n=Up(e);if(wp(n,a,Lp(e)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document){n=new Float32Array(e.width*e.height*4),a.readPixels(0,0,e.width,e.height,a.RGBA,a.FLOAT,n);for(let e=0,a=0;e<t.length;++e,a+=4)t[e]=n[a]}else a.readPixels(0,0,e.width,e.height,a.RED,a.FLOAT,t)}e.g.push(t)}return t}function Lp(e){let t=Mp(e,2);if(!t){const n=Bp(e);t=zp(e);const a=Pp(e),r=Op(e);n.texImage2D(n.TEXTURE_2D,0,r,e.width,e.height,0,n.RED,n.FLOAT,a),Gp(e)}return t}function Bp(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return e.h||(e.h=pp(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Op(e){if(e=Bp(e),!$p)if(e.getExtension("EXT_color_buffer_float")&&e.getExtension("OES_texture_float_linear")&&e.getExtension("EXT_float_blend"))$p=e.R32F;else{if(!e.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");$p=e.R16F}return $p}function Up(e){return e.l||(e.l=new Ep),e.l}function jp(e){(e=Bp(e)).texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST)}function zp(e){const t=Bp(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let n=Mp(e,2);return n?t.bindTexture(t.TEXTURE_2D,n):(n=pp(t.createTexture(),"Failed to create texture"),e.g.push(n),e.m=!0,t.bindTexture(t.TEXTURE_2D,n),jp(e)),n}function Gp(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}var $p,qp=class{constructor(e,t,n,a,r,i){this.g=e,this.m=t,this.canvas=n,this.l=a,this.width=r,this.height=i,this.m&&0==--Vp&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources.")}wa(){return!!Mp(this,0)}ua(){return!!Mp(this,1)}K(){return!!Mp(this,2)}sa(){return(e=Mp(this,0))||(e=Pp(this),e=new Uint8Array(e.map((e=>255*e))),this.g.push(e)),e;var e}pa(){return Pp(this)}V(){return Lp(this)}clone(){const e=[];for(const t of this.g){let n;if(t instanceof Uint8Array)n=new Uint8Array(t);else if(t instanceof Float32Array)n=new Float32Array(t);else{if(!(t instanceof WebGLTexture))throw Error(`Type is not supported: ${t}`);{const e=Bp(this),t=Up(this);e.activeTexture(e.TEXTURE1),n=pp(e.createTexture(),"Failed to create texture"),e.bindTexture(e.TEXTURE_2D,n),jp(this);const a=Op(this);e.texImage2D(e.TEXTURE_2D,0,a,this.width,this.height,0,e.RED,e.FLOAT,null),e.bindTexture(e.TEXTURE_2D,null),wp(t,e,n),bp(t,e,!1,(()=>{zp(this),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.TRIANGLE_FAN,0,4),Gp(this)})),xp(t),Gp(this)}}e.push(n)}return new qp(e,this.K(),this.canvas,this.l,this.width,this.height)}close(){this.m&&Bp(this).deleteTexture(Mp(this,2)),Vp=-1}};qp.prototype.close=qp.prototype.close,qp.prototype.clone=qp.prototype.clone,qp.prototype.getAsWebGLTexture=qp.prototype.V,qp.prototype.getAsFloat32Array=qp.prototype.pa,qp.prototype.getAsUint8Array=qp.prototype.sa,qp.prototype.hasWebGLTexture=qp.prototype.K,qp.prototype.hasFloat32Array=qp.prototype.ua,qp.prototype.hasUint8Array=qp.prototype.wa;var Vp=250;function Wp(...e){return e.map((([e,t])=>({start:e,end:t})))}const Hp=function(e){return class extends e{Aa(){this.i._registerModelResourcesGraphService()}}}((Kp=class{constructor(e,t){this.l=!0,this.i=e,this.g=null,this.h=0,this.m="function"==typeof this.i._addIntToInputStream,void 0!==t?this.i.canvas=t:"undefined"==typeof OffscreenCanvas||ep()?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.i.canvas=document.createElement("canvas")):this.i.canvas=new OffscreenCanvas(1,1)}async initializeGraph(e){const t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph((new TextEncoder).encode(e),!1)}setGraph(e,t){const n=e.length,a=this.i._malloc(n);this.i.HEAPU8.set(e,a),t?this.i._changeBinaryGraph(n,a):this.i._changeTextGraph(n,a),this.i._free(a)}configureAudio(e,t,n,a,r){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),np(this,a||"input_audio",(a=>{np(this,r=r||"audio_header",(r=>{this.i._configureAudio(a,r,e,t,n)}))}))}setAutoResizeCanvas(e){this.l=e}setAutoRenderToScreen(e){this.i._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.i.gpuOriginForWebTexturesIsBottomLeft=e}W(e){ip(this,"__graph_config__",(t=>{e(t)})),np(this,"__graph_config__",(e=>{this.i._getGraphConfig(e,void 0)})),delete this.i.simpleListeners.__graph_config__}attachErrorListener(e){this.i.errorListener=e}attachEmptyPacketListener(e,t){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[e]=t}addAudioToStream(e,t,n){this.addAudioToStreamWithShape(e,0,0,t,n)}addAudioToStreamWithShape(e,t,n,a,r){const i=4*e.length;this.h!==i&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(i),this.h=i),this.i.HEAPF32.set(e,this.g/4),np(this,a,(e=>{this.i._addAudioToInputStream(this.g,t,n,e,r)}))}addGpuBufferToStream(e,t,n){np(this,t,(t=>{const[a,r]=ap(this,e,t);this.i._addBoundTextureToStream(t,a,r,n)}))}addBoolToStream(e,t,n){np(this,t,(t=>{this.i._addBoolToInputStream(e,t,n)}))}addDoubleToStream(e,t,n){np(this,t,(t=>{this.i._addDoubleToInputStream(e,t,n)}))}addFloatToStream(e,t,n){np(this,t,(t=>{this.i._addFloatToInputStream(e,t,n)}))}addIntToStream(e,t,n){np(this,t,(t=>{this.i._addIntToInputStream(e,t,n)}))}addStringToStream(e,t,n){np(this,t,(t=>{np(this,e,(e=>{this.i._addStringToInputStream(e,t,n)}))}))}addStringRecordToStream(e,t,n){np(this,t,(t=>{rp(this,Object.keys(e),(a=>{rp(this,Object.values(e),(r=>{this.i._addFlatHashMapToInputStream(a,r,Object.keys(e).length,t,n)}))}))}))}addProtoToStream(e,t,n,a){np(this,n,(n=>{np(this,t,(t=>{const r=this.i._malloc(e.length);this.i.HEAPU8.set(e,r),this.i._addProtoToInputStream(r,e.length,t,n,a),this.i._free(r)}))}))}addEmptyPacketToStream(e,t){np(this,e,(e=>{this.i._addEmptyPacketToInputStream(e,t)}))}addBoolToInputSidePacket(e,t){np(this,t,(t=>{this.i._addBoolToInputSidePacket(e,t)}))}addDoubleToInputSidePacket(e,t){np(this,t,(t=>{this.i._addDoubleToInputSidePacket(e,t)}))}addFloatToInputSidePacket(e,t){np(this,t,(t=>{this.i._addFloatToInputSidePacket(e,t)}))}addIntToInputSidePacket(e,t){np(this,t,(t=>{this.i._addIntToInputSidePacket(e,t)}))}addStringToInputSidePacket(e,t){np(this,t,(t=>{np(this,e,(e=>{this.i._addStringToInputSidePacket(e,t)}))}))}addProtoToInputSidePacket(e,t,n){np(this,n,(n=>{np(this,t,(t=>{const a=this.i._malloc(e.length);this.i.HEAPU8.set(e,a),this.i._addProtoToInputSidePacket(a,e.length,t,n),this.i._free(a)}))}))}attachBoolListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachBoolListener(e)}))}attachBoolVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachBoolVectorListener(e)}))}attachIntListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachIntListener(e)}))}attachIntVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachIntVectorListener(e)}))}attachDoubleListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachDoubleListener(e)}))}attachDoubleVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachDoubleVectorListener(e)}))}attachFloatListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachFloatListener(e)}))}attachFloatVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachFloatVectorListener(e)}))}attachStringListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachStringListener(e)}))}attachStringVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachStringVectorListener(e)}))}attachProtoListener(e,t,n){ip(this,e,t),np(this,e,(e=>{this.i._attachProtoListener(e,n||!1)}))}attachProtoVectorListener(e,t,n){op(this,e,t),np(this,e,(e=>{this.i._attachProtoVectorListener(e,n||!1)}))}attachAudioListener(e,t,n){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),ip(this,e,((e,n)=>{e=new Float32Array(e.buffer,e.byteOffset,e.length/4),t(e,n)})),np(this,e,(e=>{this.i._attachAudioListener(e,n||!1)}))}finishProcessing(){this.i._waitUntilIdle()}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0}},class extends Kp{get Y(){return this.i}ga(e,t,n){np(this,t,(t=>{const[a,r]=ap(this,e,t);this.Y._addBoundTextureAsImageToStream(t,a,r,n)}))}S(e,t){ip(this,e,t),np(this,e,(e=>{this.Y._attachImageListener(e)}))}T(e,t){op(this,e,t),np(this,e,(e=>{this.Y._attachImageVectorListener(e)}))}}));var Kp,Yp=class extends Hp{};async function Xp(e,t,n){return async function(e,t,n,a){return async function(e,t,n,a){return e=await(async(e,t,n,a,r)=>{if(t&&await tp(t),!self.ModuleFactory)throw Error("ModuleFactory not set.");if(n&&(await tp(n),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&r&&((t=self.Module).locateFile=r.locateFile,r.mainScriptUrlOrBlob&&(t.mainScriptUrlOrBlob=r.mainScriptUrlOrBlob)),r=await self.ModuleFactory(self.Module||r),self.ModuleFactory=self.Module=void 0,new e(r,a)})(e,n.wasmLoaderPath,n.assetLoaderPath,t,{locateFile:e=>e.endsWith(".wasm")?n.wasmBinaryPath.toString():n.assetBinaryPath&&e.endsWith(".data")?n.assetBinaryPath.toString():e}),await e.o(a),e}(e,t,n,a)}(e,n.canvas??("undefined"==typeof OffscreenCanvas||ep()?document.createElement("canvas"):void 0),t,n)}function Jp(e,t,n,a){if(e.Z){const i=new Sh;if(n?.regionOfInterest){if(!e.ea)throw Error("This task doesn't support region-of-interest.");var r=n.regionOfInterest;if(r.left>=r.right||r.top>=r.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(0>r.left||0>r.top||1<r.right||1<r.bottom)throw Error("Expected RectF values to be in [0,1].");ou(i,1,(r.left+r.right)/2),ou(i,2,(r.top+r.bottom)/2),ou(i,4,r.right-r.left),ou(i,3,r.bottom-r.top)}else ou(i,1,.5),ou(i,2,.5),ou(i,4,1),ou(i,3,1);if(n?.rotationDegrees){if(0!=n?.rotationDegrees%90)throw Error("Expected rotation to be a multiple of 90°.");if(ou(i,5,-Math.PI*n.rotationDegrees/180),0!=n?.rotationDegrees%180){const[e,a]=void 0!==t.videoWidth?[t.videoWidth,t.videoHeight]:void 0!==t.naturalWidth?[t.naturalWidth,t.naturalHeight]:[t.width,t.height];n=au(i,3)*a/e,r=au(i,4)*e/a,ou(i,4,n),ou(i,3,r)}}e.g.addProtoToStream(i.g(),"mediapipe.NormalizedRect",e.Z,a)}e.g.ga(t,e.da,a??performance.now()),e.finishProcessing()}function Zp(e,t,n){if(e.baseOptions?.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");Jp(e,t,n,e.I+1)}function Qp(e,t,n,a){if(!e.baseOptions?.g())throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");Jp(e,t,n,a)}function em(e,t,n){var a=t.data;const r=t.width,i=r*(t=t.height);if((a instanceof Uint8Array||a instanceof Float32Array)&&a.length!==i)throw Error("Unsupported channel count: "+a.length/i);return e=new qp([a],!1,e.g.i.canvas,e.O,r,t),n?e.clone():e}var tm=class extends fp{constructor(e,t,n,a){super(e),this.g=e,this.da=t,this.Z=n,this.ea=a,this.O=new Ep}l(e,t=!0){if("runningMode"in e&&ru(this.baseOptions,2,!!e.runningMode&&"IMAGE"!==e.runningMode),void 0!==e.canvas&&this.g.i.canvas!==e.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(e,t)}close(){this.O.close(),super.close()}};tm.prototype.close=tm.prototype.close;var nm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect_in",!1),this.j={detections:[]},this.h=new Hh,e=new Vh,Xc(this.h,0,1,e),ou(this.h,2,.5),ou(this.h,3,.3)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"minDetectionConfidence"in e&&ou(this.h,2,e.minDetectionConfidence??.5),"minSuppressionThreshold"in e&&ou(this.h,3,e.minSuppressionThreshold??.3),this.l(e)}F(e,t){return this.j={detections:[]},Zp(this,e,t),this.j}G(e,t,n){return this.j={detections:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect_in"),Kd(e,"detections");const t=new Dd;lu(t,Yh,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect_in"),Ud(n,"DETECTIONS:detections"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("detections",((e,t)=>{for(const t of e)e=ph(t),this.j.detections.push(qf(e));cp(this,t)})),this.g.attachEmptyPacketListener("detections",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};nm.prototype.detectForVideo=nm.prototype.G,nm.prototype.detect=nm.prototype.F,nm.prototype.setOptions=nm.prototype.o,nm.createFromModelPath=async function(e,t){return Xp(nm,e,{baseOptions:{modelAssetPath:t}})},nm.createFromModelBuffer=function(e,t){return Xp(nm,e,{baseOptions:{modelAssetBuffer:t}})},nm.createFromOptions=function(e,t){return Xp(nm,e,t)};var am=Wp([61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]),rm=Wp([263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]),im=Wp([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),om=Wp([474,475],[475,476],[476,477],[477,474]),sm=Wp([33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]),lm=Wp([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),cm=Wp([469,470],[470,471],[471,472],[472,469]),um=Wp([10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]),dm=[...am,...rm,...im,...sm,...lm,...um],hm=Wp([127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]);function fm(e){e.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]}}var pm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,this.h=new nf,e=new Vh,Xc(this.h,0,1,e),this.v=new ef,Xc(this.h,0,3,this.v),this.s=new Hh,Xc(this.h,0,2,this.s),iu(this.s,4,1),ou(this.s,2,.5),ou(this.v,2,.5),ou(this.h,4,.5)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"numFaces"in e&&iu(this.s,4,e.numFaces??1),"minFaceDetectionConfidence"in e&&ou(this.s,2,e.minFaceDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.h,4,e.minTrackingConfidence??.5),"minFacePresenceConfidence"in e&&ou(this.v,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in e&&(this.outputFacialTransformationMatrixes=!!e.outputFacialTransformationMatrixes),this.l(e)}F(e,t){return fm(this),Zp(this,e,t),this.j}G(e,t,n){return fm(this),Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"face_landmarks");const t=new Dd;lu(t,rf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"NORM_LANDMARKS:face_landmarks"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("face_landmarks",((e,t)=>{for(const t of e)e=Eh(t),this.j.faceLandmarks.push(Vf(e));cp(this,t)})),this.g.attachEmptyPacketListener("face_landmarks",(e=>{cp(this,e)})),this.outputFaceBlendshapes&&(Kd(e,"blendshapes"),Ud(n,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",((e,t)=>{if(this.outputFaceBlendshapes)for(const t of e)e=ah(t),this.j.faceBlendshapes.push($f(e.g()??[]));cp(this,t)})),this.g.attachEmptyPacketListener("blendshapes",(e=>{cp(this,e)}))),this.outputFacialTransformationMatrixes&&(Kd(e,"face_geometry"),Ud(n,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",((e,t)=>{if(this.outputFacialTransformationMatrixes)for(const t of e)(e=Hc(Zh(t),Ch,2))&&this.j.facialTransformationMatrixes.push({rows:nu(Qc(e,1))??0,columns:nu(Qc(e,2))??0,data:Oc(e,3,Ql)??[]});cp(this,t)})),this.g.attachEmptyPacketListener("face_geometry",(e=>{cp(this,e)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};pm.prototype.detectForVideo=pm.prototype.G,pm.prototype.detect=pm.prototype.F,pm.prototype.setOptions=pm.prototype.o,pm.createFromModelPath=function(e,t){return Xp(pm,e,{baseOptions:{modelAssetPath:t}})},pm.createFromModelBuffer=function(e,t){return Xp(pm,e,{baseOptions:{modelAssetBuffer:t}})},pm.createFromOptions=function(e,t){return Xp(pm,e,t)},pm.FACE_LANDMARKS_LIPS=am,pm.FACE_LANDMARKS_LEFT_EYE=rm,pm.FACE_LANDMARKS_LEFT_EYEBROW=im,pm.FACE_LANDMARKS_LEFT_IRIS=om,pm.FACE_LANDMARKS_RIGHT_EYE=sm,pm.FACE_LANDMARKS_RIGHT_EYEBROW=lm,pm.FACE_LANDMARKS_RIGHT_IRIS=cm,pm.FACE_LANDMARKS_FACE_OVAL=um,pm.FACE_LANDMARKS_CONTOURS=dm,pm.FACE_LANDMARKS_TESSELATION=hm;var mm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!0),this.j=new of,e=new Vh,Xc(this.j,0,1,e)}get baseOptions(){return Hc(this.j,Vh,1)}set baseOptions(e){Xc(this.j,0,1,e)}o(e){return super.l(e)}Da(e,t,n){const a="function"!=typeof t?t:{};if(this.h="function"==typeof t?t:n,Zp(this,e,a??{}),!this.h)return this.s}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"stylized_image");const t=new Dd;lu(t,sf,this.j);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_stylizer.FaceStylizerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"STYLIZED_IMAGE:stylized_image"),n.o(t),Wd(e,n),this.g.S("stylized_image",((e,t)=>{var n=!this.h,a=e.data,r=e.width;const i=r*(e=e.height);if(a instanceof Uint8Array)if(a.length===3*i){const t=new Uint8ClampedArray(4*i);for(let e=0;e<i;++e)t[4*e]=a[3*e],t[4*e+1]=a[3*e+1],t[4*e+2]=a[3*e+2],t[4*e+3]=255;a=new ImageData(t,r,e)}else{if(a.length!==4*i)throw Error("Unsupported channel count: "+a.length/i);a=new ImageData(new Uint8ClampedArray(a.buffer,a.byteOffset,a.length),r,e)}else if(!(a instanceof WebGLTexture))throw Error(`Unsupported format: ${a.constructor.name}`);r=new _p([a],!1,!1,this.g.i.canvas,this.O,r,e),this.s=n=n?r.clone():r,this.h&&this.h(n),cp(this,t)})),this.g.attachEmptyPacketListener("stylized_image",(e=>{this.s=null,this.h&&this.h(null),cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};mm.prototype.stylize=mm.prototype.Da,mm.prototype.setOptions=mm.prototype.o,mm.createFromModelPath=function(e,t){return Xp(mm,e,{baseOptions:{modelAssetPath:t}})},mm.createFromModelBuffer=function(e,t){return Xp(mm,e,{baseOptions:{modelAssetBuffer:t}})},mm.createFromOptions=function(e,t){return Xp(mm,e,t)};var gm=Wp([0,1],[1,2],[2,3],[3,4],[0,5],[5,6],[6,7],[7,8],[5,9],[9,10],[10,11],[11,12],[9,13],[13,14],[14,15],[15,16],[13,17],[0,17],[17,18],[18,19],[19,20]);function vm(e){e.gestures=[],e.landmarks=[],e.worldLandmarks=[],e.handedness=[]}function ym(e){return 0===e.gestures.length?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:e.gestures,landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handedness:e.handedness,handednesses:e.handedness}}function bm(e,t=!0){const n=[];for(const r of e){var a=ah(r);e=[];for(const n of a.g())a=t&&null!=Qc(n,1)?nu(Qc(n,1)):-1,e.push({score:au(n,2)??0,index:a,categoryName:tu(n,3)??""??"",displayName:tu(n,4)??""??""});n.push(e)}return n}var wm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.v=new bf,e=new Vh,Xc(this.v,0,1,e),this.C=new vf,Xc(this.v,0,2,this.C),this.s=new mf,Xc(this.C,0,3,this.s),this.h=new ff,Xc(this.C,0,2,this.h),this.j=new df,Xc(this.v,0,3,this.j),ou(this.h,2,.5),ou(this.C,4,.5),ou(this.s,2,.5)}get baseOptions(){return Hc(this.v,Vh,1)}set baseOptions(e){Xc(this.v,0,1,e)}o(e){if(iu(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&ou(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.C,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&ou(this.s,2,e.minHandPresenceConfidence??.5),e.cannedGesturesClassifierOptions){var t=new lf,n=Gf(e.cannedGesturesClassifierOptions,Hc(this.j,lf,3)?.h());Xc(t,0,2,n),Xc(this.j,0,3,t)}else void 0===e.cannedGesturesClassifierOptions&&Hc(this.j,lf,3)?.g();return e.customGesturesClassifierOptions?(Xc(t=new lf,0,2,n=Gf(e.customGesturesClassifierOptions,Hc(this.j,lf,4)?.h())),Xc(this.j,0,4,t)):void 0===e.customGesturesClassifierOptions&&Hc(this.j,lf,4)?.g(),this.l(e)}ya(e,t){return vm(this),Zp(this,e,t),ym(this)}za(e,t,n){return vm(this),Qp(this,e,n,t),ym(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"hand_gestures"),Kd(e,"hand_landmarks"),Kd(e,"world_hand_landmarks"),Kd(e,"handedness");const t=new Dd;lu(t,Ef,this.v);const n=new jd;Bd(n,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"HAND_GESTURES:hand_gestures"),Ud(n,"LANDMARKS:hand_landmarks"),Ud(n,"WORLD_LANDMARKS:world_hand_landmarks"),Ud(n,"HANDEDNESS:handedness"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("hand_landmarks",((e,t)=>{for(const t of e){e=Eh(t);const n=[];for(const t of Yc(e,bh,1))n.push({x:au(t,1)??0,y:au(t,2)??0,z:au(t,3)??0});this.landmarks.push(n)}cp(this,t)})),this.g.attachEmptyPacketListener("hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("world_hand_landmarks",((e,t)=>{for(const t of e){e=yh(t);const n=[];for(const t of Yc(e,mh,1))n.push({x:au(t,1)??0,y:au(t,2)??0,z:au(t,3)??0});this.worldLandmarks.push(n)}cp(this,t)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("hand_gestures",((e,t)=>{this.gestures.push(...bm(e,!1)),cp(this,t)})),this.g.attachEmptyPacketListener("hand_gestures",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("handedness",((e,t)=>{this.handedness.push(...bm(e)),cp(this,t)})),this.g.attachEmptyPacketListener("handedness",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function xm(e){return{landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handednesses:e.handedness,handedness:e.handedness}}wm.prototype.recognizeForVideo=wm.prototype.za,wm.prototype.recognize=wm.prototype.ya,wm.prototype.setOptions=wm.prototype.o,wm.createFromModelPath=function(e,t){return Xp(wm,e,{baseOptions:{modelAssetPath:t}})},wm.createFromModelBuffer=function(e,t){return Xp(wm,e,{baseOptions:{modelAssetBuffer:t}})},wm.createFromOptions=function(e,t){return Xp(wm,e,t)},wm.HAND_CONNECTIONS=gm;var Em=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.j=new vf,e=new Vh,Xc(this.j,0,1,e),this.s=new mf,Xc(this.j,0,3,this.s),this.h=new ff,Xc(this.j,0,2,this.h),iu(this.h,3,1),ou(this.h,2,.5),ou(this.s,2,.5),ou(this.j,4,.5)}get baseOptions(){return Hc(this.j,Vh,1)}set baseOptions(e){Xc(this.j,0,1,e)}o(e){return"numHands"in e&&iu(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&ou(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.j,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&ou(this.s,2,e.minHandPresenceConfidence??.5),this.l(e)}F(e,t){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Zp(this,e,t),xm(this)}G(e,t,n){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Qp(this,e,n,t),xm(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"hand_landmarks"),Kd(e,"world_hand_landmarks"),Kd(e,"handedness");const t=new Dd;lu(t,xf,this.j);const n=new jd;Bd(n,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"LANDMARKS:hand_landmarks"),Ud(n,"WORLD_LANDMARKS:world_hand_landmarks"),Ud(n,"HANDEDNESS:handedness"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("hand_landmarks",((e,t)=>{for(const t of e)e=Eh(t),this.landmarks.push(Vf(e));cp(this,t)})),this.g.attachEmptyPacketListener("hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("world_hand_landmarks",((e,t)=>{for(const t of e)e=yh(t),this.worldLandmarks.push(Wf(e));cp(this,t)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("handedness",((e,t)=>{var n=this.handedness,a=n.push;const r=[];for(const t of e){e=ah(t);const n=[];for(const t of e.g())n.push({score:au(t,2)??0,index:nu(Qc(t,1))??-1,categoryName:tu(t,3)??""??"",displayName:tu(t,4)??""??""});r.push(n)}a.call(n,...r),cp(this,t)})),this.g.attachEmptyPacketListener("handedness",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Em.prototype.detectForVideo=Em.prototype.G,Em.prototype.detect=Em.prototype.F,Em.prototype.setOptions=Em.prototype.o,Em.createFromModelPath=function(e,t){return Xp(Em,e,{baseOptions:{modelAssetPath:t}})},Em.createFromModelBuffer=function(e,t){return Xp(Em,e,{baseOptions:{modelAssetBuffer:t}})},Em.createFromOptions=function(e,t){return Xp(Em,e,t)},Em.HAND_CONNECTIONS=gm;var Cm=class extends tm{constructor(e,t){super(new Yp(e,t),"input_image","norm_rect",!0),this.j={classifications:[]},this.h=new Cf,e=new Vh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){var t=Gf(e,Hc(this.h,Bh,2));return Xc(this.h,0,2,t),this.l(e)}ia(e,t){return this.j={classifications:[]},Zp(this,e,t),this.j}ja(e,t,n){return this.j={classifications:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"input_image"),Hd(e,"norm_rect"),Kd(e,"classifications");const t=new Dd;lu(t,kf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),Od(n,"IMAGE:input_image"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"CLASSIFICATIONS:classifications"),n.o(t),Wd(e,n),this.g.attachProtoListener("classifications",((e,t)=>{this.j=function(e){const t={classifications:Yc(e,Th,1).map((e=>$f(Hc(e,th,4)?.g()??[],nu(Qc(e,2)),tu(e,3)??"")))};return null!=eu(e)&&(t.timestampMs=nu(eu(e))),t}(Dh(e)),cp(this,t)})),this.g.attachEmptyPacketListener("classifications",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Cm.prototype.classifyForVideo=Cm.prototype.ja,Cm.prototype.classify=Cm.prototype.ia,Cm.prototype.setOptions=Cm.prototype.o,Cm.createFromModelPath=function(e,t){return Xp(Cm,e,{baseOptions:{modelAssetPath:t}})},Cm.createFromModelBuffer=function(e,t){return Xp(Cm,e,{baseOptions:{modelAssetBuffer:t}})},Cm.createFromOptions=function(e,t){return Xp(Cm,e,t)};var km=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!0),this.h=new Sf,this.embeddings={embeddings:[]},e=new Vh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){var t=this.h,n=Hc(this.h,Uh,2);return n=n?n.clone():new Uh,void 0!==e.l2Normalize?ru(n,1,e.l2Normalize):"l2Normalize"in e&&Fc(n,1),void 0!==e.quantize?ru(n,2,e.quantize):"quantize"in e&&Fc(n,2),Xc(t,0,2,n),this.l(e)}na(e,t){return Zp(this,e,t),this.embeddings}oa(e,t,n){return Qp(this,e,n,t),this.embeddings}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"embeddings_out");const t=new Dd;lu(t,Tf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"EMBEDDINGS:embeddings_out"),n.o(t),Wd(e,n),this.g.attachProtoListener("embeddings_out",((e,t)=>{e=Lh(e),this.embeddings=function(e){return{embeddings:Yc(e,_h,1).map((e=>{const t={headIndex:nu(Qc(e,3))??-1,headName:tu(e,4)??""??""};if(void 0!==Wc(e,Ah,$c(e,1)))e=Oc(e=Hc(e,Ah,$c(e,1)),1,Ql),t.floatEmbedding=e;else{const n=new Uint8Array(0);t.quantizedEmbedding=Hc(e,Nh,$c(e,2))?.fa()?.ha()??n}return t})),timestampMs:nu(eu(e))}}(e),cp(this,t)})),this.g.attachEmptyPacketListener("embeddings_out",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};km.cosineSimilarity=function(e,t){if(e.floatEmbedding&&t.floatEmbedding)e=Kf(e.floatEmbedding,t.floatEmbedding);else{if(!e.quantizedEmbedding||!t.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");e=Kf(Hf(e.quantizedEmbedding),Hf(t.quantizedEmbedding))}return e},km.prototype.embedForVideo=km.prototype.oa,km.prototype.embed=km.prototype.na,km.prototype.setOptions=km.prototype.o,km.createFromModelPath=function(e,t){return Xp(km,e,{baseOptions:{modelAssetPath:t}})},km.createFromModelBuffer=function(e,t){return Xp(km,e,{baseOptions:{modelAssetBuffer:t}})},km.createFromOptions=function(e,t){return Xp(km,e,t)};var Sm=class{constructor(e,t,n){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=n}close(){this.confidenceMasks?.forEach((e=>{e.close()})),this.categoryMask?.close()}};function Tm(e){e.categoryMask=void 0,e.confidenceMasks=void 0,e.qualityScores=void 0}function Im(e){try{const t=new Sm(e.confidenceMasks,e.categoryMask,e.qualityScores);if(!e.j)return t;e.j(t)}finally{hp(e)}}Sm.prototype.close=Sm.prototype.close;var Rm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.s=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Nf,this.v=new If,Xc(this.h,0,3,this.v),e=new Vh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return void 0!==e.displayNamesLocale?Fc(this.h,2,ic(e.displayNamesLocale)):"displayNamesLocale"in e&&Fc(this.h,2),"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}P(){!function(e){const t=Yc(e.W(),jd,1).filter((e=>(tu(e,1)??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator")));if(e.s=[],1<t.length)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");1===t.length&&(Hc(t[0],Dd,7)?.l()?.g()??new Map).forEach(((t,n)=>{e.s[Number(n)]=tu(t,1)??""}))}(this)}X(e,t,n){const a="function"!=typeof t?t:{};return this.j="function"==typeof t?t:n,Tm(this),Zp(this,e,a),Im(this)}Ca(e,t,n,a){const r="function"!=typeof n?n:{};return this.j="function"==typeof n?n:a,Tm(this),Qp(this,e,r,t),Im(this)}ta(){return this.s}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect");const t=new Dd;lu(t,_f,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),n.o(t),Wd(e,n),up(this,e),this.outputConfidenceMasks&&(Kd(e,"confidence_masks"),Ud(n,"CONFIDENCE_MASKS:confidence_masks"),dp(this,"confidence_masks"),this.g.T("confidence_masks",((e,t)=>{this.confidenceMasks=e.map((e=>em(this,e,!this.j))),cp(this,t)})),this.g.attachEmptyPacketListener("confidence_masks",(e=>{this.confidenceMasks=[],cp(this,e)}))),this.outputCategoryMask&&(Kd(e,"category_mask"),Ud(n,"CATEGORY_MASK:category_mask"),dp(this,"category_mask"),this.g.S("category_mask",((e,t)=>{this.categoryMask=em(this,e,!this.j),cp(this,t)})),this.g.attachEmptyPacketListener("category_mask",(e=>{this.categoryMask=void 0,cp(this,e)}))),Kd(e,"quality_scores"),Ud(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((e,t)=>{this.qualityScores=e,cp(this,t)})),this.g.attachEmptyPacketListener("quality_scores",(e=>{this.categoryMask=void 0,cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Rm.prototype.getLabels=Rm.prototype.ta,Rm.prototype.segmentForVideo=Rm.prototype.Ca,Rm.prototype.segment=Rm.prototype.X,Rm.prototype.setOptions=Rm.prototype.o,Rm.createFromModelPath=function(e,t){return Xp(Rm,e,{baseOptions:{modelAssetPath:t}})},Rm.createFromModelBuffer=function(e,t){return Xp(Rm,e,{baseOptions:{modelAssetBuffer:t}})},Rm.createFromOptions=function(e,t){return Xp(Rm,e,t)};var Dm=class{constructor(e,t,n){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=n}close(){this.confidenceMasks?.forEach((e=>{e.close()})),this.categoryMask?.close()}};Dm.prototype.close=Dm.prototype.close;var Am=class extends cu{constructor(e){super(e)}},Nm=[0,Zu,Zu,Zu],_m=[0,Vu,Vu,Vu,Vu,td],Fm=[0,Vu,Vu,Vu,Vu,td,Vu,Vu],Mm=[0,sd,Fm],Pm=[0,sd,Mm,sd,Nm],Lm=[0,sd,Fm,sd,Nm],Bm=[0,sd,Fm,Zu,Zu],Om=[0,sd,Bm,sd,Nm],Um=[0,Vu,Vu,Vu,Vu,td,sd,Nm,sd,Nm],jm=[0,Vu,Vu,Vu,Vu,td,hd],zm=class extends cu{constructor(e){super(e)}},Gm=[0,Vu,Vu,td],$m=class extends cu{constructor(){super()}};$m.B=[1];var qm=class extends cu{constructor(e){super(e)}},Vm=[1,2,3,4,5,6,7,8,9,10,14,15],Wm=[0,cd,Fm,Vm,cd,Lm,Vm,cd,Mm,Vm,cd,Pm,Vm,cd,Gm,Vm,cd,jm,Vm,cd,_m,Vm,cd,[0,id,Vu,Vu,Vu,td,Zu,td,td,Vu,3,sd,Nm],Vm,cd,Bm,Vm,cd,Om,Vm,Vu,sd,Nm,id,cd,Um,Vm,cd,[0,ld,Gm],Vm],Hm=[0,id,Zu,Zu,td],Km=class extends cu{constructor(){super()}};Km.B=[1],Km.prototype.g=vd([0,ld,Wm,id,sd,Hm]);var Ym=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Nf,this.v=new If,Xc(this.h,0,3,this.v),e=new Vh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}X(e,t,n,a){const r="function"!=typeof n?n:{};this.j="function"==typeof n?n:a,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,n=this.I+1,a=new Km;const i=new qm;var o=new Am;if(iu(o,1,255),Xc(i,0,12,o),t.keypoint&&t.scribble)throw Error("Cannot provide both keypoint and scribble.");if(t.keypoint){var s=new zm;ru(s,3,!0),ou(s,1,t.keypoint.x),ou(s,2,t.keypoint.y),Jc(i,5,Vm,s)}else{if(!t.scribble)throw Error("Must provide either a keypoint or a scribble.");for(s of(o=new $m,t.scribble))ru(t=new zm,3,!0),ou(t,1,s.x),ou(t,2,s.y),Zc(o,zm,t);Jc(i,15,Vm,o)}Zc(a,qm,i),this.g.addProtoToStream(a.g(),"drishti.RenderData","roi_in",n),Zp(this,e,r);e:{try{const e=new Dm(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var l=e;break e}this.j(e)}finally{hp(this)}l=void 0}return l}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"roi_in"),Hd(e,"norm_rect_in");const t=new Dd;lu(t,_f,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraph"),Od(n,"IMAGE:image_in"),Od(n,"ROI:roi_in"),Od(n,"NORM_RECT:norm_rect_in"),n.o(t),Wd(e,n),up(this,e),this.outputConfidenceMasks&&(Kd(e,"confidence_masks"),Ud(n,"CONFIDENCE_MASKS:confidence_masks"),dp(this,"confidence_masks"),this.g.T("confidence_masks",((e,t)=>{this.confidenceMasks=e.map((e=>em(this,e,!this.j))),cp(this,t)})),this.g.attachEmptyPacketListener("confidence_masks",(e=>{this.confidenceMasks=[],cp(this,e)}))),this.outputCategoryMask&&(Kd(e,"category_mask"),Ud(n,"CATEGORY_MASK:category_mask"),dp(this,"category_mask"),this.g.S("category_mask",((e,t)=>{this.categoryMask=em(this,e,!this.j),cp(this,t)})),this.g.attachEmptyPacketListener("category_mask",(e=>{this.categoryMask=void 0,cp(this,e)}))),Kd(e,"quality_scores"),Ud(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((e,t)=>{this.qualityScores=e,cp(this,t)})),this.g.attachEmptyPacketListener("quality_scores",(e=>{this.categoryMask=void 0,cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Ym.prototype.segment=Ym.prototype.X,Ym.prototype.setOptions=Ym.prototype.o,Ym.createFromModelPath=function(e,t){return Xp(Ym,e,{baseOptions:{modelAssetPath:t}})},Ym.createFromModelBuffer=function(e,t){return Xp(Ym,e,{baseOptions:{modelAssetBuffer:t}})},Ym.createFromOptions=function(e,t){return Xp(Ym,e,t)};var Xm=class extends tm{constructor(e,t){super(new Yp(e,t),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},this.h=new Ff,e=new Vh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return void 0!==e.displayNamesLocale?Fc(this.h,2,ic(e.displayNamesLocale)):"displayNamesLocale"in e&&Fc(this.h,2),void 0!==e.maxResults?iu(this.h,3,e.maxResults):"maxResults"in e&&Fc(this.h,3),void 0!==e.scoreThreshold?ou(this.h,4,e.scoreThreshold):"scoreThreshold"in e&&Fc(this.h,4),void 0!==e.categoryAllowlist?Gc(this.h,5,e.categoryAllowlist):"categoryAllowlist"in e&&Fc(this.h,5),void 0!==e.categoryDenylist?Gc(this.h,6,e.categoryDenylist):"categoryDenylist"in e&&Fc(this.h,6),this.l(e)}F(e,t){return this.j={detections:[]},Zp(this,e,t),this.j}G(e,t,n){return this.j={detections:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"input_frame_gpu"),Hd(e,"norm_rect"),Kd(e,"detections");const t=new Dd;lu(t,Mf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.ObjectDetectorGraph"),Od(n,"IMAGE:input_frame_gpu"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"DETECTIONS:detections"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("detections",((e,t)=>{for(const t of e)e=ph(t),this.j.detections.push(qf(e));cp(this,t)})),this.g.attachEmptyPacketListener("detections",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Jm(e){e.landmarks=[],e.worldLandmarks=[],e.v=void 0}function Zm(e){try{const t=new class{constructor(e,t,n){this.landmarks=e,this.worldLandmarks=t,this.g=n}close(){this.g?.forEach((e=>{e.close()}))}}(e.landmarks,e.worldLandmarks,e.v);if(!e.s)return t;e.s(t)}finally{hp(e)}}Xm.prototype.detectForVideo=Xm.prototype.G,Xm.prototype.detect=Xm.prototype.F,Xm.prototype.setOptions=Xm.prototype.o,Xm.createFromModelPath=async function(e,t){return Xp(Xm,e,{baseOptions:{modelAssetPath:t}})},Xm.createFromModelBuffer=function(e,t){return Xp(Xm,e,{baseOptions:{modelAssetBuffer:t}})},Xm.createFromOptions=function(e,t){return Xp(Xm,e,t)};var Qm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,this.h=new Uf,e=new Vh,Xc(this.h,0,1,e),this.C=new Bf,Xc(this.h,0,3,this.C),this.j=new Pf,Xc(this.h,0,2,this.j),iu(this.j,4,1),ou(this.j,2,.5),ou(this.C,2,.5),ou(this.h,4,.5)}get baseOptions(){return Hc(this.h,Vh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"numPoses"in e&&iu(this.j,4,e.numPoses??1),"minPoseDetectionConfidence"in e&&ou(this.j,2,e.minPoseDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.h,4,e.minTrackingConfidence??.5),"minPosePresenceConfidence"in e&&ou(this.C,2,e.minPosePresenceConfidence??.5),"outputSegmentationMasks"in e&&(this.outputSegmentationMasks=e.outputSegmentationMasks??!1),this.l(e)}F(e,t,n){const a="function"!=typeof t?t:{};return this.s="function"==typeof t?t:n,Jm(this),Zp(this,e,a),Zm(this)}G(e,t,n,a){const r="function"!=typeof n?n:{};return this.s="function"==typeof n?n:a,Jm(this),Qp(this,e,r,t),Zm(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"normalized_landmarks"),Kd(e,"world_landmarks"),Kd(e,"segmentation_masks");const t=new Dd;lu(t,zf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"NORM_LANDMARKS:normalized_landmarks"),Ud(n,"WORLD_LANDMARKS:world_landmarks"),n.o(t),Wd(e,n),up(this,e),this.g.attachProtoVectorListener("normalized_landmarks",((e,t)=>{this.landmarks=[];for(const t of e)e=Eh(t),this.landmarks.push(Vf(e));cp(this,t)})),this.g.attachEmptyPacketListener("normalized_landmarks",(e=>{this.landmarks=[],cp(this,e)})),this.g.attachProtoVectorListener("world_landmarks",((e,t)=>{this.worldLandmarks=[];for(const t of e)e=yh(t),this.worldLandmarks.push(Wf(e));cp(this,t)})),this.g.attachEmptyPacketListener("world_landmarks",(e=>{this.worldLandmarks=[],cp(this,e)})),this.outputSegmentationMasks&&(Ud(n,"SEGMENTATION_MASK:segmentation_masks"),dp(this,"segmentation_masks"),this.g.T("segmentation_masks",((e,t)=>{this.v=e.map((e=>em(this,e,!this.s))),cp(this,t)})),this.g.attachEmptyPacketListener("segmentation_masks",(e=>{this.v=[],cp(this,e)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Qm.prototype.detectForVideo=Qm.prototype.G,Qm.prototype.detect=Qm.prototype.F,Qm.prototype.setOptions=Qm.prototype.o,Qm.createFromModelPath=function(e,t){return Xp(Qm,e,{baseOptions:{modelAssetPath:t}})},Qm.createFromModelBuffer=function(e,t){return Xp(Qm,e,{baseOptions:{modelAssetBuffer:t}})},Qm.createFromOptions=function(e,t){return Xp(Qm,e,t)},Qm.POSE_CONNECTIONS=Wp([0,1],[1,2],[2,3],[3,7],[0,4],[4,5],[5,6],[6,8],[9,10],[11,12],[11,13],[13,15],[15,17],[15,19],[15,21],[17,19],[12,14],[14,16],[16,18],[16,20],[16,22],[18,20],[11,23],[12,24],[23,24],[23,25],[24,26],[25,27],[26,28],[27,29],[28,30],[29,31],[30,32],[27,31],[28,32]);var eg;function tg(e,t,n,a){t.forEach((function(t){var r=t.keypoints.map((function(e){return[e.x,e.y]}));if(n){e.strokeStyle="#FF2C35",e.lineWidth=1;var i=t.box;!function(e,t,n){var a=new Path2D;a.moveTo(t[0][0],t[0][1]);for(var r=1;r<t.length;r++){var i=t[r];a.lineTo(i[0],i[1])}n&&a.closePath(),e.stroke(a)}(e,[[i.xMin,i.yMin],[i.xMax,i.yMin],[i.xMax,i.yMax],[i.xMin,i.yMax]],!0)}if(a){e.fillStyle="#32EEDB";for(var o=0;o<6;o++){var s=r[o][0],l=r[o][1];e.beginPath(),e.arc(s,l,3,0,2*Math.PI),e.fill()}}}))}function ng(){return m(this,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return eg?[2,eg]:[4,Qf.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.7/wasm")];case 1:return e=t.sent(),[4,nm.createFromOptions(e,{baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/1/blaze_face_short_range.tflite",delegate:"GPU"},runningMode:"VIDEO"})];case 2:return[2,eg=t.sent()]}}))}))}var ag,rg,ig,og,sg,lg,cg,ug,dg,hg=t.createContext({start:function(){return null},stop:function(){return null},onPredictionMade:function(){return null},canvasRef:{current:null},ready:!1,error:null}),fg=function(e){var n=e.autoStart,a=void 0===n||n,r=e.children,i=e.throttleMs,o=t.useContext(dt),s=o.videoRef,c=o.videoLoaded,u=o.cameraReady,d=t.useRef(null),h=t.useRef(),f=t.useState(!1),v=f[0],y=f[1],b=t.useState(!1),w=b[0],x=b[1],E=t.useRef(null),C=t.useRef(0),k=t.useRef(0),S=t.useState(null),T=S[0],I=S[1];t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:y(!1),n.label=1;case 1:return n.trys.push([1,3,,4]),e=E,[4,ng()];case 2:return e.current=n.sent(),[3,4];case 3:return t=n.sent(),I(t),[3,4];case 4:return y(!0),[2]}}))}))}),[]),t.useEffect((function(){if(c&&u&&w&&v){var e;k.current+=1;var t=k.current;return m(void 0,void 0,void 0,(function(){var n,a,r,o;return g(this,(function(l){switch(l.label){case 0:return s.current&&E.current?(n=null===(a=d.current)||void 0===a?void 0:a.getContext("2d"),d.current&&(d.current.width=null===(r=s.current)||void 0===r?void 0:r.videoWidth,d.current.height=null===(o=s.current)||void 0===o?void 0:o.videoHeight,null==n||n.translate(s.current.videoWidth,0),null==n||n.scale(-1,1)),[4,function a(){var r;return m(this,void 0,void 0,(function(){var o,l,c,u,d;return g(this,(function(f){switch(f.label){case 0:return E.current&&s.current&&t===k.current?s.current.readyState<2?[4,new Promise((function(e){s.current&&(s.current.onloadeddata=function(){e([])})}))]:[3,2]:[2];case 1:f.sent(),f.label=2;case 2:o=s.current.videoWidth,l=s.current.videoHeight,null==n||n.drawImage(s.current,0,0,o,l),f.label=3;case 3:return f.trys.push([3,5,,6]),[4,E.current.detectForVideo(s.current,performance.now())];case 4:return(c=f.sent())&&(u=c.detections.map((function(e){var t,n,a,r,i,s,c,u,d,h,f,m,g,v,y,b;return{keypoints:e.keypoints.map((function(e){var t;return p(p({},e),{x:e.x*o,y:e.y*l,name:null!==(t=e.label)&&void 0!==t?t:""})})),box:{xMin:null!==(n=null===(t=e.boundingBox)||void 0===t?void 0:t.originX)&&void 0!==n?n:0,xMax:(null!==(r=null===(a=e.boundingBox)||void 0===a?void 0:a.originX)&&void 0!==r?r:0)+(null!==(s=null===(i=e.boundingBox)||void 0===i?void 0:i.width)&&void 0!==s?s:0),yMin:null!==(u=null===(c=e.boundingBox)||void 0===c?void 0:c.originY)&&void 0!==u?u:0,yMax:(null!==(h=null===(d=e.boundingBox)||void 0===d?void 0:d.originY)&&void 0!==h?h:0)+(null!==(m=null===(f=e.boundingBox)||void 0===f?void 0:f.height)&&void 0!==m?m:0),width:null!==(v=null===(g=e.boundingBox)||void 0===g?void 0:g.width)&&void 0!==v?v:0,height:null!==(b=null===(y=e.boundingBox)||void 0===y?void 0:y.height)&&void 0!==b?b:0}}})),null===(r=h.current)||void 0===r||r.call(h,u),n&&tg(n,u,!0,!0)),[3,6];case 5:return d=f.sent(),console.error("caught face detection error",d),[3,6];case 6:return i?e=setTimeout((function(){C.current=requestAnimationFrame(a)}),i):C.current=requestAnimationFrame(a),[2]}}))}))}()]):[2];case 1:return l.sent(),[2]}}))})),function(){C.current&&cancelAnimationFrame(C.current),e&&clearTimeout(e)}}}),[u,v,w,i,c,s]);var R=t.useCallback((function(){x(!0)}),[]),D=t.useCallback((function(){x(!1)}),[]);t.useEffect((function(){return a&&R(),function(){D()}}),[a,R,D]);var A=t.useCallback((function(e){h.current=e}),[]),N=t.useMemo((function(){return{start:R,stop:D,ready:v,canvasRef:d,onPredictionMade:A,error:T}}),[T,A,v,R,D]);return l.createElement(hg.Provider,{value:N},r)},pg=function(e,n,a,r,i){void 0===i&&(i=!0);var o=t.useState(!1),s=o[0],l=o[1],c=t.useState(),u=c[0],d=c[1];return t.useEffect((function(){if(e&&i){d(new Date);var t=setTimeout((function(){l(!0)}),e);return function(){t&&clearTimeout(t)}}}),[e,i]),t.useEffect((function(){if(s&&!a){if(r){var e=setTimeout((function(){null==n||n()}),12e4);return function(){clearTimeout(e)}}null==n||n()}}),[n,r,s,a]),{timedOut:s,timeoutStartedAt:u}},mg=function(e){var n=e.onFinished,a=e.onCapture,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=t.useState(null),h=d[0],f=d[1],p=t.useRef(null),m=t.useState(!1),g=m[0],v=m[1],y=ji(u,{headingText:"We're having some trouble.",descriptionText:"On-device capture guidance failed, please capture a selfie manually.",captureBtnText:"Capture",doneBtnText:"Done",doneBtnLoadingText:"Verifying..."});return s.default.createElement(j,{className:i.container},s.default.createElement(gg,{className:i.inner},s.default.createElement(vg,{className:i.heading},y.headingText),s.default.createElement(yg,{className:i.description},y.descriptionText),h&&s.default.createElement(bg,{className:i.imageContainer},s.default.createElement("img",{src:h,alt:"",className:i.image})),s.default.createElement("input",{ref:p,type:"file",accept:"image/*",onChange:function(e){var t,n=null===(t=e.target.files)||void 0===t?void 0:t[0];if(n){var r=new FileReader;r.addEventListener("load",(function(e){var t,n=null===(t=e.target)||void 0===t?void 0:t.result;f(n),null==a||a(n)})),r.readAsDataURL(n)}},hidden:!0}),s.default.createElement(wg,{className:i.buttonsRow},!h&&s.default.createElement(ue,{variant:"positive",className:i.captureBtn,colors:l.captureBtn,finished:!0,onClick:function(){var e;null===(e=p.current)||void 0===e||e.click()}},y.captureBtnText),h&&s.default.createElement(ue,{variant:"positive",key:g?"loading-btn":"ready-btn",className:i.doneBtn,colors:l.doneBtn,finished:!g,onClick:function(){v(!0),null==n||n(h)}},g?y.doneBtnLoadingText:y.doneBtnText))))},gg=u.default(z)(ag||(ag=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),vg=u.default.h3(rg||(rg=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),yg=u.default.p(ig||(ig=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),bg=u.default(G)(og||(og=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),wg=u.default(bo)(sg||(sg=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),xg={videoWidth:0,videoHeight:0,capturing:!1,captured:!1,captureFailed:!1,frame:null,faces:[],faceNotCentered:!1,faceLookingAway:!1,faceTooClose:!1,faceTooFar:!1,faceReady:!1,faceReadyAt:null,goodFramesCount:0,goodFramesThreshold:1,goodFramesThresholdMet:!1},Eg=function(e,t){switch(t.type){case"configure":return p(p({},e),{videoWidth:t.payload.videoWidth,videoHeight:t.payload.videoHeight});case"capturing":return p(p({},e),{capturing:!0,captured:!1,captureFailed:!1});case"captured":return p(p({},e),{capturing:!1,captured:!0,captureFailed:!1});case"captureFailed":return p(p({},e),{capturing:!1,captured:!1,captureFailed:!0});case"facesDetected":var n=t.payload.faces,a=n[0],r=!0,i=!1,o=!1,s=!1,l=e.faceReadyAt,c=e.goodFramesCount;if(a){var u=e.videoHeight/2,d=(a.box.xMin+a.box.xMax)/2,h=(a.box.yMin+a.box.yMax)/2,f=.125*e.videoWidth,m=.125*e.videoHeight,g=.2*a.box.width,v=.2*a.box.height,y=a.keypoints[2];y&&(r=Math.abs(e.videoWidth/2-d)>f||Math.abs(u+50-h)>m,i=Math.abs(d-y.x)>g||Math.abs(h-y.y)>v);var b=e.videoWidth<e.videoHeight;o=a.box.width>e.videoWidth/(b?2:4.5),s=a.box.width<e.videoWidth/(b?6:7)}var w=!(r||i||o||s);return w?e.faceReady||(l=new Date):(l=null,c=0),p(p({},e),{faces:n,faceNotCentered:r,faceLookingAway:i,faceTooClose:o,faceTooFar:s,faceReady:w,faceReadyAt:l,goodFramesCount:c})}},Cg=function(e){var n,a,r=e.onGuidanceSatisfied,i=e.onGuidanceNotSatisfied,o=e.onSelfieCaptured,l=e.onTimeout,c=e.onExit,u=e.timeoutDurationMs,d=void 0===u?15e3:u,h=e.guidanceMessage,f=e.guidanceSatisfied,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=De(),S=k.ref,T=k.width,I=void 0===T?1:T,R=k.height,D=void 0===R?1:R,A=t.useReducer(Eg,xg),N=A[0],_=A[1],F=t.useRef(null),M=t.useContext(dt),L=M.cameraRef,B=M.cameraReady,O=M.videoRef,U=t.useContext(hg),j=U.onPredictionMade,z=U.error;t.useEffect((function(){B&&O.current&&0!==O.current.videoWidth&&_({type:"configure",payload:{videoWidth:O.current.videoWidth,videoHeight:O.current.videoHeight}})}),[B,O]),t.useEffect((function(){j((function(e){_({type:"facesDetected",payload:{faces:e}})}))}),[j]);var G=t.useState(!1),$=G[0],q=G[1];t.useEffect((function(){var e;return N.faceReady?(null==r||r(),e=setTimeout((function(){q(!0)}),1e3)):null==i||i(),function(){e&&clearTimeout(e)}}),[i,r,N.faceReady]),t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){if($&&O.current&&F.current&&N.faces.length>0){if(Wa(F.current,O.current),!(e=F.current.getContext("2d")))return[2];t=e.getImageData(0,0,O.current.videoWidth,O.current.videoHeight),null==o||o(t,N.faces[0]),Ha(F.current)}return[2]}))}))}),[$,o,N.faces,O]);var V=pg(d,l),W=V.timedOut,H=V.timeoutStartedAt,K=dr({enabled:C,pageWidth:I,pageHeight:D,videoWidth:N.videoWidth,videoHeight:N.videoHeight});b.guidesUnsatisfiedColor||(b.guidesUnsatisfiedColor="white"),b.guidesSatisfiedColor||(b.guidesSatisfiedColor="green");var Y=ji(x,{guidanceHoldStillText:"Hold still for a few seconds...",guidanceLookStraightText:"Look straight into the camera...",guidanceMoveBackText:"Move back...",guidanceMoveForwardText:"Move forward...",guidanceMoveToCenterText:"Move to the center..."}),X=N.faceReady;return"boolean"==typeof f&&(X=f),h||(h=X?Y.guidanceHoldStillText:N.faceLookingAway?Y.guidanceLookStraightText:N.faceTooClose?Y.guidanceMoveBackText:N.faceTooFar?Y.guidanceMoveForwardText:N.faceNotCentered?Y.guidanceMoveToCenterText:""),z?s.default.createElement(mg,{classNames:v.fallback}):s.default.createElement(P,{ref:S,className:"flex ".concat(null!==(n=v.container)&&void 0!==n?n:"")},s.default.createElement(Va,{ref:F}),s.default.createElement(Eo,{className:v.cameraFeed}),s.default.createElement(Wo,{classNames:v.guides,variant:X?"satisfied":"unsatisfied"}),""!==h&&s.default.createElement(eo,{className:v.guidanceMessageContainer},s.default.createElement(to,{$variant:X?"positive":"negative",className:v.guidanceMessage},h)),C&&N.faces.length>0&&s.default.createElement(lr,{$flipX:!(null===(a=L.current)||void 0===a?void 0:a.isRearFacing)},N.faces.map((function(e,t){var n;return s.default.createElement(fr,{key:t,face:e,scaling:K,flipX:!(null===(n=L.current)||void 0===n?void 0:n.isRearFacing),color:X?"green":"red"})}))),C&&s.default.createElement(sr,null,L.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",L.current.label," (",L.current.width,"x",L.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),N.faceNotCentered?"❌":"✅"," Face Centered",s.default.createElement("br",null),N.faceTooClose||N.faceTooFar?"❌":"✅"," Face"," ",N.faceTooClose?"Too Close":N.faceTooFar?"Too Far":"Distance Correct",s.default.createElement("br",null),N.faceLookingAway?"❌":"✅"," Face Looking Forward",s.default.createElement("br",null),N.goodFramesThresholdMet?"✅":"❌"," ",N.goodFramesCount," ","Good Frames",s.default.createElement("br",null),W?"❌":"✅"," Time Remaining:"," ",Math.max(0,d-((new Date).getTime()-(null!=H?H:new Date).getTime())),"ms"),s.default.createElement(Er,{onClick:c,className:v.exitCaptureBtn}))},kg={frame:null,face:null,requestState:"CAPTURING",requestError:null,imageUrl:null,faceLive:!1,eyeCoveringDetected:!1,maskDetected:!1,headCoveringDetected:!1,phoneDetected:!1,timesLivenessCheckFailed:0},Sg=function(e,t){var n,a;switch(t.type){case"livenessReady":return["CAPTURING","FAILED","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"livenessChecking":return p(p({},e),{requestState:"IN_PROGRESS"});case"livenessChecked":var r=t.payload.response,i=r.status,o=i.statusMessage,s=i.errorData,l=r.resultData;if("000"!==i.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(o,": ").concat(s))});var c="Live Face Detected"===l.verificationResult,u="true"===l.eyeCovering,d="true"===l.faceMask,h="true"===l.headCovering,f="true"===l.cellPhone,m=c&&!u&&!d&&!h,g=m?"PASSED":"FAILED",v=e.timesLivenessCheckFailed;return m?v=0:v+=1,p(p({},e),{frame:null!==(n=t.payload.frame)&&void 0!==n?n:null,face:null!==(a=t.payload.face)&&void 0!==a?a:null,imageUrl:t.payload.imageUrl,requestState:g,faceLive:c,eyeCoveringDetected:u,maskDetected:d,headCoveringDetected:h,phoneDetected:f,timesLivenessCheckFailed:v});case"livenessCheckFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},Tg=function(e){var n,a=e.onCapture,r=e.onSuccess,i=e.onTimeout,o=e.onExit,l=e.timeoutDurationMs,c=void 0===l?15e3:l,u=e.classNames,d=void 0===u?{}:u,h=e.colors,f=void 0===h?{}:h,p=e.verbiage,v=void 0===p?{}:p,y=e.debugMode,b=t.useContext(I),w=b.checkLiveness,x=b.submissionError,E=t.useContext(hg).error,k=t.useReducer(Sg,kg),S=k[0],T=k[1],R=t.useState(null),D=R[0],A=R[1],N=t.useRef(null),_=t.useRef(null),F=t.useCallback((function(e,t){null==a||a(),T({type:"livenessReady",payload:{frame:e,face:t}})}),[a]),M=S.frame,P=S.face,L="CAPTURED"===S.requestState,B="PASSED"===S.requestState;t.useEffect((function(){M&&P&&L&&!x&&(T({type:"livenessChecking"}),m(void 0,void 0,void 0,(function(){var e,t,n,a;return g(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),e=Ka(N.current,_.current,M,P),A(e),n=w,[4,C(e)];case 1:return[4,n.apply(void 0,[r.sent()])];case 2:return t=r.sent(),T({type:"livenessChecked",payload:{frame:M,face:P,imageUrl:e,response:t}}),[3,4];case 3:return a=r.sent(),T({type:"livenessCheckFailed",payload:{error:a}}),[3,4];case 4:return[2]}}))})))}),[w,P,M,L,x]);var O=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t,n,a;return g(this,(function(r){switch(r.label){case 0:T({type:"livenessChecking"}),r.label=1;case 1:return r.trys.push([1,4,,5]),n=w,[4,C(e)];case 2:return[4,n.apply(void 0,[r.sent()])];case 3:return t=r.sent(),T({type:"livenessChecked",payload:{imageUrl:e,response:t}}),[3,5];case 4:return a=r.sent(),T({type:"livenessCheckFailed",payload:{error:a}}),[3,5];case 5:return[2]}}))}))}),[w]);t.useEffect((function(){B&&S.imageUrl&&(null==r||r(S.imageUrl))}),[r,S.imageUrl,B]),t.useEffect((function(){S.timesLivenessCheckFailed>=(E?1:2)&&(null==i||i())}),[E,i,S.timesLivenessCheckFailed]),pg(c,i,"PASSED"===S.requestState||!!E,"IN_PROGRESS"===S.requestState);var U=ji(v,{guidanceRemoveEyeCoveringsText:"Please remove your eye coverings (sunglasses, eye patch, etc.)...",guidanceRemoveHeadCoveringsText:"Please remove your head coverings (hat, scarf, etc.)...",guidanceRemoveMaskText:"Please remove your mask...",progressPreviewText:"Processing..."}),j=S.eyeCoveringDetected?U.guidanceRemoveEyeCoveringsText:S.headCoveringDetected?U.guidanceRemoveHeadCoveringsText:S.maskDetected?U.guidanceRemoveMaskText:void 0;return E?s.default.createElement(mg,{onFinished:O}):s.default.createElement(s.default.Fragment,null,s.default.createElement(Va,{ref:N}),s.default.createElement(Va,{ref:_}),s.default.createElement(Cg,{onSelfieCaptured:F,onExit:o,timeoutDurationMs:c,guidanceMessage:j,guidanceSatisfied:!j&&void 0,classNames:d,colors:f,verbiage:U,debugMode:y}),D&&s.default.createElement(Sr,{classNames:d.imagePreview,imageUrl:D,text:null!==(n=U.progressPreviewText)&&void 0!==n?n:""}))},Ig=function(e){var n=e.onDismissed,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(dt),f=h.cameraReady,p=h.cameraAccessDenied,m=t.useContext(hg).ready;r.instructionImageUrl||(r.instructionImageUrl="".concat(Ga,"/Selfie-Image-1.png"));var g=ji(d,{headingText:"Use your device camera to capture your face",removeEyeCoveringsText:"Remove Sunglasses & Hat",avoidExcessiveBacklightingText:"Avoid Excessive Backlighting",continueText:"Continue",cameraInitializingText:"Camera initializing...",modelsWarmingUpText:"Models warming up..."}),v=t.useState(!1),y=v[1];return v[0]?s.default.createElement(s.default.Fragment,null):p?s.default.createElement(oo,{assets:r.cameraAccessDenied,classNames:o.cameraAccessDenied,colors:c.cameraAccessDenied,verbiage:d.cameraAccessDenied}):s.default.createElement(j,{className:o.container},s.default.createElement(z,{className:o.inner},s.default.createElement("div",{className:o.headingContainer},s.default.createElement("h3",{className:o.heading},g.headingText),s.default.createElement(Rg,null,g.removeEyeCoveringsText,s.default.createElement("br",null),g.avoidExcessiveBacklightingText)),s.default.createElement(G,{className:o.imageContainer},s.default.createElement(Dg,{className:o.image,alt:g.headingText,src:r.instructionImageUrl})),s.default.createElement(ue,{variant:"positive",disabled:!f||!m,finished:f&&m,className:o.continueBtn,colors:c.continueBtn,onClick:function(){y(!0),null==n||n()}},f&&m?g.continueText:m?g.cameraInitializingText:g.modelsWarmingUpText),s.default.createElement("div",{style:{display:"none"}},s.default.createElement(Eo,null))))},Rg=u.default(to)(lg||(lg=y(["\n max-width: 280px;\n margin: 18px auto 12px;\n line-height: 1.5;\n padding: 12px 24px;\n"],["\n max-width: 280px;\n margin: 18px auto 12px;\n line-height: 1.5;\n padding: 12px 24px;\n"]))),Dg=u.default.img(cg||(cg=y(["\n position: relative;\n top: 5%;\n"],["\n position: relative;\n top: 5%;\n"]))),Ag=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=ji(void 0===c?{}:c,{headingText:"Face liveness has been verified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(j,{className:i.container},s.default.createElement(z,{className:i.inner},s.default.createElement(Ng,{className:i.heading},u.headingText),s.default.createElement(G,{className:i.imageContainer},s.default.createElement("img",{alt:u.headingText,src:t,className:i.image})),s.default.createElement(bo,{className:i.buttonsRow},s.default.createElement(ue,{variant:"warning",onClick:a,colors:l.retryBtn,finished:!0},u.retryBtnText),s.default.createElement(ue,{variant:"positive",onClick:n,colors:l.doneBtn,finished:!0},u.doneBtnText))))},Ng=u.default.h3(ug||(ug=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),_g=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Live face not detected, please try again",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(j,{className:c.container},s.default.createElement(z,{className:c.inner},s.default.createElement("h3",{className:c.heading},p.headingText),s.default.createElement(Fg,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(bo,{className:c.buttonsRow},n&&s.default.createElement(ue,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ue,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},Fg=u.default(G)(dg||(dg=y(["\n max-height: calc(100vh - 185px);\n margin: 0 24px;\n"],["\n max-height: calc(100vh - 185px);\n margin: 0 24px;\n"]))),Mg=function(e){var n=e.onComplete,a=e.onSuccess,r=e.onTimeout,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.timeoutDurationMs,c=void 0===l?15e3:l,u=e.maxRetries,d=void 0===u?2:u,h=e.skipSuccessScreen,f=void 0!==h&&h,p=e.releaseCameraAccessOnExit,v=void 0===p||p,y=e.assets,b=void 0===y?{}:y,w=e.classNames,x=void 0===w?{}:w,E=e.colors,k=void 0===E?{}:E,S=e.verbiage,T=void 0===S?{}:S,R=e.debugMode,D=void 0!==R&&R,A=t.useContext(I),N=A.submissionResponse,_=A.livenessCheckRequest,F=A.setSelfieImage,M=A.logSelfieCaptureAttempt,P=t.useContext(dt).releaseCameraAccess,L=t.useState(""),B=L[0],O=L[1],U=t.useState(0),j=U[0],z=U[1],G=t.useState("LOADING"),$=G[0],q=G[1],V=t.useRef(),W=t.useRef(),H=t.useRef();t.useEffect((function(){H.current=new Date}),[]),t.useEffect((function(){"CAPTURING"===$&&(V.current=new Date)}),[$]);var K=t.useCallback((function(){W.current=new Date}),[]),Y=t.useCallback((function(){var e,t,n;M({autoCapture:"Y",captureTime:(null!==(e=W.current)&&void 0!==e?e:new Date).getTime()-(null!==(t=V.current)&&void 0!==t?t:new Date).getTime(),operationTime:(new Date).getTime()-(null!==(n=H.current)&&void 0!==n?n:new Date).getTime()}),H.current=new Date}),[M]),X=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return _&&N?(q("SUCCESS"),O(e),t=F,[4,C(e)]):[2];case 1:return t.apply(void 0,[n.sent()]),null==a||a(N,_),[2]}}))}))}),[a,F,_,N]),J=t.useCallback((function(){q("FAILED"),null==r||r(N,_)}),[r,_,N]),Z=t.useState(0),Q=Z[0],ee=Z[1],te=t.useCallback((function(){ee((function(e){return e+1})),q("LOADING"),null==i||i()}),[i]),ne=t.useCallback((function(){Y(),v&&P(),setTimeout((function(){null==n||n(N,_)}),0)}),[Y,n,P,v,_,N]),ae=ko(f,"SUCCESS"===$,ne);return s.default.createElement(s.default.Fragment,null,"LOADING"!==$&&function(){switch($){case"CAPTURING":return s.default.createElement(Tg,{key:"capture".concat(Q),onCapture:K,onSuccess:X,onTimeout:J,onExit:te,timeoutDurationMs:c,classNames:x.capture,colors:k,verbiage:T,debugMode:D});case"SUCCESS":return ae?s.default.createElement(Ag,{key:"success",imageUrl:B,classNames:x.success,colors:k.success,verbiage:T.success,onDoneClick:ne,onRetryClick:function(){Y(),q("CAPTURING")}}):null;case"FAILED":return s.default.createElement(_g,{key:"failure",assets:b.failure,classNames:x.failure,colors:k.failure,verbiage:T.failure,canRetry:d>-1&&j<d,onRetryClick:function(){Y(),z((function(e){return e+1})),q("CAPTURING")},onExitClick:function(){v&&P(),setTimeout((function(){null==o||o(N,_)}),0)}});default:return null}}(),s.default.createElement(Ig,{key:Q,assets:b.loadingOverlay,classNames:x.loadingOverlay,colors:k.loadingOverlay,verbiage:T.loadingOverlay,onDismissed:function(){q("CAPTURING")}}))},Pg=function(e){var n=e.children,a=t.useState({width:1,height:1}),r=a[1],i=t.useState(1),o=i[0],l=i[1],c=De(),u=c.ref,d=c.width,h=void 0===d?1:d,f=c.height,p=void 0===f?1:f,m=h/p,g=t.useCallback((function(e){var t=e.target;l(t.naturalWidth/t.naturalHeight)}),[]);return s.default.createElement(Ae.Provider,{value:{orientation:"landscape",wrapperWidth:h,wrapperHeight:p,wrapperAspectRatio:m,imageAspectRatio:o,setDimensions:r,wrapperRef:u,onImageLoaded:g}},n)},Lg=function(){var e=t.useContext(I),n=e.submissionRequest,a=e.submissionResponse,r=t.useState(!1),i=r[0],o=r[1],l=t.useState(!0),c=l[0],u=l[1],d=t.useMemo((function(){var e,t,a,r,i,o,s=JSON.parse(JSON.stringify(n));return c&&((null===(t=null===(e=null==s?void 0:s.customerData)||void 0===e?void 0:e.idData)||void 0===t?void 0:t.idImageFront)&&(s.customerData.idData.idImageFront=Bg(s.customerData.idData.idImageFront,200)),(null===(r=null===(a=null==s?void 0:s.customerData)||void 0===a?void 0:a.idData)||void 0===r?void 0:r.idImageBack)&&(s.customerData.idData.idImageBack=Bg(s.customerData.idData.idImageBack,200)),(null===(o=null===(i=null==s?void 0:s.customerData)||void 0===i?void 0:i.biometricData)||void 0===o?void 0:o.selfie)&&(s.customerData.biometricData.selfie=Bg(s.customerData.biometricData.selfie,200))),JSON.stringify(s,null,2)}),[n,c]);return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,"Submission completed!"),s.default.createElement("button",{onClick:function(){o(!i)}},i?"Hide":"Show"," request body"),i&&s.default.createElement(s.default.Fragment,null,s.default.createElement("button",{style:{marginLeft:8},onClick:function(){u(!c)}},c?"Display full images":"Truncate images"),s.default.createElement("h5",null,"Request Body"),s.default.createElement("pre",null,d)),s.default.createElement("h5",null,"Response Body"),s.default.createElement("pre",null,JSON.stringify(a,null,2)))};function Bg(e,t){var n=e.split("").splice(0,t).join("");return n.length<e.length&&(n+="..."),n}var Og,Ug,jg,zg,Gg=function(e){var n=e.document,a=e.onComplete,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=t.useRef(null),u=t.useState(null),d=u[0],h=u[1],f=ji(l,{headingText:"Additional document capture",captureBtnText:"Capture",nextBtnText:"Next"});return s.default.createElement(j,{className:i.container},s.default.createElement($g,{className:i.inner},s.default.createElement(qg,{className:i.heading},f.headingText,": ",n.name),n.description&&s.default.createElement(Vg,{className:i.description},n.description),s.default.createElement("input",{ref:c,type:"file",accept:"image/*,.pdf",onChange:function(e){var t,n=null===(t=e.target.files)||void 0===t?void 0:t[0];n&&h(n)},hidden:!0}),s.default.createElement(Wg,{className:i.buttonsRow},d?s.default.createElement(ue,{variant:"positive",className:i.nextBtn,disabled:!d,finished:!0,onClick:function(){if(d){var e=new FileReader;e.onloadend=function(){if(e.result){var t=e.result.toString();null==a||a({documentName:n.name,additionalDocument:{name:d.name,fileContent:k(t),type:S(t),fileUploadType:"Y",isImageControlData:"N",fieldId:""}})}},e.readAsDataURL(d)}}},f.nextBtnText):s.default.createElement(ue,{variant:"primary",className:i.captureBtn,finished:!0,onClick:function(){var e;null===(e=c.current)||void 0===e||e.click()}},f.captureBtnText))))},$g=u.default(z)(Og||(Og=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),qg=u.default.h3(Ug||(Ug=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Vg=u.default.p(jg||(jg=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Wg=u.default(bo)(zg||(zg=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),Hg=function(e){var n=e.documents,a=e.onComplete,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=t.useState([]),u=c[0],d=c[1],h=u.length,f=n[h],p=h>=n.length;return t.useEffect((function(){(null==f?void 0:f.skip)&&m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return[4,null===(e=f.skip)||void 0===e?void 0:e.call(f)];case 1:return t.sent()&&d((function(e){return v(v([],e,!0),[null],!1)})),[2]}}))}))}),[f]),t.useEffect((function(){p&&(null==a||a(u.filter((function(e){return!!e}))))}),[p,a,u]),p?s.default.createElement(s.default.Fragment,null,"Thanks, your documents have been received."):s.default.createElement(Gg,{key:h,document:f,classNames:i,verbiage:l,onComplete:function(e){d((function(t){return v(v([],t,!0),[e],!1)}))}})},Kg="function"==typeof Symbol&&Symbol.for,Yg=Kg?Symbol.for("react.element"):60103,Xg=Kg?Symbol.for("react.portal"):60106,Jg=Kg?Symbol.for("react.fragment"):60107,Zg=Kg?Symbol.for("react.strict_mode"):60108,Qg=Kg?Symbol.for("react.profiler"):60114,ev=Kg?Symbol.for("react.provider"):60109,tv=Kg?Symbol.for("react.context"):60110,nv=Kg?Symbol.for("react.async_mode"):60111,av=Kg?Symbol.for("react.concurrent_mode"):60111,rv=Kg?Symbol.for("react.forward_ref"):60112,iv=Kg?Symbol.for("react.suspense"):60113,ov=Kg?Symbol.for("react.suspense_list"):60120,sv=Kg?Symbol.for("react.memo"):60115,lv=Kg?Symbol.for("react.lazy"):60116,cv=Kg?Symbol.for("react.block"):60121,uv=Kg?Symbol.for("react.fundamental"):60117,dv=Kg?Symbol.for("react.responder"):60118,hv=Kg?Symbol.for("react.scope"):60119;function fv(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Yg:switch(e=e.type){case nv:case av:case Jg:case Qg:case Zg:case iv:return e;default:switch(e=e&&e.$$typeof){case tv:case rv:case lv:case sv:case ev:return e;default:return t}}case Xg:return t}}}function pv(e){return fv(e)===av}var mv={AsyncMode:nv,ConcurrentMode:av,ContextConsumer:tv,ContextProvider:ev,Element:Yg,ForwardRef:rv,Fragment:Jg,Lazy:lv,Memo:sv,Portal:Xg,Profiler:Qg,StrictMode:Zg,Suspense:iv,isAsyncMode:function(e){return pv(e)||fv(e)===nv},isConcurrentMode:pv,isContextConsumer:function(e){return fv(e)===tv},isContextProvider:function(e){return fv(e)===ev},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Yg},isForwardRef:function(e){return fv(e)===rv},isFragment:function(e){return fv(e)===Jg},isLazy:function(e){return fv(e)===lv},isMemo:function(e){return fv(e)===sv},isPortal:function(e){return fv(e)===Xg},isProfiler:function(e){return fv(e)===Qg},isStrictMode:function(e){return fv(e)===Zg},isSuspense:function(e){return fv(e)===iv},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Jg||e===av||e===Qg||e===Zg||e===iv||e===ov||"object"==typeof e&&null!==e&&(e.$$typeof===lv||e.$$typeof===sv||e.$$typeof===ev||e.$$typeof===tv||e.$$typeof===rv||e.$$typeof===uv||e.$$typeof===dv||e.$$typeof===hv||e.$$typeof===cv)},typeOf:fv};V((function(e,t){}));V((function(e){e.exports=mv}));function gv(){}function vv(){}vv.resetWarningCache=gv;var yv=V((function(e){e.exports=function(){function e(e,t,n,a,r,i){if("SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"!==i){var o=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw o.name="Invariant Violation",o}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:vv,resetWarningCache:gv};return n.PropTypes=n,n}()}));function bv(e,t,n){this.x=e,this.y=t,this.time=n||(new Date).getTime()}function wv(e,t,n,a){this.startPoint=e,this.control1=t,this.control2=n,this.endPoint=a}function xv(e,t){var n=this,a=t||{};this.velocityFilterWeight=a.velocityFilterWeight||.7,this.minWidth=a.minWidth||.5,this.maxWidth=a.maxWidth||2.5,this.throttle="throttle"in a?a.throttle:16,this.minDistance="minDistance"in a?a.minDistance:5,this._strokeMoveUpdate=this.throttle?function(e,t,n){var a,r,i,o=null,s=0;n||(n={});var l=function(){s=!1===n.leading?0:Date.now(),o=null,i=e.apply(a,r),o||(a=r=null)};return function(){var c=Date.now();s||!1!==n.leading||(s=c);var u=t-(c-s);return a=this,r=arguments,u<=0||u>t?(o&&(clearTimeout(o),o=null),s=c,i=e.apply(a,r),o||(a=r=null)):o||!1===n.trailing||(o=setTimeout(l,u)),i}}(xv.prototype._strokeUpdate,this.throttle):xv.prototype._strokeUpdate,this.dotSize=a.dotSize||function(){return(this.minWidth+this.maxWidth)/2},this.penColor=a.penColor||"black",this.backgroundColor=a.backgroundColor||"rgba(0,0,0,0)",this.onBegin=a.onBegin,this.onEnd=a.onEnd,this._canvas=e,this._ctx=e.getContext("2d"),this.clear(),this._handleMouseDown=function(e){1===e.which&&(n._mouseButtonDown=!0,n._strokeBegin(e))},this._handleMouseMove=function(e){n._mouseButtonDown&&n._strokeMoveUpdate(e)},this._handleMouseUp=function(e){1===e.which&&n._mouseButtonDown&&(n._mouseButtonDown=!1,n._strokeEnd(e))},this._handleTouchStart=function(e){1===e.targetTouches.length&&n._strokeBegin(e.changedTouches[0])},this._handleTouchMove=function(e){e.preventDefault(),n._strokeMoveUpdate(e.targetTouches[0])},this._handleTouchEnd=function(e){e.target===n._canvas&&(e.preventDefault(),n._strokeEnd(e))},this.on()}bv.prototype.velocityFrom=function(e){return this.time!==e.time?this.distanceTo(e)/(this.time-e.time):1},bv.prototype.distanceTo=function(e){return Math.sqrt(Math.pow(this.x-e.x,2)+Math.pow(this.y-e.y,2))},bv.prototype.equals=function(e){return this.x===e.x&&this.y===e.y&&this.time===e.time},wv.prototype.length=function(){for(var e=0,t=void 0,n=void 0,a=0;a<=10;a+=1){var r=a/10,i=this._point(r,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),o=this._point(r,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(a>0){var s=i-t,l=o-n;e+=Math.sqrt(s*s+l*l)}t=i,n=o}return e},wv.prototype._point=function(e,t,n,a,r){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*a*(1-e)*e*e+r*e*e*e},xv.prototype.clear=function(){var e=this._ctx,t=this._canvas;e.fillStyle=this.backgroundColor,e.clearRect(0,0,t.width,t.height),e.fillRect(0,0,t.width,t.height),this._data=[],this._reset(),this._isEmpty=!0},xv.prototype.fromDataURL=function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=new Image,r=n.ratio||window.devicePixelRatio||1,i=n.width||this._canvas.width/r,o=n.height||this._canvas.height/r;this._reset(),a.src=e,a.onload=function(){t._ctx.drawImage(a,0,0,i,o)},this._isEmpty=!1},xv.prototype.toDataURL=function(e){var t;if("image/svg+xml"===e)return this._toSVG();for(var n=arguments.length,a=Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];return(t=this._canvas).toDataURL.apply(t,[e].concat(a))},xv.prototype.on=function(){this._handleMouseEvents(),this._handleTouchEvents()},xv.prototype.off=function(){this._canvas.removeEventListener("mousedown",this._handleMouseDown),this._canvas.removeEventListener("mousemove",this._handleMouseMove),document.removeEventListener("mouseup",this._handleMouseUp),this._canvas.removeEventListener("touchstart",this._handleTouchStart),this._canvas.removeEventListener("touchmove",this._handleTouchMove),this._canvas.removeEventListener("touchend",this._handleTouchEnd)},xv.prototype.isEmpty=function(){return this._isEmpty},xv.prototype._strokeBegin=function(e){this._data.push([]),this._reset(),this._strokeUpdate(e),"function"==typeof this.onBegin&&this.onBegin(e)},xv.prototype._strokeUpdate=function(e){var t=this._createPoint(e.clientX,e.clientY),n=this._data[this._data.length-1],a=n&&n[n.length-1],r=a&&t.distanceTo(a)<this.minDistance;if(!a||!r){var i=this._addPoint(t),o=i.curve,s=i.widths;o&&s&&this._drawCurve(o,s.start,s.end),this._data[this._data.length-1].push({x:t.x,y:t.y,time:t.time,color:this.penColor})}},xv.prototype._strokeEnd=function(e){var t=this.points[0];if(!(this.points.length>2)&&t&&this._drawDot(t),t){var n=this._data[this._data.length-1];t.equals(n[n.length-1])||n.push({x:t.x,y:t.y,time:t.time,color:this.penColor})}"function"==typeof this.onEnd&&this.onEnd(e)},xv.prototype._handleMouseEvents=function(){this._mouseButtonDown=!1,this._canvas.addEventListener("mousedown",this._handleMouseDown),this._canvas.addEventListener("mousemove",this._handleMouseMove),document.addEventListener("mouseup",this._handleMouseUp)},xv.prototype._handleTouchEvents=function(){this._canvas.style.msTouchAction="none",this._canvas.style.touchAction="none",this._canvas.addEventListener("touchstart",this._handleTouchStart),this._canvas.addEventListener("touchmove",this._handleTouchMove),this._canvas.addEventListener("touchend",this._handleTouchEnd)},xv.prototype._reset=function(){this.points=[],this._lastVelocity=0,this._lastWidth=(this.minWidth+this.maxWidth)/2,this._ctx.fillStyle=this.penColor},xv.prototype._createPoint=function(e,t,n){var a=this._canvas.getBoundingClientRect();return new bv(e-a.left,t-a.top,n||(new Date).getTime())},xv.prototype._addPoint=function(e){var t=this.points,n=void 0;if(t.push(e),t.length>2){3===t.length&&t.unshift(t[0]);var a=(n=this._calculateCurveControlPoints(t[0],t[1],t[2])).c2;n=this._calculateCurveControlPoints(t[1],t[2],t[3]);var r=new wv(t[1],a,n.c1,t[2]),i=this._calculateCurveWidths(r);return t.shift(),{curve:r,widths:i}}return{}},xv.prototype._calculateCurveControlPoints=function(e,t,n){var a=e.x-t.x,r=e.y-t.y,i=t.x-n.x,o=t.y-n.y,s=(e.x+t.x)/2,l=(e.y+t.y)/2,c=(t.x+n.x)/2,u=(t.y+n.y)/2,d=Math.sqrt(a*a+r*r),h=Math.sqrt(i*i+o*o),f=h/(d+h),p=t.x-(c+(s-c)*f),m=t.y-(u+(l-u)*f);return{c1:new bv(s+p,l+m),c2:new bv(c+p,u+m)}},xv.prototype._calculateCurveWidths=function(e){var t={start:null,end:null},n=this.velocityFilterWeight*e.endPoint.velocityFrom(e.startPoint)+(1-this.velocityFilterWeight)*this._lastVelocity,a=this._strokeWidth(n);return t.start=this._lastWidth,t.end=a,this._lastVelocity=n,this._lastWidth=a,t},xv.prototype._strokeWidth=function(e){return Math.max(this.maxWidth/(e+1),this.minWidth)},xv.prototype._drawPoint=function(e,t,n){var a=this._ctx;a.moveTo(e,t),a.arc(e,t,n,0,2*Math.PI,!1),this._isEmpty=!1},xv.prototype._drawCurve=function(e,t,n){var a=this._ctx,r=n-t,i=Math.floor(e.length());a.beginPath();for(var o=0;o<i;o+=1){var s=o/i,l=s*s,c=l*s,u=1-s,d=u*u,h=d*u,f=h*e.startPoint.x;f+=3*d*s*e.control1.x,f+=3*u*l*e.control2.x;var p=h*e.startPoint.y;p+=3*d*s*e.control1.y,p+=3*u*l*e.control2.y,this._drawPoint(f+=c*e.endPoint.x,p+=c*e.endPoint.y,t+c*r)}a.closePath(),a.fill()},xv.prototype._drawDot=function(e){var t=this._ctx,n="function"==typeof this.dotSize?this.dotSize():this.dotSize;t.beginPath(),this._drawPoint(e.x,e.y,n),t.closePath(),t.fill()},xv.prototype._fromData=function(e,t,n){for(var a=0;a<e.length;a+=1){var r=e[a];if(r.length>1)for(var i=0;i<r.length;i+=1){var o=r[i],s=new bv(o.x,o.y,o.time),l=o.color;if(0===i)this.penColor=l,this._reset(),this._addPoint(s);else if(i!==r.length-1){var c=this._addPoint(s),u=c.curve,d=c.widths;u&&d&&t(u,d,l)}}else this._reset(),n(r[0])}},xv.prototype._toSVG=function(){var e=this,t=this._data,n=this._canvas,a=Math.max(window.devicePixelRatio||1,1),r=n.width/a,i=n.height/a,o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.setAttributeNS(null,"width",n.width),o.setAttributeNS(null,"height",n.height),this._fromData(t,(function(e,t,n){var a=document.createElement("path");if(!(isNaN(e.control1.x)||isNaN(e.control1.y)||isNaN(e.control2.x)||isNaN(e.control2.y))){var r="M "+e.startPoint.x.toFixed(3)+","+e.startPoint.y.toFixed(3)+" C "+e.control1.x.toFixed(3)+","+e.control1.y.toFixed(3)+" "+e.control2.x.toFixed(3)+","+e.control2.y.toFixed(3)+" "+e.endPoint.x.toFixed(3)+","+e.endPoint.y.toFixed(3);a.setAttribute("d",r),a.setAttribute("stroke-width",(2.25*t.end).toFixed(3)),a.setAttribute("stroke",n),a.setAttribute("fill","none"),a.setAttribute("stroke-linecap","round"),o.appendChild(a)}}),(function(t){var n=document.createElement("circle"),a="function"==typeof e.dotSize?e.dotSize():e.dotSize;n.setAttribute("r",a),n.setAttribute("cx",t.x),n.setAttribute("cy",t.y),n.setAttribute("fill",t.color),o.appendChild(n)}));var s='<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 '+r+" "+i+'" width="'+r+'" height="'+i+'">',l=o.innerHTML;if(void 0===l){var c=document.createElement("dummy"),u=o.childNodes;c.innerHTML="";for(var d=0;d<u.length;d+=1)c.appendChild(u[d].cloneNode(!0));l=c.innerHTML}return"data:image/svg+xml;base64,"+btoa(s+l+"</svg>")},xv.prototype.fromData=function(e){var t=this;this.clear(),this._fromData(e,(function(e,n){return t._drawCurve(e,n.start,n.end)}),(function(e){return t._drawDot(e)})),this._data=e},xv.prototype.toData=function(){return this._data};var Ev=Object.freeze({__proto__:null,default:xv}),Cv=V((function(e,t){e.exports=function(e){function t(a){if(n[a])return n[a].exports;var r=n[a]={exports:{},id:a,loaded:!1};return e[a].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t){function n(e){var t=e.getContext("2d"),n=e.width,a=e.height,r=t.getImageData(0,0,n,a).data,s=i(!0,n,a,r),l=i(!1,n,a,r),c=o(!0,n,a,r),u=o(!1,n,a,r)-c+1,d=l-s+1,h=t.getImageData(c,s,u,d);return e.width=u,e.height=d,t.clearRect(0,0,u,d),t.putImageData(h,0,0),e}function a(e,t,n,a){return{red:a[4*(n*t+e)],green:a[4*(n*t+e)+1],blue:a[4*(n*t+e)+2],alpha:a[4*(n*t+e)+3]}}function r(e,t,n,r){return a(e,t,n,r).alpha}function i(e,t,n,a){for(var i=e?1:-1,o=e?0:n-1;e?o<n:o>-1;o+=i)for(var s=0;s<t;s++)if(r(s,o,t,a))return o;return null}function o(e,t,n,a){for(var i=e?1:-1,o=e?0:t-1;e?o<t:o>-1;o+=i)for(var s=0;s<n;s++)if(r(o,s,t,a))return o;return null}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n}])}));q(Cv);var kv=function(e){return e&&e.default||e}(Ev),Sv=V((function(e,t){e.exports=function(e,t,n,a){return function(e){function t(a){if(n[a])return n[a].exports;var r=n[a]={exports:{},id:a,loaded:!1};return e[a].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){function a(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n={};for(var a in e)t.indexOf(a)>=0||Object.prototype.hasOwnProperty.call(e,a)&&(n[a]=e[a]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},c=function(){function e(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(t,n,a){return n&&e(t.prototype,n),a&&e(t,a),t}}(),u=a(n(1)),d=n(2),h=a(d),f=a(n(3)),p=a(n(4)),m=function(e){function t(){var e,n,a;i(this,t);for(var s=arguments.length,l=Array(s),c=0;c<s;c++)l[c]=arguments[c];return n=a=o(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(l))),a._sigPad=null,a._excludeOurProps=function(){var e=a.props;return r(e,["canvasProps","clearOnResize"])},a.getCanvas=function(){return a._canvas},a.getTrimmedCanvas=function(){var e=document.createElement("canvas");return e.width=a._canvas.width,e.height=a._canvas.height,e.getContext("2d").drawImage(a._canvas,0,0),(0,p.default)(e)},a.getSignaturePad=function(){return a._sigPad},a._checkClearOnResize=function(){a.props.clearOnResize&&a._resizeCanvas()},a._resizeCanvas=function(){var e=a.props.canvasProps||{},t=e.width,n=e.height;if(!t||!n){var r=a._canvas,i=Math.max(window.devicePixelRatio||1,1);t||(r.width=r.offsetWidth*i),n||(r.height=r.offsetHeight*i),r.getContext("2d").scale(i,i),a.clear()}},a.on=function(){return window.addEventListener("resize",a._checkClearOnResize),a._sigPad.on()},a.off=function(){return window.removeEventListener("resize",a._checkClearOnResize),a._sigPad.off()},a.clear=function(){return a._sigPad.clear()},a.isEmpty=function(){return a._sigPad.isEmpty()},a.fromDataURL=function(e,t){return a._sigPad.fromDataURL(e,t)},a.toDataURL=function(e,t){return a._sigPad.toDataURL(e,t)},a.fromData=function(e){return a._sigPad.fromData(e)},a.toData=function(){return a._sigPad.toData()},o(a,n)}return s(t,e),c(t,[{key:"componentDidMount",value:function(){this._sigPad=new f.default(this._canvas,this._excludeOurProps()),this._resizeCanvas(),this.on()}},{key:"componentWillUnmount",value:function(){this.off()}},{key:"componentDidUpdate",value:function(){Object.assign(this._sigPad,this._excludeOurProps())}},{key:"render",value:function(){var e=this;return h.default.createElement("canvas",l({ref:function(t){e._canvas=t}},this.props.canvasProps))}}]),t}(d.Component);m.propTypes={velocityFilterWeight:u.default.number,minWidth:u.default.number,maxWidth:u.default.number,minDistance:u.default.number,dotSize:u.default.oneOfType([u.default.number,u.default.func]),penColor:u.default.string,throttle:u.default.number,onEnd:u.default.func,onBegin:u.default.func,canvasProps:u.default.object,clearOnResize:u.default.bool},m.defaultProps={clearOnResize:!0},t.default=m},function(t,n){t.exports=e},function(e,n){e.exports=t},function(e,t){e.exports=n},function(e,t){e.exports=a}])}(yv,s.default,kv,Cv)})),Tv=q(Sv);function Iv(e){var t,n=null!==(t=e.toDataURL())&&void 0!==t?t:null,a={clickX_simple:[],clickY_simple:[],time_simple:[],pressure:"",fileContent:n?k(n):""};return e.toData().forEach((function(e){var t=[],n=[],r=[];e.forEach((function(e){t.push(e.x),n.push(e.y),r.push(new Date(e.time).toString())})),a.clickX_simple.push(t),a.clickY_simple.push(n),a.time_simple.push(r)})),a}var Rv,Dv,Av,Nv,_v,Fv,Mv,Pv=u.default.div(Rv||(Rv=y(["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n ","\n ","\n ","\n"],["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n ","\n ","\n ","\n"])),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.background)?"background: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.background,";"):""}),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.backgroundSize)?"background-size: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.backgroundSize,";"):""}),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.backgroundPosition)?"background-position: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.backgroundPosition,";"):""})),Lv=u.default.div(Dv||(Dv=y(["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"],["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"]))),Bv=u.default.div(Av||(Av=y(["\n position: relative;\n background: ",";\n border: ",";\n border-radius: ",";\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"],["\n position: relative;\n background: ",";\n border: ",";\n border-radius: ",";\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"])),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.background)&&void 0!==a?a:"rgba(255, 255, 255, 0.5)"}),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.border)&&void 0!==a?a:"1px solid #dedede"}),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.borderRadius)&&void 0!==a?a:"16px"})),Ov=u.default(bo)(Nv||(Nv=y(["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"],["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"]))),Uv=function(e){var n,a=e.onAccept,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=De(),u=c.ref,d=c.width,h=c.height,f=t.useRef(null),p=ji(l,{headingText:"Please sign the box below",acceptBtnText:"Accept",clearBtnText:"Clear"});return s.default.createElement(P,{className:i.container},s.default.createElement(Pv,{className:i.inner},s.default.createElement(eo,{className:i.guidanceMessageContainer,$top:"5vh"},s.default.createElement(to,{className:i.guidanceMessage},p.headingText)),s.default.createElement(Lv,{className:i.canvasContainer},s.default.createElement(Bv,{ref:u,className:i.canvasInner},s.default.createElement(Tv,{ref:f,canvasProps:{width:d,height:h,className:i.canvas}})),s.default.createElement(Ov,{className:i.buttonsRow},s.default.createElement(ue,{variant:"secondary",className:i.clearBtn,onClick:null===(n=f.current)||void 0===n?void 0:n.clear,finished:!0},p.clearBtnText),s.default.createElement(jv,{variant:"positive",className:i.acceptBtn,onClick:function(){if(f.current){var e=Iv(f.current);null==a||a(e,f.current.toDataURL())}},finished:!0},p.acceptBtnText)))))},jv=u.default(ue)(_v||(_v=y(["\n margin-left: auto;\n"],["\n margin-left: auto;\n"]))),zv=function(e){var n=t.useRef(null),a=t.useRef([]),r=t.useState(null),i=r[0],o=r[1],s=t.useState(!1),l=s[0],c=s[1],u=null==e?void 0:e.stream,d=t.useCallback((function(){u&&(a.current=[],c(!0),n.current=new MediaRecorder(u),n.current.ondataavailable=function(e){a.current.push(e.data)},n.current.onstop=function(){var t=new Blob(a.current,{type:"video/mp4"});a.current=[],o(URL.createObjectURL(t)),c(!1),null==e||e.release()},n.current.start())}),[e,u]),h=t.useCallback((function(){var e;null===(e=n.current)||void 0===e||e.stop()}),[]);return{isRecording:l,startRecording:d,stopRecording:h,videoUrl:i}},Gv=function(e){var n,a,r,i,o=e.onVideoCaptured,l=e.onFaceNotDetected,c=e.onExit,u=e.classNames,d=void 0===u?{}:u,h=e.colors,f=void 0===h?{}:h,p=e.verbiage,y=void 0===p?{}:p,b=e.debugMode,w=void 0!==b&&b,x=t.useContext(dt),E=x.cameraRef,C=x.videoRef,k=De(),S=k.ref,T=k.width,I=k.height,R=t.useRef(null),D=t.useRef(null),A=t.useRef([]),N=t.useState(null),_=N[0],F=N[1],M=t.useContext(hg).onPredictionMade,L=zv(E.current),B=L.isRecording,O=L.startRecording,U=L.stopRecording,j=L.videoUrl,z=t.useState(null),G=z[0],$=z[1],q=t.useState(null),V=q[0],W=q[1],H=t.useState(null),K=H[0],Y=H[1];f.guidanceMessageBackgroundColor||(f.guidanceMessageBackgroundColor="#ccc"),f.guidanceMessageTextColor||(f.guidanceMessageTextColor="black");var X=ji(y,{guidanceMessageText:"Please sign the box below",acceptBtnText:"Accept",clearBtnText:"Clear"}),J=t.useRef(null);t.useEffect((function(){setTimeout((function(){if(!B&&!j&&J.current){O();var e=J.current.captureStream(25);D.current=new MediaRecorder(e,{}),D.current.start(),D.current.ondataavailable=function(e){var t;A.current.push(e.data),"recording"===(null===(t=D.current)||void 0===t?void 0:t.state)&&D.current.stop()},D.current.onstop=function(){var e=new Blob(A.current,{type:"video/mp4"});Y(e);var t=URL.createObjectURL(e);F(t)}}}),100)}),[B,O,j]),t.useEffect((function(){K&&G&&V&&(null==o||o(K,G,V))}),[o,G,V,K]);var Z=t.useRef(0);t.useEffect((function(){var e;if(R.current&&C.current&&J.current&&E.current&&B){var t=[E.current.width,E.current.height],n=t[0],a=t[1],r=window.innerWidth<window.innerHeight;r&&n>a&&(n=(e=[a,n])[0],a=e[1]),J.current.width=n,J.current.height=a;var i=J.current.getContext("2d");if(i)return Z.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){var t;return g(this,(function(o){return R.current&&C.current&&J.current?(t=[n*(r?.02:.15),a*(r?.15:.25),n*(r?.96:.7),a*(r?.7:.5)],i.drawImage(C.current,0,0,n,a),i.beginPath(),i.fillStyle="rgba(255,255,255,0.5)",i.roundRect.apply(i,v(v([],t,!1),[16],!1)),i.fill(),i.drawImage.apply(i,v([R.current.getCanvas()],t,!1)),Z.current=requestAnimationFrame(e),[2]):(cancelAnimationFrame(Z.current),[2])}))}))})),function(){cancelAnimationFrame(Z.current)}}}),[E,B,l,C]);var Q=t.useState(0),ee=Q[0],te=Q[1];if(t.useEffect((function(){M((function(e){te((function(t){return 0===e.length?t+1:0}))}))}),[M]),t.useEffect((function(){ee>=2&&(null==l||l())}),[ee,l]),!B&&j)return s.default.createElement(s.default.Fragment,null,_&&s.default.createElement("video",{src:_,controls:!0,width:"100%"}),V&&s.default.createElement("img",{src:V,alt:"signature"}),G&&s.default.createElement("textarea",{readOnly:!0,style:{width:"100%",height:500},value:JSON.stringify(G,null,2)}));return s.default.createElement(P,{className:"flex ".concat(null!==(n=d.container)&&void 0!==n?n:"")},s.default.createElement(Eo,{className:d.cameraFeed}),X.guidanceMessageText&&s.default.createElement(eo,{$top:"5vh",className:d.guidanceMessageContainer},s.default.createElement(to,{className:d.guidanceMessage,$background:f.guidanceMessageBackgroundColor,$textColor:f.guidanceMessageTextColor},X.guidanceMessageText)),s.default.createElement(Lv,{className:d.canvasContainer},s.default.createElement(Bv,{ref:S,className:d.canvasInner},s.default.createElement(Tv,{ref:R,canvasProps:{width:T,height:I,className:d.canvas}})),s.default.createElement(Ov,{className:d.buttonsRow},s.default.createElement(ue,{variant:"secondary",className:d.clearBtn,onClick:null===(a=R.current)||void 0===a?void 0:a.clear,finished:!0},X.clearBtnText),s.default.createElement($v,{variant:"positive",className:d.acceptBtn,style:{marginLeft:"auto"},onClick:function(){var e;if(R.current){var t=Iv(R.current);$(t),W(R.current.toDataURL()),U(),null===(e=D.current)||void 0===e||e.stop()}},finished:!0},X.acceptBtnText))),w&&s.default.createElement(sr,null,"Video: ",null===(r=E.current)||void 0===r?void 0:r.width,"x",null===(i=E.current)||void 0===i?void 0:i.height),s.default.createElement(Er,{onClick:c,className:d.exitCaptureBtn}),s.default.createElement("div",{style:{display:"none"}},s.default.createElement("canvas",{ref:J})))},$v=u.default(ue)(Fv||(Fv=y(["\n margin-left: auto;\n"],["\n margin-left: auto;\n"]))),qv=function(e){var t=e.videoUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=ji(void 0===c?{}:c,{headingText:"Video signature has been successfully captured!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(j,{className:i.container},s.default.createElement(z,{className:i.inner},s.default.createElement("h1",null,u.headingText),s.default.createElement(G,{className:i.videoContainer},s.default.createElement(Vv,{className:i.video,src:t,poster:t+"#t=0.1",controls:!0,preload:"metadata",autoPlay:!0})),s.default.createElement(bo,{className:i.buttonsRow},s.default.createElement(ue,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},u.retryBtnText),s.default.createElement(ue,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},u.doneBtnText))))},Vv=u.default.video(Mv||(Mv=y(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"],["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"]))),Wv=function(e){var n=e.onComplete,a=e.onVideoCaptured,r=e.onRetryClicked,i=e.onExitCapture,o=e.skipSuccessScreen,l=void 0!==o&&o,c=e.assets,u=void 0===c?{}:c,d=e.classNames,h=void 0===d?{}:d,f=e.colors,p=void 0===f?{}:f,v=e.verbiage,y=void 0===v?{}:v,b=e.debugMode,w=void 0!==b&&b,x=t.useContext(I),E=x.selfieImage,k=x.signatureVideoUrl,S=x.setSelfieImage,T=x.setSignatureData,R=x.setSignatureVideoUrl,D=x.logSelfieCaptureAttempt,A=t.useState("LOADING"),N=A[0],_=A[1],F=t.useRef(),M=t.useRef(),P=t.useRef();t.useEffect((function(){F.current=new Date}),[]),t.useEffect((function(){"CHECKING_LIVENESS"===N&&(M.current=new Date)}),[N]);var L=t.useCallback((function(){var e,t,n;D({autoCapture:"Y",captureTime:(null!==(e=P.current)&&void 0!==e?e:new Date).getTime()-(null!==(t=M.current)&&void 0!==t?t:new Date).getTime(),operationTime:(new Date).getTime()-(null!==(n=F.current)&&void 0!==n?n:new Date).getTime()}),F.current=new Date}),[D]),B=t.useCallback((function(){_("CHECKING_LIVENESS")}),[]),O=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return _("CAPTURING_SIGNATURE"),L(),E?[3,2]:(t=S,[4,C(e)]);case 1:t.apply(void 0,[n.sent()]),n.label=2;case 2:return[2]}}))}))}),[L,E,S]),U=t.useCallback((function(e,t,n){T(t),R(URL.createObjectURL(e)),_("SUCCESS"),null==a||a(e,t,n)}),[a,T,R]),j=t.useCallback((function(){_("CHECKING_LIVENESS")}),[]),z=t.useState(0),G=z[0],$=z[1],q=t.useCallback((function(){$((function(e){return e+1})),_("LOADING"),null==i||i()}),[i]),V=t.useCallback((function(){null==r||r(),q()}),[q,r]),W=ko(l,"SUCCESS"===N,n);return s.default.createElement(fg,{throttleMs:"CAPTURING_SIGNATURE"===N?250:0},"LOADING"!==N&&function(){switch(N){case"CHECKING_LIVENESS":return s.default.createElement(Tg,{onSuccess:O,onExit:q,classNames:h.faceLiveness,colors:p.faceLiveness,verbiage:y.faceLiveness,debugMode:w});case"CAPTURING_SIGNATURE":return s.default.createElement(Gv,{onVideoCaptured:U,onFaceNotDetected:j,onExit:q,classNames:h,colors:p,verbiage:y,debugMode:w});case"SUCCESS":if(!W)return;return s.default.createElement(qv,{videoUrl:null!=k?k:"",onDoneClick:n,onRetryClick:V,classNames:h.success,colors:p.success,verbiage:y.success});default:return null}}(),s.default.createElement(Ig,{key:G,assets:u.loadingOverlay,classNames:h.loadingOverlay,verbiage:y.loadingOverlay,onDismissed:B}))},Hv=function(e){var n,a=e.imageWidth,r=e.imageHeight,i=e.style,o=void 0===i?{}:i,l=e.assets,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=De(),f=h.ref,m=h.width,g=void 0===m?1:m,v=h.height,y=void 0===v?1:v,b=t.useContext(dt).cameraRef;c.frontImageUrl||(c.frontImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),c.backImageUrl||(c.backImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var w,x=Ui(d.instructionText,"Please flip your ID card..."),E=!(null===(n=b.current)||void 0===n?void 0:n.isRearFacing),C=t.useCallback((function(){}),[]);w={width:g-0-8};var k=t.useState(1),S=k[0],T=k[1],I=t.useState(0),R=I[0],D=I[1],A=["rotateY(".concat(R,"deg)")];E&&A.push("scaleX(-1)");var N=["rotateY(".concat(180-R,"deg)")];return E&&N.push("scaleX(-1)"),t.useEffect((function(){var e=function(){T(1),D(180),setTimeout((function(){T(0),D(0)}),1500)};setTimeout(e,250);var t=setInterval(e,2500);return function(){clearInterval(t)}}),[]),s.default.createElement("div",{ref:f,style:p(p({},o),{position:"relative"})},s.default.createElement("div",{style:{display:"flex",flexFlow:"column nowrap",height:"100%"}},s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12}},x)),s.default.createElement("div",{style:{position:"relative",display:"flex",flexFlow:"row nowrap",alignItems:"center",justifyItems:"center",maxWidth:"calc(100%)",maxHeight:"calc(100% - ".concat(0,"px - ").concat(8,"px)")}},s.default.createElement("div",{style:{width:"100%",height:"100%",minWidth:0,flexGrow:1}}),s.default.createElement("div",{style:{maxWidth:"calc(100% - ".concat(0,"px - ").concat(8,"px)"),maxHeight:y-0-8}},s.default.createElement("div",{style:{position:"relative",border:"".concat(4,"px solid ").concat("white")}},s.default.createElement("img",{src:c.frontImageUrl,alt:"",width:a,height:r,onLoad:C,style:p({backfaceVisibility:"hidden",transition:"transform ".concat(S,"s"),transform:A.join(" "),transformStyle:"preserve-3d",position:"relative",top:0,left:0,display:"block"},w)}),s.default.createElement("img",{src:c.backImageUrl,alt:"",style:p({backfaceVisibility:"hidden",transition:"transform ".concat(S,"s"),transform:N.join(" "),transformStyle:"preserve-3d",position:"absolute",top:0,left:0,display:"block"},w)}))),s.default.createElement("div",{style:{width:"100%",height:"100%",minWidth:0,flexGrow:1}})),s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12,opacity:0}},x))))},Kv=function(e){var n=e.requestedAction,a=void 0===n?"SHOW_ID_FRONT":n,r=e.borderWidth,i=void 0===r?3:r,o=e.borderColor,l=void 0===o?"white":o,c=e.assets,u=void 0===c?{}:c,d=e.verbiage,h=void 0===d?{}:d,f=t.useRef(null),p=t.useState(0),m=p[0],g=p[1],v=t.useState(0),y=v[0],b=v[1];u.frontImageUrl||(u.frontImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),u.backImageUrl||(u.backImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var w=ji(h,{idFrontInstructionText:"Display the front of your ID card...",idBackInstructionText:"Display the back of your ID card..."}),x="SHOW_ID_FRONT"===a?w.idFrontInstructionText:w.idBackInstructionText,E=window.innerWidth>window.innerHeight?"30%":"75%";return s.default.createElement(s.default.Fragment,null,s.default.createElement("div",{style:{position:"absolute",zIndex:1e3,width:"100%",height:"100%",display:"flex",flexDirection:"column"}},s.default.createElement("div",{style:{borderWidth:i,borderColor:l,borderStyle:"solid",borderRadius:"50%",aspectRatio:"1 / 1.618",height:"100%",margin:"4% auto auto"}}),"FLIP_ID"===a?s.default.createElement(Hv,{assets:u,verbiage:{instructionText:w.flipIdInstructionText},imageWidth:m,imageHeight:y,style:{width:E,margin:"2% auto 2%"}}):s.default.createElement("div",{style:{width:E,margin:"2% auto 2%",display:"flex",flexFlow:"column nowrap"}},s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12}},x)),s.default.createElement("div",{style:{border:"4px solid ".concat(l)}},s.default.createElement("img",{ref:f,src:"SHOW_ID_BACK"===a?u.backImageUrl:u.frontImageUrl,alt:"",style:{width:"100%"},onLoad:function(){var e,t,n,a;m||g(null!==(t=null===(e=f.current)||void 0===e?void 0:e.width)&&void 0!==t?t:0),y||b(null!==(a=null===(n=f.current)||void 0===n?void 0:n.height)&&void 0!==a?a:0)}})),s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12,opacity:0}},x)))))},Yv=function(e){var n,a,r,i,o,l,c=e.onComplete,u=e.onFaceNotDetected,d=e.idCardFrontDetectionThreshold,h=void 0===d?.48:d,f=e.idCardFrontFocusThreshold,p=void 0===f?.15:f,v=e.goodIdCardFrontFramesThreshold,y=void 0===v?3:v,b=e.showIdCardBackDurationMs,w=void 0===b?5e3:b,x=e.skipShowIdCardBack,E=void 0!==x&&x,C=e.readTextPrompt,k=e.readTextTimeoutDurationMs,S=void 0===k?15e3:k,T=e.assets,I=void 0===T?{}:T,R=e.colors,D=void 0===R?{}:R,A=e.verbiage,N=void 0===A?{}:A,_=e.debugMode,F=void 0!==_&&_,M=De(),L=M.ref,B=M.width,O=void 0===B?1:B,U=M.height,j=void 0===U?1:U,z=t.useContext(dt),G=z.cameraRef,$=z.videoRef,q=z.videoLoaded,V=z.cameraReady,W=t.useState([]),H=W[0],K=W[1],Y=t.useState([]),X=Y[0],J=Y[1],Z=t.useContext(Xa),Q=Z.ready,ee=Z.working,te=Z.makePrediction,ne=Z.onPredictionMade,ae=Z.setThresholds,re=t.useContext(hg).onPredictionMade,ie=zv(G.current),oe=ie.isRecording,se=ie.startRecording,le=ie.stopRecording,ce=ie.videoUrl;t.useEffect((function(){oe||ce||se(),ce&&(null==c||c(ce))}),[oe,c,se,ce]);var de=t.useRef(0),he=t.useRef(!1);t.useEffect((function(){he.current=q&&V&&Q}),[V,Q,q]);var fe=t.useState("SHOW_ID_FRONT"),pe=fe[0],me=fe[1];t.useEffect((function(){if("SHOW_ID_FRONT"===pe&&Q&&V&&q)return de.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){return g(this,(function(t){return he.current&&!ee.current&&$.current&&te($.current),de.current=requestAnimationFrame(e),[2]}))}))})),function(){cancelAnimationFrame(de.current)}}),[V,Q,ee,te,pe,q,$]),t.useEffect((function(){ae({document:h,passport:1,focus:p})}),[h,p,ae]);var ge=t.useState(0),ve=ge[0],ye=ge[1],be=ve>=y;t.useEffect((function(){ne((function(e){K(e.detectedObjects),ye(e.detectionThresholdMet&&e.focusThresholdMet?function(e){return e+1}:0)}))}),[h,ne]);var we=t.useCallback((function(){C?me("READ_TEXT"):le()}),[C,le]);t.useEffect((function(){m(void 0,void 0,void 0,(function(){return g(this,(function(e){switch(e.label){case 0:return be&&"SHOW_ID_FRONT"==pe?E?!0!==E?[3,1]:[2,we()]:[3,3]:[3,4];case 1:return[4,E()];case 2:if(e.sent())return[2,we()];e.label=3;case 3:me("FLIP_ID"),setTimeout((function(){me("SHOW_ID_BACK")}),3500),e.label=4;case 4:return[2]}}))}))}),[be,we,pe,E]),pg(w,we,"SHOW_ID_BACK"!==pe,!1,"SHOW_ID_BACK"===pe);var xe=t.useCallback((function(){le()}),[le]),Ee=pg(S,xe,"READ_TEXT"!==pe,!1,"READ_TEXT"===pe).timeoutStartedAt,Ce=t.useState(0),ke=Ce[0],Se=Ce[1];t.useEffect((function(){re((function(e){J(e),Se((function(t){return 0===e.length?t+1:0}))}))}),[re]),t.useEffect((function(){ke>=2&&(null==u||u())}),[ke,u]),D.guidesSatisfiedColor||(D.guidesSatisfiedColor="green"),D.guidesUnsatisfiedColor||(D.guidesUnsatisfiedColor="white");var Te=ji(N,{readTextHeading:"Please read the following text aloud",readTextDoneBtnText:"Done"});C=Ui(C,"");var Ie=dr({enabled:F,pageWidth:O,pageHeight:j,videoWidth:null!==(a=null===(n=$.current)||void 0===n?void 0:n.videoWidth)&&void 0!==a?a:0,videoHeight:null!==(i=null===(r=$.current)||void 0===r?void 0:r.videoHeight)&&void 0!==i?i:0}),Re=function(e){var t=e%1e3;e=(e-t)/1e3;var n=e%60;e=(e-n)/60;var a=e%60;return a+":"+("00"+(n+=1)).slice(-2)}(Math.max(0,S-((new Date).getTime()-(null!=Ee?Ee:new Date).getTime()))),Ae="SHOW_ID_BACK"===pe||ve>0;return s.default.createElement(P,{ref:L,className:"flex"},s.default.createElement(Eo,null),"READ_TEXT"===pe?s.default.createElement("div",{style:{position:"absolute",width:"100%",height:"100%",top:0,left:0,display:"flex",flexDirection:"column"}},s.default.createElement("div",{style:{margin:"auto auto 32px",background:"rgba(255,255,255,0.5)",borderRadius:8,padding:20,fontWeight:"bold"}},Te.readTextHeading),s.default.createElement("div",{style:{margin:"0 auto",textAlign:"center",background:"rgba(255,255,255,0.5)",borderRadius:8,padding:50,fontSize:24,maxWidth:window.innerWidth>window.innerHeight?"40%":"90%"}},C),s.default.createElement("div",{style:{display:"flex",margin:"32px auto auto",gap:20}},s.default.createElement("div",{style:{background:"rgba(255,255,255,0.5)",borderRadius:4,padding:20}},Re),s.default.createElement(ue,{variant:"positive",finished:!0,onClick:le,colors:D.readTextDoneBtn},Te.readTextDoneBtnText))):s.default.createElement(s.default.Fragment,null,s.default.createElement(Kv,{assets:I.guides,verbiage:N.guides,requestedAction:pe,borderColor:Ae?D.guidesSatisfiedColor:D.guidesUnsatisfiedColor}),F&&"SHOW_ID_FRONT"===pe&&s.default.createElement(s.default.Fragment,null,s.default.createElement(lr,{$flipX:!(null===(o=G.current)||void 0===o?void 0:o.isRearFacing)},H.map((function(e,t){var n;return s.default.createElement(hr,{key:t,obj:e,scaling:Ie,color:"blue",flipX:!(null===(n=G.current)||void 0===n?void 0:n.isRearFacing)})}))),s.default.createElement(lr,{$flipX:!(null===(l=G.current)||void 0===l?void 0:l.isRearFacing)},X.map((function(e,t){var n;return s.default.createElement(fr,{key:t,face:e,scaling:Ie,flipX:!(null===(n=G.current)||void 0===n?void 0:n.isRearFacing)})}))))),F&&s.default.createElement(sr,null,G.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",G.current.label," (",G.current.width,"x",G.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),oe?"✅ Recording":"❌ Not recording",s.default.createElement("br",null),be?"✅":"❌"," Good Frame Count:"," ",ve,"/",y))};var Xv,Jv,Zv,Qv,ey,ty,ny,ay,ry,iy,oy,sy,ly,cy=function(e){var t=e.videoUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.colors,i=void 0===r?{}:r,o=e.verbiage,l=ji(void 0===o?{}:o,{headingText:"Video ID has been successfully captured!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(j,null,s.default.createElement(z,null,s.default.createElement("h1",null,l.headingText),s.default.createElement(G,null,s.default.createElement(uy,{src:t,poster:t+"#t=0.1",controls:!0,preload:"metadata",autoPlay:!0})),s.default.createElement(bo,null,s.default.createElement(ue,{variant:"warning",onClick:a,colors:i.retryBtn,finished:!0},l.retryBtnText),s.default.createElement(ue,{variant:"positive",onClick:n,colors:i.doneBtn,finished:!0},l.doneBtnText))))},uy=u.default.video(Xv||(Xv=y(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"],["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"]))),dy=function(e){var n,a,r,i,o=e.onComplete,l=e.onExitCapture,c=e.onExitAfterFailure,u=e.idCaptureProps,d=void 0===u?{}:u,h=e.faceLivenessProps,f=void 0===h?{}:h,v=e.idCardFrontDetectionThreshold,y=e.idCardFrontFocusThreshold,b=e.goodIdCardFrontFramesThreshold,x=e.showIdCardBackDurationMs,E=e.readTextPrompt,C=e.readTextTimeoutDurationMs,k=e.skipIdCapture,S=void 0!==k&&k,T=e.skipShowIdCardBack,R=void 0!==T&&T,D=e.assets,A=void 0===D?{}:D,N=e.classNames,_=void 0===N?{}:N,F=e.colors,M=void 0===F?{}:F,L=e.verbiage,B=void 0===L?{}:L,O=e.debugMode,U=void 0!==O&&O,j=t.useContext(I),z=j.submissionStatus,G=j.idCaptureVideoUrl,$=j.setIdCaptureVideoUrl,q=t.useState("CAPTURING_ID"),V=q[0],W=q[1];t.useEffect((function(){S&&"CAPTURING_ID"===V&&W("CHECKING_LIVENESS")}),[V,S]);var H=d.onSuccess,K=t.useCallback((function(e){null==H||H(e),W("CHECKING_LIVENESS")}),[H]),Y=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){return W("CAPTURING_VIDEO"),[2]}))}))}),[]),X=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){return g(this,(function(t){return $(e),W("SUCCESS"),[2]}))}))}),[$]),J=t.useCallback((function(){W("CHECKING_LIVENESS")}),[]),Z=t.useState(0),Q=Z[0],ee=Z[1],te=null!=c?c:f.onExitAfterFailure,ne=t.useCallback((function(e,t){null==te||te(e,t),ee((function(e){return e+1})),W("CAPTURING_ID")}),[te]),ae=t.useCallback((function(){ee((function(e){return e+1})),W("CAPTURING_ID")}),[]),re=["LOADING","CAPTURING_ID"].includes(V);return t.useEffect((function(){z===w.SUBMITTING&&lt()}),[z]),z===w.SUBMITTING?s.default.createElement(P,{className:"flex"},s.default.createElement(Cr,null)):s.default.createElement(Qa,{documentDetectionModelUrl:null!==(a=null===(n=d.assets)||void 0===n?void 0:n.documentDetectionModelUrl)&&void 0!==a?a:"",focusModelUrl:null!==(i=null===(r=d.assets)||void 0===r?void 0:r.focusModelUrl)&&void 0!==i?i:"",logPredictions:U},s.default.createElement(ht,{key:re?"id-camera":"selfie-camera",preferContinuityCamera:re,preferFrontFacingCamera:!re,requestMicrophoneAccess:!re&&!!E},s.default.createElement(fg,null,function(){switch(V){case"CAPTURING_ID":return s.default.createElement(Pg,null,s.default.createElement($o,p({key:"id-capture-".concat(Q)},d,{assets:A.idCapture,classNames:_.idCapture,colors:M.idCapture,verbiage:B.idCapture,onSuccess:K,onExitCapture:l,skipSuccessScreen:!0,releaseCameraAccessOnExit:!1,debugMode:U})));case"CHECKING_LIVENESS":return s.default.createElement(Mg,p({key:"face-liveness-".concat(Q)},f,{onComplete:Y,onExitCapture:l,onExitAfterFailure:ne,skipSuccessScreen:!0,releaseCameraAccessOnExit:!1,assets:A.faceLiveness,classNames:_.faceLiveness,colors:M.faceLiveness,verbiage:B.faceLiveness,debugMode:U}));case"CAPTURING_VIDEO":return s.default.createElement(Yv,{key:"id-video-capture-".concat(Q),onComplete:X,onFaceNotDetected:J,idCardFrontDetectionThreshold:v,idCardFrontFocusThreshold:y,goodIdCardFrontFramesThreshold:b,showIdCardBackDurationMs:x,skipShowIdCardBack:R,readTextPrompt:E,readTextTimeoutDurationMs:C,assets:A.idVideoCapture,colors:M.idVideoCapture,verbiage:B.idVideoCapture,debugMode:U});case"SUCCESS":return s.default.createElement(cy,{videoUrl:null!=G?G:"",onDoneClick:o,onRetryClick:ae,colors:M.success,verbiage:B.success});default:return s.default.createElement(s.default.Fragment,null)}}())))},hy=function(e){var n,a,r,i,o,l=e.checks,c=e.idCaptureProps,u=void 0===c?{}:c,d=e.faceLivenessProps,h=void 0===d?{}:d,f=e.additionalDocumentCaptureProps,m=e.signatureCaptureProps,g=void 0===m?{}:m,y=e.videoSignatureCaptureProps,b=void 0===y?{}:y,x=e.videoIdCaptureProps,E=void 0===x?{}:x,C=e.captureSignature,k=void 0!==C&&C,S=e.captureSignatureVideo,T=void 0!==S&&S,R=e.debugMode,D=void 0!==R&&R,A=t.useContext(I),N=A.submit,_=A.submissionStatus,F=A.setSignatureData,M=A.setAdditionalDocuments,L=t.useState(0),B=L[0],O=L[1],U=t.useMemo((function(){var e,t,n=v([],l,!0);if(k&&T)throw new Error("captureSignature and captureSignatureVideo cannot be used together");return k&&n.push("SignatureCapture"),T&&(n.push("VideoSignatureCapture"),n.includes("FaceLiveness")&&n.splice(n.indexOf("FaceLiveness"),1)),null!==(t=null===(e=null==f?void 0:f.documents)||void 0===e?void 0:e.length)&&void 0!==t&&t&&n.push("AdditionalDocumentCapture"),n}),[null===(n=null==f?void 0:f.documents)||void 0===n?void 0:n.length,k,T,l]),j=U[B],z=B>=U.length;t.useEffect((function(){"SignatureCapture"===j&&"function"==typeof k?k().then((function(e){e||O((function(e){return e+1}))})):"VideoSignatureCapture"===j&&"function"==typeof T&&T().then((function(e){e||O((function(e){return e+1}))}))}),[k,T,j]),t.useEffect((function(){z&&N()}),[z,N]);var G=u.onSuccess,$=t.useCallback((function(e){null==G||G(e),O((function(e){return e+1}))}),[G]),q=E.onComplete,V=t.useCallback((function(){null==q||q(),O((function(e){return e+1}))}),[q]),W=h.onComplete,H=t.useCallback((function(e,t){null==W||W(e,t),O((function(e){return e+1}))}),[W]),K=t.useCallback((function(e){F(e),O((function(e){return e+1}))}),[F]),Y=b.onComplete,X=t.useCallback((function(){null==Y||Y(),O((function(e){return e+1}))}),[Y]),J=t.useState(0),Z=J[0],Q=J[1],ee=b.onRetryClicked,te=t.useCallback((function(){null==ee||ee(),Q((function(e){return e+1}))}),[ee]),ne=null==f?void 0:f.onComplete,ae=t.useCallback((function(e){M(e),null==ne||ne(e),O((function(e){return e+1}))}),[ne,M]),re=t.useMemo((function(){var e;return null!==(e=null==f?void 0:f.documents)&&void 0!==e?e:[]}),[null==f?void 0:f.documents]);if(z)switch(_){case w.SUBMITTING:return s.default.createElement(P,{className:"flex"},s.default.createElement(Cr,null));case w.SUBMITTED:return s.default.createElement(Lg,null);case w.FAILED:return s.default.createElement(s.default.Fragment,null,"Submission failed!");default:return s.default.createElement(s.default.Fragment,null,"Complete!!")}switch(U[B]){case"IdCapture":return s.default.createElement(Qa,{documentDetectionModelUrl:null!==(r=null===(a=u.assets)||void 0===a?void 0:a.documentDetectionModelUrl)&&void 0!==r?r:"",focusModelUrl:null!==(o=null===(i=u.assets)||void 0===i?void 0:i.focusModelUrl)&&void 0!==o?o:"",logPredictions:D},s.default.createElement(ht,{key:"IdCaptureCamera"},s.default.createElement(Pg,null,s.default.createElement($o,p({},u,{onSuccess:$})))));case"VideoIdCapture":return s.default.createElement(dy,p({},E,{onComplete:V}));case"FaceLiveness":return s.default.createElement(ht,{key:"FaceLivenessCamera",preferFrontFacingCamera:!0,preferContinuityCamera:!1},s.default.createElement(fg,null,s.default.createElement(Mg,p({},h,{onComplete:H}))));case"SignatureCapture":return s.default.createElement(Uv,p({},g,{onAccept:K}));case"VideoSignatureCapture":return s.default.createElement(ht,{key:"SignatureKycCamera-".concat(Z),preferContinuityCamera:!1,preferFrontFacingCamera:!0},s.default.createElement(Wv,p({},b,{onComplete:X,onRetryClicked:te})));case"AdditionalDocumentCapture":return s.default.createElement(Hg,p({},f,{documents:re,onComplete:ae}));default:return s.default.createElement(s.default.Fragment,null)}},fy={default:{fontFamily:"Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif",isFullscreen:!0,background:"white",textColor:"black",textAlign:"center",padding:"25px",colors:{primary:{50:"#eef8ff",100:"#d8eeff",200:"#b9e0ff",300:"#89cfff",400:"#52b4ff",500:"#2a91ff",600:"#0d6efd",700:"#0c5ae9",800:"#1149bc",900:"#144194",950:"#11295a"},secondary:{50:"#f6f6f6",100:"#e7e7e7",200:"#d1d1d1",300:"#b0b0b0",400:"#888888",500:"#666666",600:"#5d5d5d",700:"#4f4f4f",800:"#454545",900:"#3d3d3d",950:"#262626"},positive:{50:"#f1fcf9",100:"#cef9eb",200:"#9df2d8",300:"#65e3c2",400:"#35cca9",500:"#1cb090",600:"#16a085",700:"#147160",800:"#155a4f",900:"#164b42",950:"#062d28"},negative:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},warning:{50:"#fdf5ef",100:"#fbe7d9",200:"#f6cdb2",300:"#f0ab81",400:"#ea8557",500:"#e35e2c",600:"#d54621",700:"#b1341d",800:"#8d2b1f",900:"#72261c",950:"#3d100d"}},buttons:{style:"bootstrap",primary:{backgroundColor:"var(--idm-color-primary-600)",textColor:"white"},secondary:{backgroundColor:"var(--idm-color-secondary-500)",textColor:"white"},positive:{backgroundColor:"var(--idm-color-positive-600)",textColor:"white"},negative:{backgroundColor:"var(--idm-color-negative-400)",textColor:"white"},warning:{backgroundColor:"var(--idm-color-warning-400)",textColor:"white"},loading:{backgroundColor:"gray",textColor:"white"}},guidanceMessages:{default:{backgroundColor:"var(--idm-color-secondary-200)",textColor:"black"},positive:{backgroundColor:"var(--idm-color-positive-700)",textColor:"white"},negative:{backgroundColor:"var(--idm-color-negative-600)",textColor:"white"}},idCapture:{guideOverlay:{backgroundColor:"rgba(0,0,0,0.5)",textColor:"white"},guideBox:{unsatisfiedColor:"white",satisfiedColor:"var(--idm-color-positive-500)",borderWidth:4}},selfieCapture:{guides:{unsatisfiedColor:"white",satisfiedColor:"var(--idm-color-positive-500)"}},signatureCapture:{background:"radial-gradient(#444cf7 0.5px, transparent 0.5px), radial-gradient(#444cf7 0.5px, #e5e5f7 0.5px)",backgroundSize:"20px 20px",backgroundPosition:"0 0, 10px 10px"}},none:{}},py=function(e){var n,r=e.children,i="string"==typeof(n=e.theme)?n in fy?fy[n]:fy.none:n,o=i.colors;return t.useEffect((function(){for(var e in o){var t=o[e];for(var n in t){var a=t[n];document.documentElement.style.setProperty("--idm-color-".concat(e,"-").concat(n),a)}}}),[o]),s.default.createElement(a.ThemeProvider,{theme:i},r)},my=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.idAutoCaptureEnabled,C=void 0===E||E,k=e.idCardAutoCaptureScoreThreshold,S=void 0===k?.8:k,T=e.passportAutoCaptureScoreThreshold,I=void 0===T?.75:T,R=e.idCardFocusScoreThreshold,D=void 0===R?.3:R,A=e.passportFocusScoreThreshold,N=void 0===A?.3:A,_=e.skipSuccessScreen,F=void 0!==_&&_,M=e.onBeforeSubmit,P=e.onComplete,L=e.onApproved,B=e.onDenied,O=e.onExitCapture,U=e.theme,j=void 0===U?"default":U,z=e.assets,G=void 0===z?{}:z,$=e.classNames,q=void 0===$?{}:$,V=e.colors,W=void 0===V?{}:V,H=e.verbiage,K=void 0===H?{}:H,Y=e.captureSignature,X=void 0!==Y&&Y,J=e.captureSignatureVideo,Z=void 0!==J&&J,Q=e.captureAdditionalDocuments,ee=void 0===Q?[]:Q,te=e.geolocationEnabled,ne=void 0===te||te,ae=e.geolocationRequired,re=void 0!==ae&&ae,ie=e.debugMode,oe=void 0!==ie&&ie;Bi(void 0===n?"auto":n);var se=t.useMemo((function(){return{onExitCapture:O,autoCaptureEnabled:C,idCardAutoCaptureScoreThreshold:S,passportAutoCaptureScoreThreshold:I,mrzDetectionScoreThreshold:.5,idCardFocusScoreThreshold:D,passportFocusScoreThreshold:N,barcodeScanningEnabled:!1,skipSuccessScreen:F,assets:G,classNames:q,colors:W,verbiage:K,debugMode:oe}}),[G,q,W,oe,C,S,D,O,I,N,F,K]),le=t.useMemo((function(){return{documents:ee,classNames:q.additionalDocumentCapture,verbiage:K.additionalDocumentCapture}}),[ee,q.additionalDocumentCapture,K.additionalDocumentCapture]),ce=t.useMemo((function(){return{classNames:q.signatureCapture,verbiage:K.signatureCapture}}),[q.signatureCapture,K.signatureCapture]),ue=t.useMemo((function(){return{onExitCapture:O,skipSuccessScreen:F,classNames:q.videoSignatureCapture,colors:W.videoSignatureCapture,verbiage:K.videoSignatureCapture,debugMode:oe}}),[q.videoSignatureCapture,W.videoSignatureCapture,oe,O,F,K.videoSignatureCapture]),de=t.useCallback((function(e,t){null==P||P(e,t),"Approved"===e.resultData.verificationResult?null==L||L(e,t):null==B||B(e,t)}),[L,P,B]);return s.default.createElement(py,{theme:j},s.default.createElement(ke,{action:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onBeforeSubmit:M,onResponseReceived:de,geolocationEnabled:ne,geolocationRequired:re},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture"]}),[]),idCaptureProps:se,additionalDocumentCaptureProps:le,signatureCaptureProps:ce,videoSignatureCaptureProps:ue,captureSignature:X,captureSignatureVideo:Z,debugMode:oe})))},gy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.webhooksEnabled,c=e.webhooksClientTraceId,u=e.webhooksStripSpecialCharacters,d=e.webhooksSendInputImages,h=e.webhooksSendProcessedImages,f=e.timeoutDurationMs,p=void 0===f?15e3:f,m=e.skipSuccessScreen,g=void 0!==m&&m,v=e.onBeforeSubmit,y=e.onComplete,w=e.onApproved,x=e.onDenied,E=e.onExitCapture,C=e.onExitAfterFailure,k=e.theme,S=void 0===k?"default":k,T=e.assets,I=e.classNames,R=e.colors,D=e.verbiage,A=e.geolocationEnabled,N=void 0===A||A,_=e.geolocationRequired,F=void 0!==_&&_,M=e.debugMode,P=void 0!==M&&M;Bi(void 0===n?"auto":n);var L=t.useMemo((function(){return{timeoutDurationMs:p,skipSuccessScreen:g,onComplete:y,onSuccess:w,onTimeout:x,onExitCapture:E,onExitAfterFailure:C,assets:T,classNames:I,colors:R,verbiage:D,debugMode:P}}),[T,I,R,P,w,y,x,C,E,g,p,D]);return s.default.createElement(py,{theme:S},s.default.createElement(ke,{action:b.NONE,url:r,token:a,companyId:i,needImmediateResponse:o,webhooksEnabled:l,webhooksClientTraceId:c,webhooksStripSpecialCharacters:u,webhooksSendInputImages:d,webhooksSendProcessedImages:h,onBeforeLivenessCheck:v,geolocationEnabled:N,geolocationRequired:F},s.default.createElement(hy,{checks:t.useMemo((function(){return["FaceLiveness"]}),[]),faceLivenessProps:L,debugMode:P})))},vy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.idAutoCaptureEnabled,C=void 0===E||E,k=e.idCardAutoCaptureScoreThreshold,S=void 0===k?.8:k,T=e.mrzDetectionScoreThreshold,I=void 0===T?.5:T,R=e.passportAutoCaptureScoreThreshold,D=void 0===R?.75:R,A=e.idCardFocusScoreThreshold,N=void 0===A?.3:A,_=e.passportFocusScoreThreshold,F=void 0===_?.3:_,M=e.faceLivenessTimeoutDurationMs,P=void 0===M?15e3:M,L=e.skipSuccessScreen,B=void 0!==L&&L,O=e.onBeforeLivenessCheck,U=e.onBeforeSubmit,j=e.onComplete,z=e.onApproved,G=e.onDenied,$=e.onExitCapture,q=e.onExitAfterFailure,V=e.captureSignature,W=void 0!==V&&V,H=e.captureSignatureVideo,K=void 0!==H&&H,Y=e.captureAdditionalDocuments,X=void 0===Y?[]:Y,J=e.theme,Z=void 0===J?"default":J,Q=e.assets,ee=void 0===Q?{}:Q,te=e.classNames,ne=void 0===te?{}:te,ae=e.colors,re=void 0===ae?{}:ae,ie=e.verbiage,oe=void 0===ie?{}:ie,se=e.geolocationEnabled,le=void 0===se||se,ce=e.geolocationRequired,ue=void 0!==ce&&ce,de=e.debugMode,he=void 0!==de&&de;Bi(void 0===n?"auto":n);var fe=t.useMemo((function(){return{onExitCapture:$,assets:ee.idCapture,classNames:ne.idCapture,colors:re.idCapture,verbiage:oe.idCapture,autoCaptureEnabled:C,idCardAutoCaptureScoreThreshold:S,passportAutoCaptureScoreThreshold:D,mrzDetectionScoreThreshold:I,idCardFocusScoreThreshold:N,passportFocusScoreThreshold:F,skipSuccessScreen:B,debugMode:he}}),[ee.idCapture,ne.idCapture,re.idCapture,he,C,S,N,I,$,D,F,B,oe.idCapture]),pe=t.useMemo((function(){return{timeoutDurationMs:P,onTimeout:G,onExitCapture:$,onExitAfterFailure:q,skipSuccessScreen:B,assets:ee.faceLiveness,classNames:ne.faceLiveness,colors:re.faceLiveness,verbiage:oe.faceLiveness,debugMode:he}}),[ee.faceLiveness,ne.faceLiveness,re.faceLiveness,he,P,G,q,$,B,oe.faceLiveness]),me=t.useMemo((function(){return{documents:X,classNames:ne.additionalDocumentCapture,verbiage:oe.additionalDocumentCapture}}),[X,ne.additionalDocumentCapture,oe.additionalDocumentCapture]),ge=t.useMemo((function(){return{classNames:ne.signatureCapture,verbiage:oe.signatureCapture}}),[ne.signatureCapture,oe.signatureCapture]),ve=t.useMemo((function(){return{onExitCapture:$,skipSuccessScreen:B,classNames:ne.videoSignatureCapture,colors:re.videoSignatureCapture,verbiage:oe.videoSignatureCapture,debugMode:he}}),[ne.videoSignatureCapture,re.videoSignatureCapture,he,$,B,oe.videoSignatureCapture]),ye=t.useCallback((function(e,t){null==j||j(e,t),"Approved"===e.resultData.verificationResult?null==z||z(e,t):null==G||G(e,t)}),[z,j,G]);return s.default.createElement(py,{theme:Z},s.default.createElement(ke,{action:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onBeforeSubmit:U,onBeforeLivenessCheck:O,onResponseReceived:ye,geolocationEnabled:le,geolocationRequired:ue},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture","FaceLiveness"]}),[]),idCaptureProps:fe,faceLivenessProps:pe,signatureCaptureProps:ge,videoSignatureCaptureProps:ve,additionalDocumentCaptureProps:me,captureSignature:W,captureSignatureVideo:K,debugMode:he})))},yy=function(e){var n=e.enrollmentId,a=e.lang,r=e.submissionToken,i=e.submissionUrl,o=e.companyId,l=e.needImmediateResponse,c=e.manualReviewRequired,u=e.idBackImageRequired,d=e.idImageResolutionCheck,h=e.verifyIdWithExternalDatabases,f=e.bypassAgeValidation,p=e.bypassNameMatching,m=e.personalData,g=e.cardData,v=e.deduplicationEnabled,y=e.deduplicationSynchronous,w=e.webhooksEnabled,x=e.webhooksClientTraceId,E=e.webhooksStripSpecialCharacters,C=e.webhooksSendInputImages,k=e.webhooksSendProcessedImages,S=e.webhooksFireOnReview,T=e.idAutoCaptureEnabled,I=void 0===T||T,R=e.idCardAutoCaptureScoreThreshold,D=void 0===R?.8:R,A=e.mrzDetectionScoreThreshold,N=void 0===A?.5:A,_=e.passportAutoCaptureScoreThreshold,F=void 0===_?.75:_,M=e.idCardFocusScoreThreshold,P=void 0===M?.3:M,L=e.passportFocusScoreThreshold,B=void 0===L?.3:L,O=e.faceLivenessTimeoutDurationMs,U=void 0===O?15e3:O,j=e.skipSuccessScreen,z=void 0!==j&&j,G=e.onBeforeSubmit,$=e.onComplete,q=e.onEnrolled,V=e.onDenied,W=e.onExitCapture,H=e.onExitAfterFailure,K=e.captureSignature,Y=void 0!==K&&K,X=e.captureSignatureVideo,J=void 0!==X&&X,Z=e.captureAdditionalDocuments,Q=void 0===Z?[]:Z,ee=e.theme,te=void 0===ee?"default":ee,ne=e.assets,ae=void 0===ne?{}:ne,re=e.classNames,ie=void 0===re?{}:re,oe=e.colors,se=void 0===oe?{}:oe,le=e.verbiage,ce=void 0===le?{}:le,ue=e.geolocationEnabled,de=void 0===ue||ue,he=e.geolocationRequired,fe=void 0!==he&&he,pe=e.debugMode,me=void 0!==pe&&pe;Bi(void 0===a?"auto":a);var ge=t.useMemo((function(){return{assets:ae.idCapture,classNames:ie.idCapture,colors:se.idCapture,verbiage:ce.idCapture,autoCaptureEnabled:I,idCardAutoCaptureScoreThreshold:D,passportAutoCaptureScoreThreshold:F,mrzDetectionScoreThreshold:N,idCardFocusScoreThreshold:P,passportFocusScoreThreshold:B,onExitCapture:W,skipSuccessScreen:z,debugMode:me}}),[ae.idCapture,ie.idCapture,se.idCapture,me,I,D,P,N,W,F,B,z,ce.idCapture]),ve=t.useMemo((function(){return{onExitCapture:W,onExitAfterFailure:H,timeoutDurationMs:U,skipSuccessScreen:z,assets:ae.faceLiveness,classNames:ie.faceLiveness,colors:se.faceLiveness,verbiage:ce.faceLiveness,debugMode:me}}),[ae.faceLiveness,ie.faceLiveness,se.faceLiveness,me,U,H,W,z,ce.faceLiveness]),ye=t.useMemo((function(){return{documents:Q,classNames:ie.additionalDocumentCapture,verbiage:ce.additionalDocumentCapture}}),[Q,ie.additionalDocumentCapture,ce.additionalDocumentCapture]),be=t.useMemo((function(){return{classNames:ie.signatureCapture,verbiage:ce.signatureCapture}}),[ie.signatureCapture,ce.signatureCapture]),we=t.useMemo((function(){return{onExitCapture:W,skipSuccessScreen:z,classNames:ie.videoSignatureCapture,colors:se.videoSignatureCapture,verbiage:ce.videoSignatureCapture,debugMode:me}}),[ie.videoSignatureCapture,se.videoSignatureCapture,me,W,z,ce.videoSignatureCapture]),xe=t.useCallback((function(e,t){null==$||$(e,t),"Customer Onboarded"===e.resultData.verificationResult?null==q||q(e,t):null==V||V(e,t)}),[q,$,V]);return s.default.createElement(py,{theme:te},s.default.createElement(ke,{action:b.ENROLL,url:i,token:r,companyId:o,enrollmentId:n,needImmediateResponse:l,manualReviewRequired:c,idBackImageRequired:u,idImageResolutionCheck:d,verifyIdWithExternalDatabases:h,bypassAgeValidation:f,bypassNameMatching:p,personalData:m,cardData:g,deduplicationEnabled:v,deduplicationSynchronous:y,webhooksEnabled:w,webhooksClientTraceId:x,webhooksStripSpecialCharacters:E,webhooksSendInputImages:C,webhooksSendProcessedImages:k,webhooksFireOnReview:S,onBeforeSubmit:G,onResponseReceived:xe,geolocationEnabled:de,geolocationRequired:fe},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture","FaceLiveness"]}),[]),idCaptureProps:ge,faceLivenessProps:ve,additionalDocumentCaptureProps:ye,signatureCaptureProps:be,videoSignatureCaptureProps:we,captureSignature:Y,captureSignatureVideo:J,debugMode:me})))},by={frame:null,face:null,imageUrl:null,requestState:"CAPTURING",requestError:null,unverifiedTimes:0},wy=function(e,t){switch(t.type){case"verificationReady":return["CAPTURING","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"verifying":return p(p({},e),{requestState:"VERIFYING",imageUrl:t.payload.imageUrl});case"verificationCompleted":var n=t.payload.response,a=n.status,r=a.statusMessage,i=a.errorData,o=n.resultData;if("000"!==a.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(r,": ").concat(i))});var s=e.requestState,l=e.unverifiedTimes;return"00"===o.verificationResultCode?s="VERIFIED":l<0?(s="CAPTURING",l+=1):s="REJECTED",p(p({},e),{requestState:s,unverifiedTimes:l});case"verificationFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},xy=function(e){var n=e.onCustomerMatched,a=e.onCustomerNotMatched,r=e.onCaptureGuidanceTimeout,i=e.onExit,o=e.captureGuidanceTimeoutDurationMs,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h,p=e.debugMode,v=void 0!==p&&p,y=t.useReducer(wy,by),b=y[0],w=y[1],x=b.frame,E=b.face,k=t.useContext(I),S=k.submit,T=k.submissionRequest,R=k.submissionResponse,D=k.submissionError,A=k.selfieImage,N=k.setSelfieImage,_=t.useState(null),F=_[0],M=_[1],P=t.useRef(null),L=t.useRef(null),B=t.useCallback((function(e,t){w({type:"verificationReady",payload:{frame:e,face:t}})}),[]),O="CAPTURED"===b.requestState;t.useEffect((function(){if(x&&E&&!D){var e=Ka(P.current,L.current,x,E);M(e),C(e).then((function(e){N(e)}))}}),[E,x,N,D]),t.useEffect((function(){O&&A&&!D&&m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),w({type:"verifying",payload:{imageUrl:A}}),[4,S()];case 1:if(!(e=n.sent()))throw new Error("submission failed!");return w({type:"verificationCompleted",payload:{response:e}}),[3,3];case 2:return t=n.sent(),w({type:"verificationFailed",payload:{error:t}}),[3,3];case 3:return[2]}}))}))}),[O,n,a,A,b.requestState,D,S]),t.useEffect((function(){T&&R&&("VERIFIED"===b.requestState?null==n||n(R,T):"REJECTED"===b.requestState&&(null==a||a(R,T)))}),[n,a,b.requestState,T,R]),pg(o,r,["VERIFIED","REJECTED"].includes(b.requestState),"VERIFYING"===b.requestState);var U=Ui(f.progressPreviewText,"Processing...");return s.default.createElement(s.default.Fragment,null,s.default.createElement(Va,{ref:P}),s.default.createElement(Va,{ref:L}),s.default.createElement(Cg,{onSelfieCaptured:B,onExit:i,timeoutDurationMs:o,classNames:c,colors:d,verbiage:f,debugMode:v}),F&&s.default.createElement(Sr,{imageUrl:F,text:U,classNames:c.imagePreview}))},Ey=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c;t||(t="".concat(Ga,"/Selfie-Image-1.png"));var d=ji(u,{headingText:"Customer has been verified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(j,{className:i.container},s.default.createElement(z,{className:i.inner},s.default.createElement(Cy,{className:i.heading},d.headingText),s.default.createElement(ky,{className:i.imageContainer},s.default.createElement("img",{alt:d.headingText,src:t,className:i.image})),s.default.createElement(Sy,{className:i.buttonsRow},s.default.createElement(ue,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},d.retryBtnText),s.default.createElement(ue,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},d.doneBtnText))))},Cy=u.default.h3(Jv||(Jv=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),ky=u.default(bo)(Zv||(Zv=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Sy=u.default(bo)(Qv||(Qv=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Ty=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Customer not verified",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(j,{className:c.container},s.default.createElement(z,{className:c.inner},s.default.createElement(Iy,{className:c.heading},p.headingText),s.default.createElement(Ry,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(Dy,{className:c.buttonsRow},n&&s.default.createElement(ue,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ue,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},Iy=u.default.h3(ey||(ey=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),Ry=u.default(bo)(ty||(ty=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Dy=u.default(bo)(ny||(ny=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Ay=function(e){var n=e.onComplete,a=e.onCustomerMatched,r=e.onCustomerNotMatched,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.onCaptureGuidanceTimeout,c=e.captureGuidanceTimeoutDurationMs,u=e.skipSuccessScreen,d=void 0!==u&&u,h=e.assets,f=void 0===h?{}:h,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=t.useContext(I),S=k.submissionRequest,T=k.submissionResponse,R=k.selfieImage,D=t.useState("LOADING"),A=D[0],N=D[1],_=t.useContext(dt).releaseCameraAccess,F=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return N("MATCHED"),null==a||a(e,t),[2]}))}))}),[a]),M=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return N("NOT_MATCHED"),null==r||r(e,t),[2]}))}))}),[r]),P=t.useCallback((function(){N("FAILED"),null==l||l()}),[l]),L=t.useState(0),B=L[0],O=L[1],U=t.useCallback((function(){O((function(e){return e+1})),N("LOADING"),null==i||i()}),[i]),j=t.useCallback((function(){_(),S&&T&&(null==n||n(T,S))}),[n,_,S,T]),z=ko(d,"MATCHED"===A,j);return s.default.createElement(s.default.Fragment,null,"LOADING"!==A&&function(){switch(A){case"CAPTURING":return s.default.createElement(xy,{key:"capture".concat(B),onCustomerMatched:F,onCustomerNotMatched:M,onCaptureGuidanceTimeout:P,onExit:U,captureGuidanceTimeoutDurationMs:c,classNames:v,colors:b,verbiage:x,debugMode:C});case"MATCHED":if(!z)return;return s.default.createElement(Ey,{imageUrl:"data:image/png;base64, ".concat(R),classNames:v.success,colors:b.success,verbiage:x.success,onDoneClick:j,onRetryClick:function(){N("CAPTURING"),O(0)}});case"NOT_MATCHED":case"FAILED":return s.default.createElement(Ty,{assets:f.failure,classNames:v.failure,colors:b.failure,verbiage:x.failure,canRetry:B<2,onExitClick:function(){_(),null==o||o()},onRetryClick:function(){O((function(e){return e+1}))}});default:return null}}(),s.default.createElement(Ig,{key:B,assets:f.loadingOverlay,classNames:v.loadingOverlay,colors:b.loadingOverlay,verbiage:x.loadingOverlay,onDismissed:function(){N("CAPTURING")}}))},Ny=function(e){var t=e.lang,n=e.enrollmentId,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.webhooksEnabled,c=e.webhooksClientTraceId,u=e.webhooksStripSpecialCharacters,d=e.webhooksSendInputImages,h=e.webhooksSendProcessedImages,f=e.timeoutDurationMs,p=void 0===f?15e3:f,m=e.skipSuccessScreen,g=void 0!==m&&m,v=e.theme,y=void 0===v?"default":v,w=e.assets,x=e.classNames,E=e.colors,C=e.verbiage,k=e.onBeforeSubmit,S=e.onComplete,T=e.onCustomerMatched,I=e.onCustomerNotMatched,R=e.onExitCapture,D=e.onExitAfterFailure,A=e.geolocationEnabled,N=void 0===A||A,_=e.geolocationRequired,F=void 0!==_&&_,M=e.debugMode,P=void 0!==M&&M;return Bi(void 0===t?"auto":t),s.default.createElement(py,{theme:y},s.default.createElement(ke,{action:b.VERIFY,url:r,token:a,companyId:i,enrollmentId:n,needImmediateResponse:o,webhooksEnabled:l,webhooksClientTraceId:c,webhooksStripSpecialCharacters:u,webhooksSendInputImages:d,webhooksSendProcessedImages:h,onBeforeSubmit:k,geolocationEnabled:N,geolocationRequired:F},s.default.createElement(ht,{preferFrontFacingCamera:!0},s.default.createElement(fg,null,s.default.createElement(Ay,{onComplete:S,onCustomerMatched:T,onCustomerNotMatched:I,onExitCapture:R,onExitAfterFailure:D,captureGuidanceTimeoutDurationMs:p,skipSuccessScreen:g,assets:w,classNames:x,colors:E,verbiage:C,debugMode:P})))))},_y={frame:null,face:null,imageUrl:null,requestState:"CAPTURING",requestError:null,notFoundTimes:0},Fy=function(e,t){switch(t.type){case"identificationReady":return["CAPTURING","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"identifying":return p(p({},e),{requestState:"IDENTIFYING",imageUrl:t.payload.imageUrl});case"identificationCompleted":var n=t.payload.response,a=n.status,r=a.statusMessage,i=a.errorData,o=n.resultData;if("000"!==a.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(r,": ").concat(i))});var s=e.requestState,l=e.notFoundTimes;return"46"===o.verificationResultCode?s="FOUND":l<0?(s="CAPTURING",l+=1):s="NOT_FOUND",p(p({},e),{requestState:s,notFoundTimes:l});case"identificationFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},My=function(e){var n=e.onCustomerMatched,a=e.onCustomerNotMatched,r=e.onCaptureGuidanceTimeout,i=e.onExit,o=e.captureGuidanceTimeoutDurationMs,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h,p=e.debugMode,v=void 0!==p&&p,y=t.useReducer(Fy,_y),b=y[0],w=y[1],x=t.useContext(I),E=x.submit,k=x.submissionRequest,S=x.submissionResponse,T=x.submissionError,R=x.selfieImage,D=x.setSelfieImage,A=t.useState(null),N=A[0],_=A[1],F=t.useRef(null),M=t.useRef(null),P=t.useCallback((function(e,t){w({type:"identificationReady",payload:{frame:e,face:t}})}),[]),L=b.frame,B=b.face,O="CAPTURED"===b.requestState;t.useEffect((function(){if(L&&B&&!T){var e=Ka(F.current,M.current,L,B);_(e),C(e).then((function(e){D(e)}))}}),[B,L,D,T]),t.useEffect((function(){O&&R&&!T&&m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),w({type:"identifying",payload:{imageUrl:R}}),[4,E()];case 1:if(!(e=n.sent()))throw new Error("submission failed!");return w({type:"identificationCompleted",payload:{response:e}}),[3,3];case 2:return t=n.sent(),w({type:"identificationFailed",payload:{error:t}}),[3,3];case 3:return[2]}}))}))}),[O,n,a,R,b.requestState,T,E]),t.useEffect((function(){k&&S&&("FOUND"===b.requestState?null==n||n(S,k):"NOT_FOUND"===b.requestState&&(null==a||a(S,k)))}),[n,a,b.requestState,k,S]),pg(o,r,["FOUND","NOT_FOUND"].includes(b.requestState),"IDENTIFYING"===b.requestState);var U=Ui(f.progressPreviewText,"Processing...");return s.default.createElement(s.default.Fragment,null,s.default.createElement(Va,{ref:F}),s.default.createElement(Va,{ref:M}),s.default.createElement(Cg,{onSelfieCaptured:P,onExit:i,timeoutDurationMs:o,classNames:c,colors:d,verbiage:f,debugMode:v}),N&&s.default.createElement(Sr,{text:U,imageUrl:N,classNames:c.imagePreview}))},Py=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c;t||(t="".concat(Ga,"/Selfie-Image-1.png"));var d=ji(u,{headingText:"Customer has been identified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(j,{className:i.container},s.default.createElement(z,{className:i.inner},s.default.createElement(Ly,{className:i.heading},d.headingText),s.default.createElement(By,{className:i.imageContainer},s.default.createElement("img",{alt:d.headingText,src:t,className:i.image})),s.default.createElement(Oy,{className:i.buttonsRow},s.default.createElement(ue,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},d.retryBtnText),s.default.createElement(ue,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},d.doneBtnText))))},Ly=u.default.h3(ay||(ay=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),By=u.default(bo)(ry||(ry=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Oy=u.default(bo)(iy||(iy=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Uy=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Customer not found",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(j,{className:c.container},s.default.createElement(z,{className:c.inner},s.default.createElement(jy,{className:c.heading},p.headingText),s.default.createElement(zy,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(Gy,{className:c.buttonsRow},n&&s.default.createElement(ue,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ue,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},jy=u.default.h3(oy||(oy=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),zy=u.default(bo)(sy||(sy=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Gy=u.default(bo)(ly||(ly=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),$y=function(e){var n=e.onComplete,a=e.onCustomerMatched,r=e.onCustomerNotMatched,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.onCaptureGuidanceTimeout,c=e.captureGuidanceTimeoutDurationMs,u=e.skipSuccessScreen,d=void 0!==u&&u,h=e.assets,f=void 0===h?{}:h,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=t.useContext(I),S=k.submissionResponse,T=k.submissionRequest,R=k.selfieImage,D=t.useState("LOADING"),A=D[0],N=D[1],_=t.useContext(dt).releaseCameraAccess,F=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return N("FOUND"),null==a||a(e,t),[2]}))}))}),[a]),M=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return N("NOT_FOUND"),null==r||r(e,t),[2]}))}))}),[r]),P=t.useCallback((function(){N("FAILED"),null==l||l()}),[l]),L=t.useState(0),B=L[0],O=L[1],U=t.useCallback((function(){O((function(e){return e+1})),N("LOADING"),null==i||i()}),[i]),j=t.useCallback((function(){_(),T&&S&&(null==n||n(S,T))}),[n,_,T,S]),z=ko(d,"FOUND"===A,j);return s.default.createElement(s.default.Fragment,null,"LOADING"!==A&&function(){switch(A){case"CAPTURING":return s.default.createElement(My,{key:"capture".concat(B),onCustomerMatched:F,onCustomerNotMatched:M,onCaptureGuidanceTimeout:P,onExit:U,captureGuidanceTimeoutDurationMs:c,classNames:v,colors:b,verbiage:x,debugMode:C});case"FOUND":if(!z)return;return s.default.createElement(Py,{imageUrl:"data:image/png;base64, ".concat(R),classNames:v.success,colors:b.success,verbiage:x.success,onDoneClick:j,onRetryClick:function(){N("CAPTURING"),O(0)}});case"NOT_FOUND":case"FAILED":return s.default.createElement(Uy,{assets:f.failure,classNames:v.failure,colors:b.failure,verbiage:x.failure,canRetry:B<2,onExitClick:function(){_(),null==o||o()},onRetryClick:function(){O((function(e){return e+1}))}});default:return null}}(),s.default.createElement(Ig,{key:B,assets:f.loadingOverlay,classNames:v.loadingOverlay,colors:b.loadingOverlay,verbiage:x.loadingOverlay,onDismissed:function(){N("CAPTURING")}}))},qy=function(e){var t=e.lang,n=e.submissionToken,a=e.submissionUrl,r=e.companyId,i=e.needImmediateResponse,o=e.webhooksEnabled,l=e.webhooksClientTraceId,c=e.webhooksStripSpecialCharacters,u=e.webhooksSendInputImages,d=e.webhooksSendProcessedImages,h=e.timeoutDurationMs,f=void 0===h?15e3:h,p=e.skipSuccessScreen,m=void 0!==p&&p,g=e.onBeforeSubmit,v=e.onComplete,y=e.onCustomerMatched,w=e.onCustomerNotMatched,x=e.onCaptureGuidanceTimeout,E=e.onExitCapture,C=e.onExitAfterFailure,k=e.theme,S=void 0===k?"default":k,T=e.assets,I=e.classNames,R=e.colors,D=e.verbiage,A=e.geolocationEnabled,N=e.geolocationRequired,_=void 0!==N&&N,F=e.debugMode,M=void 0!==F&&F;return Bi(void 0===t?"auto":t),s.default.createElement(py,{theme:S},s.default.createElement(ke,{action:b.IDENTIFY,url:a,token:n,companyId:r,needImmediateResponse:i,webhooksEnabled:o,webhooksClientTraceId:l,webhooksStripSpecialCharacters:c,webhooksSendInputImages:u,webhooksSendProcessedImages:d,onBeforeSubmit:g,geolocationEnabled:A,geolocationRequired:_},s.default.createElement(ht,{preferFrontFacingCamera:!0},s.default.createElement(fg,null,s.default.createElement($y,{onComplete:v,onCustomerMatched:y,onCustomerNotMatched:w,onExitCapture:E,onExitAfterFailure:C,onCaptureGuidanceTimeout:x,captureGuidanceTimeoutDurationMs:f,skipSuccessScreen:m,assets:T,classNames:I,colors:R,verbiage:D,debugMode:M})))))},Vy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.onBeforeSubmit,o=e.onComplete,l=e.skipSuccessScreen,c=void 0!==l&&l,u=e.theme,d=void 0===u?"default":u,h=e.classNames,f=e.colors,p=e.verbiage,m=e.geolocationEnabled,g=e.geolocationRequired,v=e.debugMode;Bi(void 0===n?"auto":n);var y=t.useState(0),w=y[1];return s.default.createElement(py,{theme:d},s.default.createElement(ke,{action:b.NONE,url:r,token:a,onBeforeSubmit:i,onResponseReceived:o,geolocationEnabled:m,geolocationRequired:g},s.default.createElement(ht,{key:y[0],preferContinuityCamera:!1,preferFrontFacingCamera:!0},s.default.createElement(Wv,{skipSuccessScreen:c,classNames:h,colors:f,debugMode:v,verbiage:p,onRetryClicked:function(){w((function(e){return e+1}))}}))))},Wy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.onSubmit,C=e.onBeforeSubmit,k=e.onComplete,S=e.onExitCapture,T=e.onExitAfterFailure,I=e.idCaptureProps,R=e.faceLivenessProps,D=e.idCardFrontDetectionThreshold,A=void 0===D?.48:D,N=e.idCardFrontFocusThreshold,_=void 0===N?.15:N,F=e.goodIdCardFrontFramesThreshold,M=void 0===F?3:F,P=e.showIdCardBackDurationMs,L=void 0===P?5e3:P,B=e.readTextPrompt,O=e.readTextTimeoutDurationMs,U=void 0===O?15e3:O,j=e.skipSuccessScreen,z=void 0!==j&&j,G=e.skipIdCapture,$=void 0!==G&&G,q=e.skipShowIdCardBack,V=void 0!==q&&q,W=e.theme,H=void 0===W?"default":W,K=e.assets,Y=void 0===K?{}:K,X=e.classNames,J=void 0===X?{}:X,Z=e.colors,Q=void 0===Z?{}:Z,ee=e.verbiage,te=void 0===ee?{}:ee,ne=e.captureSignature,ae=void 0!==ne&&ne,re=e.captureSignatureVideo,ie=void 0!==re&&re,oe=e.captureAdditionalDocuments,se=void 0===oe?[]:oe,le=e.geolocationEnabled,ce=void 0===le||le,ue=e.geolocationRequired,de=void 0!==ue&&ue,he=e.debugMode,fe=void 0!==he&&he;Bi(void 0===n?"auto":n);var pe=t.useMemo((function(){return{idCaptureProps:I,faceLivenessProps:R,idCardFrontDetectionThreshold:A,idCardFrontFocusThreshold:_,goodIdCardFrontFramesThreshold:M,showIdCardBackDurationMs:L,readTextPrompt:B,readTextTimeoutDurationMs:U,onExitCapture:S,onExitAfterFailure:T,skipSuccessScreen:z,skipIdCapture:$,skipShowIdCardBack:V,assets:Y,classNames:J,colors:Q,verbiage:te,debugMode:fe}}),[Y,J,Q,fe,R,M,I,A,_,T,S,B,U,L,$,V,z,te]),me=t.useMemo((function(){return{documents:se,classNames:J.additionalDocumentCapture,verbiage:te.additionalDocumentCapture}}),[se,J.additionalDocumentCapture,te.additionalDocumentCapture]),ge=t.useMemo((function(){return{classNames:J.signatureCapture,verbiage:te.signatureCapture}}),[J.signatureCapture,te.signatureCapture]),ve=t.useMemo((function(){return{onExitCapture:S,skipSuccessScreen:z,classNames:J.videoSignatureCapture,colors:Q.videoSignatureCapture,verbiage:te.videoSignatureCapture,debugMode:fe}}),[J.videoSignatureCapture,Q.videoSignatureCapture,fe,S,z,te.videoSignatureCapture]);return s.default.createElement(py,{theme:H},s.default.createElement(ke,{action:$?b.NONE:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onSubmit:E,onBeforeSubmit:C,onResponseReceived:k,geolocationEnabled:ce,geolocationRequired:de},s.default.createElement(hy,{checks:t.useMemo((function(){return["VideoIdCapture"]}),[]),videoIdCaptureProps:pe,additionalDocumentCaptureProps:me,signatureCaptureProps:ge,videoSignatureCaptureProps:ve,captureSignature:ae,captureSignatureVideo:ie,debugMode:fe})))},Hy=function(e){var t=e.documentDetectionModel,n=void 0===t||t,a=e.focusModel,r=void 0===a||a,i=e.faceDetectionModel,o=void 0===i||i;return m(void 0,void 0,void 0,(function(){return g(this,(function(e){switch(e.label){case 0:return n?(!0===n&&(n="".concat(Ga,"/models/documentdetection448/model.json")),[4,Te(n)]):[3,2];case 1:e.sent(),e.label=2;case 2:return r?(!0===r&&(r="".concat(Ga,"/models/focus/model.json")),[4,ft(r)]):[3,4];case 3:e.sent(),e.label=4;case 4:return o?[4,ng()]:[3,6];case 5:e.sent(),e.label=6;case 6:return[2]}}))}))},Ky=function(e){var n=e.enrollmentId,a=e.lang,r=e.submissionToken,i=e.submissionUrl,o=e.companyId,l=e.needImmediateResponse,c=e.deduplicationEnabled,u=e.deduplicationSynchronous,d=e.webhooksEnabled,h=e.webhooksClientTraceId,f=e.webhooksStripSpecialCharacters,p=e.webhooksSendInputImages,m=e.webhooksSendProcessedImages,g=e.timeoutDurationMs,v=void 0===g?15e3:g,y=e.skipSuccessScreen,w=void 0!==y&&y,x=e.onBeforeSubmit,E=e.onComplete,C=e.onEnrolled,k=e.onDenied,S=e.onExitCapture,T=e.onExitAfterFailure,I=e.captureAdditionalDocuments,R=void 0===I?[]:I,D=e.captureSignature,A=void 0!==D&&D,N=e.captureSignatureVideo,_=void 0!==N&&N,F=e.theme,M=void 0===F?"default":F,P=e.assets,L=void 0===P?{}:P,B=e.classNames,O=void 0===B?{}:B,U=e.colors,j=void 0===U?{}:U,z=e.verbiage,G=void 0===z?{}:z,$=e.geolocationEnabled,q=void 0===$||$,V=e.geolocationRequired,W=void 0!==V&&V,H=e.debugMode,K=void 0!==H&&H;Bi(void 0===a?"auto":a);var Y=t.useMemo((function(){return{onExitCapture:S,onExitAfterFailure:T,timeoutDurationMs:v,skipSuccessScreen:w,assets:L.faceLiveness,classNames:O.faceLiveness,colors:j.faceLiveness,verbiage:G.faceLiveness,debugMode:K}}),[L.faceLiveness,O.faceLiveness,j.faceLiveness,K,T,S,w,v,G.faceLiveness]),X=t.useMemo((function(){return{documents:R,classNames:O.additionalDocumentCapture,verbiage:G.additionalDocumentCapture}}),[R,O.additionalDocumentCapture,G.additionalDocumentCapture]),J=t.useMemo((function(){return{classNames:O.signatureCapture,verbiage:G.signatureCapture}}),[O.signatureCapture,G.signatureCapture]),Z=t.useMemo((function(){return{onExitCapture:S,skipSuccessScreen:w,classNames:O.videoSignatureCapture,colors:j.videoSignatureCapture,verbiage:G.videoSignatureCapture,debugMode:K}}),[O.videoSignatureCapture,j.videoSignatureCapture,K,S,w,G.videoSignatureCapture]),Q=t.useCallback((function(e,t){null==E||E(e,t),"Customer Onboarded"===e.resultData.verificationResult?null==C||C(e,t):null==k||k(e,t)}),[C,E,k]);return s.default.createElement(py,{theme:M},s.default.createElement(ke,{action:b.ENROLL,url:i,token:r,companyId:o,enrollmentId:n,needImmediateResponse:l,deduplicationEnabled:c,deduplicationSynchronous:u,webhooksEnabled:d,webhooksClientTraceId:h,webhooksStripSpecialCharacters:f,webhooksSendInputImages:p,webhooksSendProcessedImages:m,onBeforeSubmit:x,onResponseReceived:Q,geolocationEnabled:q,geolocationRequired:W},s.default.createElement(hy,{checks:t.useMemo((function(){return["FaceLiveness"]}),[]),faceLivenessProps:Y,additionalDocumentCaptureProps:X,signatureCaptureProps:J,videoSignatureCaptureProps:Z,captureSignature:A,captureSignatureVideo:_,debugMode:K})))};function Yy(e,t,n){return n||(n=t,t=void 0),function(e,t){if("string"==typeof t){var n=document.querySelector(t);if(!n)throw new Error("targetElement ".concat(t," not found"));t=n}else t||(t=document.createElement("div"),document.body.append(t));var a=c.createRoot(t);if(a.render(s.default.createElement(j,null,e)),"remove"in t){var r=t.remove;t.remove=function(){try{a.unmount(),r()}catch(e){}}}return t}(s.default.createElement(e,p({},n)),t)}Pi.use(Jr).use(ne).init({resources:Li,detection:{caches:[]},fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}});var Xy=function(e,t){return Yy(my,e,t)},Jy=function(e,t){return Yy(gy,e,t)},Zy=function(e,t){return Yy(vy,e,t)},Qy=function(e,t){return Yy(yy,e,t)},eb=function(e,t){return Yy(Ky,e,t)},tb=function(e,t){return Yy(Ny,e,t)},nb=function(e,t){return Yy(qy,e,t)},ab=function(e,t){return Yy(Vy,e,t)},rb=function(e,t){return Yy(Wy,e,t)};globalThis.IDmissionSDK={renderIdValidation:Xy,renderFaceValidation:Jy,renderIdAndFaceValidation:Zy,renderCustomerIdAndBiometricsEnrollment:Qy,renderCustomerBiometricsEnrollment:eb,renderCustomerVerification:tb,renderCustomerIdentification:nb,renderSignatureKYC:ab,renderVideoIdValidation:rb,preloadModels:Hy,themes:fy,version:x,ready:!0};var ib=function(){return ib=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},ib.apply(this,arguments)},ob={lines:12,length:7,width:5,radius:10,scale:1,corners:1,color:"#000",fadeColor:"transparent",animation:"spinner-line-fade-default",rotate:0,direction:1,speed:1,zIndex:2e9,className:"spinner",top:"50%",left:"50%",shadow:"0 0 1px transparent",position:"absolute"},sb=function(){function e(e){void 0===e&&(e={}),this.opts=ib(ib({},ob),e)}return e.prototype.spin=function(e){return this.stop(),this.el=document.createElement("div"),this.el.className=this.opts.className,this.el.setAttribute("role","progressbar"),lb(this.el,{position:this.opts.position,width:0,zIndex:this.opts.zIndex,left:this.opts.left,top:this.opts.top,transform:"scale("+this.opts.scale+")"}),e&&e.insertBefore(this.el,e.firstChild||null),function(e,t){var n=Math.round(t.corners*t.width*500)/1e3+"px",a="none";!0===t.shadow?a="0 2px 4px #000":"string"==typeof t.shadow&&(a=t.shadow);for(var r=function(e){for(var t=/^\s*([a-zA-Z]+\s+)?(-?\d+(\.\d+)?)([a-zA-Z]*)\s+(-?\d+(\.\d+)?)([a-zA-Z]*)(.*)$/,n=[],a=0,r=e.split(",");a<r.length;a++){var i=r[a].match(t);if(null!==i){var o=+i[2],s=+i[5],l=i[4],c=i[7];0!==o||l||(l=c),0!==s||c||(c=l),l===c&&n.push({prefix:i[1]||"",x:o,y:s,xUnits:l,yUnits:c,end:i[8]})}}return n}(a),i=0;i<t.lines;i++){var o=~~(360/t.lines*i+t.rotate),s=lb(document.createElement("div"),{position:"absolute",top:-t.width/2+"px",width:t.length+t.width+"px",height:t.width+"px",background:cb(t.fadeColor,i),borderRadius:n,transformOrigin:"left",transform:"rotate("+o+"deg) translateX("+t.radius+"px)"}),l=i*t.direction/t.lines/t.speed;l-=1/t.speed;var c=lb(document.createElement("div"),{width:"100%",height:"100%",background:cb(t.color,i),borderRadius:n,boxShadow:ub(r,o),animation:1/t.speed+"s linear "+l+"s infinite "+t.animation});s.appendChild(c),e.appendChild(s)}}(this.el,this.opts),this},e.prototype.stop=function(){return this.el&&("undefined"!=typeof requestAnimationFrame?cancelAnimationFrame(this.animateId):clearTimeout(this.animateId),this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=void 0),this},e}();function lb(e,t){for(var n in t)e.style[n]=t[n];return e}function cb(e,t){return"string"==typeof e?e:e[t%e.length]}function ub(e,t){for(var n=[],a=0,r=e;a<r.length;a++){var i=r[a],o=db(i.x,i.y,t);n.push(i.prefix+o[0]+i.xUnits+" "+o[1]+i.yUnits+i.end)}return n.join(", ")}function db(e,t,n){var a=n*Math.PI/180,r=Math.sin(a),i=Math.cos(a);return[Math.round(1e3*(e*i+t*r))/1e3,Math.round(1e3*(-e*r+t*i))/1e3]}var hb=[];function fb(e){if(void 0!==e){if(e.classList.contains("ladda-button")||e.classList.add("ladda-button"),e.hasAttribute("data-style")||e.setAttribute("data-style","expand-right"),!e.querySelector(".ladda-label")){var t=document.createElement("span");t.className="ladda-label",function(e,t){var n=document.createRange();n.selectNodeContents(e),n.surroundContents(t),e.appendChild(t)}(e,t)}var n,a,r=e.querySelector(".ladda-spinner");r||((r=document.createElement("span")).className="ladda-spinner"),e.appendChild(r);var i={start:function(){return a||(a=function(e){var t,n,a=e.offsetHeight;0===a&&(a=parseFloat(window.getComputedStyle(e).height));a>32&&(a*=.8);e.hasAttribute("data-spinner-size")&&(a=parseInt(e.getAttribute("data-spinner-size"),10));e.hasAttribute("data-spinner-color")&&(t=e.getAttribute("data-spinner-color"));e.hasAttribute("data-spinner-lines")&&(n=parseInt(e.getAttribute("data-spinner-lines"),10));var r=.2*a;return new sb({color:t||"#fff",lines:n||12,radius:r,length:.6*r,width:r<7?2:3,animation:"ladda-spinner-line-fade",zIndex:"auto",top:"auto",left:"auto",className:""})}(e)),e.disabled=!0,e.setAttribute("data-loading",""),clearTimeout(n),a.spin(r),this.setProgress(0),this},startAfter:function(e){return clearTimeout(n),n=setTimeout((function(){i.start()}),e),this},stop:function(){return i.isLoading()&&(e.disabled=!1,e.removeAttribute("data-loading")),clearTimeout(n),a&&(n=setTimeout((function(){a.stop()}),1e3)),this},toggle:function(){return this.isLoading()?this.stop():this.start()},setProgress:function(t){t=Math.max(Math.min(t,1),0);var n=e.querySelector(".ladda-progress");0===t&&n&&n.parentNode?n.parentNode.removeChild(n):(n||((n=document.createElement("div")).className="ladda-progress",e.appendChild(n)),n.style.width=(t||0)*e.offsetWidth+"px")},isLoading:function(){return e.hasAttribute("data-loading")},remove:function(){clearTimeout(n),e.disabled=!1,e.removeAttribute("data-loading"),a&&(a.stop(),a=null),hb.splice(hb.indexOf(i),1)}};return hb.push(i),i}console.warn("Ladda button target must be defined.")}function pb(e,t){if("function"==typeof e.addEventListener){var n=fb(e),a=-1;e.addEventListener("click",(function(){var r=!0,i=function(e,t){for(;e.parentNode&&e.tagName!==t;)e=e.parentNode;return t===e.tagName?e:void 0}(e,"FORM");void 0===i||i.hasAttribute("novalidate")||"function"==typeof i.checkValidity&&(r=i.checkValidity()),r&&(n.startAfter(1),"number"==typeof t.timeout&&(clearTimeout(a),a=setTimeout(n.stop,t.timeout)),"function"==typeof t.callback&&t.callback.apply(null,[n]))}),!1)}}var mb=Object.freeze({__proto__:null,create:fb,bind:function(e,t){var n;if("string"==typeof e)n=document.querySelectorAll(e);else{if("object"!=typeof e)throw new Error("target must be string or object");n=[e]}t=t||{};for(var a=0;a<n.length;a++)pb(n[a],t)},stopAll:function(){for(var e=0,t=hb.length;e<t;e++)hb[e].stop()}});e.CustomerBiometricsEnrollment=Ky,e.CustomerIdAndBiometricsEnrollment=yy,e.CustomerIdentification=qy,e.CustomerVerification=Ny,e.FaceValidation=gy,e.IdAndFaceValidation=vy,e.IdValidation=my,e.SignatureKYC=Vy,e.VideoIdValidation=Wy,e.preloadModels=Hy,e.renderCustomerBiometricsEnrollment=eb,e.renderCustomerIdAndBiometricsEnrollment=Qy,e.renderCustomerIdentification=nb,e.renderCustomerVerification=tb,e.renderFaceValidation=Jy,e.renderIdAndFaceValidation=Zy,e.renderIdValidation=Xy,e.renderSignatureKYC=ab,e.renderVideoIdValidation=rb,e.themes=fy,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom/client"),require("styled-components"),require("@tensorflow/tfjs")):"function"==typeof define&&define.amd?define(["exports","react","react-dom/client","styled-components","@tensorflow/tfjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Sdk2={},e.React,e.ReactDOM,e.styled,e.tf)}(this,(function(e,t,n,a,r){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var s=i(t),l=o(t),c=o(n),u=i(a),d=o(r),h=function(e,t){return h=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},h(e,t)};function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}h(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var p=function(){return p=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},p.apply(this,arguments)};function m(e,t,n,a){return new(n||(n=Promise))((function(r,i){function o(e){try{l(a.next(e))}catch(e){i(e)}}function s(e){try{l(a.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}l((a=a.apply(e,t||[])).next())}))}function g(e,t){var n,a,r,i,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,s[0]&&(o=0)),o;)try{if(n=1,a&&(r=2&s[0]?a.return:s[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,s[1])).done)return r;switch(a=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,a=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){o.label=s[1];break}if(6===s[0]&&o.label<r[1]){o.label=r[1],r=s;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(s);break}r[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],a=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}}function v(e,t,n){if(n||2===arguments.length)for(var a,r=0,i=t.length;r<i;r++)!a&&r in t||(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}function y(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var b,w,x="1.0.78";function E(){return window.platform}function C(e){return m(this,void 0,void 0,(function(){return g(this,(function(t){return[2,e.replace(/^data:image\/(png|jpeg);base64,/,"")]}))}))}function k(e){return e.replace(/^data:.*;base64,/,"")}function S(e){var t,n;return null!==(n=null===(t=e.match(/^(data:.*;base64),/))||void 0===t?void 0:t[1])&&void 0!==n?n:""}!function(e){e.NONE="NONE",e.ENROLL="ENROLL",e.IDENTIFY="IDENTIFY",e.VALIDATE="VALIDATE",e.VERIFY="VERIFY"}(b||(b={})),function(e){e.READY="READY",e.SUBMITTING="SUBMITTING",e.SUBMITTED="SUBMITTED",e.FAILED="FAILED"}(w||(w={}));var T={prod:"https://api.idmission.com",demo:"https://apidemo.idmission.com"};function I(e){var t=e.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),n=decodeURIComponent(window.atob(t).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join(""));return JSON.parse(n)}function R(e,t){if(t)switch(I(t).iss){case"https://auth.idmission.com/auth/realms/identity":return T.prod;case"https://demoauth.idmission.com/auth/realms/identity":return T.demo}var n=T[e];if(!n)throw new Error("unrecognized SubmissionEnvironment ".concat(e));return n}function D(e){var t={"Content-Type":"application/json",Origin:"*"};return e&&(t.Authorization="Bearer ".concat(e)),t}function A(e,t){var n=t.geolocationResult,a={selfie:t.selfieCaptureAttempts,front:t.idFrontCaptureAttempts,back:t.idBackCaptureAttempts,isRealIDCheckRequired:"false",sdkVersion:"WebSDK_".concat(x),Resolution:"".concat(window.innerWidth," x ").concat(window.innerHeight)},r=E();r&&(a.os=r.os.family,a.osVersion=r.os.version,a.browserVersion="".concat(r.name," ").concat(r.version)),n&&(a.GeoLocation=JSON.stringify(n)),e.additionalData.metadata=JSON.stringify(a)}function N(e){return new Promise((function(t){var n=new FileReader;n.onloadend=function(){t(k(n.result))},fetch(e).then((function(e){return e.blob()})).then((function(e){return n.readAsDataURL(e)}))}))}var _,F=u.default.div(_||(_=y(["\n ","\n\n ","\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"],["\n ","\n\n ","\n\n &.flex {\n display: flex;\n }\n\n &.padded {\n box-sizing: border-box;\n padding: 16px 24px;\n }\n"])),(function(e){var t;return!1===e.theme.isFullscreen?"":"\n position: fixed;\n top: 0;\n left: 0;\n width: var(--app-width);\n height: calc(\n var(--app-height) - ".concat(null!==(t=e.$heightOffset)&&void 0!==t?t:0,"px\n );\n overflow-x: hidden;\n overflow-y: auto;\n ")}),(function(e){return e.theme.fontFamily?"font-family: ".concat(e.theme.fontFamily,";"):""})),M=t.forwardRef((function(e,n){var a=e.children,r=e.className,i=e.heightOffset,o=void 0===i?0:i,l=e.style,c=e.onClick,u=t.useState(!1),d=u[0],h=u[1];return t.useEffect((function(){h(!1);var e=function(){var e=document.documentElement;e.style.setProperty("--app-width","".concat(window.innerWidth,"px")),e.style.setProperty("--app-height","".concat(window.innerHeight,"px"))};return window.addEventListener("resize",e),e(),h(!0),function(){window.removeEventListener("resize",e)}}),[]),s.default.createElement(F,{ref:n,style:l,onClick:c,className:r,$heightOffset:o},d&&a)}));M.displayName="PageContainer";var P,L,B,O,U=u.default(M)(P||(P=y(["\n background: ",";\n ","\n z-index: 10000;\n"],["\n background: ",";\n ","\n z-index: 10000;\n"])),(function(e){return e.theme.background?"".concat(e.theme.background):"white"}),(function(e){return e.theme.textColor?"color: ".concat(e.theme.textColor,";"):""})),j=u.default.div(L||(L=y(["\n text-align: ",";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n max-height: var(--app-height);\n height: 100%;\n ","\n"],["\n text-align: ",";\n display: flex;\n flex-direction: column;\n flex-wrap: nowrap;\n max-height: var(--app-height);\n height: 100%;\n ","\n"])),(function(e){var t;return null!==(t=e.theme.textAlign)&&void 0!==t?t:"center"}),(function(e){return e.theme.padding?"box-sizing: border-box; padding: ".concat(e.theme.padding,";"):""})),z=u.default.div(B||(B=y(["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"],["\n position: relative;\n display: flex;\n flex-grow: 1;\n padding-bottom: 25px;\n max-width: var(--app-width);\n max-height: var(--app-height);\n overflow: hidden;\n\n & > img {\n margin: 0 auto;\n width: max-content;\n max-width: 100%;\n max-height: 100%;\n aspect-ratio: initial;\n object-fit: contain;\n display: block;\n }\n"]))),G=u.default.div(O||(O=y(["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100vh - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"],["\n display: flex;\n margin: auto;\n\n & > div {\n max-height: calc(100vh - 320px);\n\n & > img {\n width: 100%;\n max-height: 100%;\n height: auto;\n object-fit: contain;\n }\n }\n"])));"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function $(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function V(e,t){return e(t={exports:{}},t.exports),t.exports}const q={};function W(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"==typeof t[0]&&q[t[0]]||("string"==typeof t[0]&&(q[t[0]]=new Date),function(){if(console&&console.warn){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];"string"==typeof t[0]&&(t[0]=`react-i18next:: ${t[0]}`),console.warn(...t)}}(...t))}const H=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout((()=>{e.off("initialized",n)}),0),t()};e.on("initialized",n)}};function K(e,t,n){e.loadNamespaces(t,H(e,n))}function Y(e,t,n,a){"string"==typeof n&&(n=[n]),n.forEach((t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)})),e.loadLanguages(t,H(e,a))}const X=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,J={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},Z=e=>J[e];let Q,ee={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(X,Z)};const te={type:"3rdParty",init(e){!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};ee={...ee,...e}}(e.options.react),function(e){Q=e}(e)}},ne=t.createContext();class ae{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach((e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)}))}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const re=(e,n)=>{const a=t.useRef();return t.useEffect((()=>{a.current=n?a.current:e}),[e,n]),a.current};function ie(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{i18n:a}=n,{i18n:r,defaultNS:i}=t.useContext(ne)||{},o=a||r||Q;if(o&&!o.reportNamespaces&&(o.reportNamespaces=new ae),!o){W("You will need to pass in an i18next instance by using initReactI18next");const e=(e,t)=>"string"==typeof t?t:t&&"object"==typeof t&&"string"==typeof t.defaultValue?t.defaultValue:Array.isArray(e)?e[e.length-1]:e,t=[e,{},!1];return t.t=e,t.i18n={},t.ready=!1,t}o.options.react&&void 0!==o.options.react.wait&&W("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const s={...ee,...o.options.react,...n},{useSuspense:l,keyPrefix:c}=s;let u=e||i||o.options&&o.options.defaultNS;u="string"==typeof u?[u]:u||["translation"],o.reportNamespaces.addUsedNamespaces&&o.reportNamespaces.addUsedNamespaces(u);const d=(o.isInitialized||o.initializedStoreOnce)&&u.every((e=>function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.languages&&t.languages.length?void 0!==t.options.ignoreJSONStructure?t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,a)=>{if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!a(t.isLanguageChangingTo,e))return!1}}):function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=t.languages[0],r=!!t.options&&t.options.fallbackLng,i=t.languages[t.languages.length-1];if("cimode"===a.toLowerCase())return!0;const o=(e,n)=>{const a=t.services.backendConnector.state[`${e}|${n}`];return-1===a||2===a};return!(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!o(t.isLanguageChangingTo,e)||!t.hasResourceBundle(a,e)&&t.services.backendConnector.backend&&(!t.options.resources||t.options.partialBundledLanguages)&&(!o(a,e)||r&&!o(i,e)))}(e,t,n):(W("i18n.languages were undefined or empty",t.languages),!0)}(e,o,s)));function h(){return o.getFixedT(n.lng||null,"fallback"===s.nsMode?u:u[0],c)}const[f,p]=t.useState(h);let m=u.join();n.lng&&(m=`${n.lng}${m}`);const g=re(m),v=t.useRef(!0);t.useEffect((()=>{const{bindI18n:e,bindI18nStore:t}=s;function a(){v.current&&p(h)}return v.current=!0,d||l||(n.lng?Y(o,n.lng,u,(()=>{v.current&&p(h)})):K(o,u,(()=>{v.current&&p(h)}))),d&&g&&g!==m&&v.current&&p(h),e&&o&&o.on(e,a),t&&o&&o.store.on(t,a),()=>{v.current=!1,e&&o&&e.split(" ").forEach((e=>o.off(e,a))),t&&o&&t.split(" ").forEach((e=>o.store.off(e,a)))}}),[o,m]);const y=t.useRef(!0);t.useEffect((()=>{v.current&&!y.current&&p(h),y.current=!1}),[o,c]);const b=[f,o,d];if(b.t=f,b.i18n=o,b.ready=d,d)return b;if(!d&&!l)return b;throw new Promise((e=>{n.lng?Y(o,n.lng,u,(()=>e())):K(o,u,(()=>e()))}))}var oe,se,le,ce=function(e){var n=e.children,a=e.className,r=e.colors,i=void 0===r?{}:r,o=e.disabled,l=e.finished,c=e.onClick,u=e.style,d=e.variant,h=void 0===d?"primary":d,f=t.useRef(null),p=t.useRef(null),m=t.useState(!1),g=m[0],v=m[1];return t.useEffect((function(){var e;return Promise.resolve().then((function(){return mb})).then((function(t){if(f.current){p.current=t.create(f.current),p.current.start(),v(!0);var n=0;e=setInterval((function(){var e;n<.9&&(n+=.1),null===(e=p.current)||void 0===e||e.setProgress(n)}),250)}})),function(){var t;null===(t=p.current)||void 0===t||t.remove(),clearInterval(e)}}),[]),t.useEffect((function(){var e;g&&l&&(null===(e=p.current)||void 0===e||e.stop())}),[l,g]),s.default.createElement(ue,{className:"ladda-button ".concat(a),"data-style":"expand-right",disabled:o,ref:f,onClick:c,$backgroundColor:i.backgroundColor,$textColor:i.textColor,$disabledBackgroundColor:i.loadingBackgroundColor,$disabledTextColor:i.loadingTextColor,$variant:h,style:u},s.default.createElement("span",{className:"ladda-label"},n))},ue=u.default.button(oe||(oe=y(["\n ","\n\n /*!\n * Ladda\n * http://lab.hakim.se/ladda\n * MIT licensed\n *\n * Copyright (C) 2018 Hakim El Hattab, http://hakim.se\n */\n @keyframes ladda-spinner-line-fade {\n 0%,\n 100% {\n opacity: 0.22;\n }\n 1% {\n opacity: 1;\n }\n }\n\n position: relative;\n\n .ladda-spinner {\n position: absolute;\n z-index: 2;\n display: inline-block;\n width: 32px;\n top: 50%;\n margin-top: 0;\n opacity: 0;\n pointer-events: none;\n }\n .ladda-label {\n position: relative;\n z-index: 3;\n }\n .ladda-progress {\n position: absolute;\n width: 0;\n height: 100%;\n left: 0;\n top: 0;\n background: rgba(0, 0, 0, 0.2);\n display: none;\n transition: 0.1s linear all !important;\n }\n &[data-loading] .ladda-progress {\n display: block;\n }\n\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n\n .ladda-spinner,\n .ladda-label {\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n }\n &[data-style='zoom-in'],\n &[data-style='zoom-in'] .ladda-spinner,\n &[data-style='zoom-in'] .ladda-label,\n &[data-style='zoom-out'],\n &[data-style='zoom-out'] .ladda-spinner,\n &[data-style='zoom-out'] .ladda-label {\n transition: 0.3s ease all !important;\n }\n &[data-style='expand-right'] .ladda-spinner {\n right: -6px;\n }\n &[data-style='expand-right'][data-size='s'] .ladda-spinner,\n &[data-style='expand-right'][data-size='xs'] .ladda-spinner {\n right: -12px;\n }\n &[data-style='expand-right'][data-loading] {\n padding-right: 56px;\n }\n &[data-style='expand-right'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-right'][data-loading][data-size='s'],\n &[data-style='expand-right'][data-loading][data-size='xs'] {\n padding-right: 40px;\n }\n &[data-style='expand-left'] .ladda-spinner {\n left: 26px;\n }\n &[data-style='expand-left'][data-size='s'] .ladda-spinner,\n &[data-style='expand-left'][data-size='xs'] .ladda-spinner {\n left: 4px;\n }\n &[data-style='expand-left'][data-loading] {\n padding-left: 56px;\n }\n &[data-style='expand-left'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-left'][data-loading][data-size='s'],\n &[data-style='expand-left'][data-loading][data-size='xs'] {\n padding-left: 40px;\n }\n &[data-style='expand-up'] {\n overflow: hidden;\n }\n &[data-style='expand-up'] .ladda-spinner {\n top: -32px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-up'][data-loading] {\n padding-top: 54px;\n }\n &[data-style='expand-up'][data-loading] .ladda-spinner {\n opacity: 1;\n top: 26px;\n margin-top: 0;\n }\n &[data-style='expand-up'][data-loading][data-size='s'],\n &[data-style='expand-up'][data-loading][data-size='xs'] {\n padding-top: 32px;\n }\n &[data-style='expand-up'][data-loading][data-size='s'] .ladda-spinner,\n &[data-style='expand-up'][data-loading][data-size='xs'] .ladda-spinner {\n top: 4px;\n }\n &[data-style='expand-down'] {\n overflow: hidden;\n }\n &[data-style='expand-down'] .ladda-spinner {\n top: 62px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-down'][data-size='s'] .ladda-spinner,\n &[data-style='expand-down'][data-size='xs'] .ladda-spinner {\n top: 40px;\n }\n &[data-style='expand-down'][data-loading] {\n padding-bottom: 54px;\n }\n &[data-style='expand-down'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-down'][data-loading][data-size='s'],\n &[data-style='expand-down'][data-loading][data-size='xs'] {\n padding-bottom: 32px;\n }\n &[data-style='slide-left'] {\n overflow: hidden;\n }\n &[data-style='slide-left'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-left'] .ladda-spinner {\n left: 100%;\n margin-left: 0;\n }\n &[data-style='slide-left'][data-loading] .ladda-label {\n opacity: 0;\n left: -100%;\n }\n &[data-style='slide-left'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-right'] {\n overflow: hidden;\n }\n &[data-style='slide-right'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-right'] .ladda-spinner {\n right: 100%;\n margin-left: 0;\n left: 16px;\n }\n [dir='rtl'] &[data-style='slide-right'] .ladda-spinner {\n right: auto;\n }\n &[data-style='slide-right'][data-loading] .ladda-label {\n opacity: 0;\n left: 100%;\n }\n &[data-style='slide-right'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-up'] {\n overflow: hidden;\n }\n &[data-style='slide-up'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-up'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: 1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-label {\n opacity: 0;\n top: -1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='slide-down'] {\n overflow: hidden;\n }\n &[data-style='slide-down'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-down'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: -2em;\n }\n &[data-style='slide-down'][data-loading] .ladda-label {\n opacity: 0;\n top: 1em;\n }\n &[data-style='slide-down'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='zoom-out'] {\n overflow: hidden;\n }\n &[data-style='zoom-out'] .ladda-spinner {\n left: 50%;\n margin-left: 32px;\n transform: scale(2.5);\n }\n &[data-style='zoom-out'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-out'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(0.5);\n }\n &[data-style='zoom-out'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='zoom-in'] {\n overflow: hidden;\n }\n &[data-style='zoom-in'] .ladda-spinner {\n left: 50%;\n margin-left: -16px;\n transform: scale(0.2);\n }\n &[data-style='zoom-in'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-in'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(2.2);\n }\n &[data-style='zoom-in'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='contract'] {\n overflow: hidden;\n width: 100px;\n }\n &[data-style='contract'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract'][data-loading] {\n border-radius: 50%;\n width: 52px;\n }\n &[data-style='contract'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='contract-overlay'] {\n overflow: hidden;\n width: 100px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0);\n }\n &[data-style='contract-overlay'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract-overlay'][data-loading] {\n border-radius: 50%;\n width: 52px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0.8);\n }\n &[data-style='contract-overlay'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract-overlay'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n [dir='rtl'] .ladda-spinner > div {\n left: 25% !important;\n }\n"],["\n ","\n\n /*!\n * Ladda\n * http://lab.hakim.se/ladda\n * MIT licensed\n *\n * Copyright (C) 2018 Hakim El Hattab, http://hakim.se\n */\n @keyframes ladda-spinner-line-fade {\n 0%,\n 100% {\n opacity: 0.22;\n }\n 1% {\n opacity: 1;\n }\n }\n\n position: relative;\n\n .ladda-spinner {\n position: absolute;\n z-index: 2;\n display: inline-block;\n width: 32px;\n top: 50%;\n margin-top: 0;\n opacity: 0;\n pointer-events: none;\n }\n .ladda-label {\n position: relative;\n z-index: 3;\n }\n .ladda-progress {\n position: absolute;\n width: 0;\n height: 100%;\n left: 0;\n top: 0;\n background: rgba(0, 0, 0, 0.2);\n display: none;\n transition: 0.1s linear all !important;\n }\n &[data-loading] .ladda-progress {\n display: block;\n }\n\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n\n .ladda-spinner,\n .ladda-label {\n transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;\n }\n &[data-style='zoom-in'],\n &[data-style='zoom-in'] .ladda-spinner,\n &[data-style='zoom-in'] .ladda-label,\n &[data-style='zoom-out'],\n &[data-style='zoom-out'] .ladda-spinner,\n &[data-style='zoom-out'] .ladda-label {\n transition: 0.3s ease all !important;\n }\n &[data-style='expand-right'] .ladda-spinner {\n right: -6px;\n }\n &[data-style='expand-right'][data-size='s'] .ladda-spinner,\n &[data-style='expand-right'][data-size='xs'] .ladda-spinner {\n right: -12px;\n }\n &[data-style='expand-right'][data-loading] {\n padding-right: 56px;\n }\n &[data-style='expand-right'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-right'][data-loading][data-size='s'],\n &[data-style='expand-right'][data-loading][data-size='xs'] {\n padding-right: 40px;\n }\n &[data-style='expand-left'] .ladda-spinner {\n left: 26px;\n }\n &[data-style='expand-left'][data-size='s'] .ladda-spinner,\n &[data-style='expand-left'][data-size='xs'] .ladda-spinner {\n left: 4px;\n }\n &[data-style='expand-left'][data-loading] {\n padding-left: 56px;\n }\n &[data-style='expand-left'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-left'][data-loading][data-size='s'],\n &[data-style='expand-left'][data-loading][data-size='xs'] {\n padding-left: 40px;\n }\n &[data-style='expand-up'] {\n overflow: hidden;\n }\n &[data-style='expand-up'] .ladda-spinner {\n top: -32px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-up'][data-loading] {\n padding-top: 54px;\n }\n &[data-style='expand-up'][data-loading] .ladda-spinner {\n opacity: 1;\n top: 26px;\n margin-top: 0;\n }\n &[data-style='expand-up'][data-loading][data-size='s'],\n &[data-style='expand-up'][data-loading][data-size='xs'] {\n padding-top: 32px;\n }\n &[data-style='expand-up'][data-loading][data-size='s'] .ladda-spinner,\n &[data-style='expand-up'][data-loading][data-size='xs'] .ladda-spinner {\n top: 4px;\n }\n &[data-style='expand-down'] {\n overflow: hidden;\n }\n &[data-style='expand-down'] .ladda-spinner {\n top: 62px;\n left: 50%;\n margin-left: 0;\n }\n &[data-style='expand-down'][data-size='s'] .ladda-spinner,\n &[data-style='expand-down'][data-size='xs'] .ladda-spinner {\n top: 40px;\n }\n &[data-style='expand-down'][data-loading] {\n padding-bottom: 54px;\n }\n &[data-style='expand-down'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='expand-down'][data-loading][data-size='s'],\n &[data-style='expand-down'][data-loading][data-size='xs'] {\n padding-bottom: 32px;\n }\n &[data-style='slide-left'] {\n overflow: hidden;\n }\n &[data-style='slide-left'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-left'] .ladda-spinner {\n left: 100%;\n margin-left: 0;\n }\n &[data-style='slide-left'][data-loading] .ladda-label {\n opacity: 0;\n left: -100%;\n }\n &[data-style='slide-left'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-right'] {\n overflow: hidden;\n }\n &[data-style='slide-right'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-right'] .ladda-spinner {\n right: 100%;\n margin-left: 0;\n left: 16px;\n }\n [dir='rtl'] &[data-style='slide-right'] .ladda-spinner {\n right: auto;\n }\n &[data-style='slide-right'][data-loading] .ladda-label {\n opacity: 0;\n left: 100%;\n }\n &[data-style='slide-right'][data-loading] .ladda-spinner {\n opacity: 1;\n left: 50%;\n }\n &[data-style='slide-up'] {\n overflow: hidden;\n }\n &[data-style='slide-up'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-up'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: 1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-label {\n opacity: 0;\n top: -1em;\n }\n &[data-style='slide-up'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='slide-down'] {\n overflow: hidden;\n }\n &[data-style='slide-down'] .ladda-label {\n position: relative;\n }\n &[data-style='slide-down'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n margin-top: -2em;\n }\n &[data-style='slide-down'][data-loading] .ladda-label {\n opacity: 0;\n top: 1em;\n }\n &[data-style='slide-down'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-top: 0;\n }\n &[data-style='zoom-out'] {\n overflow: hidden;\n }\n &[data-style='zoom-out'] .ladda-spinner {\n left: 50%;\n margin-left: 32px;\n transform: scale(2.5);\n }\n &[data-style='zoom-out'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-out'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(0.5);\n }\n &[data-style='zoom-out'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='zoom-in'] {\n overflow: hidden;\n }\n &[data-style='zoom-in'] .ladda-spinner {\n left: 50%;\n margin-left: -16px;\n transform: scale(0.2);\n }\n &[data-style='zoom-in'] .ladda-label {\n position: relative;\n display: inline-block;\n }\n &[data-style='zoom-in'][data-loading] .ladda-label {\n opacity: 0;\n transform: scale(2.2);\n }\n &[data-style='zoom-in'][data-loading] .ladda-spinner {\n opacity: 1;\n margin-left: 0;\n transform: none;\n }\n &[data-style='contract'] {\n overflow: hidden;\n width: 100px;\n }\n &[data-style='contract'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract'][data-loading] {\n border-radius: 50%;\n width: 52px;\n }\n &[data-style='contract'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n &[data-style='contract-overlay'] {\n overflow: hidden;\n width: 100px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0);\n }\n &[data-style='contract-overlay'] .ladda-spinner {\n left: 50%;\n margin-left: 0;\n }\n &[data-style='contract-overlay'][data-loading] {\n border-radius: 50%;\n width: 52px;\n box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0.8);\n }\n &[data-style='contract-overlay'][data-loading] .ladda-label {\n opacity: 0;\n }\n &[data-style='contract-overlay'][data-loading] .ladda-spinner {\n opacity: 1;\n }\n [dir='rtl'] .ladda-spinner > div {\n left: 25% !important;\n }\n"])),(function(e){var t,n,a,r,i,o,s,l,c,u,d,h,f,p,m,g,v,y,b,w,x;return"bootstrap"===(null===(t=e.theme.buttons)||void 0===t?void 0:t.style)&&"\n border-radius: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n text-transform: none;\n -webkit-appearance: button;\n \n &:not(:disabled),\n &[type='button']:not(:disabled),\n &[type='reset']:not(:disabled),\n &[type='submit']:not(:disabled) {\n cursor: pointer;\n }\n \n &:focus:not(:focus-visible) {\n outline: 0;\n }\n \n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n //transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,\n // border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n \n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n \n &:hover {\n filter: brightness(1.15);\n }\n \n &:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n }\n \n &:disabled,\n &.disabled,\n fieldset:disabled & {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n }\n \n --bs-btn-color: ".concat(null!==(o=null!==(n=e.$textColor)&&void 0!==n?n:null===(i=null===(a=e.theme.buttons)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"primary"])||void 0===i?void 0:i.textColor)&&void 0!==o?o:"#fff",";\n --bs-btn-bg: ").concat(null!==(d=null!==(s=e.$backgroundColor)&&void 0!==s?s:null===(u=null===(l=e.theme.buttons)||void 0===l?void 0:l[null!==(c=e.$variant)&&void 0!==c?c:"primary"])||void 0===u?void 0:u.backgroundColor)&&void 0!==d?d:"#0d6efd",";\n --bs-btn-border-color: ").concat(null!==(h=e.$backgroundColor)&&void 0!==h?h:"#0d6efd",";\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: ").concat(null!==(g=null!==(f=e.$disabledTextColor)&&void 0!==f?f:null===(m=null===(p=e.theme.buttons)||void 0===p?void 0:p.loading)||void 0===m?void 0:m.textColor)&&void 0!==g?g:"#fff",";\n --bs-btn-disabled-bg: ").concat(null!==(w=null!==(v=e.$disabledBackgroundColor)&&void 0!==v?v:null===(b=null===(y=e.theme.buttons)||void 0===y?void 0:y.loading)||void 0===b?void 0:b.backgroundColor)&&void 0!==w?w:"gray",";\n --bs-btn-disabled-border-color: ").concat(null!==(x=e.$disabledBackgroundColor)&&void 0!==x?x:"#0d6efd",";\n \n --bs-btn-padding-y: 14px;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 18px;\n --bs-btn-border-radius: 4px;\n ")})),de=function(e){var n=e.accessBlockedImageUrl,a=ie().t,r=t.useContext(Ce).retryLocationAccess;return s.default.createElement(U,null,s.default.createElement("div",{style:{display:"flex",height:"100%"}},s.default.createElement(j,{style:{maxWidth:500,height:"auto",margin:"auto"}},s.default.createElement(z,{style:{flexGrow:0}},s.default.createElement("img",{src:n,alt:""})),s.default.createElement("h3",null,a("Your location access is disabled")),s.default.createElement("p",{style:{lineHeight:1.5,marginBottom:50}},a("This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.")),s.default.createElement(ce,{variant:"primary",onClick:r,style:{width:200,marginLeft:"auto",marginRight:"auto"},finished:!0},a("Retry")))))},he=function(e){function t(t){var n=e.call(this,t.statusMessage)||this;return n.status=t,n}return f(t,e),t}(Error),fe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return f(t,e),t}(Error),pe=function(e){function t(t,n){var a=e.call(this,t.message)||this;return a.err=t,a.host=n,a}return f(t,e),t}(Error),me=function(e){var t=e.error;return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},t instanceof fe?s.default.createElement(ve,{error:t,onRetry:e.onRetry}):s.default.createElement(ge,{error:t})))},ge=function(e){var t=e.error,n=(0,ie().t)("We're sorry, an unexpected error has occurred.");return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",{style:{marginBottom:8}},n),t.status.statusCode&&s.default.createElement("p",{style:{marginBottom:0}},s.default.createElement("code",null,"Status: ",t.status.statusCode)),s.default.createElement("p",{style:{marginBottom:0}},"Message: ",s.default.createElement("code",null,t.message)),t.status.errorData&&s.default.createElement("p",{style:{marginBottom:0}},"Data: ",s.default.createElement("code",null,t.status.errorData)))},ve=function(e){var t=e.onRetry,n=ie().t,a=n("Network unreachable"),r=n("We're having trouble reaching our services, please check your connection and try again."),i=n("Retry");return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",{style:{marginBottom:8}},a),s.default.createElement("p",{style:{marginBottom:0}},r),t&&s.default.createElement("div",{style:{marginTop:32}},s.default.createElement(ce,{variant:"warning",finished:!0,onClick:t},i)))},ye=function(){return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is missing."),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},be=function(){return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is invalid."),s.default.createElement("p",null,"JSON Web Tokens consist of three parts separated by dots (",s.default.createElement("code",null,"."),"), which are:"),s.default.createElement("div",{style:{display:"flex"}},s.default.createElement("ul",{style:{display:"inline",margin:"0 auto"}},s.default.createElement("li",null,"Header"),s.default.createElement("li",null,"Payload"),s.default.createElement("li",null,"Signature"))),s.default.createElement("p",null,"Therefore, a JWT typically looks like the following:"," ",s.default.createElement("code",null,"xxxxx.yyyyy.zzzzz")),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},we=function(){return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," could not be validated."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"The signature of your token could not be validated. Check your token generation routine, it's possible that some malicious behavior is at play. This can also happen if you attempt to manually modify your token before passing it to the IDmission WebSDK."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"If you believe you have reached this page in error, please contact us at ",s.default.createElement("a",{href:"mailto:support@idmission.com"},"support@idmission.com"),".")))},xe=function(){return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},"Required property ",s.default.createElement("code",null,"submissionToken")," is expired."),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"Ensure you are generating a fresh token for each request to the IDmission WebSDK."),s.default.createElement("p",{style:{lineHeight:"1.5rem"}},"Please refer to the"," ",s.default.createElement("a",{href:"https://www.npmjs.com/package/idmission-web-sdk#getting-started",target:"_blank",rel:"noreferrer"},"Getting Started")," ","section of the documentation for information on how to use your credentials to generate a valid"," ",s.default.createElement("a",{href:"https://jwt.io",target:"_blank",rel:"noreferrer"},"JSON Web Token")," ","for your IDmission account. Every usage of the IDmission WebSDK must be authorized with a valid JWT from IDmission's servers.")))},Ee=function(e){var t=e.error;return s.default.createElement(U,null,s.default.createElement(j,{style:{justifyContent:"center"}},s.default.createElement("h3",{style:{marginBottom:8}},"IDmission WebSDK failed to load"),s.default.createElement("p",{style:{marginBottom:0}},(null==t?void 0:t.host)?s.default.createElement(s.default.Fragment,null,"Failed to reach ",s.default.createElement("code",null,t.host),"."):s.default.createElement(s.default.Fragment,null,"Failed to obtain public key for ",s.default.createElement("code",null,"submissionToken"),".")),(null==t?void 0:t.message)&&s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},s.default.createElement("code",null,t.message)),s.default.createElement("p",{style:{marginBottom:0,lineHeight:"1.5rem"}},"Please ensure that IDmission's servers can be reached. If you believe you have reached this page in error, please contact us at"," ",s.default.createElement("a",{href:"mailto:support@idmission.com"},"support@idmission.com"),".")))},Ce=t.createContext({submit:function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){return[2,null]}))}))},submissionStatus:w.READY,submissionRequest:null,submissionResponse:null,submissionError:null,submissionEnvironment:"prod",idFrontImage:null,idBackImage:null,passportImage:null,selfieImage:null,signatureData:null,signatureVideoUrl:null,idCaptureVideoUrl:null,idCaptureVideoIdFrontImage:null,idCaptureVideoIdBackImage:null,additionalDocuments:null,setIdFrontImage:function(){return null},setIdBackImage:function(){return null},setPassportImage:function(){return null},setSelfieImage:function(){return null},setSignatureData:function(){return null},setSignatureVideoUrl:function(){return null},setIdCaptureVideoUrl:function(){return null},setIdCaptureVideoIdFrontImage:function(){return null},setIdCaptureVideoIdBackImage:function(){return null},setAdditionalDocuments:function(){return null},logIdFrontCaptureAttempt:function(){return null},logIdBackCaptureAttempt:function(){return null},logSelfieCaptureAttempt:function(){return null},livenessCheckRequest:null,checkLiveness:function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){throw new Error("checkLiveness is not implemented")}))}))},retryLocationAccess:function(){return null}}),ke=function(e){var n=e.action,a=e.children,r=e.url,i=e.environment,o=void 0===i?"prod":i,l=e.token,c=e.companyId,u=e.enrollmentId,d=e.personalData,h=e.cardData,f=e.bypassAgeValidation,y=void 0!==f&&f,x=e.bypassNameMatching,E=void 0===x||x,k=e.needImmediateResponse,S=void 0!==k&&k,T=e.manualReviewRequired,_=void 0!==T&&T,F=e.idBackImageRequired,M=void 0===F||F,P=e.idImageResolutionCheck,L=void 0===P||P,B=e.verifyIdWithExternalDatabases,O=void 0!==B&&B,U=e.deduplicationEnabled,j=void 0!==U&&U,z=e.deduplicationSynchronous,G=void 0!==z&&z,$=e.geolocationEnabled,V=void 0===$||$,q=e.geolocationRequired,W=void 0!==q&&q,H=e.webhooksEnabled,K=void 0!==H&&H,Y=e.webhooksClientTraceId,X=e.webhooksStripSpecialCharacters,J=void 0===X||X,Z=e.webhooksSendInputImages,Q=void 0!==Z&&Z,ee=e.webhooksSendProcessedImages,te=void 0!==ee&&ee,ne=e.webhooksFireOnReview,ae=void 0!==ne&&ne,re=e.onSubmit,ie=e.onBeforeSubmit,oe=e.onBeforeLivenessCheck,se=e.onResponseReceived,le=e.onRequestFailure,ce=t.useState(w.READY),ue=ce[0],ge=ce[1],ve=t.useState(null),ke=ve[0],Te=ve[1],Ie=t.useState(null),Re=Ie[0],De=Ie[1],Ae=t.useState(null),Ne=Ae[0],_e=Ae[1],Fe=t.useState(null),Me=Fe[0],Pe=Fe[1],Le=t.useState(null),Be=Le[0],Oe=Le[1],Ue=t.useState(null),je=Ue[0],ze=Ue[1],Ge=t.useState(null),$e=Ge[0],Ve=Ge[1],qe=t.useState(null),We=qe[0],He=qe[1],Ke=t.useState(null),Ye=Ke[0],Xe=Ke[1],Je=t.useState(null),Ze=Je[0],Qe=Je[1],et=t.useState(null),tt=et[0],nt=et[1],at=t.useState(null),rt=at[0],it=at[1],ot=t.useState(null),st=ot[0],lt=ot[1],ct=t.useState(null),ut=ct[0],dt=ct[1],ht=t.useState(null),ft=ht[0],pt=ht[1],mt=t.useState(null),gt=mt[0],vt=mt[1],yt=t.useState(0),bt=yt[0],wt=yt[1],xt=t.useState(!1),Et=xt[0],Ct=xt[1],kt=t.useState([]),St=kt[0],Tt=kt[1],It=t.useState([]),Rt=It[0],Dt=It[1],At=t.useState([]),Nt=At[0],_t=At[1],Ft=t.useCallback((function(e){Tt((function(t){return v(v([],t,!0),[e],!1)}))}),[]),Mt=t.useCallback((function(e){Dt((function(t){return v(v([],t,!0),[e],!1)}))}),[]),Pt=t.useCallback((function(e){_t((function(t){return v(v([],t,!0),[e],!1)}))}),[]),Lt=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,a,r,i;return g(this,(function(o){switch(o.label){case 0:return e={securityData:{userName:"",password:"",merchantId:0},customerData:{idData:{idType:"NSP",idCountry:"NSP",idState:""}},additionalData:{uniqueRequestId:(new Date).getTime().toString(),manualReviewRequired:_?"Y":"N",bypassAgeValidation:y?"Y":"N",bypassNameMatching:E?"Y":"N",postDataAPIRequired:K?"Y":"N",postDataOnReviewRequired:ae?"Y":"N",sendInputImagesInPost:Q?"Y":"N",sendProcessedImagesInPost:te?"Y":"N",needImmediateResponse:S?"Y":"N",deDuplicationRequired:j?"Y":"N",deduplicationSynchronous:G?"Y":"N",verifyDataWithHost:O?"Y":"N",idBackImageRequired:M?"Y":"N",stripSpecialCharacters:J?"Y":"N",idImageResolutionCheck:L?"Y":"N"}},je&&(e.customerData.idData.idImageFront=je),$e&&(e.customerData.idData.idImageBack=$e),We&&(e.customerData.idData.idImageFront=We),Ye&&(n===b.IDENTIFY?e.biometricData={selfie:Ye}:e.customerData.biometricData={selfie:Ye}),c&&(e.employee={companyId:c}),d&&(e.customerData.personalData=d),h&&(e.customerData.cardData=h),u&&((i=e.customerData).personalData||(i.personalData={}),e.customerData.personalData.uniqueNumber=u),Y&&(e.additionalData.clientTraceId=Y),Ze&&(e.customerData.signatureData={signatureImage:JSON.stringify(Ze)}),ft&&(e.customerData.additionalDocuments=ft.map((function(t){return p(p({},t),{additionalDocument:JSON.stringify(p(p({},t.additionalDocument),{uniqueId:e.additionalData.uniqueRequestId}))})}))),rt||tt?(e.biometricData||(e.biometricData={}),t=e.biometricData,[4,N(null!==(r=null!=rt?rt:tt)&&void 0!==r?r:"")]):[3,2];case 1:t.videoData=o.sent(),o.label=2;case 2:return A(e,{selfieCaptureAttempts:Nt,idFrontCaptureAttempts:St,idBackCaptureAttempts:Rt,geolocationResult:gt}),ie?[4,ie(e)]:[3,4];case 3:(a=o.sent())&&(e=a),o.label=4;case 4:return[2,e]}}))}))}),[n,ft,y,E,h,c,j,G,u,gt,Rt,$e,M,rt,St,je,L,_,S,ie,We,d,Nt,Ye,Ze,tt,O,Y,K,ae,Q,te,J]),Bt=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,a,i,s,c,u,d,h,f;return g(this,(function(p){switch(p.label){case 0:if(n===b.NONE)return e={status:{statusCode:"000"},resultData:{}},ge(w.SUBMITTED),De(e),[2,e];ge(w.SUBMITTING),p.label=1;case 1:return p.trys.push([1,7,,8]),[4,Lt()];case 2:return t=p.sent(),a=r||R(o,l),i=function(e,t,n,a){var r=a?"v4":"v3";switch(e){case b.ENROLL:return"/".concat(r,t?"/customer/enroll":"/customer/enroll-biometrics");case b.IDENTIFY:return"/".concat(r,"/customer/identify");case b.VALIDATE:return"/".concat(r,n?"/customer/validate-id-match-face":"/customer/validate-id");case b.VERIFY:return"/".concat(r,"/customer/verify");default:throw new Error("unrecognized SubmissionAction ".concat(e))}}(n,!!(je||$e||We),!!Ye,!!l),[4,fetch(a+i,{method:"POST",headers:D(l),body:JSON.stringify(t)}).catch((function(e){throw new fe(e.message)}))];case 3:return(s=p.sent())&&s.ok?[3,5]:[4,null==s?void 0:s.text()];case 4:if(!(c=p.sent())||"Load failed"===c)throw new fe(c);throw new he({statusCode:null!==(f=null==s?void 0:s.statusText)&&void 0!==f?f:"???",statusMessage:c});case 5:return[4,s.json()];case 6:if("000"!==(u=p.sent()).status.statusCode)throw new he(u.status);return Te(t),De(u),ge(w.SUBMITTED),null==se||se(u,t),[2,u];case 7:throw d=p.sent(),h=d,ge(w.FAILED),_e(d instanceof he||d instanceof fe?d:"Load failed"===h.message?new fe:new he({statusCode:"",statusMessage:h.message})),Pe((function(){return["VERIFY","IDENTIFY"].includes(n)?function(){return null}:Bt})),null==le||le(h),h;case 8:return[2]}}))}))}),[n,Lt,o,$e,je,le,se,We,Ye,l,r]),Ot=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return re?(e=re,[4,Lt()]):[3,2];case 1:return[2,e.apply(void 0,[t.sent()])];case 2:return[4,Bt()];case 3:return[2,t.sent()]}}))}))}),[Lt,Bt,re]),Ut=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t,n,a,i,s,c,u,d,h,f,p,m;return g(this,(function(g){switch(g.label){case 0:return g.trys.push([0,8,,9]),f={securityData:{userName:"",password:"",merchantId:0}},p={},m={},[4,C(e)];case 1:return f.customerData=(p.biometricData=(m.selfie=g.sent(),m),p),f.additionalData={uniqueRequestId:(new Date).getTime().toString(),stripSpecialCharacters:J?"Y":"N",estimateAge:"N",predictGender:"N"},A(t=f,{selfieCaptureAttempts:Nt,idFrontCaptureAttempts:St,idBackCaptureAttempts:Rt,geolocationResult:gt}),Oe(t),oe?[4,oe(t)]:[3,3];case 2:(n=g.sent())&&(t=n),g.label=3;case 3:return a=r||R(o,l),i="/".concat(!!l?"v4":"v3","/customer/live-check"),[4,fetch(a+i,{method:"POST",headers:D(l),body:JSON.stringify(t)}).catch((function(e){throw new fe(e.message)}))];case 4:return(s=g.sent()).ok?[3,6]:[4,s.text()];case 5:if(!(c=g.sent())||"Load failed"===c)throw new fe(c);throw new he({statusCode:s.statusText,statusMessage:c});case 6:return[4,s.json()];case 7:if("000"!==(u=g.sent()).status.statusCode)throw new he(u.status);return De(u),[2,u];case 8:throw d=g.sent(),h=d,ge(w.FAILED),_e(d instanceof he||d instanceof fe?d:"Load failed"===h.message?new fe:new he({statusCode:"",statusMessage:h.message})),Pe((function(){return function(){return null}})),null==le||le(h),h;case 9:return[2]}}))}))}),[o,gt,Rt,St,oe,le,Nt,l,r,J]),jt=t.useCallback((function(){wt((function(e){return e+1}))}),[]);t.useEffect((function(){V&&(console.log("making geolocation attempt",bt),navigator.geolocation.getCurrentPosition((function(e){vt(e),Ct(!1)}),(function(e){if(1!==e.code)throw new Error(e.message);Ct(!0)})))}),[bt,V,W]);var zt=t.useCallback((function(){Me&&(_e(null),ge(w.READY),Me())}),[Me]),Gt=t.useState("NOT_PARSED"),$t=Gt[0],Vt=Gt[1],qt=t.useState(null),Wt=qt[0],Ht=qt[1];t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t,n,a,r,i,o,s,c;return g(this,(function(u){switch(u.label){case 0:if(Vt("PARSING"),!l)return[2,Vt("MISSING")];try{e=I(l)}catch(e){return console.error("error parsing token",e),[2,Vt("INVALID_FORMAT")]}t=e.iss,u.label=1;case 1:return u.trys.push([1,4,,5]),[4,fetch(t).then((function(e){return e.json()}))];case 2:return a=u.sent(),[4,(d="-----BEGIN PUBLIC KEY-----\n".concat(a.public_key,"\n-----END PUBLIC KEY-----"),h=d.substring("-----BEGIN PUBLIC KEY-----".length,d.length-"-----END PUBLIC KEY-----".length-1),f=window.atob(h),p=Se(f),window.crypto.subtle.importKey("spki",p,{name:"RSASSA-PKCS1-v1_5",hash:"SHA-256"},!0,["verify"]))];case 3:return n=u.sent(),[3,5];case 4:return r=u.sent(),console.error("error fetching public key",r),Ht(new pe(r,t)),[2,Vt("PUBLIC_KEY_LOAD_FAILED")];case 5:i=!1,u.label=6;case 6:return u.trys.push([6,8,,9]),o=l.split("."),[4,window.crypto.subtle.verify({name:"RSASSA-PKCS1-v1_5"},n,Se(o[1]),Se(o[2]))];case 7:return u.sent(),i=!0,[3,9];case 8:return s=u.sent(),console.error("error validating token",s),[3,9];case 9:return i?(c=e.exp,Date.now()>=1e3*c?[2,Vt("EXPIRED")]:(Vt("GOOD"),[2])):[2,Vt("INVALID_SIGNATURE")]}var d,h,f,p}))}))}),[l]);var Kt={submit:Ot,submissionStatus:ue,submissionRequest:ke,submissionResponse:Re,submissionError:Ne,submissionEnvironment:o,idFrontImage:je,idBackImage:$e,passportImage:We,selfieImage:Ye,signatureData:Ze,signatureVideoUrl:tt,idCaptureVideoUrl:rt,idCaptureVideoIdFrontImage:st,idCaptureVideoIdBackImage:ut,additionalDocuments:ft,setIdFrontImage:ze,setIdBackImage:Ve,setPassportImage:He,setSelfieImage:Xe,setSignatureData:Qe,setSignatureVideoUrl:nt,setIdCaptureVideoUrl:it,setIdCaptureVideoIdFrontImage:lt,setIdCaptureVideoIdBackImage:dt,setAdditionalDocuments:pt,logIdFrontCaptureAttempt:Ft,logIdBackCaptureAttempt:Mt,logSelfieCaptureAttempt:Pt,livenessCheckRequest:Be,checkLiveness:Ut,retryLocationAccess:jt};return"MISSING"===$t?s.default.createElement(ye,null):"INVALID_FORMAT"===$t?s.default.createElement(be,null):"INVALID_SIGNATURE"===$t?s.default.createElement(we,null):"EXPIRED"===$t?s.default.createElement(xe,null):"PUBLIC_KEY_LOAD_FAILED"===$t?s.default.createElement(Ee,{error:Wt}):s.default.createElement(Ce.Provider,{value:Kt},W&&Et?s.default.createElement(de,null):a,Ne&&s.default.createElement(me,{error:Ne,onRetry:zt}))};function Se(e){for(var t=new ArrayBuffer(e.length),n=new Uint8Array(t),a=0,r=e.length;a<r;a++)n[a]=e.charCodeAt(a);return t}function Te(e){return m(this,void 0,void 0,(function(){var t,n,a,r,i,o;return g(this,(function(s){switch(s.label){case 0:return le?[2,le]:[4,d.loadGraphModel(e)];case 1:return le=s.sent(),[4,d.ready()];case 2:return s.sent(),t=d.zeros([448,448,3]),n=d.cast(t,"int32"),a=d.tensor4d(Array.from(n.dataSync()),[1,448,448,3]),r=d.cast(a,"int32"),o=(i=d).dispose,[4,le.executeAsync(r)];case 3:return o.apply(i,[s.sent()]),n.dispose(),r.dispose(),a.dispose(),d.dispose(t),[2,le]}}))}))}!function(e){e.NONE="NONE",e.ID_CARD="ID_CARD",e.ID_CARD_FRONT="ID_CARD_FRONT",e.ID_CARD_BACK="ID_CARD_BACK",e.PASSPORT="PASSPORT"}(se||(se={}));var Ie={1:"Document",2:"MRZ",3:"PDF417",4:"Primary face",5:"Secondary face",6:"Glare",7:"Punch Hole",8:"Passport Page"};function Re(e,t,n){return e[t]?e[t][0]?e[t][0][n]:e[t][n]:"contentBoxSize"===t?e.contentRect["inlineSize"===n?"width":"height"]:void 0}function De(e){void 0===e&&(e={});var n=e.onResize,a=t.useRef(void 0);a.current=n;var r=e.round||Math.round,i=t.useRef(),o=t.useState({width:void 0,height:void 0}),s=o[0],l=o[1],c=t.useRef(!1);t.useEffect((function(){return c.current=!1,function(){c.current=!0}}),[]);var u=t.useRef({width:void 0,height:void 0}),d=function(e,n){var a=t.useRef(null),r=t.useRef(null);r.current=n;var i=t.useRef(null);t.useEffect((function(){o()}));var o=t.useCallback((function(){var t=r.current,n=i.current||(t?t instanceof Element?t:t.current:null);a.current&&a.current.element===n&&a.current.subscriber===e||(a.current&&a.current.cleanup&&a.current.cleanup(),a.current={element:n,subscriber:e,cleanup:n?e(n):void 0})}),[e]);return t.useEffect((function(){return function(){a.current&&a.current.cleanup&&(a.current.cleanup(),a.current=null)}}),[]),t.useCallback((function(e){i.current=e,o()}),[o])}(t.useCallback((function(t){return i.current&&i.current.box===e.box&&i.current.round===r||(i.current={box:e.box,round:r,instance:new ResizeObserver((function(t){var n=t[0],i="border-box"===e.box?"borderBoxSize":"device-pixel-content-box"===e.box?"devicePixelContentBoxSize":"contentBoxSize",o=Re(n,i,"inlineSize"),s=Re(n,i,"blockSize"),d=o?r(o):void 0,h=s?r(s):void 0;if(u.current.width!==d||u.current.height!==h){var f={width:d,height:h};u.current.width=d,u.current.height=h,a.current?a.current(f):c.current||l(f)}}))}),i.current.instance.observe(t,{box:e.box}),function(){i.current&&i.current.instance.unobserve(t)}}),[e.box,r]),e.ref);return t.useMemo((function(){return{ref:d,width:s.width,height:s.height}}),[d,s.width,s.height])}var Ae=t.createContext({orientation:"landscape",wrapperWidth:1,wrapperHeight:1,wrapperAspectRatio:0,imageAspectRatio:0,wrapperRef:null,setDimensions:function(){return null},onImageLoaded:function(){return null}});let Ne;function _e(e){if(void 0!==Ne)return Ne;if(e||"undefined"!=typeof navigator&&null!=navigator){if(e||(e=navigator),"ReactNative"===e.product)return!0;const t=e.userAgent||e.vendor||("undefined"!=typeof window?window.opera:"");if(!t){return e.userAgentData&&e.userAgentData.mobile}return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}return!1}var Fe,Me,Pe,Le,Be,Oe,Ue,je,ze=u.default.div(Fe||(Fe=y(["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"],["\n display: flex;\n flex-flow: column nowrap;\n width: 100%;\n height: 100%;\n"]))),Ge=u.default.div(Me||(Me=y(["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n"],["\n position: relative;\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n justify-items: center;\n box-sizing: border-box;\n max-width: 100%;\n max-height: 100%;\n"]))),$e=u.default.div(Pe||(Pe=y(["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background: ",";\n color: ",";\n text-align: center;\n ","\n ","\n"],["\n display: flex;\n flex-direction: column;\n justify-content: end;\n width: 100%;\n height: 100%;\n flex-grow: 1;\n background: ",";\n color: ",";\n text-align: center;\n ","\n ","\n"])),(function(e){var t,n,a,r;return null!==(r=null===(a=null===(n=null===(t=e.theme)||void 0===t?void 0:t.idCapture)||void 0===n?void 0:n.guideOverlay)||void 0===a?void 0:a.backgroundColor)&&void 0!==r?r:"rgba(0, 0, 0, 0.5)"}),(function(e){var t,n,a,r;return null!==(r=null===(a=null===(n=null===(t=e.theme)||void 0===t?void 0:t.idCapture)||void 0===n?void 0:n.guideOverlay)||void 0===a?void 0:a.textColor)&&void 0!==r?r:"white"}),(function(e){return e.$minWidth?"min-width: ".concat(e.$minWidth,"px;"):""}),(function(e){return e.$minHeight?"min-width: ".concat(e.$minHeight,"px;"):""})),Ve=u.default.div(Le||(Le=y(["\n ","\n box-sizing: border-box;\n"],["\n ","\n box-sizing: border-box;\n"])),(function(e){return e.$isMirrored?"transform: scaleX(-1);":""})),qe=u.default.div(Be||(Be=y(["\n position: relative;\n border: ",";\n"],["\n position: relative;\n border: ",";\n"])),(function(e){var t,n;return"".concat(null!==(t=e.$borderWidth)&&void 0!==t?t:4,"px solid ").concat(null!==(n=e.$borderColor)&&void 0!==n?n:"white")})),We=u.default.span(Oe||(Oe=y(["\n align-content: center;\n margin-top: 12px;\n margin-bottom: 12px;\n"],["\n align-content: center;\n margin-top: 12px;\n margin-bottom: 12px;\n"]))),He=u.default.img(Ue||(Ue=y(["\n display: block;\n ","\n ","\n"],["\n display: block;\n ","\n ","\n"])),(function(e){return e.$width?"width: ".concat(e.$width,"px; max-width: ").concat(e.$width,"px;"):"max-width: none;"}),(function(e){return e.$height?"height: ".concat(e.$height,"px; max-height: ").concat(e.$height,"px;"):"max-width: none;"})),Ke=function(e){var n,r,i,o=e.classNames,l=void 0===o?{}:o,c=e.width,u=void 0===c?0:c,d=e.height,h=void 0===d?0:d,f=e.padding,p=void 0===f?_e()?0:50:f,m=e.borderWidth,g=e.borderColor,v=e.isMirrored,y=void 0!==v&&v,b=e.instruction,w=void 0===b?"":b,x=e.portraitGuidesImageUrl,E=e.landscapeGuidesImageUrl,C=e.onClick,k=t.useContext(Ae),S=k.orientation,T=k.wrapperRef,I=k.wrapperWidth,R=k.wrapperHeight,D=k.imageAspectRatio,A=k.wrapperAspectRatio,N=k.onImageLoaded,_=k.setDimensions,F=a.useTheme();void 0===m&&(m=null!==(i=null===(r=null===(n=F.idCapture)||void 0===n?void 0:n.guideBox)||void 0===r?void 0:r.borderWidth)&&void 0!==i?i:4),0==u&&(u=I),0==h&&(h=R),t.useEffect((function(){_({width:u,height:h})}),[h,_,u]);var M=2*p+2*m,P="portrait"===S?x:E,L=void 0,B=void 0;return D>=A?L=I-M:B=R-M,s.default.createElement(Ye,{ref:T,onClick:C,className:l.container},s.default.createElement(ze,{className:l.inner},s.default.createElement($e,{$minHeight:p,className:Xe(l,"Top")},""!==w&&s.default.createElement(We,{className:l.guideText},w)),s.default.createElement(Ge,{className:l.centerRow},s.default.createElement($e,{$minWidth:p,className:Xe(l,"Left")}),s.default.createElement(Ve,{$isMirrored:y,className:l.centerRegion},s.default.createElement(qe,{$borderWidth:m,$borderColor:g,className:l.centerRegionInner},s.default.createElement(He,{src:P,alt:"",onLoad:N,className:l.image,$width:L,$height:B}))),s.default.createElement($e,{$minWidth:p,className:Xe(l,"Right")})),s.default.createElement($e,{$minHeight:p,className:Xe(l,"Bottom")},""!==w&&s.default.createElement(We,{style:{opacity:0}},w))))},Ye=u.default(M)(je||(je=y(["\n z-index: 1000;\n"],["\n z-index: 1000;\n"]))),Xe=function(e,t){return[e.dimmingRegion,e["dimmingRegion".concat(t)]].filter((function(e){return e})).join(" ")};function Je(e){return m(this,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return"BarcodeDetector"in window?(t=new BarcodeDetector({formats:["pdf417"]}),console.log("this is a real native result!"),[4,t.detect(e)]):[2,[]];case 1:return[2,n.sent()]}}))}))}function Ze(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a,r,i,o,s,l,c,u;return g(this,(function(d){switch(d.label){case 0:return[4,new Promise((function(o){if(r=e.naturalWidth,i=e.naturalHeight,n=document.createElement("canvas"),!(a=n.getContext("2d")))return[];if(t){console.log("rotating!!"),n.width=i,n.height=r,a.setTransform(0,1,-1,0,n.width,0),a.drawImage(e,0,0,r,i);var s=new Image;s.width=n.width,s.height=n.height,s.onload=function(){o(s)},n.toBlob((function(e){e&&(s.src=URL.createObjectURL(e))}))}else a.drawImage(e,0,0,n.width,n.height),o(e)}))];case 1:return o=d.sent(),s=new ZXing.BitmapLuminanceSource(a,o),l=new ZXing.Common.HybridBinarizer(s),c=new ZXing.BinaryBitmap(l),u=ZXing.PDF417.PDF417Reader.decode(c,null,!1),a.clearRect(0,0,n.width,n.height),n.remove(),[2,u]}}))}))}function Qe(){return"BarcodeDetector"in window}function et(e,t){var n=this;return new Promise((function(a){var r=new Image;r.onload=function(){return m(n,void 0,void 0,(function(){var e,n,i,o;return g(this,(function(s){switch(s.label){case 0:return Qe()?[4,Je(r)]:[3,2];case 1:return n=s.sent(),console.log("native result",n,"".concat(r.width,"x").concat(r.height)),a(n.length>0?p(p({},n[0]),{Source:"native"}):null),[3,4];case 2:return e=(null!==(i=null==t?void 0:t[2])&&void 0!==i?i:0)<(null!==(o=null==t?void 0:t[3])&&void 0!==o?o:0),[4,Ze(r,e)];case 3:n=s.sent(),console.log("zxing result",n),a(n.length>0?p(p({},n[0]),{Source:"zxing"}):null),s.label=4;case 4:return[2]}}))}))},r.src=URL.createObjectURL(e)}))}function tt(){if(!(["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document))return!1;var e=window.screen.width<window.screen.height?window.screen.width:window.screen.height,t=window.screen.width*window.devicePixelRatio,n=window.screen.height*window.devicePixelRatio;return 1179==t&&2556==n||1290==t&&2796==n&&(393==e||430==e)}var nt,at=["front","avant","anteriore","cameraaanvoorzijde","kamerapåframsidan","forsidekamera","kamerapåforsiden","aparatprzedni","etukamera","kameradepan","ÖnKamera","cameramặttrước","camerăfață","prednákamera","prednjakamera","előlapikamera","přednífotoaparát","μπροστινήκάμερα","переднякамера","передняякамера","преднакамера","алдыңғыкамера","מצלמה קדמית","الكاميرا الأمامية","फ़्रंटकैमरा","前置相机","前置鏡頭","前面カメラ","전면카메라","กล้องด้านหน้า"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),rt=["back","rear","posterior","trasera","traseira","arrière","rückkamera","fotocamera(posteriore)","cameraaanachterzijde","kamerapåbaksidan","kamerapåbaksiden","bagsidekamera","aparattylny","takakamera","arkakamera","kamerabelakang","cameramặtsau","camerăspate","stražnjakamera","zadnákamera","hátoldalikamera","zadnífotoaparát","πίσωκάμερα","заднякамера","Задняякамера","заднакамера","артқыкамера","מצלמה אחורית","الكاميرا الخلفية","बैककैमरा","后置相机","後置鏡頭","背面カメラ","후면카메라","กล้องด้านหลัง"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),it=["backultrawidecamera","ultraampliaposterior","ultra-angulartraseira","ultragrandeangulartraseira","ultragrandangle","ultragranangular","ultra-weitwinkelkamera","ultra-grandangolo","ultrabredecameraaanachterzijde","ultravidvinkelkamerapåbaksidan","ultravidvinkelkameraetpåbagsiden","ultravidvinkelkamerabak","ultragenişkameraarkayüzü","ultralaajakulmainentakakamera","tylnyaparatultraszerokokątny","cameracựcrộngmặtsau","camerăcuobiectivultra‑superangularspate","ultraszéleslátószögűkamera","kameraultralebarbelakang","stražnjaultraširokakamera","zadníultraširokoúhlýfotoaparát","ultraširokouhlá","πίσωυπερευρείακάμερα","заднянадширококутнакамера","Задняясверхширокоугольнаякамера","Задна свръх широкоъгълна камера","артқыультракеңбұрыштыкамера","מצלמה אולטרה רחבה אחורית","كاميرا خلفية عريضة جدًا","बैकअल्ट्रावाइडकैमरा","后置超广角相机","後置超廣角鏡頭相機","背面超広角カメラ","후면울트라와이드카메라","กล้องด้านหลังอัลตร้าไวด์"].map((function(e){return e.toLocaleLowerCase().split(" ").join("")})),ot=function(e,t){var n=e instanceof MediaDeviceInfo?st(e):e;return("string"==typeof t?[t]:t).some((function(e){return n.includes(e)}))},st=function(e){return e.label.toLocaleLowerCase().split(" ").join("")};function lt(){nt&&(console.log("releasing camera access..."),nt.release(),nt=void 0)}var ct,ut=function(e){var n=void 0===e?{preferFrontFacingCamera:!1,preferContinuityCamera:!0,requestMicrophoneAccess:!1}:e,a=n.preferFrontFacingCamera,r=void 0!==a&&a,i=n.preferContinuityCamera,o=void 0===i||i,s=n.requestMicrophoneAccess,l=void 0!==s&&s,c=t.useRef(null),u=t.useRef(null),d=t.useState(!1),h=d[0],f=d[1],p=t.useState(null),y=p[0],b=p[1],w=t.useState(!1),x=w[0],C=w[1],k=t.useState(!1),S=k[0],T=k[1],I=t.useState(o),R=I[0],D=I[1],A=t.useState(!1),N=A[0],_=A[1],F=t.useState(!1),M=F[0],P=F[1];t.useEffect((function(){console.log("iphone continuity camera allowed changed",R),lt(),u.current=null,C(!1)}),[R]);var L=t.useCallback((function(){P(!1)}),[]);t.useEffect((function(){M||(f(!1),function(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a;return g(this,(function(r){switch(r.label){case 0:return[4,navigator.mediaDevices.getUserMedia({video:{facingMode:{exact:e}},audio:t})];case 1:return n=r.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:return a=r.sent().filter((function(e){return"videoinput"===e.kind})),n.getVideoTracks().forEach((function(e){e.enabled=!1,e.stop()})),n=null,[2,a]}}))}))}().then((function(e){var t,n=E();if(N||n&&"OS X"!==n.os.family)"Android"===(null==n?void 0:n.os.family)&&e.reverse();else{var a=e.find((function(e){return ot(e,"iphone")}));T(!!a),a&&R&&(t=a)}r&&(t=e.find((function(e){return ot(e,at)}))),tt()?t||(t=e.find((function(e){return ot(e,it)}))):t||(t=e.find((function(e){return ot(e,rt)&&!ot(e,it)}))),t||(t=e.find((function(e){return ot(e,rt)}))),!r&&"iOS"===(null==n?void 0:n.os.family)&&e.length>0&&(t||(t=e[1])),t||(t=e[0]),b(t)})).catch((function(e){if("NotAllowedError"!==e.name)throw console.error("camera access encountered some other error",e),e;console.error("camera access has been blocked by the user",e),P(!0)})))}),[M,R,N,r]),t.useEffect((function(){var e;if(y){var t=function(){lt(),u.current=null,C(!1)};return(null===(e=navigator.mediaDevices)||void 0===e?void 0:e.getUserMedia)?(m(void 0,void 0,void 0,(function(){var e,t,n;return g(this,(function(a){switch(a.label){case 0:e=null,a.label=1;case 1:return a.trys.push([1,3,,4]),[4,navigator.mediaDevices.getUserMedia({audio:l,video:{deviceId:{exact:y.deviceId},width:{ideal:1920},aspectRatio:1.777777778}})];case 2:return e=a.sent(),[3,4];case 3:return"NotAllowedError"===a.sent().name?(R?(T(!1),_(!0)):P(!0),[2]):[3,4];case 4:if(e)return[3,8];a.label=5;case 5:return a.trys.push([5,7,,8]),[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 6:return e=a.sent(),console.log("opened stream with no width and height constraints"),[3,8];case 7:return a.sent(),console.log("cannot open stream at all"),[3,8];case 8:if(!e)throw new Error("failed to open camera");return t=function(){S&&R?(console.log("someone unplugged the continuity camera"),lt(),u.current=null,T(!1),_(!0),b(null)):(console.log("someone unplugged the webcam"),lt(),u.current=null,C(!1),P(!0))},null===(n=c.current)||void 0===n||n.addEventListener("ended",t),e.getVideoTracks().forEach((function(e){e.onended=t})),u.current=function(e,t,n){lt(),console.log("obtaining camera access...");var a=e.getVideoTracks()[0].getSettings(),r=a.width,i=a.height,o=t.toLocaleLowerCase().split(" ").join(""),s=ot(o,v(v(v([],rt,!0),it,!0),["iphone"],!1));return r||(r=0),i||(i=0),nt={label:t,stream:e,width:r,height:i,isRearFacing:s,release:function(){e.getTracks().forEach((function(e){e.enabled=!1,e.stop()})),n&&(n.pause(),n.srcObject=null,n.src="")}},n&&(n.srcObject=e),nt}(e,y.label,c.current),[2]}}))})),t):t}}),[R,S,l,y]),t.useEffect((function(){f(!1),y&&x&&f(!0)}),[x,y]);var B=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e,t,n,a,r;return g(this,(function(i){switch(i.label){case 0:return e=document.createElement("canvas"),(t=e.getContext("2d"))&&u.current&&c.current?(e.width=null===(a=c.current)||void 0===a?void 0:a.videoWidth,e.height=null===(r=c.current)||void 0===r?void 0:r.videoHeight,t.drawImage(c.current,0,0,e.width,e.height),n=e.toDataURL("image/jpeg",.98),[4,fetch(n)]):[2,null];case 1:return[4,i.sent().blob()];case 2:return[2,i.sent()]}}))}))}),[]);return{videoRef:c,videoDevice:y,videoLoaded:x,setVideoLoaded:C,cameraRef:u,cameraReady:h,cameraAccessDenied:M,retryCameraAccess:L,releaseCameraAccess:lt,iphoneContinuityCameraAvailable:S,iphoneContinuityCameraAllowed:R,setIphoneContinuityCameraAllowed:D,takePhoto:B}},dt=t.createContext({videoRef:{current:null},videoLoaded:!1,cameraRef:{current:null},cameraReady:!1,cameraAccessDenied:!1,retryCameraAccess:function(){return null},releaseCameraAccess:function(){return null},iphoneContinuityCameraAvailable:!1,iphoneContinuityCameraAllowed:!0,setIphoneContinuityCameraAllowed:function(){return null},takePhoto:function(){return Promise.resolve(null)},setVideoLoaded:function(){return null}}),ht=function(e){var n=e.children,a=e.preferFrontFacingCamera,r=e.preferContinuityCamera,i=e.requestMicrophoneAccess,o=ut({preferFrontFacingCamera:void 0!==a&&a,preferContinuityCamera:void 0===r||r,requestMicrophoneAccess:void 0!==i&&i}),l=o.videoRef,c=o.videoLoaded,u=o.setVideoLoaded,d=o.cameraRef,h=o.cameraReady,f=o.cameraAccessDenied,p=o.retryCameraAccess,m=o.releaseCameraAccess,g=o.iphoneContinuityCameraAvailable,v=o.iphoneContinuityCameraAllowed,y=o.setIphoneContinuityCameraAllowed,b=o.takePhoto;return t.useEffect((function(){return function(){m()}}),[m]),s.default.createElement(dt.Provider,{value:{videoRef:l,videoLoaded:c,setVideoLoaded:u,cameraRef:d,cameraReady:h,cameraAccessDenied:f,releaseCameraAccess:m,retryCameraAccess:p,iphoneContinuityCameraAvailable:g,iphoneContinuityCameraAllowed:v,setIphoneContinuityCameraAllowed:y,takePhoto:b}},n)};function ft(e){return m(this,void 0,void 0,(function(){var t,n,a,r,i,o,s,l,c;return g(this,(function(u){switch(u.label){case 0:return ct?[2,ct]:[4,d.loadLayersModel(e)];case 1:return ct=u.sent(),[4,d.ready()];case 2:return u.sent(),t=d.zeros([448,448,3]),n=d.cast(t,"int32"),i=(r=d).tensor4d,s=(o=Array).from,[4,n.data()];case 3:return a=i.apply(r,[s.apply(o,[u.sent()]),[1,448,448,3]]),l=d.cast(a,"int32"),[4,ct.predict(l)];case 4:return[4,(c=u.sent()).data()];case 5:return u.sent(),d.dispose(c),n.dispose(),l.dispose(),a.dispose(),d.dispose(t),[2,ct]}}))}))}class pt{refCount(e){return mt("refCount")}incRef(e){return mt("incRef")}timerAvailable(){return!0}time(e){return mt("time")}read(e){return mt("read")}readSync(e){return mt("readSync")}readToGPU(e,t){return mt("readToGPU")}numDataIds(){return mt("numDataIds")}disposeData(e,t){return mt("disposeData")}write(e,t,n){return mt("write")}move(e,t,n,a,r){return mt("move")}createTensorFromGPUData(e,t,n){return mt("createTensorFromGPUData")}memory(){return mt("memory")}floatPrecision(){return mt("floatPrecision")}epsilon(){return 32===this.floatPrecision()?1e-7:1e-4}dispose(){return mt("dispose")}}function mt(e){throw new Error(`'${e}' not yet implemented or not found in the registry. This kernel may not be supported by the tfjs backend you have chosen`)}function gt(e,t){if(!e)throw new Error("string"==typeof t?t:t())}function vt(e){if(0===e.length)return 1;let t=e[0];for(let n=1;n<e.length;n++)t*=e[n];return t}function yt(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function bt(e,t){return t<=e.length?e:e+" ".repeat(t-e.length)}function wt(e){if("float32"===e||"int32"===e)return 4;if("complex64"===e)return 8;if("bool"===e)return 1;throw new Error(`Unknown dtype ${e}`)}function xt(e){return"string"==typeof e||e instanceof String}function Et(e){return Array.isArray(e)?Et(e[0]):e instanceof Float32Array?"float32":e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray?"int32":"number"==typeof e?"float32":xt(e)?"string":function(e){return"boolean"==typeof e}(e)?"bool":"float32"}function Ct(e){return!!(e&&e.constructor&&e.call&&e.apply)}function kt(e){const t=e.length;if(t<2)return[];const n=new Array(t-1);n[t-2]=e[t-1];for(let a=t-3;a>=0;--a)n[a]=n[a+1]*e[a+1];return n}function St(e,t,n,a=!1){const r=new Array;if(1===t.length){const i=t[0]*(a?2:1);for(let t=0;t<i;t++)r[t]=n[e+t]}else{const i=t[0],o=t.slice(1),s=o.reduce(((e,t)=>e*t))*(a?2:1);for(let t=0;t<i;t++)r[t]=St(e+t*s,o,n,a)}return r}function Tt(e,t,n=!1){if(0===e.length)return t[0];const a=e.reduce(((e,t)=>e*t))*(n?2:1);if(0===a)return[];if(a!==t.length)throw new Error(`[${e}] does not match the input size ${t.length}${n?" for a complex tensor":""}.`);return St(0,e,t,n)}function It(e,t){if(null==t||"float32"===t||"complex64"===t)return new Float32Array(e);if("int32"===t)return new Int32Array(e);if("bool"===t)return new Uint8Array(e);throw new Error(`Unknown data type ${t}`)}function Rt(e){e.forEach((t=>{gt(Number.isInteger(t)&&t>=0,(()=>`Tensor must have a shape comprised of positive integers but got shape [${e}].`))}))}function Dt(e){return e&&e.then&&"function"==typeof e.then}const At="tfjsflags";class Nt{constructor(e){this.global=e,this.flags={},this.flagRegistry={},this.urlFlags={},this.getQueryParams=_t,this.populateURLFlags()}setPlatform(e,t){null!=this.platform&&(Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(`Platform ${this.platformName} has already been set. Overwriting the platform with ${e}.`)),this.platformName=e,this.platform=t}registerFlag(e,t,n){if(this.flagRegistry[e]={evaluationFn:t,setHook:n},null!=this.urlFlags[e]){const t=this.urlFlags[e];Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(`Setting feature override from URL ${e}: ${t}.`),this.set(e,t)}}async getAsync(e){return e in this.flags||(this.flags[e]=await this.evaluateFlag(e)),this.flags[e]}get(e){if(e in this.flags)return this.flags[e];const t=this.evaluateFlag(e);if(Dt(t))throw new Error(`Flag ${e} cannot be synchronously evaluated. Please use getAsync() instead.`);return this.flags[e]=t,this.flags[e]}getNumber(e){return this.get(e)}getBool(e){return this.get(e)}getString(e){return this.get(e)}getFlags(){return this.flags}get features(){return this.flags}set(e,t){if(null==this.flagRegistry[e])throw new Error(`Cannot set flag ${e} as it has not been registered.`);this.flags[e]=t,null!=this.flagRegistry[e].setHook&&this.flagRegistry[e].setHook(t)}evaluateFlag(e){if(null==this.flagRegistry[e])throw new Error(`Cannot evaluate flag '${e}': no evaluation function found.`);return this.flagRegistry[e].evaluationFn()}setFlags(e){this.flags=Object.assign({},e)}reset(){this.flags={},this.urlFlags={},this.populateURLFlags()}populateURLFlags(){if(void 0===this.global||void 0===this.global.location||void 0===this.global.location.search)return;const e=this.getQueryParams(this.global.location.search);if(At in e){e[At].split(",").forEach((e=>{const[t,n]=e.split(":");this.urlFlags[t]=function(e,t){const n=t.toLowerCase();return"true"===n||"false"===n?"true"===n:""+ +n===n?+n:t}(0,n)}))}}}function _t(e){const t={};return e.replace(/[?&]([^=?&]+)(?:=([^&]*))?/g,((e,...n)=>(function(e,t,n){e[decodeURIComponent(t)]=decodeURIComponent(n||"")}(t,n[0],n[1]),n.join("=")))),t}function Ft(){return Pt}let Mt,Pt=null;function Lt(){if(null==Mt){let e;if("undefined"!=typeof window)e=window;else if("undefined"!=typeof global)e=global;else if("undefined"!=typeof process)e=process;else{if("undefined"==typeof self)throw new Error("Could not find a global object");e=self}Mt=e}return Mt}function Bt(e,t){const n=function(){const e=Lt();return null==e._tfGlobals&&(e._tfGlobals=new Map),e._tfGlobals}();if(n.has(e))return n.get(e);{const a=t();return n.set(e,a),n.get(e)}}const Ot="Add",Ut="Cast",jt="Identity";function zt(...e){Ft().getBool("IS_TEST")||Ft().getBool("PROD")||console.warn(...e)}const Gt=Bt("kernelRegistry",(()=>new Map)),$t=Bt("gradRegistry",(()=>new Map));function Vt(e,t){const n=function(e,t){return`${t}_${e}`}(e,t);return Gt.get(n)}function qt(e){return $t.get(e)}function Wt(e){const t=Gt.entries(),n=[];for(;;){const{done:a,value:r}=t.next();if(a)break;const[i,o]=r,[s]=i.split("_");s===e&&n.push(o)}return n}function Ht(e){return e instanceof Float32Array||e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray}function Kt(e,t){if("string"===t)throw new Error("Cannot convert a string[] to a TypedArray");if(Array.isArray(e)&&(e=Zt(e)),Ft().getBool("DEBUG")&&function(e,t){for(let n=0;n<e.length;n++){const a=e[n];if(isNaN(a)||!isFinite(a))throw Error(`A tensor of type ${t} being uploaded contains ${a}.`)}}(e,t),function(e,t){return e instanceof Float32Array&&"float32"===t||e instanceof Int32Array&&"int32"===t||e instanceof Uint8Array&&"bool"===t}(e,t))return e;if(null==t||"float32"===t||"complex64"===t)return new Float32Array(e);if("int32"===t)return new Int32Array(e);if("bool"===t){const t=new Uint8Array(e.length);for(let n=0;n<t.length;++n)0!==Math.round(e[n])&&(t[n]=1);return t}throw new Error(`Unknown data type ${t}`)}function Yt(){return Ft().platform.now()}function Xt(e,t="utf-8"){return t=t||"utf-8",Ft().platform.decode(e,t)}function Jt(e){return null!=Ft().platform.isTypedArray?Ft().platform.isTypedArray(e):Ht(e)}function Zt(e,t=[],n=!1){if(null==t&&(t=[]),"boolean"==typeof e||"number"==typeof e||"string"==typeof e||Dt(e)||null==e||Jt(e)&&n)t.push(e);else if(Array.isArray(e)||Jt(e))for(let a=0;a<e.length;++a)Zt(e[a],t,n);else{let a=-1;for(const t of Object.keys(e))/^([1-9]+[0-9]*|0)$/.test(t)&&(a=Math.max(a,Number(t)));for(let r=0;r<=a;r++)Zt(e[r],t,n)}return t}class Qt{constructor(e,t){this.backendTimer=e,this.logger=t,null==t&&(this.logger=new tn)}profileKernel(e,t,n){let a;const r=()=>{a=n()};let i;const o=Yt();if(this.backendTimer.timerAvailable())i=this.backendTimer.time(r);else{r();for(const e of a)e.dataSync();i=Promise.resolve({kernelMs:Yt()-o})}if(Ft().getBool("CHECK_COMPUTATION_FOR_ERRORS"))for(let t=0;t<a.length;t++){const n=a[t];n.data().then((t=>{en(t,n.dtype,e)}))}return{kernelName:e,outputs:a,inputs:t,timeMs:i.then((e=>e.kernelMs)),extraInfo:i.then((e=>null!=e.getExtraProfileInfo?e.getExtraProfileInfo():""))}}logKernelProfile(e){const{kernelName:t,outputs:n,timeMs:a,inputs:r,extraInfo:i}=e;n.forEach((e=>{Promise.all([e.data(),a,i]).then((n=>{this.logger.logKernelProfile(t,e,n[0],n[1],r,n[2])}))}))}}function en(e,t,n){if("float32"!==t)return!1;for(let t=0;t<e.length;t++){const a=e[t];if(isNaN(a)||!isFinite(a))return console.warn(`Found ${a} in the result of '${n}'`),!0}return!1}class tn{logKernelProfile(e,t,n,a,r,i){const o="number"==typeof a?bt(`${a}ms`,9):a.error,s=bt(e,25),l=t.rank,c=t.size,u=bt(t.shape.toString(),14);let d="";for(const e in r){const n=r[e];if(null!=n){const a=n.shape||t.shape,r=a.length;d+=`${e}: ${r}D ${r>0?a:""} `}}console.log(`%c${s}\t%c${o}\t%c${l}D ${u}\t%c${c}\t%c${d}\t%c${i}`,"font-weight:bold","color:red","color:blue","color: orange","color: green","color: steelblue")}}const nn=20,an=3,rn=7;function on(e,t,n,a){const r=kt(t),i=function(e,t,n,a){const r=vt(t),i=a[a.length-1],o=new Array(i).fill(0),s=t.length,l="complex64"===n?un(e):e;if(s>1)for(let e=0;e<r/i;e++){const t=e*i;for(let e=0;e<i;e++)o[e]=Math.max(o[e],sn(l[t+e],0,n).length)}return o}(e,t,n,r),o=t.length,s=cn(e,t,n,r,i),l=["Tensor"];return a&&(l.push(` dtype: ${n}`),l.push(` rank: ${o}`),l.push(` shape: [${t}]`),l.push(" values:")),l.push(s.map((e=>" "+e)).join("\n")),l.join("\n")}function sn(e,t,n){let a;return a=Array.isArray(e)?`${parseFloat(e[0].toFixed(rn))} + ${parseFloat(e[1].toFixed(rn))}j`:xt(e)?`'${e}'`:"bool"===n?ln(e):parseFloat(e.toFixed(rn)).toString(),bt(a,t)}function ln(e){return 0===e?"false":"true"}function cn(e,t,n,a,r,i=!0){const o="complex64"===n?2:1,s=t[0],l=t.length;if(0===l){if("complex64"===n){return[sn(un(e)[0],0,n)]}return"bool"===n?[ln(e[0])]:[e[0].toString()]}if(1===l){if(s>nn){let t=Array.from(e.slice(0,an*o)),a=Array.from(e.slice((s-an)*o,s*o));return"complex64"===n&&(t=un(t),a=un(a)),["["+t.map(((e,t)=>sn(e,r[t],n))).join(", ")+", ..., "+a.map(((e,t)=>sn(e,r[s-an+t],n))).join(", ")+"]"]}return["["+("complex64"===n?un(e):Array.from(e)).map(((e,t)=>sn(e,r[t],n))).join(", ")+"]"]}const c=t.slice(1),u=a.slice(1),d=a[0]*o,h=[];if(s>nn){for(let t=0;t<an;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,!1))}h.push("...");for(let t=s-an;t<s;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,t===s-1))}}else for(let t=0;t<s;t++){const a=t*d;h.push(...cn(e.slice(a,a+d),c,n,u,r,t===s-1))}const f=2===l?",":"";h[0]="["+(s>0?h[0]+f:"");for(let e=1;e<h.length-1;e++)h[e]=" "+h[e]+f;let p=",\n";for(let e=2;e<l;e++)p+="\n";return h[h.length-1]=" "+h[h.length-1]+"]"+(i?"":p),h}function un(e){const t=[];for(let n=0;n<e.length;n+=2)t.push([e[n],e[n+1]]);return t}class dn{constructor(e,t,n){if(this.dtype=t,this.shape=e.slice(),this.size=vt(e),null!=n){const e=n.length;gt(e===this.size,(()=>`Length of values '${e}' does not match the size inferred by the shape '${this.size}'.`))}if("complex64"===t)throw new Error("complex64 dtype TensorBuffers are not supported. Please create a TensorBuffer for the real and imaginary parts separately and call tf.complex(real, imag).");this.values=n||function(e,t){let n=null;if(null==e||"float32"===e)n=new Float32Array(t);else if("int32"===e)n=new Int32Array(t);else if("bool"===e)n=new Uint8Array(t);else{if("string"!==e)throw new Error(`Unknown data type ${e}`);n=new Array(t)}return n}(t,this.size),this.strides=kt(e)}set(e,...t){0===t.length&&(t=[0]),gt(t.length===this.rank,(()=>`The number of provided coordinates (${t.length}) must match the rank (${this.rank})`));const n=this.locToIndex(t);this.values[n]=e}get(...e){0===e.length&&(e=[0]);let t=0;for(const n of e){if(n<0||n>=this.shape[t]){throw new Error(`Requested out of range element at ${e}. Buffer shape=${this.shape}`)}t++}let n=e[e.length-1];for(let t=0;t<e.length-1;++t)n+=this.strides[t]*e[t];return this.values[n]}locToIndex(e){if(0===this.rank)return 0;if(1===this.rank)return e[0];let t=e[e.length-1];for(let n=0;n<e.length-1;++n)t+=this.strides[n]*e[n];return t}indexToLoc(e){if(0===this.rank)return[];if(1===this.rank)return[e];const t=new Array(this.shape.length);for(let n=0;n<t.length-1;++n)t[n]=Math.floor(e/this.strides[n]),e-=t[n]*this.strides[n];return t[t.length-1]=e,t}get rank(){return this.shape.length}toTensor(){return hn().makeTensor(this.values,this.shape,this.dtype)}}let hn=null,fn=null;class pn{constructor(e,t,n,a){this.kept=!1,this.isDisposedInternal=!1,this.shape=e.slice(),this.dtype=t||"float32",this.size=vt(e),this.strides=kt(e),this.dataId=n,this.id=a,this.rankType=this.rank<5?this.rank.toString():"higher"}get rank(){return this.shape.length}async buffer(){const e=await this.data();return fn.buffer(this.shape,this.dtype,e)}bufferSync(){return fn.buffer(this.shape,this.dtype,this.dataSync())}async array(){const e=await this.data();return Tt(this.shape,e,"complex64"===this.dtype)}arraySync(){return Tt(this.shape,this.dataSync(),"complex64"===this.dtype)}async data(){this.throwIfDisposed();const e=hn().read(this.dataId);if("string"===this.dtype){const t=await e;try{return t.map((e=>Xt(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}}return e}dataToGPU(e){return this.throwIfDisposed(),hn().readToGPU(this.dataId,e)}dataSync(){this.throwIfDisposed();const e=hn().readSync(this.dataId);if("string"===this.dtype)try{return e.map((e=>Xt(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}return e}async bytes(){this.throwIfDisposed();const e=await hn().read(this.dataId);return"string"===this.dtype?e:new Uint8Array(e.buffer)}dispose(){this.isDisposed||(hn().disposeTensor(this),this.isDisposedInternal=!0)}get isDisposed(){return this.isDisposedInternal}throwIfDisposed(){if(this.isDisposed)throw new Error("Tensor is disposed.")}print(e=!1){return fn.print(this,e)}clone(){return this.throwIfDisposed(),fn.clone(this)}toString(e=!1){return on(this.dataSync(),this.shape,this.dtype,e)}cast(e){return this.throwIfDisposed(),fn.cast(this,e)}variable(e=!0,t,n){return this.throwIfDisposed(),hn().makeVariable(this,e,t,n)}}Object.defineProperty(pn,Symbol.hasInstance,{value:e=>!!e&&null!=e.data&&null!=e.dataSync&&null!=e.throwIfDisposed}),Bt("Tensor",(()=>pn));class mn extends pn{constructor(e,t,n,a){super(e.shape,e.dtype,e.dataId,a),this.trainable=t,this.name=n}assign(e){if(e.dtype!==this.dtype)throw new Error(`dtype of the new value (${e.dtype}) and previous value (${this.dtype}) must match`);if(!yt(e.shape,this.shape))throw new Error(`shape of the new value (${e.shape}) and previous value (${this.shape}) must match`);hn().disposeTensor(this),this.dataId=e.dataId,hn().incRef(this,null)}dispose(){hn().disposeVariable(this),this.isDisposedInternal=!0}}var gn,vn,yn,bn,wn;Object.defineProperty(mn,Symbol.hasInstance,{value:e=>e instanceof pn&&null!=e.assign&&e.assign instanceof Function}),function(e){e.R0="R0",e.R1="R1",e.R2="R2",e.R3="R3",e.R4="R4",e.R5="R5",e.R6="R6"}(gn||(gn={})),function(e){e.float32="float32",e.int32="int32",e.bool="int32",e.complex64="complex64"}(vn||(vn={})),function(e){e.float32="float32",e.int32="int32",e.bool="bool",e.complex64="complex64"}(yn||(yn={})),function(e){e.float32="float32",e.int32="float32",e.bool="float32",e.complex64="complex64"}(bn||(bn={})),function(e){e.float32="complex64",e.int32="complex64",e.bool="complex64",e.complex64="complex64"}(wn||(wn={}));const xn={float32:bn,int32:vn,bool:yn,complex64:wn};function En(e){return null!=e&&"object"==typeof e&&"texture"in e&&e.texture instanceof WebGLTexture}function Cn(e){return"undefined"!=typeof GPUBuffer&&null!=e&&"object"==typeof e&&"buffer"in e&&e.buffer instanceof GPUBuffer}function kn(e,t){if(e.dtype===t.dtype)return[e,t];const n=function(e,t){if("string"===e||"string"===t){if("string"===e&&"string"===t)return"string";throw new Error(`Can not upcast ${e} with ${t}`)}return xn[e][t]}(e.dtype,t.dtype);return[e.cast(n),t.cast(n)]}function Sn(e){const t=[];return Tn(e,t,new Set),t}function Tn(e,t,n){if(null==e)return;if(e instanceof pn)return void t.push(e);if(a=e,!Array.isArray(a)&&"object"!=typeof a)return;var a;const r=e;for(const e in r){const a=r[e];n.has(a)||(n.add(a),Tn(a,t,n))}}function In(e){return null!=e.kernelName}class Rn{constructor(){this.registeredVariables={},this.nextTapeNodeId=0,this.numBytes=0,this.numTensors=0,this.numStringTensors=0,this.numDataBuffers=0,this.gradientDepth=0,this.kernelDepth=0,this.scopeStack=[],this.numDataMovesStack=[],this.nextScopeId=0,this.tensorInfo=new WeakMap,this.profiling=!1,this.activeProfile={newBytes:0,newTensors:0,peakBytes:0,kernels:[],result:null,get kernelNames(){return Array.from(new Set(this.kernels.map((e=>e.name))))}}}dispose(){for(const e in this.registeredVariables)this.registeredVariables[e].dispose()}}class Dn{constructor(e){this.ENV=e,this.registry={},this.registryFactory={},this.pendingBackendInitId=0,this.state=new Rn}async ready(){if(null!=this.pendingBackendInit)return this.pendingBackendInit.then((()=>{}));if(null!=this.backendInstance)return;const e=this.getSortedBackends();for(let t=0;t<e.length;t++){const n=e[t];if(await this.initializeBackend(n).success)return void await this.setBackend(n)}throw new Error("Could not initialize any backends, all backend initializations failed.")}get backend(){if(null!=this.pendingBackendInit)throw new Error(`Backend '${this.backendName}' has not yet been initialized. Make sure to await tf.ready() or await tf.setBackend() before calling other methods`);if(null==this.backendInstance){const{name:e,asyncInit:t}=this.initializeBackendsAndReturnBest();if(t)throw new Error(`The highest priority backend '${e}' has not yet been initialized. Make sure to await tf.ready() or await tf.setBackend() before calling other methods`);this.setBackend(e)}return this.backendInstance}backendNames(){return Object.keys(this.registryFactory)}findBackend(e){if(!(e in this.registry)){if(!(e in this.registryFactory))return null;{const{asyncInit:t}=this.initializeBackend(e);if(t)return null}}return this.registry[e]}findBackendFactory(e){return e in this.registryFactory?this.registryFactory[e].factory:null}registerBackend(e,t,n=1){return e in this.registryFactory?(zt(`${e} backend was already registered. Reusing existing backend factory.`),!1):(this.registryFactory[e]={factory:t,priority:n},!0)}async setBackend(e){if(null==this.registryFactory[e])throw new Error(`Backend name '${e}' not found in registry`);if(this.backendName=e,null==this.registry[e]){this.backendInstance=null;const{success:t,asyncInit:n}=this.initializeBackend(e);if(!(n?await t:t))return!1}return this.backendInstance=this.registry[e],this.setupRegisteredKernels(),this.profiler=new Qt(this.backendInstance),!0}setupRegisteredKernels(){Wt(this.backendName).forEach((e=>{null!=e.setupFunc&&e.setupFunc(this.backendInstance)}))}disposeRegisteredKernels(e){Wt(e).forEach((t=>{null!=t.disposeFunc&&t.disposeFunc(this.registry[e])}))}initializeBackend(e){const t=this.registryFactory[e];if(null==t)throw new Error(`Cannot initialize backend ${e}, no registration found.`);try{const n=t.factory();if(!n||n instanceof pt||"function"!=typeof n.then)return this.registry[e]=n,{success:!0,asyncInit:!1};{const t=++this.pendingBackendInitId,a=n.then((n=>!(t<this.pendingBackendInitId)&&(this.registry[e]=n,this.pendingBackendInit=null,!0))).catch((n=>(t<this.pendingBackendInitId||(this.pendingBackendInit=null,zt(`Initialization of backend ${e} failed`),zt(n.stack||n.message)),!1)));return this.pendingBackendInit=a,{success:a,asyncInit:!0}}}catch(t){return zt(`Initialization of backend ${e} failed`),zt(t.stack||t.message),{success:!1,asyncInit:!1}}}removeBackend(e){if(!(e in this.registryFactory))throw new Error(`${e} backend not found in registry`);this.backendName===e&&null!=this.pendingBackendInit&&this.pendingBackendInitId++,e in this.registry&&(this.disposeRegisteredKernels(e),this.registry[e].dispose(),delete this.registry[e]),delete this.registryFactory[e],this.backendName===e&&(this.pendingBackendInit=null,this.backendName=null,this.backendInstance=null)}getSortedBackends(){if(0===Object.keys(this.registryFactory).length)throw new Error("No backend found in registry.");return Object.keys(this.registryFactory).sort(((e,t)=>this.registryFactory[t].priority-this.registryFactory[e].priority))}initializeBackendsAndReturnBest(){const e=this.getSortedBackends();for(let t=0;t<e.length;t++){const n=e[t],{success:a,asyncInit:r}=this.initializeBackend(n);if(r||a)return{name:n,asyncInit:r}}throw new Error("Could not initialize any backends, all backend initializations failed.")}moveData(e,t){const n=this.state.tensorInfo.get(t),a=n.backend,r=this.readSync(t),i=a.refCount(t);a.disposeData(t,!0),n.backend=e,e.move(t,r,n.shape,n.dtype,i),this.shouldCheckForMemLeaks()&&this.state.numDataMovesStack[this.state.numDataMovesStack.length-1]++}tidy(e,t){let n,a=null;if(null==t){if("function"!=typeof e)throw new Error("Please provide a function to tidy()");t=e}else{if("string"!=typeof e&&!(e instanceof String))throw new Error("When calling with two arguments, the first argument to tidy() must be a string");if("function"!=typeof t)throw new Error("When calling with two arguments, the 2nd argument to tidy() must be a function");a=e}return this.scopedRun((()=>this.startScope(a)),(()=>this.endScope(n)),(()=>(n=t(),n instanceof Promise&&console.error("Cannot return a Promise inside of tidy."),n)))}scopedRun(e,t,n){e();try{const e=n();return t(),e}catch(e){throw t(),e}}nextTensorId(){return Dn.nextTensorId++}nextVariableId(){return Dn.nextVariableId++}clone(e){const t=Nn.runKernel(jt,{x:e});return this.addTapeNode(this.state.activeScope.name,{x:e},[t],(e=>({x:()=>Nn.runKernel(Ut,{x:e},{dtype:"float32"})})),[],{}),t}runKernel(e,t,n){if(!(null!=Vt(e,this.backendName)))throw new Error(`Kernel '${e}' not registered for backend '${this.backendName}'`);return this.runKernelFunc({kernelName:e,inputs:t,attrs:n})}shouldCheckForMemLeaks(){return this.ENV.getBool("IS_TEST")}checkKernelForMemLeak(e,t,n){const a=this.backend.numDataIds();let r=0;n.forEach((e=>{r+="complex64"===e.dtype?3:1}));const i=a-t-r-this.state.numDataMovesStack[this.state.numDataMovesStack.length-1];if(i>0)throw new Error(`Backend '${this.backendName}' has an internal memory leak (${i} data ids) after running '${e}'`)}runKernelFunc(e){let t,n=[];const a=this.isTapeOn(),r=this.state.numBytes,i=this.state.numTensors;let o,s;this.shouldCheckForMemLeaks()&&this.state.numDataMovesStack.push(0);const l=In(e)?e.kernelName:null!=this.state.activeScope?this.state.activeScope.name:"";if(In(e)){const{kernelName:t,inputs:r,attrs:i}=e,l=Vt(t,this.backendName);gt(null!=l,(()=>`Cannot find registered kernel '${t}' for backend '${this.backendName}'`)),o=()=>{const e=this.backend.numDataIds();s=l.kernelFunc({inputs:r,attrs:i,backend:this.backend});const o=Array.isArray(s)?s:[s];this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(t,e,o);const c=o.map((e=>null!=e.rank?e:this.makeTensorFromTensorInfo(e)));if(a){const e=this.getTensorsForGradient(t,r,c);n=this.saveTensorsForBackwardMode(e)}return c}}else{const{forwardFunc:t}=e,r=e=>{a&&(n=e.map((e=>this.keep(this.clone(e)))))};o=()=>{const e=this.backend.numDataIds();s=this.tidy((()=>t(this.backend,r)));const n=Array.isArray(s)?s:[s];return this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(l,e,n),n}}const{inputs:c,attrs:u}=e,d=In(e)?null:e.backwardsFunc;let h;return this.scopedRun((()=>this.state.kernelDepth++),(()=>this.state.kernelDepth--),(()=>{this.ENV.getBool("DEBUG")||this.state.profiling?(h=this.profiler.profileKernel(l,c,(()=>o())),this.ENV.getBool("DEBUG")&&this.profiler.logKernelProfile(h),t=h.outputs):t=o()})),a&&this.addTapeNode(l,c,t,d,n,u),this.state.profiling&&this.state.activeProfile.kernels.push({name:l,bytesAdded:this.state.numBytes-r,totalBytesSnapshot:this.state.numBytes,tensorsAdded:this.state.numTensors-i,totalTensorsSnapshot:this.state.numTensors,inputShapes:Object.keys(c).map((e=>null!=c[e]?c[e].shape:null)),outputShapes:t.map((e=>e.shape)),kernelTimeMs:h.timeMs,extraInfo:h.extraInfo}),Array.isArray(s)?t:t[0]}saveTensorsForBackwardMode(e){return e.map((e=>this.keep(this.clone(e))))}getTensorsForGradient(e,t,n){const a=qt(e);if(null!=a){const e=a.inputsToSave||[],r=a.outputsToSave||[];let i;a.saveAllInputs?(gt(Array.isArray(t),(()=>"saveAllInputs is true, expected inputs to be an array.")),i=Object.keys(t).map((e=>t[e]))):i=e.map((e=>t[e]));const o=n.filter(((e,t)=>r[t]));return i.concat(o)}return[]}makeTensor(e,t,n,a){if(null==e)throw new Error("Values passed to engine.makeTensor() are null");a=a||this.backend;let r=e;"string"===(n=n||"float32")&&xt(e[0])&&(r=e.map((e=>function(e,t="utf-8"){return t=t||"utf-8",Ft().platform.encode(e,t)}(e))));const i=a.write(r,t,n),o=new pn(t,n,i,this.nextTensorId());if(this.trackTensor(o,a),"string"===n){const e=this.state.tensorInfo.get(i),t=function(e){if(null==e)return 0;let t=0;return e.forEach((e=>t+=e.length)),t}(r);this.state.numBytes+=t-e.bytes,e.bytes=t}return o}makeTensorFromDataId(e,t,n,a){return this.makeTensorFromTensorInfo({dataId:e,shape:t,dtype:n=n||"float32"},a)}makeTensorFromTensorInfo(e,t){const{dataId:n,shape:a,dtype:r}=e,i=new pn(a,r,n,this.nextTensorId());return this.trackTensor(i,t),i}makeVariable(e,t=!0,n,a){n=n||this.nextVariableId().toString(),null!=a&&a!==e.dtype&&(e=e.cast(a));const r=new mn(e,t,n,this.nextTensorId());if(null!=this.state.registeredVariables[r.name])throw new Error(`Variable with name ${r.name} was already registered`);return this.state.registeredVariables[r.name]=r,this.incRef(r,this.backend),r}trackTensor(e,t){this.state.numTensors++,"string"===e.dtype&&this.state.numStringTensors++;let n=0;"complex64"!==e.dtype&&"string"!==e.dtype&&(n=e.size*wt(e.dtype)),this.state.numBytes+=n,this.state.tensorInfo.has(e.dataId)||(this.state.numDataBuffers++,this.state.tensorInfo.set(e.dataId,{backend:t||this.backend,dtype:e.dtype,shape:e.shape,bytes:n})),e instanceof mn||this.track(e)}incRef(e,t){this.trackTensor(e,t),this.backend.incRef(e.dataId)}removeDataId(e,t){this.state.tensorInfo.has(e)&&this.state.tensorInfo.get(e).backend===t&&(this.state.tensorInfo.delete(e),this.state.numDataBuffers--)}disposeTensor(e){if(!this.state.tensorInfo.has(e.dataId))return;const t=this.state.tensorInfo.get(e.dataId);if(this.state.numTensors--,"string"===e.dtype&&(this.state.numStringTensors--,this.state.numBytes-=t.bytes),"complex64"!==e.dtype&&"string"!==e.dtype){const t=e.size*wt(e.dtype);this.state.numBytes-=t}t.backend.disposeData(e.dataId)&&this.removeDataId(e.dataId,t.backend)}disposeVariables(){for(const e in this.state.registeredVariables){this.disposeVariable(this.state.registeredVariables[e])}}disposeVariable(e){this.disposeTensor(e),null!=this.state.registeredVariables[e.name]&&delete this.state.registeredVariables[e.name]}memory(){const e=this.backend.memory();return e.numTensors=this.state.numTensors,e.numDataBuffers=this.state.numDataBuffers,e.numBytes=this.state.numBytes,this.state.numStringTensors>0&&(e.unreliable=!0,null==e.reasons&&(e.reasons=[]),e.reasons.push("Memory usage by string tensors is approximate (2 bytes per character)")),e}async profile(e){this.state.profiling=!0;const t=this.state.numBytes,n=this.state.numTensors;this.state.activeProfile.kernels=[],this.state.activeProfile.result=await e(),this.state.profiling=!1,this.state.activeProfile.peakBytes=Math.max(...this.state.activeProfile.kernels.map((e=>e.totalBytesSnapshot))),this.state.activeProfile.newBytes=this.state.numBytes-t,this.state.activeProfile.newTensors=this.state.numTensors-n;for(const e of this.state.activeProfile.kernels)e.kernelTimeMs=await e.kernelTimeMs,e.extraInfo=await e.extraInfo;return this.state.activeProfile}isTapeOn(){return this.state.gradientDepth>0&&0===this.state.kernelDepth}addTapeNode(e,t,n,a,r,i){const o={id:this.state.nextTapeNodeId++,kernelName:e,inputs:t,outputs:n,saved:r},s=qt(e);null!=s&&(a=s.gradFunc),null!=a&&(o.gradient=e=>(e=e.map(((e,t)=>{if(null==e){const e=n[t],a=It(e.size,e.dtype);return this.makeTensor(a,e.shape,e.dtype)}return e})),a(e.length>1?e:e[0],r,i))),this.state.activeTape.push(o)}keep(e){return e.kept=!0,e}startTape(){0===this.state.gradientDepth&&(this.state.activeTape=[]),this.state.gradientDepth++}endTape(){this.state.gradientDepth--}startScope(e){const t={track:[],name:"unnamed scope",id:this.state.nextScopeId++};e&&(t.name=e),this.state.scopeStack.push(t),this.state.activeScope=t}endScope(e){const t=Sn(e),n=new Set(t.map((e=>e.id)));for(let e=0;e<this.state.activeScope.track.length;e++){const t=this.state.activeScope.track[e];t.kept||n.has(t.id)||t.dispose()}const a=this.state.scopeStack.pop();this.state.activeScope=0===this.state.scopeStack.length?null:this.state.scopeStack[this.state.scopeStack.length-1],t.forEach((e=>{e.kept||e.scopeId!==a.id||this.track(e)}))}gradients(e,t,n,a=!1){if(gt(t.length>0,(()=>"gradients() received an empty list of xs.")),null!=n&&"float32"!==n.dtype)throw new Error(`dy must have 'float32' dtype, but has '${n.dtype}'`);const r=this.scopedRun((()=>this.startTape()),(()=>this.endTape()),(()=>this.tidy("forward",e)));gt(r instanceof pn,(()=>"The result y returned by f() must be a tensor."));const i=function(e,t,n){const a={},r={};for(let e=0;e<t.length;e++)a[t[e].id]=!0;for(let n=0;n<e.length;n++){const i=e[n],o=i.inputs;for(const e in o){const n=o[e];let s=!1;for(let e=0;e<t.length;e++)if(a[n.id]){i.outputs.forEach((e=>a[e.id]=!0)),s=!0,r[i.id]=!0;break}if(s)break}}const i={};i[n.id]=!0;const o={};for(let t=e.length-1;t>=0;t--){const n=e[t],a=n.inputs;for(let e=0;e<n.outputs.length;e++)if(i[n.outputs[e].id]){for(const e in a)i[a[e].id]=!0,o[n.id]=!0;break}}const s=[];for(let t=0;t<e.length;t++){const n=e[t];if(r[n.id]&&o[n.id]){const e={};for(const t in n.inputs){const r=n.inputs[t];a[r.id]&&(e[t]=r)}const t=Object.assign({},n);t.inputs=e,t.outputs=n.outputs,s.push(t)}}return s}(this.state.activeTape,t,r);if(!a&&0===i.length&&t.length>0)throw new Error("Cannot compute gradient of y=f(x) with respect to x. Make sure that the f you passed encloses all operations that lead from x to y.");return this.tidy("backward",(()=>{const e={};e[r.id]=null==n?function(e){const t=function(e,t){const n=It(e,t);for(let e=0;e<n.length;e++)n[e]=1;return n}(vt(e),"float32");return Nn.makeTensor(t,e,"float32")}(r.shape):n,function(e,t,n,a){for(let r=t.length-1;r>=0;r--){const i=t[r],o=[];if(i.outputs.forEach((t=>{const n=e[t.id];o.push(null!=n?n:null)})),null==i.gradient)throw new Error(`Cannot compute gradient: gradient function not found for ${i.kernelName}.`);const s=i.gradient(o);for(const t in i.inputs){if(!(t in s))throw new Error(`Cannot backprop through input ${t}. Available gradients found: ${Object.keys(s)}.`);const r=n((()=>s[t]()));if("float32"!==r.dtype)throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input ${t} must have 'float32' dtype, but has '${r.dtype}'`);const o=i.inputs[t];if(!yt(r.shape,o.shape))throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input '${t}' has shape '${r.shape}', which does not match the shape of the input '${o.shape}'`);if(null==e[o.id])e[o.id]=r;else{const t=e[o.id];e[o.id]=a(t,r),t.dispose()}}}}(e,i,(e=>this.tidy(e)),_n);const a=t.map((t=>e[t.id]));return 0===this.state.gradientDepth&&(this.state.activeTape.forEach((e=>{for(const t of e.saved)t.dispose()})),this.state.activeTape=null),{value:r,grads:a}}))}customGrad(e){return gt(Ct(e),(()=>"The f passed in customGrad(f) must be a function.")),(...t)=>{let n;gt(t.every((e=>e instanceof pn)),(()=>"The args passed in customGrad(f)(x1, x2,...) must all be tensors"));const a={};t.forEach(((e,t)=>{a[t]=e}));return this.runKernelFunc({forwardFunc:(a,r)=>(n=e(...t,r),gt(n.value instanceof pn,(()=>"The function f passed in customGrad(f) must return an object where `obj.value` is a tensor")),gt(Ct(n.gradFunc),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function.")),n.value),backwardsFunc:(e,a)=>{const r=n.gradFunc(e,a),i=Array.isArray(r)?r:[r];gt(i.length===t.length,(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns the same number of tensors as inputs passed to f(...).")),gt(i.every((e=>e instanceof pn)),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns a list of only tensors."));const o={};return i.forEach(((e,t)=>{o[t]=()=>e})),o},inputs:a})}}readSync(e){return this.state.tensorInfo.get(e).backend.readSync(e)}read(e){return this.state.tensorInfo.get(e).backend.read(e)}readToGPU(e,t){return this.state.tensorInfo.get(e).backend.readToGPU(e,t)}async time(e){const t=Yt(),n=await this.backend.time(e);return n.wallMs=Yt()-t,n}track(e){return null!=this.state.activeScope&&(e.scopeId=this.state.activeScope.id,this.state.activeScope.track.push(e)),e}get registeredVariables(){return this.state.registeredVariables}reset(){this.pendingBackendInitId++,this.state.dispose(),this.ENV.reset(),this.state=new Rn;for(const e in this.registry)this.disposeRegisteredKernels(e),this.registry[e].dispose(),delete this.registry[e];this.backendName=null,this.backendInstance=null,this.pendingBackendInit=null}}function An(){const e=Lt();if(null==e._tfengine){const t=new Nt(e);e._tfengine=new Dn(t)}return Pt=e._tfengine.ENV,function(e){hn=e}((()=>e._tfengine)),e._tfengine}Dn.nextTensorId=0,Dn.nextVariableId=0;const Nn=An();function _n(e,t){return Nn.runKernel(Ot,{a:e,b:t})}const Fn=Ft();function Mn(e,t){let n=e;if(Jt(e))return"string"===t?[]:[e.length];if(En(e)){return[e.height,e.width*(e.channels||"RGBA").length]}if(Cn(e))return[e.buffer.size/(null==t?4:wt(t))];if(!Array.isArray(e))return[];const a=[];for(;Array.isArray(n)||Jt(n)&&"string"!==t;)a.push(n.length),n=n[0];return Array.isArray(e)&&Ft().getBool("TENSORLIKE_CHECK_SHAPE_CONSISTENCY")&&Pn(e,a,[]),a}function Pn(e,t,n){if(n=n||[],!Array.isArray(e)&&!Jt(e))return void gt(0===t.length,(()=>`Element arr[${n.join("][")}] is a primitive, but should be an array/TypedArray of ${t[0]} elements`));gt(t.length>0,(()=>`Element arr[${n.join("][")}] should be a primitive, but is an array of ${e.length} elements`)),gt(e.length===t[0],(()=>`Element arr[${n.join("][")}] should have ${t[0]} elements, but has ${e.length} elements`));const a=t.slice(1);for(let t=0;t<e.length;++t)Pn(e[t],a,n.concat(t))}function Ln(e,t,n,a){if("string_or_numeric"!==e){if(null==e)throw new Error("Expected dtype cannot be null.");if("numeric"!==e&&e!==t||"numeric"===e&&"string"===t)throw new Error(`Argument '${n}' passed to '${a}' must be ${e} tensor, but got ${t} tensor`)}}function Bn(e,t,n,a="numeric"){if(e instanceof pn)return Ln(a,e.dtype,t,n),e;let r=Et(e);if("string"!==r&&["bool","int32","float32"].indexOf(a)>=0&&(r=a),Ln(a,r,t,n),null==e||!Jt(e)&&!Array.isArray(e)&&"number"!=typeof e&&"boolean"!=typeof e&&"string"!=typeof e){throw new Error(`Argument '${t}' passed to '${n}' must be a Tensor or TensorLike, but got '${null==e?"null":e.constructor.name}'`)}const i=Mn(e,r);Jt(e)||Array.isArray(e)||(e=[e]);const o="string"!==r?Kt(e,r):Zt(e,[],!0);return Nn.makeTensor(o,i,r)}Fn.registerFlag("DEBUG",(()=>!1),(e=>{e&&console.warn("Debugging mode is ON. The output of every math call will be downloaded to CPU and checked for NaNs. This significantly impacts performance.")})),Fn.registerFlag("IS_BROWSER",(()=>"undefined"!=typeof window&&null!=window.document||"undefined"!=typeof WorkerGlobalScope)),Fn.registerFlag("IS_NODE",(()=>"undefined"!=typeof process&&void 0!==process.versions&&void 0!==process.versions.node)),Fn.registerFlag("IS_CHROME",(()=>"undefined"!=typeof navigator&&null!=navigator&&null!=navigator.userAgent&&/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor))),Fn.registerFlag("IS_SAFARI",(()=>"undefined"!=typeof navigator&&null!=navigator&&null!=navigator.userAgent&&/Safari/.test(navigator.userAgent)&&/Apple/.test(navigator.vendor))),Fn.registerFlag("PROD",(()=>!1)),Fn.registerFlag("TENSORLIKE_CHECK_SHAPE_CONSISTENCY",(()=>Fn.getBool("DEBUG"))),Fn.registerFlag("DEPRECATION_WARNINGS_ENABLED",(()=>!0)),Fn.registerFlag("IS_TEST",(()=>!1)),Fn.registerFlag("CHECK_COMPUTATION_FOR_ERRORS",(()=>Fn.getBool("DEBUG"))),Fn.registerFlag("WRAP_TO_IMAGEBITMAP",(()=>!1)),Fn.registerFlag("CANVAS2D_WILL_READ_FREQUENTLY_FOR_GPU",(()=>!1)),Fn.registerFlag("USE_SETTIMEOUTCUSTOM",(()=>!1));function On(e){const t=Object.keys(e);if(1!==t.length)throw new Error(`Please provide an object with a single key (operation name) mapping to a function. Got an object with ${t.length} keys.`);let n=t[0];const a=e[n];n.endsWith("_")&&(n=n.substring(0,n.length-1)),n+="__op";const r=(...e)=>{Nn.startScope(n);try{const t=a(...e);return Dt(t)&&console.error("Cannot return a Promise inside of tidy."),Nn.endScope(t),t}catch(e){throw Nn.endScope(null),e}};return Object.defineProperty(r,"name",{value:n,configurable:!0}),r}class Un{static join(e){return new Un(e).slice()}constructor(e){if(this.shards=[],this.previousShardIndex=0,null==e)return;if(e instanceof Array||(e=[e]),0===(e=e.map((e=>Jt(e)?e.buffer:e))).length)return;this.bufferUniformSize=e[0].byteLength;let t=0;for(let n=0;n<e.length;n++){const a=e[n];n!==e.length-1&&a.byteLength!==this.bufferUniformSize&&(this.bufferUniformSize=void 0);const r=t+a.byteLength;this.shards.push({buffer:a,start:t,end:r}),t=r}0===this.shards.length&&(this.byteLength=0),this.byteLength=this.shards[this.shards.length-1].end}slice(e=0,t=this.byteLength){if(0===this.shards.length)return new ArrayBuffer(0);if(e=isNaN(Number(e))?0:e,t=isNaN(Number(t))?0:t,e=Math.max(0,e),(t=Math.min(this.byteLength,t))<=e)return new ArrayBuffer(0);const n=this.findShardForByte(e);if(-1===n)throw new Error(`Could not find start shard for byte ${e}`);const a=new ArrayBuffer(t-e),r=new Uint8Array(a);let i=0;for(let a=n;a<this.shards.length;a++){const n=this.shards[a],o=e+i-n.start,s=i,l=Math.min(t,n.end),c=new Uint8Array(n.buffer,o,l-n.start-o);if(r.set(c,s),i+=c.length,t<n.end)break}return a}findShardForByte(e){if(0===this.shards.length||e<0||e>=this.byteLength)return-1;if(null!=this.bufferUniformSize)return this.previousShardIndex=Math.floor(e/this.bufferUniformSize),this.previousShardIndex;function t(t){return e<t.start?-1:e>=t.end?1:0}if(0===t(this.shards[this.previousShardIndex]))return this.previousShardIndex;const n=function(e,t){let n=0,a=e.length;for(;n<=a;){const r=Math.floor((a-n)/2)+n,i=t(e[r]);if(0===i)return r;i<0?a=r:n=r+1}return-1}(this.shards,t);return-1===n?-1:(this.previousShardIndex=n,this.previousShardIndex)}}const jn="undefined"!=typeof Buffer&&("undefined"==typeof Blob||"undefined"==typeof atob||"undefined"==typeof btoa);function zn(e){return jn?Buffer.byteLength(e,"utf8"):new Blob([e]).size}function Gn(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("Expected JSON model topology, received ArrayBuffer.");return{dateSaved:new Date,modelTopologyType:"JSON",modelTopologyBytes:null==e.modelTopology?0:zn(JSON.stringify(e.modelTopology)),weightSpecsBytes:null==e.weightSpecs?0:zn(JSON.stringify(e.weightSpecs)),weightDataBytes:null==e.weightData?0:new Un(e.weightData).byteLength}}class $n{constructor(){this.saveRouters=[],this.loadRouters=[]}static getInstance(){return null==$n.instance&&($n.instance=new $n),$n.instance}static registerSaveRouter(e){$n.getInstance().saveRouters.push(e)}static registerLoadRouter(e){$n.getInstance().loadRouters.push(e)}static getSaveHandlers(e){return $n.getHandlers(e,"save")}static getLoadHandlers(e,t){return $n.getHandlers(e,"load",t)}static getHandlers(e,t,n){const a=[];return("load"===t?$n.getInstance().loadRouters:$n.getInstance().saveRouters).forEach((t=>{const r=t(e,n);null!==r&&a.push(r)})),a}}const Vn="tensorflowjs",qn="models_store",Wn="model_info_store";function Hn(){if(!Ft().getBool("IS_BROWSER"))throw new Error("Failed to obtain IndexedDB factory because the current environmentis not a web browser.");const e="undefined"==typeof window?self:window,t=e.indexedDB||e.mozIndexedDB||e.webkitIndexedDB||e.msIndexedDB||e.shimIndexedDB;if(null==t)throw new Error("The current browser does not appear to support IndexedDB.");return t}function Kn(e){const t=e.result;t.createObjectStore(qn,{keyPath:"modelPath"}),t.createObjectStore(Wn,{keyPath:"modelPath"})}class Yn{constructor(e){if(this.indexedDB=Hn(),null==e||!e)throw new Error("For IndexedDB, modelPath must not be null, undefined or empty.");this.modelPath=e}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");return this.databaseAction(this.modelPath,e)}async load(){return this.databaseAction(this.modelPath)}databaseAction(e,t){return new Promise(((e,n)=>{const a=this.indexedDB.open(Vn,1);a.onupgradeneeded=()=>Kn(a),a.onsuccess=()=>{const r=a.result;if(null==t){const t=r.transaction(qn,"readonly"),a=t.objectStore(qn).get(this.modelPath);a.onsuccess=()=>{if(null==a.result)return r.close(),n(new Error(`Cannot find model with path '${this.modelPath}' in IndexedDB.`));e(a.result.modelArtifacts)},a.onerror=e=>(r.close(),n(a.error)),t.oncomplete=()=>r.close()}else{const a=Gn(t),i=r.transaction(Wn,"readwrite");let o,s,l=i.objectStore(Wn);try{o=l.put({modelPath:this.modelPath,modelArtifactsInfo:a})}catch(e){return n(e)}o.onsuccess=()=>{s=r.transaction(qn,"readwrite");const o=s.objectStore(qn);let c;try{c=o.put({modelPath:this.modelPath,modelArtifacts:t,modelArtifactsInfo:a})}catch(e){return n(e)}c.onsuccess=()=>e({modelArtifactsInfo:a}),c.onerror=e=>{l=i.objectStore(Wn);const t=l.delete(this.modelPath);t.onsuccess=()=>(r.close(),n(c.error)),t.onerror=e=>(r.close(),n(c.error))}},o.onerror=e=>(r.close(),n(o.error)),i.oncomplete=()=>{null==s?r.close():s.oncomplete=()=>r.close()}}},a.onerror=e=>n(a.error)}))}}Yn.URL_SCHEME="indexeddb://";const Xn=e=>{return Ft().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(Yn.URL_SCHEME)?(t=e.slice(Yn.URL_SCHEME.length),new Yn(t)):null;var t};$n.registerSaveRouter(Xn),$n.registerLoadRouter(Xn);class Jn{constructor(){this.indexedDB=Hn()}async listModels(){return new Promise(((e,t)=>{const n=this.indexedDB.open(Vn,1);n.onupgradeneeded=()=>Kn(n),n.onsuccess=()=>{const a=n.result,r=a.transaction(Wn,"readonly"),i=r.objectStore(Wn).getAll();i.onsuccess=()=>{const t={};for(const e of i.result)t[e.modelPath]=e.modelArtifactsInfo;e(t)},i.onerror=e=>(a.close(),t(i.error)),r.oncomplete=()=>a.close()},n.onerror=e=>t(n.error)}))}async removeModel(e){var t;return e=(t=e).startsWith(Yn.URL_SCHEME)?t.slice(Yn.URL_SCHEME.length):t,new Promise(((t,n)=>{const a=this.indexedDB.open(Vn,1);a.onupgradeneeded=()=>Kn(a),a.onsuccess=()=>{const r=a.result,i=r.transaction(Wn,"readwrite"),o=i.objectStore(Wn),s=o.get(e);let l;s.onsuccess=()=>{if(null==s.result)return r.close(),n(new Error(`Cannot find model with path '${e}' in IndexedDB.`));{const a=o.delete(e),i=()=>{l=r.transaction(qn,"readwrite");const a=l.objectStore(qn).delete(e);a.onsuccess=()=>t(s.result.modelArtifactsInfo),a.onerror=e=>n(s.error)};a.onsuccess=i,a.onerror=e=>(i(),r.close(),n(s.error))}},s.onerror=e=>(r.close(),n(s.error)),i.oncomplete=()=>{null==l?r.close():l.oncomplete=()=>r.close()}},a.onerror=e=>n(a.error)}))}}const Zn="/",Qn="tensorflowjs_models",ea="info",ta="model_topology",na="weight_specs",aa="weight_data",ra="model_metadata";function ia(e){return{info:[Qn,e,ea].join(Zn),topology:[Qn,e,ta].join(Zn),weightSpecs:[Qn,e,na].join(Zn),weightData:[Qn,e,aa].join(Zn),modelMetadata:[Qn,e,ra].join(Zn)}}function oa(e){for(const t of Object.values(e))window.localStorage.removeItem(t)}function sa(e){const t=e.split(Zn);if(t.length<3)throw new Error(`Invalid key format: ${e}`);return t.slice(1,t.length-1).join(Zn)}class la{constructor(e){if(!Ft().getBool("IS_BROWSER")||"undefined"==typeof window||void 0===window.localStorage)throw new Error("The current environment does not support local storage.");if(this.LS=window.localStorage,null==e||!e)throw new Error("For local storage, modelPath must not be null, undefined or empty.");this.modelPath=e,this.keys=ia(this.modelPath)}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");{const t=JSON.stringify(e.modelTopology),n=JSON.stringify(e.weightSpecs),a=Gn(e),r=Un.join(e.weightData);try{this.LS.setItem(this.keys.info,JSON.stringify(a)),this.LS.setItem(this.keys.topology,t),this.LS.setItem(this.keys.weightSpecs,n),this.LS.setItem(this.keys.weightData,function(e){if(jn)return Buffer.from(e).toString("base64");const t=new Uint8Array(e);let n="";for(let e=0,a=t.length;e<a;e++)n+=String.fromCharCode(t[e]);return btoa(n)}(r));return this.LS.setItem(this.keys.modelMetadata,JSON.stringify({format:e.format,generatedBy:e.generatedBy,convertedBy:e.convertedBy,signature:null!=e.signature?e.signature:void 0,userDefinedMetadata:null!=e.userDefinedMetadata?e.userDefinedMetadata:void 0,modelInitializer:null!=e.modelInitializer?e.modelInitializer:void 0,initializerSignature:null!=e.initializerSignature?e.initializerSignature:void 0,trainingConfig:null!=e.trainingConfig?e.trainingConfig:void 0})),{modelArtifactsInfo:a}}catch(e){throw oa(this.keys),new Error(`Failed to save model '${this.modelPath}' to local storage: size quota being exceeded is a possible cause of this failure: modelTopologyBytes=${a.modelTopologyBytes}, weightSpecsBytes=${a.weightSpecsBytes}, weightDataBytes=${a.weightDataBytes}.`)}}}async load(){const e=JSON.parse(this.LS.getItem(this.keys.info));if(null==e)throw new Error(`In local storage, there is no model with name '${this.modelPath}'`);if("JSON"!==e.modelTopologyType)throw new Error("BrowserLocalStorage does not support loading non-JSON model topology yet.");const t={},n=JSON.parse(this.LS.getItem(this.keys.topology));if(null==n)throw new Error(`In local storage, the topology of model '${this.modelPath}' is missing.`);t.modelTopology=n;const a=JSON.parse(this.LS.getItem(this.keys.weightSpecs));if(null==a)throw new Error(`In local storage, the weight specs of model '${this.modelPath}' are missing.`);t.weightSpecs=a;const r=this.LS.getItem(this.keys.modelMetadata);if(null!=r){const e=JSON.parse(r);t.format=e.format,t.generatedBy=e.generatedBy,t.convertedBy=e.convertedBy,null!=e.signature&&(t.signature=e.signature),null!=e.userDefinedMetadata&&(t.userDefinedMetadata=e.userDefinedMetadata),null!=e.modelInitializer&&(t.modelInitializer=e.modelInitializer),null!=e.initializerSignature&&(t.initializerSignature=e.initializerSignature),null!=e.trainingConfig&&(t.trainingConfig=e.trainingConfig)}const i=this.LS.getItem(this.keys.weightData);if(null==i)throw new Error(`In local storage, the binary weight values of model '${this.modelPath}' are missing.`);return t.weightData=function(e){if(jn){const t=Buffer.from(e,"base64");return t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}const t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;++e)n.set([t.charCodeAt(e)],e);return n.buffer}(i),t}}la.URL_SCHEME="localstorage://";const ca=e=>{return Ft().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(la.URL_SCHEME)?(t=e.slice(la.URL_SCHEME.length),new la(t)):null;var t};$n.registerSaveRouter(ca),$n.registerLoadRouter(ca);class ua{constructor(){gt(Ft().getBool("IS_BROWSER"),(()=>"Current environment is not a web browser")),gt("undefined"==typeof window||void 0!==window.localStorage,(()=>"Current browser does not appear to support localStorage")),this.LS=window.localStorage}async listModels(){const e={},t=Qn+Zn,n=Zn+ea;for(let a=0;a<this.LS.length;++a){const r=this.LS.key(a);if(r.startsWith(t)&&r.endsWith(n)){e[sa(r)]=JSON.parse(this.LS.getItem(r))}}return e}async removeModel(e){var t;const n=ia(e=(t=e).startsWith(la.URL_SCHEME)?t.slice(la.URL_SCHEME.length):t);if(null==this.LS.getItem(n.info))throw new Error(`Cannot find model at path '${e}'`);const a=JSON.parse(this.LS.getItem(n.info));return oa(n),a}}class da{constructor(){this.managers={}}static getInstance(){return null==da.instance&&(da.instance=new da),da.instance}static registerManager(e,t){gt(null!=e,(()=>"scheme must not be undefined or null.")),e.endsWith("://")&&(e=e.slice(0,e.indexOf("://"))),gt(e.length>0,(()=>"scheme must not be an empty string."));const n=da.getInstance();gt(null==n.managers[e],(()=>`A model store manager is already registered for scheme '${e}'.`)),n.managers[e]=t}static getManager(e){const t=da.getInstance().managers[e];if(null==t)throw new Error(`Cannot find model manager for scheme '${e}'`);return t}static getSchemes(){return Object.keys(da.getInstance().managers)}}class ha{constructor(){this.messageName="setTimeoutCustom",this.functionRefs=[],this.handledMessageCount=0,this.hasEventListener=!1}fetch(e,t){return fetch(e,t)}now(){return performance.now()}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Browser's encoder only supports utf-8, but got ${t}`);return null==this.textEncoder&&(this.textEncoder=new TextEncoder),this.textEncoder.encode(e)}decode(e,t){return new TextDecoder(t).decode(e)}setTimeoutCustom(e,t){"undefined"!=typeof window&&Ft().getBool("USE_SETTIMEOUTCUSTOM")?(this.functionRefs.push(e),setTimeout((()=>{window.postMessage({name:this.messageName,index:this.functionRefs.length-1},"*")}),t),this.hasEventListener||(this.hasEventListener=!0,window.addEventListener("message",(e=>{if(e.source===window&&e.data.name===this.messageName){e.stopPropagation();(0,this.functionRefs[e.data.index])(),this.handledMessageCount++,this.handledMessageCount===this.functionRefs.length&&(this.functionRefs=[],this.handledMessageCount=0)}}),!0))):setTimeout(e,t)}isTypedArray(e){return Ht(e)}}if(Ft().get("IS_BROWSER")){Ft().setPlatform("browser",new ha);try{da.registerManager(la.URL_SCHEME,new ua)}catch(e){}try{da.registerManager(Yn.URL_SCHEME,new Jn)}catch(e){}}const fa=()=>require("node-fetch");let pa;class ma{constructor(){this.util=require("util"),this.textEncoder=new this.util.TextEncoder}fetch(e,t){return null!=Ft().global.fetch?Ft().global.fetch(e,t):(null==pa&&(pa=fa()),pa(e,t))}now(){const e=process.hrtime();return 1e3*e[0]+e[1]/1e6}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Node built-in encoder only supports utf-8, but got ${t}`);return this.textEncoder.encode(e)}decode(e,t){return 0===e.length?"":new this.util.TextDecoder(t).decode(e)}isTypedArray(e){return this.util.types.isFloat32Array(e)||this.util.types.isInt32Array(e)||this.util.types.isUint8Array(e)||this.util.types.isUint8ClampedArray(e)}}Ft().get("IS_NODE")&&!Ft().get("IS_BROWSER")&&Ft().setPlatform("node",new ma);const ga=On({cast_:function(e,t){const n=Bn(e,"x","cast");if(!function(e){return"bool"===e||"complex64"===e||"float32"===e||"int32"===e||"string"===e}(t))throw new Error(`Failed to cast to unknown dtype ${t}`);if("string"===t&&"string"!==n.dtype||"string"!==t&&"string"===n.dtype)throw new Error("Only strings can be casted to strings");return Nn.runKernel(Ut,{x:n},{dtype:t})}});const va=On({clone_:function(e){const t=Bn(e,"x","clone","string_or_numeric");return Nn.runKernel(jt,{x:t})}});An();const ya={buffer:function(e,t="float32",n){return t=t||"float32",Rt(e),new dn(e,t,n)},cast:ga,clone:va,print:function(e,t=!1){console.log(e.toString(t))}};function ba(e,t){return Nn.tidy(e,t)}function wa(e){Sn(e).forEach((e=>e.dispose()))}fn=ya;const xa=On({add_:function(e,t){let n=Bn(e,"a","add"),a=Bn(t,"b","add");return[n,a]=kn(n,a),Nn.runKernel(Ot,{a:n,b:a})}});const Ea=On({floorDiv_:function(e,t){let n=Bn(e,"a","floorDiv"),a=Bn(t,"b","floorDiv");return[n,a]=kn(n,a),Nn.runKernel("FloorDiv",{a:n,b:a})}});const Ca=On({div_:function(e,t){let n=Bn(e,"a","div"),a=Bn(t,"b","div");return[n,a]=kn(n,a),"int32"===n.dtype&&"int32"===a.dtype?Ea(n,a):Nn.runKernel("RealDiv",{a:n,b:a},{})}});const ka=On({mul_:function(e,t){let n=Bn(e,"a","mul"),a=Bn(t,"b","mul");return[n,a]=kn(n,a),Nn.runKernel("Multiply",{a:n,b:a})}});const Sa=On({abs_:function(e){const t=Bn(e,"x","abs");if("complex64"===t.dtype){return Nn.runKernel("ComplexAbs",{x:t})}return Nn.runKernel("Abs",{x:t})}});const Ta=On({zerosLike_:function(e){const t=Bn(e,"x","zerosLike");return Nn.runKernel("ZerosLike",{x:t})}});const Ia=On({pow_:function(e,t){let n=Bn(e,"base","pow"),a=Bn(t,"exp","pow");return[n,a]=kn(n,a),Nn.runKernel("Pow",{a:n,b:a})}});function Ra(e,t){if((Jt(e)&&"string"!==t||Array.isArray(e))&&"complex64"!==t)throw new Error("Error creating a new Scalar: value must be a primitive (number|boolean|string)");if("string"===t&&Jt(e)&&!(e instanceof Uint8Array))throw new Error("When making a scalar from encoded string, the value must be `Uint8Array`.");return function(e,t,n,a){if(null==a)a=Et(e);else if("complex64"===a)throw new Error("Cannot construct a complex64 tensor directly. Please use tf.complex(real, imag).");if(Cn(e)||En(e)){if("float32"!==a&&"int32"!==a)throw new Error(`Creating tensor from GPU data only supports 'float32'|'int32' dtype, while the dtype is ${a}.`);return Nn.backend.createTensorFromGPUData(e,t||n,a)}if(!Jt(e)&&!Array.isArray(e)&&"number"!=typeof e&&"boolean"!=typeof e&&"string"!=typeof e)throw new Error("values passed to tensor(values) must be a number/boolean/string or an array of numbers/booleans/strings, or a TypedArray");if(null!=t){Rt(t);const e=vt(t),a=vt(n);gt(e===a,(()=>`Based on the provided shape, [${t}], the tensor should have ${e} values but has ${a}`));for(let e=0;e<n.length;++e){const a=e!==n.length-1||n[e]!==vt(t.slice(e));gt(n[e]===t[e]||!a,(()=>`Error creating a new Tensor. Inferred shape (${n}) does not match the provided shape (${t}). `))}}return Jt(e)||Array.isArray(e)||(e=[e]),t=t||n,e="string"!==a?Kt(e,a):Zt(e,[],!0),Nn.makeTensor(e,t,a)}(e,[],[],t)}const Da=On({sqrt_:function(e){const t=Bn(e,"x","sqrt","float32");return Nn.runKernel("Sqrt",{x:t})}});const Aa=On({square_:function(e){const t=Bn(e,"x","square");return Nn.runKernel("Square",{x:t},{})}});const Na=On({sub_:function(e,t){let n=Bn(e,"a","sub"),a=Bn(t,"b","sub");return[n,a]=kn(n,a),Nn.runKernel("Sub",{a:n,b:a})}});const _a=On({maximum_:function(e,t){let n=Bn(e,"a","maximum"),a=Bn(t,"b","maximum");return[n,a]=kn(n,a),"bool"===n.dtype&&(n=ga(n,"int32"),a=ga(a,"int32")),function(e,t){const n=Math.max(e.length,t.length),a=new Array(n);for(let r=0;r<n;r++){let i=e[e.length-r-1];null==i&&(i=1);let o=t[t.length-r-1];if(null==o&&(o=1),1===i)a[n-r-1]=o;else if(1===o)a[n-r-1]=i;else{if(i!==o)throw Error(`Operands could not be broadcast together with shapes ${e} and ${t}.`);a[n-r-1]=i}}}(n.shape,a.shape),Nn.runKernel("Maximum",{a:n,b:a})}});class Fa{getClassName(){return this.constructor.className}static fromConfig(e,t){return new e(t)}}class Ma{constructor(){this.classNameMap={}}static getMap(){return null==Ma.instance&&(Ma.instance=new Ma),Ma.instance}static register(e){Ma.getMap().classNameMap[e.className]=[e,e.fromConfig]}}function Pa(e){gt(null!=e.className,(()=>"Class being registered does not have the static className property defined.")),gt("string"==typeof e.className,(()=>"className is required to be a string, but got type "+typeof e.className)),gt(e.className.length>0,(()=>"Class being registered has an empty-string as its className, which is disallowed.")),Ma.register(e)}class La extends Fa{minimize(e,t=!1,n){const{value:a,grads:r}=this.computeGradients(e,n);if(null!=n){const e=n.map((e=>({name:e.name,tensor:r[e.name]})));this.applyGradients(e)}else this.applyGradients(r);return wa(r),t?a:(a.dispose(),null)}get iterations(){return null==this.iterations_&&(this.iterations_=0),this.iterations_}incrementIterations(){this.iterations_=this.iterations+1}computeGradients(e,t){return function(e,t){gt(Ct(e),(()=>"The f passed in variableGrads(f) must be a function")),gt(null==t||Array.isArray(t)&&t.every((e=>e instanceof mn)),(()=>"The varList passed in variableGrads(f, varList) must be an array of variables"));const n=null!=t;if(!n){t=[];for(const e in Nn.registeredVariables)t.push(Nn.registeredVariables[e])}const a=n?t.filter((e=>!e.trainable)):null,r=t.length;gt((t=t.filter((e=>e.trainable))).length>0,(()=>`variableGrads() expects at least one of the input variables to be trainable, but none of the ${r} variables is trainable.`));const{value:i,grads:o}=Nn.gradients(e,t,null,!0);gt(o.some((e=>null!=e)),(()=>"Cannot find a connection between any variable and the result of the loss function y=f(x). Please make sure the operations that use variables are inside the function f passed to minimize().")),gt(0===i.rank,(()=>`The f passed in variableGrads(f) must return a scalar, but it returned a rank-${i.rank} tensor`));const s={};return t.forEach(((e,t)=>{null!=o[t]&&(s[e.name]=o[t])})),null!=a&&a.forEach((e=>s[e.name]=null)),{value:i,grads:s}}(e,t)}dispose(){null!=this.iterations_&&wa(this.iterations_)}async saveIterations(){return null==this.iterations_&&(this.iterations_=0),{name:"iter",tensor:Ra(this.iterations_,"int32")}}async getWeights(){throw new Error("getWeights() is not implemented for this optimizer yet.")}async setWeights(e){throw new Error(`setWeights() is not implemented for this optimizer class ${this.getClassName()}`)}async extractIterations(e){return this.iterations_=(await e[0].tensor.data())[0],e.slice(1)}}Object.defineProperty(La,Symbol.hasInstance,{value:e=>null!=e.minimize&&null!=e.computeGradients&&null!=e.applyGradients});class Ba extends La{static get className(){return"SGD"}constructor(e){super(),this.learningRate=e,this.setLearningRate(e)}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);t.forEach(((t,n)=>{const a=Array.isArray(e)?e[n].tensor:e[t];if(null==a)return;const r=Nn.registeredVariables[t];ba((()=>{const e=xa(ka(this.c,a),r);r.assign(e)}))})),this.incrementIterations()}setLearningRate(e){var t;this.learningRate=e,null!=this.c&&this.c.dispose(),this.c=(t=Ra(-e),Nn.keep(t))}dispose(){this.c.dispose()}async getWeights(){return[await this.saveIterations()]}async setWeights(e){if(0!==(e=await this.extractIterations(e)).length)throw new Error("SGD optimizer does not have settable weights.")}getConfig(){return{learningRate:this.learningRate}}static fromConfig(e,t){return new e(t.learningRate)}}const Oa=[class extends La{static get className(){return"Adadelta"}constructor(e,t,n=null){super(),this.learningRate=e,this.rho=t,this.epsilon=n,this.accumulatedGrads=[],this.accumulatedUpdates=[],null==n&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];null==this.accumulatedGrads[n]&&(this.accumulatedGrads[n]={originalName:`${t}/accum_grad`,variable:ba((()=>Ta(a).variable(false)))}),null==this.accumulatedUpdates[n]&&(this.accumulatedUpdates[n]={originalName:`${t}/accum_var`,variable:ba((()=>Ta(a).variable(false)))});const r=Array.isArray(e)?e[n].tensor:e[t];if(null==r)return;const i=this.accumulatedGrads[n].variable,o=this.accumulatedUpdates[n].variable;ba((()=>{const e=xa(ka(i,this.rho),ka(Aa(r),1-this.rho)),t=ka(Ca(Da(xa(o,this.epsilon)),Da(xa(i,this.epsilon))),r),n=xa(ka(o,this.rho),ka(Aa(t),1-this.rho));i.assign(e),o.assign(n);const s=xa(ka(t,-this.learningRate),a);a.assign(s)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedUpdates&&(wa(this.accumulatedGrads.map((e=>e.variable))),wa(this.accumulatedUpdates.map((e=>e.variable))))}async getWeights(){const e=[...this.accumulatedGrads,...this.accumulatedUpdates];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){const t=(e=await this.extractIterations(e)).length/2;this.accumulatedGrads=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedUpdates=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,rho:this.rho,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.rho,t.epsilon)}},class extends La{static get className(){return"Adagrad"}constructor(e,t=.1){super(),this.learningRate=e,this.initialAccumulatorValue=t,this.accumulatedGrads=[]}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];if(null==this.accumulatedGrads[n]){const e=!1;this.accumulatedGrads[n]={originalName:`${t}/accumulator`,variable:ba((()=>function(e,t,n){return Rt(e),n=n||Et(t),Nn.runKernel("Fill",{},{shape:e,value:t,dtype:n})}(a.shape,this.initialAccumulatorValue).variable(e)))}}const r=Array.isArray(e)?e[n].tensor:e[t];if(null==r)return;const i=this.accumulatedGrads[n].variable;ba((()=>{const e=xa(i,Aa(r));i.assign(e);const t=xa(ka(Ca(r,Da(xa(e,Nn.backend.epsilon()))),-this.learningRate),a);a.assign(t)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedGrads&&wa(this.accumulatedGrads.map((e=>e.variable)))}async getWeights(){return[await this.saveIterations()].concat(this.accumulatedGrads.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulatedGrads=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,initialAccumulatorValue:this.initialAccumulatorValue}}static fromConfig(e,t){return new e(t.learningRate,t.initialAccumulatorValue)}},class extends La{static get className(){return"Adam"}constructor(e,t,n,a=null){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=a,this.accumulatedFirstMoment=[],this.accumulatedSecondMoment=[],ba((()=>{this.accBeta1=Ra(t).variable(),this.accBeta2=Ra(n).variable()})),null==a&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);ba((()=>{const n=Na(1,this.accBeta1),a=Na(1,this.accBeta2);t.forEach(((t,r)=>{const i=Nn.registeredVariables[t];null==this.accumulatedFirstMoment[r]&&(this.accumulatedFirstMoment[r]={originalName:`${t}/m`,variable:ba((()=>Ta(i).variable(false)))}),null==this.accumulatedSecondMoment[r]&&(this.accumulatedSecondMoment[r]={originalName:`${t}/v`,variable:ba((()=>Ta(i).variable(false)))});const o=Array.isArray(e)?e[r].tensor:e[t];if(null==o)return;const s=this.accumulatedFirstMoment[r].variable,l=this.accumulatedSecondMoment[r].variable,c=xa(ka(s,this.beta1),ka(o,1-this.beta1)),u=xa(ka(l,this.beta2),ka(Aa(o),1-this.beta2)),d=Ca(c,n),h=Ca(u,a);s.assign(c),l.assign(u);const f=xa(ka(Ca(d,xa(Da(h),this.epsilon)),-this.learningRate),i);i.assign(f)})),this.accBeta1.assign(ka(this.accBeta1,this.beta1)),this.accBeta2.assign(ka(this.accBeta2,this.beta2))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.accBeta2.dispose(),null!=this.accumulatedFirstMoment&&wa(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedSecondMoment&&wa(this.accumulatedSecondMoment.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedFirstMoment,...this.accumulatedSecondMoment];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e),ba((()=>{this.accBeta1.assign(Ia(this.beta1,this.iterations_+1)),this.accBeta2.assign(Ia(this.beta2,this.iterations_+1))}));const t=e.length/2;this.accumulatedFirstMoment=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedSecondMoment=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon)}},class extends La{static get className(){return"Adamax"}constructor(e,t,n,a=null,r=0){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=a,this.decay=r,this.accumulatedFirstMoment=[],this.accumulatedWeightedInfNorm=[],ba((()=>{this.iteration=Ra(0).variable(),this.accBeta1=Ra(t).variable()})),null==a&&(this.epsilon=Nn.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);ba((()=>{const n=Na(1,this.accBeta1),a=Ca(-this.learningRate,xa(ka(this.iteration,this.decay),1));t.forEach(((t,r)=>{const i=Nn.registeredVariables[t];null==this.accumulatedFirstMoment[r]&&(this.accumulatedFirstMoment[r]={originalName:`${t}/m`,variable:Ta(i).variable(false)}),null==this.accumulatedWeightedInfNorm[r]&&(this.accumulatedWeightedInfNorm[r]={originalName:`${t}/v`,variable:Ta(i).variable(false)});const o=Array.isArray(e)?e[r].tensor:e[t];if(null==o)return;const s=this.accumulatedFirstMoment[r].variable,l=this.accumulatedWeightedInfNorm[r].variable,c=xa(ka(s,this.beta1),ka(o,1-this.beta1)),u=ka(l,this.beta2),d=Sa(o),h=_a(u,d);s.assign(c),l.assign(h);const f=xa(ka(Ca(a,n),Ca(c,xa(h,this.epsilon))),i);i.assign(f)})),this.iteration.assign(xa(this.iteration,1)),this.accBeta1.assign(ka(this.accBeta1,this.beta1))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.iteration.dispose(),null!=this.accumulatedFirstMoment&&wa(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedWeightedInfNorm&&wa(this.accumulatedWeightedInfNorm.map((e=>e.variable)))}async getWeights(){throw new Error("getWeights() is not implemented for Adamax yet.")}async setWeights(e){throw new Error("setWeights() is not implemented for Adamax yet.")}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon,decay:this.decay}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon,t.decay)}},class extends Ba{static get className(){return"Momentum"}constructor(e,t,n=!1){super(e),this.learningRate=e,this.momentum=t,this.useNesterov=n,this.accumulations=[],this.m=Ra(this.momentum)}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t];if(null==this.accumulations[n]){const e=!1;this.accumulations[n]={originalName:`${t}/momentum`,variable:ba((()=>Ta(a).variable(e)))}}const r=this.accumulations[n].variable,i=Array.isArray(e)?e[n].tensor:e[t];null!=i&&ba((()=>{let e;const t=xa(ka(this.m,r),i);e=xa(ka(this.c,this.useNesterov?xa(i,ka(t,this.m)):t),a),r.assign(t),a.assign(e)}))})),this.incrementIterations()}dispose(){this.m.dispose(),null!=this.accumulations&&wa(this.accumulations.map((e=>e.variable)))}setMomentum(e){this.momentum=e}async getWeights(){return[await this.saveIterations()].concat(this.accumulations.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulations=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,momentum:this.momentum,useNesterov:this.useNesterov}}static fromConfig(e,t){return new e(t.learningRate,t.momentum,t.useNesterov)}},class extends La{static get className(){return"RMSProp"}constructor(e,t=.9,n=0,a=null,r=!1){if(super(),this.learningRate=e,this.decay=t,this.momentum=n,this.epsilon=a,this.accumulatedMeanSquares=[],this.accumulatedMoments=[],this.accumulatedMeanGrads=[],this.centered=r,null==a&&(this.epsilon=Nn.backend.epsilon()),null==e)throw new Error("learningRate for RMSPropOptimizer must be defined.")}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Nn.registeredVariables[t],r=!1;null==this.accumulatedMeanSquares[n]&&(this.accumulatedMeanSquares[n]={originalName:`${t}/rms`,variable:ba((()=>Ta(a).variable(r)))}),null==this.accumulatedMoments[n]&&(this.accumulatedMoments[n]={originalName:`${t}/momentum`,variable:ba((()=>Ta(a).variable(r)))}),null==this.accumulatedMeanGrads[n]&&this.centered&&(this.accumulatedMeanGrads[n]={originalName:`${t}/mg`,variable:ba((()=>Ta(a).variable(r)))});const i=Array.isArray(e)?e[n].tensor:e[t];if(null==i)return;const o=this.accumulatedMeanSquares[n].variable,s=this.accumulatedMoments[n].variable;ba((()=>{const e=xa(ka(o,this.decay),ka(Aa(i),1-this.decay));if(this.centered){const t=this.accumulatedMeanGrads[n].variable,r=xa(ka(t,this.decay),ka(i,1-this.decay)),l=Ca(ka(i,this.learningRate),Da(Na(e,xa(Aa(r),this.epsilon)))),c=xa(ka(s,this.momentum),l);o.assign(e),t.assign(r),s.assign(c);const u=Na(a,c);a.assign(u)}else{const e=xa(ka(o,this.decay),ka(Aa(i),1-this.decay)),t=xa(ka(s,this.momentum),Ca(ka(i,this.learningRate),Da(xa(e,this.epsilon))));o.assign(e),s.assign(t);const n=Na(a,t);a.assign(n)}}))})),this.incrementIterations()}dispose(){null!=this.accumulatedMeanSquares&&wa(this.accumulatedMeanSquares.map((e=>e.variable))),null!=this.accumulatedMeanGrads&&this.centered&&wa(this.accumulatedMeanGrads.map((e=>e.variable))),null!=this.accumulatedMoments&&wa(this.accumulatedMoments.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedMeanSquares,...this.accumulatedMoments];return this.centered&&e.push(...this.accumulatedMeanGrads),[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);const t=this.centered?e.length/3:e.length/2,n=!1;this.accumulatedMeanSquares=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.accumulatedMoments=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.centered&&(this.accumulatedMeanGrads=e.slice(2*t,3*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))))}getConfig(){return{learningRate:this.learningRate,decay:this.decay,momentum:this.momentum,epsilon:this.epsilon,centered:this.centered}}static fromConfig(e,t){return new e(t.learningRate,t.decay,t.momentum,t.epsilon,t.centered)}},Ba];!function(){for(const e of Oa)Pa(e)}();const Ua={},ja={alpha:!1,antialias:!1,premultipliedAlpha:!1,preserveDrawingBuffer:!1,depth:!1,stencil:!1,failIfMajorPerformanceCaveat:!0};function za(e,t){if(!(e in Ua)||null!=t){const n=function(e,t){if(1!==e&&2!==e)throw new Error("Cannot get WebGL rendering context, WebGL is disabled.");const n=null==t?function(e){if(Ft().getBool("IS_SAFARI")||"undefined"==typeof OffscreenCanvas||2!==e){if("undefined"!=typeof document)return document.createElement("canvas");throw new Error("Cannot create a canvas in this context")}return new OffscreenCanvas(300,150)}(e):t;n.addEventListener("webglcontextlost",(t=>{t.preventDefault(),delete Ua[e]}),!1),Ft().getBool("SOFTWARE_WEBGL_ENABLED")&&(ja.failIfMajorPerformanceCaveat=!1);if(1===e)return n.getContext("webgl",ja)||n.getContext("experimental-webgl",ja);return n.getContext("webgl2",ja)}(e,t);if(null===n)return console.log("Could not get context for WebGL version",e),null;Ua[e]=n}const n=Ua[e];return null==n||n.isContextLost()?(delete Ua[e],za(e)):(n.disable(n.DEPTH_TEST),n.disable(n.STENCIL_TEST),n.disable(n.BLEND),n.disable(n.DITHER),n.disable(n.POLYGON_OFFSET_FILL),n.disable(n.SAMPLE_COVERAGE),n.enable(n.SCISSOR_TEST),n.enable(n.CULL_FACE),n.cullFace(n.BACK),Ua[e])}var Ga="https://websdk-cdn-dev.idmission.com/assets";function $a(e){var t=e.width,n=e.height;return e instanceof HTMLVideoElement&&(t=e.videoWidth,n=e.videoHeight),[t,n]}var Va,qa=u.default.canvas(Va||(Va=y(["\n display: none;\n"],["\n display: none;\n"])));function Wa(e,t,n,a){if(e){var r=e.getContext("2d");if(r){if(!n||!a){var i=$a(t);n||(n=i[0]),a||(a=i[1])}e.width=n,e.height=a,r.drawImage(t,0,0,n,a)}}}function Ha(e){if(e){var t=e.getContext("2d");t&&t.clearRect(0,0,e.width,e.height)}}function Ka(e,t,n,a){if(!e||!t)return"";var r=e.getContext("2d"),i=t.getContext("2d");if(!r||!i)throw new Error("could not get 2d context");e.width=n.width,e.height=n.height,r.putImageData(n,0,0);var o=a.box,s=o.width,l=.6*n.height-s,c=Math.max(0,o.xMin-l/2);_e()?(t.width=n.width,t.height=n.height,i.drawImage(e,0,0,t.width,t.height)):(t.width=s+l,t.height=n.height,i.drawImage(e,c,0,t.width,t.height,0,0,t.width,t.height));var u=t.toDataURL("image/jpeg",.92);return Ha(e),Ha(t),u}var Ya={boxes:0,scores:7,labels:4},Xa=t.createContext({ready:!1,working:{current:!1},error:null,thresholds:{},setThresholds:function(){return null},makePrediction:function(){return null},onPredictionMade:function(){return null},detectionTime:0,focusPredictionTime:0,getBestFrame:function(){return Promise.resolve(null)},resetBestFrame:function(){return null}}),Ja="".concat(Ga,"/models/documentdetection448/model.json"),Za="".concat(Ga,"/models/focus/model.json"),Qa=function(e){var n=e.children,a=e.documentDetectionModelUrl,i=e.focusModelUrl,o=e.logPredictions,l=void 0!==o&&o,c=t.useState(!1),u=c[0],h=c[1],f=t.useState(0),p=f[0],v=f[1],y=t.useState(0),b=y[0],w=y[1],x=t.useState(0),E=x[0],C=x[1],k=t.useState(0),S=k[0],T=k[1],I=t.useState(0),R=I[0],D=I[1],A=t.useRef(!1),N=t.useRef(),_=t.useRef(null),F=t.useState(0),M=F[0],P=F[1],L=t.useState(0),B=L[0],O=L[1],U=t.useState(null),j=U[0],z=U[1];t.useEffect((function(){h(!1);var e=a||Ja,t=i||Za;function n(){return m(this,void 0,void 0,(function(){return g(this,(function(n){switch(n.label){case 0:return d.ENV.set("WEBGL_DELETE_TEXTURE_THRESHOLD",52428800),[4,d.setBackend("webgl")];case 1:return n.sent(),[4,d.ready()];case 2:return n.sent(),[4,Promise.all([Te(e),ft(t)])];case 3:return n.sent(),[2]}}))}))}function o(){return m(this,void 0,void 0,(function(){var a;return g(this,(function(i){switch(i.label){case 0:return h(!1),le=null,ct=null,delete Ua[2],(a=document.createElement("canvas").getContext("webgl2"))&&e&&t?(r.setWebGLContext(2,a),function(){try{d.backend().dispose()}catch(e){console.error("failed to dispose backend",e)}}(),[4,n()]):[3,2];case 1:i.sent(),h(!0),i.label=2;case 2:return[2]}}))}))}n().then((function(){h(!0)})).catch((function(e){z(e)}));var s=za(2).canvas;return s.addEventListener("webglcontextlost",o),function(){var e;null===(e=s.removeEventListener)||void 0===e||e.call(s,"webglcontextlost",o)}}),[a,i]);var G=t.useMemo((function(){return{document:p,passport:b,mrz:E,pdf417:S,focus:R}}),[p,R,E,b,S]),$=t.useCallback((function(e){e.document&&v(e.document),e.passport&&w(e.passport),e.mrz&&C(e.mrz),e.pdf417&&T(e.pdf417),e.focus&&D(e.focus)}),[]),V=t.useState(0),q=V[0],W=V[1],H=t.useRef(null),K=t.useRef(0),Y=t.useCallback((function(e){A.current=!0,m(void 0,void 0,void 0,(function(){var t,n;return g(this,(function(a){switch(a.label){case 0:return le&&ct&&_.current?[4,er(e,_.current,G,l)]:[2];case 1:return t=a.sent(),P(t.detectionTime),O(t.focusPredictionTime),K.current<=t.focusScore&&(K.current=t.focusScore,Wa(H.current,e)),t.allZero&&W((function(e){return e+1})),null===(n=N.current)||void 0===n||n.call(N,t),A.current=!1,[2]}}))}))}),[l,G]);t.useEffect((function(){q>=2&&z(new Error("model is returning all zeroes"))}),[q]);var X=t.useCallback((function(e){N.current=e}),[]),J=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return H.current?(e=H.current.toDataURL("image/jpeg",.98),[4,fetch(e)]):[2,null];case 1:return[4,t.sent().blob()];case 2:return[2,t.sent()]}}))}))}),[]),Z=t.useCallback((function(){K.current=0,Ha(H.current)}),[]),Q=t.useMemo((function(){return{ready:u,working:A,thresholds:G,setThresholds:$,makePrediction:Y,onPredictionMade:X,detectionTime:M,focusPredictionTime:B,getBestFrame:J,resetBestFrame:Z,error:j}}),[M,B,J,j,Y,X,u,Z,$,G]);return s.default.createElement(Xa.Provider,{value:Q},n,s.default.createElement(qa,{ref:_}),s.default.createElement(qa,{ref:H}))};function er(e,t,n,a){var r,i,o,s,l,c,u,d,h,f;return void 0===a&&(a=!1),m(this,void 0,void 0,(function(){var p,m,v,y,b,w,x,E,C,k,S,T,I,R,D,A,N,_,F,M,P,L,B,O,U,j,z,G,$,V;return g(this,(function(g){switch(g.label){case 0:return p=$a(e),m=p[0],v=p[1],Wa(t,e),[4,tr(e,a)];case 1:return y=g.sent(),w=y.scores,x=y.labels,E=y.time,C=(b=y.boxes).length>0&&!b.some((function(e){return e.some((function(e){return e>0}))})),k=function(e){var t={};return e.forEach((function(e,n){e&&(t[e.label]||(t[e.label]=[0,-1]),e.score>t[e.label][0]&&(t[e.label]=[e.score,n]))})),Object.keys(t).map((function(n){return e[t[n][1]]})).filter((function(e){return!!e}))}(b.map((function(e,t){return function(e,t,n){var a=e[0],r=e[1];return{score:t,bbox:[r,a,e[3]-r,e[2]-a],label:Ie[n]}}(e,w[t],x[t])}))),S=k.find((function(e){return"Document"===e.label})),T=k.find((function(e){return"Passport Page"===e.label})),I=null!==(r=null==S?void 0:S.score)&&void 0!==r?r:0,R=null!==(i=null==T?void 0:T.score)&&void 0!==i?i:0,D=R>=(null!==(o=n.passport)&&void 0!==o?o:0),A=I>R?S:T,_=(N=D?R:I)>=(null!==(s=n.document)&&void 0!==s?s:0),F=se.NONE,D?F=se.PASSPORT:_&&(F=se.ID_CARD),M=k.find((function(e){return"MRZ"===e.label})),P=null!==(l=null==M?void 0:M.score)&&void 0!==l?l:0,L=P>=(null!==(c=n.mrz)&&void 0!==c?c:0),B=k.find((function(e){return"PDF417"===e.label})),O=null!==(u=null==B?void 0:B.score)&&void 0!==u?u:0,U=O>=(null!==(d=n.pdf417)&&void 0!==d?d:0),j=null,z=0,G=0,$=!1,_?[4,nr(e,null==A?void 0:A.bbox,a)]:[3,3];case 2:V=g.sent(),z=V[1],G=null!==(h=null==(j=V[0])?void 0:j[1])&&void 0!==h?h:0,$=G>=(null!==(f=n.focus)&&void 0!==f?f:0),g.label=3;case 3:return[2,{detectedObjects:k,detectionScore:N,detectionTime:E,detectionThresholdMet:_,detectedDocumentType:F,passportDetectionScore:R,passportDetectionThresholdMet:D,mrzDetectionScore:P,mrzDetectionThresholdMet:L,pdf417DetectionScore:O,pdf417DetectionThresholdMet:U,bestDocumentOrPassport:A,bestMrz:M,bestPdf417:B,focusScore:G,focusThresholdMet:$,focusPredictionTime:z,frameWidth:m,frameHeight:v,allZero:C}]}}))}))}function tr(e,t){return void 0===t&&(t=!1),m(this,void 0,void 0,(function(){var n,a,r,i,o,s,l,c,u,h,f,p,m,v,y,b,w;return g(this,(function(g){switch(g.label){case 0:if(!le)throw new Error("document detection model is not loaded");n=new Date,g.label=1;case 1:return g.trys.push([1,7,,8]),a=d.browser.fromPixels(e),t&&console.time("resize"),r=d.image.resizeBilinear(a,[448,448]),t&&console.timeEnd("resize"),a.dispose(),t&&console.time("convert to int32"),i=d.cast(r,"int32"),r.dispose(),l=(s=d).tensor4d,u=(c=Array).from,[4,i.data()];case 2:return o=l.apply(s,[u.apply(c,[g.sent()]),[1,448,448,3]]),i.dispose(),h=d.cast(o,"int32"),t&&console.timeEnd("convert to int32"),o.dispose(),t&&console.time("predictions"),[4,le.executeAsync(h)];case 3:return f=g.sent(),t&&console.timeEnd("predictions"),h.dispose(),p=f,t&&console.log("predictions made!",p.map((function(e){return e.arraySync()}))),[4,p[Ya.boxes].array()];case 4:return m=g.sent()[0],[4,p[Ya.scores].array()];case 5:return v=g.sent()[0],[4,p[Ya.labels].array()];case 6:return y=(y=g.sent()[0]).map((function(e){return Math.round(e)})),d.dispose(f),b=(new Date).getTime()-n.getTime(),[2,{boxes:m,scores:v,labels:y,time:b}];case 7:return w=g.sent(),console.error("caught error in makeDocumentDetectionPredictions",w),[2,{boxes:[],scores:[],labels:[],time:0}];case 8:return[2]}}))}))}function nr(e,t,n){return void 0===n&&(n=!1),m(this,void 0,void 0,(function(){var a,r,i,o,s,l,c,u,h,f,p,m,v;return g(this,(function(g){switch(g.label){case 0:if(!ct)throw new Error("focus model is not loaded");a=new Date,g.label=1;case 1:return g.trys.push([1,5,,6]),r=void 0,r=d.browser.fromPixels(t?function(e,t){var n=document.createElement("canvas"),a=n.getContext("2d");if(!a)throw new Error("could not get 2d context");var r=$a(e),i=r[0],o=r[1],s=t[0],l=t[1],c=t[2],u=t[3];return n.width=c*i,n.height=u*o,a.drawImage(e,s*i,l*o,c*i,u*o,0,0,c*i,u*o),n}(e,t):e),i=d.image.resizeBilinear(r,[448,448]),r.dispose(),o=d.cast(i,"int32"),i.dispose(),c=(l=d).tensor4d,h=(u=Array).from,[4,o.data()];case 2:return s=c.apply(l,[h.apply(u,[g.sent()]),[1,448,448,3]]),o.dispose(),f=d.cast(s,"int32"),s.dispose(),n&&console.time("focus prediction"),[4,ct.predict(f)];case 3:return p=g.sent(),f.dispose(),[4,p.array()];case 4:return m=g.sent()[0],n&&console.timeEnd("focus prediction"),d.dispose(p),v=(new Date).getTime()-a.getTime(),[2,[m,v]];case 5:return g.sent(),[2,[[0,0],0]];case 6:return[2]}}))}))}var ar,rr,ir,or,sr=u.default.span(ar||(ar=y(["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"],["\n font-size: 16px;\n font-family: monospace;\n position: absolute;\n left: 20px;\n bottom: 20px;\n color: limegreen;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1001;\n"]))),lr=u.default.div(rr||(rr=y(["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ","\n"],["\n position: absolute;\n z-index: 1001;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n overflow: hidden;\n ","\n"])),(function(e){return e.$flipX?"transform: scaleX(-1);":""})),cr=u.default.div(ir||(ir=y(["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ",";\n color: ",";\n ","\n"],["\n font: 10px monospace;\n position: absolute;\n border: 3px solid ",";\n color: ",";\n ","\n"])),(function(e){var t=e.$color;return null!=t?t:"green"}),(function(e){var t=e.$color;return null!=t?t:"green"}),(function(e){return e.$flipX?"transform: scaleX(-1);":""})),ur=u.default.div(or||(or=y(["\n position: absolute;\n width: 4px;\n height: 4px;\n border: 2px solid ",";\n font: 10px monospace;\n color: ",";\n border-radius: 50%;\n ","\n"],["\n position: absolute;\n width: 4px;\n height: 4px;\n border: 2px solid ",";\n font: 10px monospace;\n color: ",";\n border-radius: 50%;\n ","\n"])),(function(e){var t=e.$color;return null!=t?t:"red"}),(function(e){var t=e.$color;return null!=t?t:"red"}),(function(e){return e.$flipX?"transform: scaleX(-1);":""}));function dr(e){var n=e.enabled,a=void 0===n||n,r=e.pageWidth,i=e.pageHeight,o=e.videoWidth,s=e.videoHeight;return t.useMemo((function(){var e=!1,t=0,n=0,l=0,c=0;return a&&((e=r/i<o/s)?l=((t=o*(i/s))-r)/2:c=((n=s*(r/o))-i)/2),{horizontal:e,pageWidth:r,pageHeight:i,videoWidth:o,videoHeight:s,scaledWidth:t,scaledHeight:n,xOffset:l,yOffset:c}}),[a,i,r,s,o])}function hr(e){var t=e.obj,n=e.color,a=e.scaling,r=a.pageWidth,i=a.pageHeight,o=a.scaledWidth,l=a.scaledHeight,c=[t.bbox[1],t.bbox[0],t.bbox[2],t.bbox[3]],u=c[0],d=c[1],h=c[2],f=c[3];return a.horizontal?(u*=i,d*=o-a.xOffset,h*=o,f*=i):(u*=l-a.yOffset,d*=r,h*=r,f*=l),s.default.createElement(cr,{$flipX:e.flipX,$color:void 0===n?"green":n,style:{top:u,left:d,width:h,height:f}},t.label," (",t.score.toFixed(3),")")}function fr(e){var t,n,a,r,i=e.face,o=e.flipX,l=e.color,c=e.scaling,u=c.pageWidth,d=c.pageHeight,h=c.videoWidth,f=c.videoHeight,p=c.scaledWidth,m=c.scaledHeight;return c.horizontal?(t=i.box.yMin/f*d,n=i.box.xMin/h*p-c.xOffset,a=i.box.width/h*p,r=i.box.height/f*d):(t=i.box.yMin/f*m-c.yOffset,n=i.box.xMin/h*u,a=i.box.width/h*u,r=i.box.height/f*m),s.default.createElement(s.default.Fragment,null,s.default.createElement(cr,{$flipX:o,$color:void 0===l?"green":l,style:{top:t,left:n,width:a,height:r}}),i.keypoints.map((function(e,t){return s.default.createElement(pr,{key:t,point:e,scaling:c,flipX:o})})))}function pr(e){var t,n,a=e.point,r=e.color,i=e.scaling,o=i.videoWidth,l=i.videoHeight;return i.horizontal?(t=a.x/o*i.scaledWidth-i.xOffset,n=a.y/l*i.pageHeight):(t=a.x/o*i.pageWidth,n=a.y/l*i.scaledHeight-i.yOffset),s.default.createElement(ur,{$flipX:e.flipX,$color:void 0===r?"red":r,style:{top:n-=2,left:t-=2}})}var mr,gr,vr,yr,br,wr,xr=u.default.button(mr||(mr=y(["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"],["\n position: absolute;\n top: 12px;\n right: 12px;\n font-size: 20px;\n width: 32px;\n height: 32px;\n font-family: monospace;\n z-index: 1002;\n border: none;\n border-radius: 4px;\n background: #ccc;\n cursor: pointer;\n padding: 8px;\n box-sizing: border-box;\n display: flex;\n\n &:hover {\n background: #ddd;\n }\n\n & > svg {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n"]))),Er=function(e){return s.default.createElement(xr,{onClick:e.onClick,className:e.className},s.default.createElement("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"19.3 19.3 25.499999999999996 25.499999999999996",enableBackground:"new 0 0 64 64",width:16,height:16},s.default.createElement("g",{id:"close-outline-bot_x5F_s1g1_x5F_s2g2_x5F_s3g1_x5F_s4g1"},s.default.createElement("line",{fill:"none",stroke:"#000000",strokeWidth:"1",strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:"10",x1:"19.75",y1:"44.25",x2:"44.25",y2:"19.75"})),s.default.createElement("g",{id:"close-outline-top_x5F_s1g1_x5F_s2g2_x5F_s3g1_x5F_s4g1"},s.default.createElement("line",{fill:"none",stroke:"#000000",strokeWidth:"1",strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:"10",x1:"44.25",y1:"44.25",x2:"19.75",y2:"19.75"}))))},Cr=u.default.div(gr||(gr=y(["\n display: inline-block;\n width: ","px;\n height: ","px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ","px;\n height: ","px;\n margin: 8px;\n border-radius: 50%;\n border: ","px solid\n ",";\n border-color: "," transparent\n "," transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"],["\n display: inline-block;\n width: ","px;\n height: ","px;\n margin: auto;\n\n &:after {\n content: ' ';\n display: block;\n width: ","px;\n height: ","px;\n margin: 8px;\n border-radius: 50%;\n border: ","px solid\n ",";\n border-color: "," transparent\n "," transparent;\n animation: lds-dual-ring 1.2s linear infinite;\n box-sizing: content-box;\n }\n\n @keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n"])),(function(e){var t=e.$size;return null!=t?t:80}),(function(e){var t=e.$size;return null!=t?t:80}),(function(e){var t=e.$size;return(null!=t?t:80)-16}),(function(e){var t=e.$size;return(null!=t?t:80)-16}),(function(e){var t=e.$thickness;return null!=t?t:6}),(function(e){var t=e.$color;return null!=t?t:"#888"}),(function(e){var t=e.$color;return null!=t?t:"#888"}),(function(e){var t=e.$color;return null!=t?t:"#888"})),kr=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.text,r=e.imageUrl;return s.default.createElement(Ir,{className:n.container},a&&s.default.createElement(Rr,{className:n.text},a),s.default.createElement(Dr,{className:n.imageContainer},s.default.createElement("img",{src:r,alt:"",className:n.image})))},Sr=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.text,r=e.imageUrl;return s.default.createElement(Ir,{className:n.container},s.default.createElement(Rr,{className:n.text},s.default.createElement(Tr,{className:n.spinner,$size:24,$color:"white",$thickness:3}),a),s.default.createElement(Dr,{className:n.imageContainer},s.default.createElement("img",{src:r,alt:"",className:n.image})))},Tr=u.default(Cr)(vr||(vr=y(["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"],["\n position: relative;\n top: 4px;\n left: -3px;\n margin: 0 3px 0 -12px;\n"]))),Ir=u.default.div(yr||(yr=y(["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"],["\n position: absolute;\n display: flex;\n flex-direction: column;\n height: 33%;\n bottom: 12px;\n right: 12px;\n"]))),Rr=u.default.div(br||(br=y(["\n display: block;\n position: absolute;\n top: -32px;\n font: 14px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,\n Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"],["\n display: block;\n position: absolute;\n top: -32px;\n font: 14px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica,\n Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n color: white;\n text-align: center;\n margin: 0 auto;\n width: 100%;\n"]))),Dr=u.default.div(wr||(wr=y(["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"],["\n position: relative;\n height: calc(100% - 8px);\n padding: 4px;\n border-radius: 4px;\n background: white;\n\n & > img {\n border-radius: 4px;\n width: auto;\n max-height: 100%;\n }\n"])));function Ar(e){return Ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ar(e)}function Nr(e){var t=function(e,t){if("object"!==Ar(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==Ar(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Ar(t)?t:String(t)}function _r(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,Nr(a.key),a)}}var Fr=[],Mr=Fr.forEach,Pr=Fr.slice;var Lr=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Br=function(e,t,n,a){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{path:"/",sameSite:"strict"};n&&(r.expires=new Date,r.expires.setTime(r.expires.getTime()+60*n*1e3)),a&&(r.domain=a),document.cookie=function(e,t,n){var a=n||{};a.path=a.path||"/";var r=encodeURIComponent(t),i="".concat(e,"=").concat(r);if(a.maxAge>0){var o=a.maxAge-0;if(Number.isNaN(o))throw new Error("maxAge should be a Number");i+="; Max-Age=".concat(Math.floor(o))}if(a.domain){if(!Lr.test(a.domain))throw new TypeError("option domain is invalid");i+="; Domain=".concat(a.domain)}if(a.path){if(!Lr.test(a.path))throw new TypeError("option path is invalid");i+="; Path=".concat(a.path)}if(a.expires){if("function"!=typeof a.expires.toUTCString)throw new TypeError("option expires is invalid");i+="; Expires=".concat(a.expires.toUTCString())}if(a.httpOnly&&(i+="; HttpOnly"),a.secure&&(i+="; Secure"),a.sameSite)switch("string"==typeof a.sameSite?a.sameSite.toLowerCase():a.sameSite){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return i}(e,encodeURIComponent(t),r)},Or=function(e){for(var t="".concat(e,"="),n=document.cookie.split(";"),a=0;a<n.length;a++){for(var r=n[a];" "===r.charAt(0);)r=r.substring(1,r.length);if(0===r.indexOf(t))return r.substring(t.length,r.length)}return null},Ur={name:"cookie",lookup:function(e){var t;if(e.lookupCookie&&"undefined"!=typeof document){var n=Or(e.lookupCookie);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupCookie&&"undefined"!=typeof document&&Br(t.lookupCookie,e,t.cookieMinutes,t.cookieDomain,t.cookieOptions)}},jr={name:"querystring",lookup:function(e){var t;if("undefined"!=typeof window){var n=window.location.search;!window.location.search&&window.location.hash&&window.location.hash.indexOf("?")>-1&&(n=window.location.hash.substring(window.location.hash.indexOf("?")));for(var a=n.substring(1).split("&"),r=0;r<a.length;r++){var i=a[r].indexOf("=");if(i>0)a[r].substring(0,i)===e.lookupQuerystring&&(t=a[r].substring(i+1))}}return t}},zr=null,Gr=function(){if(null!==zr)return zr;try{zr="undefined"!==window&&null!==window.localStorage;var e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch(e){zr=!1}return zr},$r={name:"localStorage",lookup:function(e){var t;if(e.lookupLocalStorage&&Gr()){var n=window.localStorage.getItem(e.lookupLocalStorage);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupLocalStorage&&Gr()&&window.localStorage.setItem(t.lookupLocalStorage,e)}},Vr=null,qr=function(){if(null!==Vr)return Vr;try{Vr="undefined"!==window&&null!==window.sessionStorage;var e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch(e){Vr=!1}return Vr},Wr={name:"sessionStorage",lookup:function(e){var t;if(e.lookupSessionStorage&&qr()){var n=window.sessionStorage.getItem(e.lookupSessionStorage);n&&(t=n)}return t},cacheUserLanguage:function(e,t){t.lookupSessionStorage&&qr()&&window.sessionStorage.setItem(t.lookupSessionStorage,e)}},Hr={name:"navigator",lookup:function(e){var t=[];if("undefined"!=typeof navigator){if(navigator.languages)for(var n=0;n<navigator.languages.length;n++)t.push(navigator.languages[n]);navigator.userLanguage&&t.push(navigator.userLanguage),navigator.language&&t.push(navigator.language)}return t.length>0?t:void 0}},Kr={name:"htmlTag",lookup:function(e){var t,n=e.htmlTag||("undefined"!=typeof document?document.documentElement:null);return n&&"function"==typeof n.getAttribute&&(t=n.getAttribute("lang")),t}},Yr={name:"path",lookup:function(e){var t;if("undefined"!=typeof window){var n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(n instanceof Array)if("number"==typeof e.lookupFromPathIndex){if("string"!=typeof n[e.lookupFromPathIndex])return;t=n[e.lookupFromPathIndex].replace("/","")}else t=n[0].replace("/","")}return t}},Xr={name:"subdomain",lookup:function(e){var t="number"==typeof e.lookupFromSubdomainIndex?e.lookupFromSubdomainIndex+1:1,n="undefined"!=typeof window&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(n)return n[t]}};var Jr=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.type="languageDetector",this.detectors={},this.init(t,n)}var t,n,a;return t=e,n=[{key:"init",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.services=e||{languageUtils:{}},this.options=function(e){return Mr.call(Pr.call(arguments,1),(function(t){if(t)for(var n in t)void 0===e[n]&&(e[n]=t[n])})),e}(t,this.options||{},{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(e){return e}}),"string"==typeof this.options.convertDetectedLanguage&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(e){return e.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=n,this.addDetector(Ur),this.addDetector(jr),this.addDetector($r),this.addDetector(Wr),this.addDetector(Hr),this.addDetector(Kr),this.addDetector(Yr),this.addDetector(Xr)}},{key:"addDetector",value:function(e){this.detectors[e.name]=e}},{key:"detect",value:function(e){var t=this;e||(e=this.options.order);var n=[];return e.forEach((function(e){if(t.detectors[e]){var a=t.detectors[e].lookup(t.options);a&&"string"==typeof a&&(a=[a]),a&&(n=n.concat(a))}})),n=n.map((function(e){return t.options.convertDetectedLanguage(e)})),this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}},{key:"cacheUserLanguage",value:function(e,t){var n=this;t||(t=this.options.caches),t&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(e)>-1||t.forEach((function(t){n.detectors[t]&&n.detectors[t].cacheUserLanguage(e,n.options)})))}}],n&&_r(t.prototype,n),a&&_r(t,a),Object.defineProperty(t,"prototype",{writable:!1}),e}();Jr.type="languageDetector";const Zr={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class Qr{constructor(e){this.init(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{})}init(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=e||Zr,this.options=t,this.debug=t.debug}log(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"log","",!0)}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","",!0)}error(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"error","")}deprecate(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this.forward(t,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,n,a){return a&&!this.debug?null:("string"==typeof e[0]&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new Qr(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new Qr(this.logger,e)}}var ei=new Qr;class ti{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach((e=>{this.observers[e]=this.observers[e]||[],this.observers[e].push(t)})),this}off(e,t){this.observers[e]&&(t?this.observers[e]=this.observers[e].filter((e=>e!==t)):delete this.observers[e])}emit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];if(this.observers[e]){[].concat(this.observers[e]).forEach((e=>{e(...n)}))}if(this.observers["*"]){[].concat(this.observers["*"]).forEach((t=>{t.apply(t,[e,...n])}))}}}function ni(){let e,t;const n=new Promise(((n,a)=>{e=n,t=a}));return n.resolve=e,n.reject=t,n}function ai(e){return null==e?"":""+e}function ri(e,t,n){function a(e){return e&&e.indexOf("###")>-1?e.replace(/###/g,"."):e}function r(){return!e||"string"==typeof e}const i="string"!=typeof t?[].concat(t):t.split(".");for(;i.length>1;){if(r())return{};const t=a(i.shift());!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{}}return r()?{}:{obj:e,k:a(i.shift())}}function ii(e,t,n){const{obj:a,k:r}=ri(e,t,Object);a[r]=n}function oi(e,t){const{obj:n,k:a}=ri(e,t);if(n)return n[a]}function si(e,t,n){for(const a in t)"__proto__"!==a&&"constructor"!==a&&(a in e?"string"==typeof e[a]||e[a]instanceof String||"string"==typeof t[a]||t[a]instanceof String?n&&(e[a]=t[a]):si(e[a],t[a],n):e[a]=t[a]);return e}function li(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var ci={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function ui(e){return"string"==typeof e?e.replace(/[&<>"'\/]/g,(e=>ci[e])):e}const di=[" ",",","?","!",";"];function hi(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:".";if(!e)return;if(e[t])return e[t];const a=t.split(n);let r=e;for(let e=0;e<a.length;++e){if(!r)return;if("string"==typeof r[a[e]]&&e+1<a.length)return;if(void 0===r[a[e]]){let i=2,o=a.slice(e,e+i).join(n),s=r[o];for(;void 0===s&&a.length>e+i;)i++,o=a.slice(e,e+i).join(n),s=r[o];if(void 0===s)return;if(null===s)return null;if(t.endsWith(o)){if("string"==typeof s)return s;if(o&&"string"==typeof s[o])return s[o]}const l=a.slice(e+i).join(n);return l?hi(s,l,n):void 0}r=r[a[e]]}return r}function fi(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class pi extends ti{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=void 0!==a.keySeparator?a.keySeparator:this.options.keySeparator,i=void 0!==a.ignoreJSONStructure?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let o=[e,t];n&&"string"!=typeof n&&(o=o.concat(n)),n&&"string"==typeof n&&(o=o.concat(r?n.split(r):n)),e.indexOf(".")>-1&&(o=e.split("."));const s=oi(this.data,o);return s||!i||"string"!=typeof n?s:hi(this.data&&this.data[e]&&this.data[e][t],n,r)}addResource(e,t,n,a){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{silent:!1};const i=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator;let o=[e,t];n&&(o=o.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(o=e.split("."),a=t,t=o[1]),this.addNamespaces(t),ii(this.data,o,a),r.silent||this.emit("added",e,t,n,a)}addResources(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{silent:!1};for(const a in n)"string"!=typeof n[a]&&"[object Array]"!==Object.prototype.toString.apply(n[a])||this.addResource(e,t,a,n[a],{silent:!0});a.silent||this.emit("added",e,t,n)}addResourceBundle(e,t,n,a,r){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{silent:!1},o=[e,t];e.indexOf(".")>-1&&(o=e.split("."),a=n,n=t,t=o[1]),this.addNamespaces(t);let s=oi(this.data,o)||{};a?si(s,n,r):s={...s,...n},ii(this.data,o,s),i.silent||this.emit("added",e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),"v1"===this.options.compatibilityAPI?{...this.getResource(e,t)}:this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find((e=>t[e]&&Object.keys(t[e]).length>0))}toJSON(){return this.data}}var mi={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,a,r){return e.forEach((e=>{this.processors[e]&&(t=this.processors[e].process(t,n,a,r))})),t}};const gi={};class vi extends ti{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(),function(e,t,n){e.forEach((e=>{t[e]&&(n[e]=t[e])}))}(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=ei.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e){if(null==e)return!1;const t=this.resolve(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}});return t&&void 0!==t.res}extractFromKey(e,t){let n=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===n&&(n=":");const a=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let r=t.ns||this.options.defaultNS||[];const i=n&&e.indexOf(n)>-1,o=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||function(e,t,n){t=t||"",n=n||"";const a=di.filter((e=>t.indexOf(e)<0&&n.indexOf(e)<0));if(0===a.length)return!0;const r=new RegExp(`(${a.map((e=>"?"===e?"\\?":e)).join("|")})`);let i=!r.test(e);if(!i){const t=e.indexOf(n);t>0&&!r.test(e.substring(0,t))&&(i=!0)}return i}(e,n,a));if(i&&!o){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:r};const i=e.split(n);(n!==a||n===a&&this.options.ns.indexOf(i[0])>-1)&&(r=i.shift()),e=i.join(a)}return"string"==typeof r&&(r=[r]),{key:e,namespaces:r}}translate(e,t,n){if("object"!=typeof t&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof t&&(t={...t}),t||(t={}),null==e)return"";Array.isArray(e)||(e=[String(e)]);const a=void 0!==t.returnDetails?t.returnDetails:this.options.returnDetails,r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator,{key:i,namespaces:o}=this.extractFromKey(e[e.length-1],t),s=o[o.length-1],l=t.lng||this.language,c=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&"cimode"===l.toLowerCase()){if(c){const e=t.nsSeparator||this.options.nsSeparator;return a?{res:`${s}${e}${i}`,usedKey:i,exactUsedKey:i,usedLng:l,usedNS:s}:`${s}${e}${i}`}return a?{res:i,usedKey:i,exactUsedKey:i,usedLng:l,usedNS:s}:i}const u=this.resolve(e,t);let d=u&&u.res;const h=u&&u.usedKey||i,f=u&&u.exactUsedKey||i,p=Object.prototype.toString.apply(d),m=void 0!==t.joinArrays?t.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject;if(g&&d&&("string"!=typeof d&&"boolean"!=typeof d&&"number"!=typeof d)&&["[object Number]","[object Function]","[object RegExp]"].indexOf(p)<0&&("string"!=typeof m||"[object Array]"!==p)){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,d,{...t,ns:o}):`key '${i} (${this.language})' returned an object instead of string.`;return a?(u.res=e,u):e}if(r){const e="[object Array]"===p,n=e?[]:{},a=e?f:h;for(const e in d)if(Object.prototype.hasOwnProperty.call(d,e)){const i=`${a}${r}${e}`;n[e]=this.translate(i,{...t,joinArrays:!1,ns:o}),n[e]===i&&(n[e]=d[e])}d=n}}else if(g&&"string"==typeof m&&"[object Array]"===p)d=d.join(m),d&&(d=this.extendTranslation(d,e,t,n));else{let a=!1,o=!1;const c=void 0!==t.count&&"string"!=typeof t.count,h=vi.hasDefaultValue(t),f=c?this.pluralResolver.getSuffix(l,t.count,t):"",p=t.ordinal&&c?this.pluralResolver.getSuffix(l,t.count,{ordinal:!1}):"",m=t[`defaultValue${f}`]||t[`defaultValue${p}`]||t.defaultValue;!this.isValidLookup(d)&&h&&(a=!0,d=m),this.isValidLookup(d)||(o=!0,d=i);const g=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&o?void 0:d,v=h&&m!==d&&this.options.updateMissing;if(o||a||v){if(this.logger.log(v?"updateKey":"missingKey",l,s,i,v?m:d),r){const e=this.resolve(i,{...t,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const n=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if("fallback"===this.options.saveMissingTo&&n&&n[0])for(let t=0;t<n.length;t++)e.push(n[t]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(t.lng||this.language):e.push(t.lng||this.language);const a=(e,n,a)=>{const r=h&&a!==d?a:g;this.options.missingKeyHandler?this.options.missingKeyHandler(e,s,n,r,v,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(e,s,n,r,v,t),this.emit("missingKey",e,s,n,d)};this.options.saveMissing&&(this.options.saveMissingPlurals&&c?e.forEach((e=>{this.pluralResolver.getSuffixes(e,t).forEach((n=>{a([e],i+n,t[`defaultValue${n}`]||m)}))})):a(e,i,m))}d=this.extendTranslation(d,e,t,u,n),o&&d===i&&this.options.appendNamespaceToMissingKey&&(d=`${s}:${i}`),(o||a)&&this.options.parseMissingKeyHandler&&(d="v1"!==this.options.compatibilityAPI?this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${s}:${i}`:i,a?d:void 0):this.options.parseMissingKeyHandler(d))}return a?(u.res=d,u):d}extendTranslation(e,t,n,a,r){var i=this;if(this.i18nFormat&&this.i18nFormat.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const o="string"==typeof e&&(n&&n.interpolation&&void 0!==n.interpolation.skipOnVariables?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let s;if(o){const t=e.match(this.interpolator.nestingRegexp);s=t&&t.length}let l=n.replace&&"string"!=typeof n.replace?n.replace:n;if(this.options.interpolation.defaultVariables&&(l={...this.options.interpolation.defaultVariables,...l}),e=this.interpolator.interpolate(e,l,n.lng||this.language,n),o){const t=e.match(this.interpolator.nestingRegexp);s<(t&&t.length)&&(n.nest=!1)}!n.lng&&"v1"!==this.options.compatibilityAPI&&a&&a.res&&(n.lng=a.usedLng),!1!==n.nest&&(e=this.interpolator.nest(e,(function(){for(var e=arguments.length,a=new Array(e),o=0;o<e;o++)a[o]=arguments[o];return r&&r[0]===a[0]&&!n.context?(i.logger.warn(`It seems you are nesting recursively key: ${a[0]} in key: ${t[0]}`),null):i.translate(...a,t)}),n)),n.interpolation&&this.interpolator.reset()}const o=n.postProcess||this.options.postProcess,s="string"==typeof o?[o]:o;return null!=e&&s&&s.length&&!1!==n.applyPostProcessor&&(e=mi.handle(s,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:a,...n}:n,this)),e}resolve(e){let t,n,a,r,i,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return"string"==typeof e&&(e=[e]),e.forEach((e=>{if(this.isValidLookup(t))return;const s=this.extractFromKey(e,o),l=s.key;n=l;let c=s.namespaces;this.options.fallbackNS&&(c=c.concat(this.options.fallbackNS));const u=void 0!==o.count&&"string"!=typeof o.count,d=u&&!o.ordinal&&0===o.count&&this.pluralResolver.shouldUseIntlApi(),h=void 0!==o.context&&("string"==typeof o.context||"number"==typeof o.context)&&""!==o.context,f=o.lngs?o.lngs:this.languageUtils.toResolveHierarchy(o.lng||this.language,o.fallbackLng);c.forEach((e=>{this.isValidLookup(t)||(i=e,!gi[`${f[0]}-${e}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(i)&&(gi[`${f[0]}-${e}`]=!0,this.logger.warn(`key "${n}" for languages "${f.join(", ")}" won't get resolved as namespace "${i}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),f.forEach((n=>{if(this.isValidLookup(t))return;r=n;const i=[l];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(i,l,n,e,o);else{let e;u&&(e=this.pluralResolver.getSuffix(n,o.count,o));const t=`${this.options.pluralSeparator}zero`,a=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(i.push(l+e),o.ordinal&&0===e.indexOf(a)&&i.push(l+e.replace(a,this.options.pluralSeparator)),d&&i.push(l+t)),h){const n=`${l}${this.options.contextSeparator}${o.context}`;i.push(n),u&&(i.push(n+e),o.ordinal&&0===e.indexOf(a)&&i.push(n+e.replace(a,this.options.pluralSeparator)),d&&i.push(n+t))}}let s;for(;s=i.pop();)this.isValidLookup(t)||(a=s,t=this.getResource(n,e,s,o))})))}))})),{res:t,usedKey:n,exactUsedKey:a,usedLng:r,usedNS:i}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(e,t,n,a):this.resourceStore.getResource(e,t,n,a)}static hasDefaultValue(e){const t="defaultValue";for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t===n.substring(0,t.length)&&void 0!==e[n])return!0;return!1}}function yi(e){return e.charAt(0).toUpperCase()+e.slice(1)}class bi{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ei.create("languageUtils")}getScriptPartFromCode(e){if(!(e=fi(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=fi(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if("string"==typeof e&&e.indexOf("-")>-1){const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=e.split("-");return this.options.lowerCaseLng?n=n.map((e=>e.toLowerCase())):2===n.length?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=yi(n[1].toLowerCase()))):3===n.length&&(n[0]=n[0].toLowerCase(),2===n[1].length&&(n[1]=n[1].toUpperCase()),"sgn"!==n[0]&&2===n[2].length&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=yi(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=yi(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach((e=>{if(t)return;const n=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(n)||(t=n)})),!t&&this.options.supportedLngs&&e.forEach((e=>{if(t)return;const n=this.getLanguagePartFromCode(e);if(this.isSupportedCode(n))return t=n;t=this.options.supportedLngs.find((e=>e===n?e:e.indexOf("-")<0&&n.indexOf("-")<0?void 0:0===e.indexOf(n)?e:void 0))})),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),"string"==typeof e&&(e=[e]),"[object Array]"===Object.prototype.toString.apply(e))return e;if(!t)return e.default||[];let n=e[t];return n||(n=e[this.getScriptPartFromCode(t)]),n||(n=e[this.formatLanguageCode(t)]),n||(n=e[this.getLanguagePartFromCode(t)]),n||(n=e.default),n||[]}toResolveHierarchy(e,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],e),a=[],r=e=>{e&&(this.isSupportedCode(e)?a.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return"string"==typeof e&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):"string"==typeof e&&r(this.formatLanguageCode(e)),n.forEach((e=>{a.indexOf(e)<0&&r(this.formatLanguageCode(e))})),a}}let wi=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],xi={1:function(e){return Number(e>1)},2:function(e){return Number(1!=e)},3:function(e){return 0},4:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},5:function(e){return Number(0==e?0:1==e?1:2==e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5)},6:function(e){return Number(1==e?0:e>=2&&e<=4?1:2)},7:function(e){return Number(1==e?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2)},8:function(e){return Number(1==e?0:2==e?1:8!=e&&11!=e?2:3)},9:function(e){return Number(e>=2)},10:function(e){return Number(1==e?0:2==e?1:e<7?2:e<11?3:4)},11:function(e){return Number(1==e||11==e?0:2==e||12==e?1:e>2&&e<20?2:3)},12:function(e){return Number(e%10!=1||e%100==11)},13:function(e){return Number(0!==e)},14:function(e){return Number(1==e?0:2==e?1:3==e?2:3)},15:function(e){return Number(e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2)},16:function(e){return Number(e%10==1&&e%100!=11?0:0!==e?1:2)},17:function(e){return Number(1==e||e%10==1&&e%100!=11?0:1)},18:function(e){return Number(0==e?0:1==e?1:2)},19:function(e){return Number(1==e?0:0==e||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3)},20:function(e){return Number(1==e?0:0==e||e%100>0&&e%100<20?1:2)},21:function(e){return Number(e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0)},22:function(e){return Number(1==e?0:2==e?1:(e<0||e>10)&&e%10==0?2:3)}};const Ei=["v1","v2","v3"],Ci=["v4"],ki={zero:0,one:1,two:2,few:3,many:4,other:5};class Si{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.languageUtils=e,this.options=t,this.logger=ei.create("pluralResolver"),this.options.compatibilityJSON&&!Ci.includes(this.options.compatibilityJSON)||"undefined"!=typeof Intl&&Intl.PluralRules||(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=function(){const e={};return wi.forEach((t=>{t.lngs.forEach((n=>{e[n]={numbers:t.nr,plurals:xi[t.fc]}}))})),e}()}addRule(e,t){this.rules[e]=t}getRule(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(fi(e),{type:t.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[e]||this.rules[this.languageUtils.getLanguagePartFromCode(e)]}needsPlural(e){const t=this.getRule(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{});return this.shouldUseIntlApi()?t&&t.resolvedOptions().pluralCategories.length>1:t&&t.numbers.length>1}getPluralFormsOfKey(e,t){return this.getSuffixes(e,arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).map((e=>`${t}${e}`))}getSuffixes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=this.getRule(e,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort(((e,t)=>ki[e]-ki[t])).map((e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`)):n.numbers.map((n=>this.getSuffix(e,n,t))):[]}getSuffix(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=this.getRule(e,n);return a?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a.select(t)}`:this.getSuffixRetroCompatible(a,t):(this.logger.warn(`no plural rule found for: ${e}`),"")}getSuffixRetroCompatible(e,t){const n=e.plurals(e.noAbs?t:Math.abs(t));let a=e.numbers[n];this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]&&(2===a?a="plural":1===a&&(a=""));const r=()=>this.options.prepend&&a.toString()?this.options.prepend+a.toString():a.toString();return"v1"===this.options.compatibilityJSON?1===a?"":"number"==typeof a?`_plural_${a.toString()}`:r():"v2"===this.options.compatibilityJSON||this.options.simplifyPluralSuffix&&2===e.numbers.length&&1===e.numbers[0]?r():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!Ei.includes(this.options.compatibilityJSON)}}function Ti(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:".",r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=function(e,t,n){const a=oi(e,n);return void 0!==a?a:oi(t,n)}(e,t,n);return!i&&r&&"string"==typeof n&&(i=hi(e,n,a),void 0===i&&(i=hi(t,n,a))),i}class Ii{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=ei.create("interpolator"),this.options=e,this.format=e.interpolation&&e.interpolation.format||(e=>e),this.init(e)}init(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.interpolation||(e.interpolation={escapeValue:!0});const t=e.interpolation;this.escape=void 0!==t.escape?t.escape:ui,this.escapeValue=void 0===t.escapeValue||t.escapeValue,this.useRawValueToEscape=void 0!==t.useRawValueToEscape&&t.useRawValueToEscape,this.prefix=t.prefix?li(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?li(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?li(t.nestingPrefix):t.nestingPrefixEscaped||li("$t("),this.nestingSuffix=t.nestingSuffix?li(t.nestingSuffix):t.nestingSuffixEscaped||li(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=void 0!==t.alwaysFormat&&t.alwaysFormat,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){this.regexp=new RegExp(`${this.prefix}(.+?)${this.suffix}`,"g");this.regexpUnescape=new RegExp(`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`,"g");this.nestingRegexp=new RegExp(`${this.nestingPrefix}(.+?)${this.nestingSuffix}`,"g")}interpolate(e,t,n,a){let r,i,o;const s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function l(e){return e.replace(/\$/g,"$$$$")}const c=e=>{if(e.indexOf(this.formatSeparator)<0){const r=Ti(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(r,void 0,n,{...a,...t,interpolationkey:e}):r}const r=e.split(this.formatSeparator),i=r.shift().trim(),o=r.join(this.formatSeparator).trim();return this.format(Ti(t,s,i,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...a,...t,interpolationkey:i})};this.resetRegExp();const u=a&&a.missingInterpolationHandler||this.options.missingInterpolationHandler,d=a&&a.interpolation&&void 0!==a.interpolation.skipOnVariables?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>l(e)},{regex:this.regexp,safeValue:e=>l(this.escapeValue?this.escape(e):e)}].forEach((t=>{for(o=0;r=t.regex.exec(e);){const n=r[1].trim();if(i=c(n),void 0===i)if("function"==typeof u){const t=u(e,r,a);i="string"==typeof t?t:""}else if(a&&Object.prototype.hasOwnProperty.call(a,n))i="";else{if(d){i=r[0];continue}this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),i=""}else"string"==typeof i||this.useRawValueToEscape||(i=ai(i));const s=t.safeValue(i);if(e=e.replace(r[0],s),d?(t.regex.lastIndex+=i.length,t.regex.lastIndex-=r[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}})),e}nest(e,t){let n,a,r,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};function o(e,t){const n=this.nestingOptionsSeparator;if(e.indexOf(n)<0)return e;const a=e.split(new RegExp(`${n}[ ]*{`));let i=`{${a[1]}`;e=a[0],i=this.interpolate(i,r);const o=i.match(/'/g),s=i.match(/"/g);(o&&o.length%2==0&&!s||s.length%2!=0)&&(i=i.replace(/'/g,'"'));try{r=JSON.parse(i),t&&(r={...t,...r})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return delete r.defaultValue,e}for(;n=this.nestingRegexp.exec(e);){let s=[];r={...i},r=r.replace&&"string"!=typeof r.replace?r.replace:r,r.applyPostProcessor=!1,delete r.defaultValue;let l=!1;if(-1!==n[0].indexOf(this.formatSeparator)&&!/{.*}/.test(n[1])){const e=n[1].split(this.formatSeparator).map((e=>e.trim()));n[1]=e.shift(),s=e,l=!0}if(a=t(o.call(this,n[1].trim(),r),r),a&&n[0]===e&&"string"!=typeof a)return a;"string"!=typeof a&&(a=ai(a)),a||(this.logger.warn(`missed to resolve ${n[1]} for nesting ${e}`),a=""),l&&(a=s.reduce(((e,t)=>this.format(e,t,i.lng,{...i,interpolationkey:n[1].trim()})),a.trim())),e=e.replace(n[0],a),this.regexp.lastIndex=0}return e}}function Ri(e){const t={};return function(n,a,r){const i=a+JSON.stringify(r);let o=t[i];return o||(o=e(fi(a),r),t[i]=o),o(n)}}class Di{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.logger=ei.create("formatter"),this.options=e,this.formats={number:Ri(((e,t)=>{const n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)})),currency:Ri(((e,t)=>{const n=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>n.format(e)})),datetime:Ri(((e,t)=>{const n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)})),relativetime:Ri(((e,t)=>{const n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||"day")})),list:Ri(((e,t)=>{const n=new Intl.ListFormat(e,{...t});return e=>n.format(e)}))},this.init(e)}init(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||","}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Ri(t)}format(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const r=t.split(this.formatSeparator).reduce(((e,t)=>{const{formatName:r,formatOptions:i}=function(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const a=e.split("(");t=a[0].toLowerCase().trim();const r=a[1].substring(0,a[1].length-1);"currency"===t&&r.indexOf(":")<0?n.currency||(n.currency=r.trim()):"relativetime"===t&&r.indexOf(":")<0?n.range||(n.range=r.trim()):r.split(";").forEach((e=>{if(!e)return;const[t,...a]=e.split(":"),r=a.join(":").trim().replace(/^'+|'+$/g,"");n[t.trim()]||(n[t.trim()]=r),"false"===r&&(n[t.trim()]=!1),"true"===r&&(n[t.trim()]=!0),isNaN(r)||(n[t.trim()]=parseInt(r,10))}))}return{formatName:t,formatOptions:n}}(t);if(this.formats[r]){let t=e;try{const o=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{};t=this.formats[r](e,o.locale||o.lng||a.locale||a.lng||n,{...i,...a,...o})}catch(e){this.logger.warn(e)}return t}return this.logger.warn(`there was no format function for ${r}`),e}),e);return r}}class Ai extends ti{constructor(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=a,this.logger=ei.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,a.backend,a)}queueLoad(e,t,n,a){const r={},i={},o={},s={};return e.forEach((e=>{let a=!0;t.forEach((t=>{const o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(1===this.state[o]?void 0===i[o]&&(i[o]=!0):(this.state[o]=1,a=!1,void 0===i[o]&&(i[o]=!0),void 0===r[o]&&(r[o]=!0),void 0===s[t]&&(s[t]=!0)))})),a||(o[e]=!0)})),(Object.keys(r).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(r),pending:Object.keys(i),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){const a=e.split("|"),r=a[0],i=a[1];t&&this.emit("failedLoading",r,i,t),n&&this.store.addResourceBundle(r,i,n),this.state[e]=t?-1:2;const o={};this.queue.forEach((n=>{!function(e,t,n,a){const{obj:r,k:i}=ri(e,t,Object);r[i]=r[i]||[],a&&(r[i]=r[i].concat(n)),a||r[i].push(n)}(n.loaded,[r],i),function(e,t){void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)}(n,e),t&&n.errors.push(t),0!==n.pendingCount||n.done||(Object.keys(n.loaded).forEach((e=>{o[e]||(o[e]={});const t=n.loaded[e];t.length&&t.forEach((t=>{void 0===o[e][t]&&(o[e][t]=!0)}))})),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())})),this.emit("loaded",o),this.queue=this.queue.filter((e=>!e.done))}read(e,t,n){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:this.retryTimeout,i=arguments.length>5?arguments[5]:void 0;if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:n,tried:a,wait:r,callback:i});this.readingCalls++;const o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}o&&s&&a<this.maxRetries?setTimeout((()=>{this.read.call(this,e,t,n,a+1,2*r,i)}),r):i(o,s)},s=this.backend[n].bind(this.backend);if(2!==s.length)return s(e,t,o);try{const n=s(e,t);n&&"function"==typeof n.then?n.then((e=>o(null,e))).catch(o):o(null,n)}catch(e){o(e)}}prepareLoading(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),a&&a();"string"==typeof e&&(e=this.languageUtils.toResolveHierarchy(e)),"string"==typeof t&&(t=[t]);const r=this.queueLoad(e,t,n,a);if(!r.toLoad.length)return r.pending.length||a(),null;r.toLoad.forEach((e=>{this.loadOne(e)}))}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const n=e.split("|"),a=n[0],r=n[1];this.read(a,r,"read",void 0,void 0,((n,i)=>{n&&this.logger.warn(`${t}loading namespace ${r} for language ${a} failed`,n),!n&&i&&this.logger.log(`${t}loaded namespace ${r} for language ${a}`,i),this.loaded(e,n,i)}))}saveMissing(e,t,n,a,r){let i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t))this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");else if(null!=n&&""!==n){if(this.backend&&this.backend.create){const s={...i,isUpdate:r},l=this.backend.create.bind(this.backend);if(l.length<6)try{let r;r=5===l.length?l(e,t,n,a,s):l(e,t,n,a),r&&"function"==typeof r.then?r.then((e=>o(null,e))).catch(o):o(null,r)}catch(e){o(e)}else l(e,t,n,a,o,s)}e&&e[0]&&this.store.addResource(e[0],t,n,a)}}}function Ni(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(e){let t={};if("object"==typeof e[1]&&(t=e[1]),"string"==typeof e[1]&&(t.defaultValue=e[1]),"string"==typeof e[2]&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const n=e[3]||e[2];Object.keys(n).forEach((e=>{t[e]=n[e]}))}return t},interpolation:{escapeValue:!0,format:(e,t,n,a)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function _i(e){return"string"==typeof e.ns&&(e.ns=[e.ns]),"string"==typeof e.fallbackLng&&(e.fallbackLng=[e.fallbackLng]),"string"==typeof e.fallbackNS&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Fi(){}class Mi extends ti{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;var n;if(super(),this.options=_i(e),this.services={},this.logger=ei,this.modules={external:[]},n=this,Object.getOwnPropertyNames(Object.getPrototypeOf(n)).forEach((e=>{"function"==typeof n[e]&&(n[e]=n[e].bind(n))})),t&&!this.isInitialized&&!e.isClone){if(!this.options.initImmediate)return this.init(e,t),this;setTimeout((()=>{this.init(e,t)}),0)}}init(){var e=this;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;"function"==typeof t&&(n=t,t={}),!t.defaultNS&&!1!==t.defaultNS&&t.ns&&("string"==typeof t.ns?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const a=Ni();function r(e){return e?"function"==typeof e?new e:e:null}if(this.options={...a,...this.options,..._i(t)},"v1"!==this.options.compatibilityAPI&&(this.options.interpolation={...a.interpolation,...this.options.interpolation}),void 0!==t.keySeparator&&(this.options.userDefinedKeySeparator=t.keySeparator),void 0!==t.nsSeparator&&(this.options.userDefinedNsSeparator=t.nsSeparator),!this.options.isClone){let t;ei.init(this.modules.logger?r(this.modules.logger):null,this.options),this.modules.formatter?t=this.modules.formatter:"undefined"!=typeof Intl&&(t=Di);const n=new bi(this.options);this.store=new pi(this.options.resources,this.options);const i=this.services;i.logger=ei,i.resourceStore=this.store,i.languageUtils=n,i.pluralResolver=new Si(n,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),!t||this.options.interpolation.format&&this.options.interpolation.format!==a.interpolation.format||(i.formatter=r(t),i.formatter.init(i,this.options),this.options.interpolation.format=i.formatter.format.bind(i.formatter)),i.interpolator=new Ii(this.options),i.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},i.backendConnector=new Ai(r(this.modules.backend),i.resourceStore,i,this.options),i.backendConnector.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];e.emit(t,...a)})),this.modules.languageDetector&&(i.languageDetector=r(this.modules.languageDetector),i.languageDetector.init&&i.languageDetector.init(i,this.options.detection,this.options)),this.modules.i18nFormat&&(i.i18nFormat=r(this.modules.i18nFormat),i.i18nFormat.init&&i.i18nFormat.init(this)),this.translator=new vi(this.services,this.options),this.translator.on("*",(function(t){for(var n=arguments.length,a=new Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];e.emit(t,...a)})),this.modules.external.forEach((e=>{e.init&&e.init(this)}))}if(this.format=this.options.interpolation.format,n||(n=Fi),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach((t=>{this[t]=function(){return e.store[t](...arguments)}}));["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach((t=>{this[t]=function(){return e.store[t](...arguments),e}}));const i=ni(),o=()=>{const e=(e,t)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),i.resolve(t),n(e,t)};if(this.languages&&"v1"!==this.options.compatibilityAPI&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initImmediate?o():setTimeout(o,0),i}loadResources(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fi;const n="string"==typeof e?e:this.language;if("function"==typeof e&&(t=e),!this.options.resources||this.options.partialBundledLanguages){if(n&&"cimode"===n.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return t();const e=[],a=t=>{if(!t)return;if("cimode"===t)return;this.services.languageUtils.toResolveHierarchy(t).forEach((t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)}))};if(n)a(n);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach((e=>a(e)))}this.options.preload&&this.options.preload.forEach((e=>a(e))),this.services.backendConnector.load(e,this.options.ns,(e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),t(e)}))}else t(null)}reloadResources(e,t,n){const a=ni();return e||(e=this.languages),t||(t=this.options.ns),n||(n=Fi),this.services.backendConnector.reload(e,t,(e=>{a.resolve(),n(e)})),a}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&mi.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1))for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}}changeLanguage(e,t){var n=this;this.isLanguageChangingTo=e;const a=ni();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(e,i)=>{i?(r(i),this.translator.changeLanguage(i),this.isLanguageChangingTo=void 0,this.emit("languageChanged",i),this.logger.log("languageChanged",i)):this.isLanguageChangingTo=void 0,a.resolve((function(){return n.t(...arguments)})),t&&t(e,(function(){return n.t(...arguments)}))},o=t=>{e||t||!this.services.languageDetector||(t=[]);const n="string"==typeof t?t:this.services.languageUtils.getBestMatchFromCodes(t);n&&(this.language||r(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(n)),this.loadResources(n,(e=>{i(e,n)}))};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(o):this.services.languageDetector.detect(o):o(e):o(this.services.languageDetector.detect()),a}getFixedT(e,t,n){var a=this;const r=function(e,t){let i;if("object"!=typeof t){for(var o=arguments.length,s=new Array(o>2?o-2:0),l=2;l<o;l++)s[l-2]=arguments[l];i=a.options.overloadTranslationOptionHandler([e,t].concat(s))}else i={...t};i.lng=i.lng||r.lng,i.lngs=i.lngs||r.lngs,i.ns=i.ns||r.ns,i.keyPrefix=i.keyPrefix||n||r.keyPrefix;const c=a.options.keySeparator||".";let u;return u=i.keyPrefix&&Array.isArray(e)?e.map((e=>`${i.keyPrefix}${c}${e}`)):i.keyPrefix?`${i.keyPrefix}${c}${e}`:e,a.t(u,i)};return"string"==typeof e?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=n,r}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],a=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===n.toLowerCase())return!0;const i=(e,t)=>{const n=this.services.backendConnector.state[`${e}|${t}`];return-1===n||2===n};if(t.precheck){const e=t.precheck(this,i);if(void 0!==e)return e}return!!this.hasResourceBundle(n,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!i(n,e)||a&&!i(r,e)))}loadNamespaces(e,t){const n=ni();return this.options.ns?("string"==typeof e&&(e=[e]),e.forEach((e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)})),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){const n=ni();"string"==typeof e&&(e=[e]);const a=this.options.preload||[],r=e.filter((e=>a.indexOf(e)<0));return r.length?(this.options.preload=a.concat(r),this.loadResources((e=>{n.resolve(),t&&t(e)})),n):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!e)return"rtl";const t=this.services&&this.services.languageUtils||new bi(Ni());return["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){return new Mi(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},arguments.length>1?arguments[1]:void 0)}cloneInstance(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Fi;const n=e.forkResourceStore;n&&delete e.forkResourceStore;const a={...this.options,...e,isClone:!0},r=new Mi(a);void 0===e.debug&&void 0===e.prefix||(r.logger=r.logger.clone(e));return["store","services","language"].forEach((e=>{r[e]=this[e]})),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},n&&(r.store=new pi(this.store.data,a),r.services.resourceStore=r.store),r.translator=new vi(r.services,a),r.translator.on("*",(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];r.emit(e,...n)})),r.init(a,t),r.translator.options=a,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Pi=Mi.createInstance();Pi.createInstance=Mi.createInstance;var Li={en:{translation:{}},es:{translation:{"Use your device camera to capture your ID":"Para capturar la identificación hay que utilizar la cámara del dispositivo.","Use your iPhone as a webcam":"Usar el iPhone como cámara web","Models warming up...":"Cargando modelos...","Camera initializing...":"Inicializando la cámara...","Camera access blocked":"Acceso bloqueado a la cámara","Location access blocked":"Acceso bloqueado a la localización",Continue:"Continuar","Processing...":"Procesando...","Your camera permission is disabled":"El permiso de la cámara está desactivado","This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.":"Esta aplicación requiere el acceso a la cámara para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la cámara en el explorador actual.","Your location permission is disabled":"El permiso de la localización está desactivado","This application requires access to your location to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for location permissions, you must go to settings and provide location access to the current browser.":"Esta aplicación requiere el acceso a la localización para continuar. Hay que aceptar el permiso una vez que se muestre la ventana en el explorador. Si no aparece la ventana para otorgar permisos, entonces hay que dirigirse a Configuración y otorgar el permiso a la localización en el explorador actual.",Retry:"Reintentar","Scan the front of ID":"Escanear el frente de la ID","Scan the back of ID":"Escanear el reverso de la ID","Scan the ID page of passport":"Escanear la página de datos del pasaporte","ID Card Front":"Frente de la ID","ID Card Back":"Reverso de la ID",Passport:"Pasaporte","Document not detected":"No se ha detectado el documento","Document is not centered":"Documento no centrado","Document out of focus – try improving the lighting":"Documento no enfocado - hay que tratar de mejorar la iluminación","Document detected, hold still...":"Se ha detectado el documento, no moverse por favor...","Capturing...":"Capturando...","Capture failed!":"Falló la captura","Please flip your ID card...":"Por favor voltea la identificación...","ID card front captured.":"Se ha capturado el frente de la identificación.","ID Capture Successful":"Captura Exitosa de ID","Verify the entire ID was captured clearly with no glare.":"Hay que verificar que toda la ID se vea completa y sin reflejos.",Submit:"Enviar","Submitting...":"Enviando...","Use your device camera to capture your face":"Hay que utilizar la cámara del dispositivo para capturar el rostro","Remove Sunglasses & Hat":"Hay que quitarse lentes y/o la gorra","Avoid Excessive Backlighting":"Hay que evitar demasiada luz en el fondo","Hold still for a few seconds...":"Hay que permanecer quieto por unos segundos...","Look straight into the camera...":"Hay que mirar directamente a la cámara...","Move back...":"Hay que hacerse hacia atrás..","Move forward...":"Hay que hacerse hacia adelante...","Move to the center...":"Hay que moverse hacia el centro...","Please remove your eye coverings (sunglasses, eye patch, etc.)...":"Hay que quitarse lo que cubre los ojos (lentes, parche, etc.)...","Please remove your head coverings (hat, scarf, etc.)...":"Hay que quitarse lo que cubre la cabeza (gorra, mascada, etc.)...","Please remove your mask...":"Hay que quitarse el cubrebocas...","Live face not detected, please try again":"Rostro vivo no detectado. Por favor hay que intentar de nuevo.",Exit:"Salir","Face liveness has been verified!":"Se ha verificado la Prueba de Vida en rostro!",Done:"Terminar","Customer has been identified!":"¡Se ha identificado al cliente!","Customer not found":"Cliente no encontrado","Additional document capture":"Captura de otro documento",Next:"Siguiente","Please sign the box below":"Por favor, hay que firmar en el recuadro de abajo",Accept:"Aceptar",Clear:"Borrar","Video signature has been successfully captured!":"La video firma ha sido exitosa.","Network unreachable":"No hay conexión a internet.","We're having trouble reaching our services, please check your connection and try again.":"Estamos teniendo problemas para alcanzar nuestros servicios, por favor verificar la conexión a internet e intentar de nuevo.","We're sorry, an unexpected error has occurred.":"Lo sentimos, se ha producido un error inesperado."}}};var Bi=function(e){var n=ie().i18n;t.useEffect((function(){"auto"!==e?n.changeLanguage(e):n.changeLanguage()}),[n,e])};function Oi(e,t,n,a){if("string"==typeof n)return n;if("object"==typeof n){var r=n;if(r[t])return r[t];var i=t.split("-")[0];if(r[i])return r[i]}return e(a)}function Ui(e,n){var a=ie(),r=a.t,i=a.i18n;return t.useMemo((function(){return Oi(r,i.language,e,n)}),[n,i.language,r,e])}function ji(e,n){var a=ie(),r=a.t,i=a.i18n;return t.useMemo((function(){return p(p({},e),Object.keys(n).reduce((function(t,a){var o;return p(p({},t),((o={})[a]=Oi(r,i.language,null==e?void 0:e[a],n[a]),o))}),{}))}),[n,i.language,r,e])}var zi,Gi,$i,Vi,qi,Wi,Hi,Ki,Yi,Xi,Ji,Zi,Qi,eo=u.default.div(zi||(zi=y(["\n position: absolute;\n top: calc(",");\n font-weight: bold;\n width: 100%;\n display: flex;\n"],["\n position: absolute;\n top: calc(",");\n font-weight: bold;\n width: 100%;\n display: flex;\n"])),(function(e){var t=e.$top;return null!=t?t:"10vh"})),to=u.default.div(Gi||(Gi=y(["\n margin-left: auto;\n margin-right: auto;\n background: ",";\n color: ",";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"],["\n margin-left: auto;\n margin-right: auto;\n background: ",";\n color: ",";\n padding: 10px 12px 8px;\n border-radius: 8px;\n z-index: 10001;\n"])),(function(e){var t,n,a,r,i,o;return null!==(o=null!==(t=e.$background)&&void 0!==t?t:null===(i=null===(a=null===(n=e.theme)||void 0===n?void 0:n.guidanceMessages)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"default"])||void 0===i?void 0:i.backgroundColor)&&void 0!==o?o:"#ccc"}),(function(e){var t,n,a,r,i,o;return null!==(o=null!==(t=e.$textColor)&&void 0!==t?t:null===(i=null===(a=null===(n=e.theme)||void 0===n?void 0:n.guidanceMessages)||void 0===a?void 0:a[null!==(r=e.$variant)&&void 0!==r?r:"default"])||void 0===i?void 0:i.textColor)&&void 0!==o?o:"black"})),no={videoWidth:0,videoHeight:0,captureStartedAt:null,detectedObjects:[],bestDocument:void 0,bestMrz:void 0,bestPdf417:void 0,documentType:se.NONE,documentInBounds:!1,documentDetectionScore:0,documentDetectionThresholdMet:!1,passportPageDetectionScore:0,passportPageDetectionThresholdMet:!1,mrzDetectionScore:0,mrzDetectionThresholdMet:!1,pdf417DetectionScore:0,pdf417DetectionThresholdMet:!1,focusScore:0,focusThresholdMet:!1,barcodeScanningEnabled:!1,barcodeResult:null,waitingForBarcodeScan:!1,shouldScanBarcode:!1,autoCaptureBarcodeRequired:"mobile",barcodeScanFailedAttempts:0,maxBarcodeScanAttempts:10,isGoodFrame:!1,goodFramesCount:0,goodFramesThreshold:3,goodFramesThresholdMet:!1,lastFrameCapturedAt:null,frameCaptureRate:0,capturing:!1,captured:!1,captureFailed:!1},ao=function(e,t){switch(t.type){case"configure":return p(p(p({},e),t.payload),{goodFramesCount:0,captureStartedAt:new Date,capturing:!1,captured:!1,captureFailed:!1});case"objectsDetected":var n=t.payload.prediction,a=n.detectedObjects,r=n.detectionScore,i=n.detectionThresholdMet,o=n.detectedDocumentType,s=n.passportDetectionScore,l=n.passportDetectionThresholdMet,c=n.mrzDetectionScore,u=n.mrzDetectionThresholdMet,d=n.pdf417DetectionScore,h=n.pdf417DetectionThresholdMet,f=n.bestDocumentOrPassport,m=n.bestMrz,g=n.bestPdf417,v=n.focusScore,y=n.focusThresholdMet,b=n.frameWidth,w=n.frameHeight,x=new Date,E=0,C=e.goodFramesThreshold;e.lastFrameCapturedAt&&(E=1e3/(x.getTime()-e.lastFrameCapturedAt.getTime()))>0&&(C=Math.ceil(3*E));var k=!1;if(f){var S=f.bbox,T=S[0],I=S[1],R=S[2],D=S[3];T*=b,R*=b,k=(I*=w)>20&&I+(D*=w)+20<w&&(T>20||T<20&&T+R>.8*b)&&T+R+20<b}var A=!0===e.autoCaptureBarcodeRequired||"mobile"===e.autoCaptureBarcodeRequired&&_e(),N=e.barcodeScanningEnabled&&h&&A,_=N&&!e.barcodeResult,F=i&&k&&y,M=e.goodFramesCount;return F&&(M+=1),p(p({},e),{videoWidth:b,videoHeight:w,detectedObjects:a,bestDocument:f,bestMrz:m,bestPdf417:g,documentType:o,documentInBounds:k,documentDetectionScore:r,documentDetectionThresholdMet:i,mrzDetectionScore:c,mrzDetectionThresholdMet:u,pdf417DetectionScore:d,pdf417DetectionThresholdMet:h,passportPageDetectionScore:s,passportPageDetectionThresholdMet:l,focusScore:v,focusThresholdMet:y,shouldScanBarcode:N,waitingForBarcodeScan:_,isGoodFrame:F,goodFramesCount:M,goodFramesThreshold:C,goodFramesThresholdMet:M>=C,lastFrameCapturedAt:x,frameCaptureRate:E});case"barcodeScanned":return p(p({},e),{barcodeResult:t.payload.result,waitingForBarcodeScan:!1,autoCaptureBarcodeRequired:!1});case"barcodeScanFailed":var P=p(p({},e),{barcodeScanFailedAttempts:e.barcodeScanFailedAttempts+1});return P.barcodeScanFailedAttempts>=P.maxBarcodeScanAttempts&&(P.autoCaptureBarcodeRequired=!1,P.shouldScanBarcode=!1,P.waitingForBarcodeScan=!1),P;case"capturing":return p(p({},e),{capturing:!0,captured:!1,captureFailed:!1});case"captured":return p(p({},e),{capturing:!1,captured:!0,captureFailed:!1});case"captureFailed":return p(p({},e),{capturing:!1,captured:!1,captureFailed:!0});default:return e}},ro=function(e){var n,r,i,o,l,c,u,d,h,f,p=e.requiredDocumentType,v=e.autoCaptureEnabled,y=void 0===v||v,b=e.autoCaptureScoreThreshold,w=void 0===b?.8:b,x=e.autoCaptureGoodFramesRequired,E=void 0===x?3:x,C=e.autoCaptureBarcodeRequired,k=void 0===C?"mobile":C,S=e.mrzDetectionScoreThreshold,T=void 0===S?.25:S,I=e.passportPageDetectionThreshold,R=void 0===I?.6:I,D=e.pdf417DetectionThreshold,A=void 0===D?.15:D,N=e.focusScoreThreshold,_=void 0===N?.3:N,F=e.barcodeScanningEnabled,P=void 0===F||F,L=e.maxBarcodeScanAttempts,B=void 0===L?10:L,O=e.guidanceMessage,U=e.guidanceSatisfied,j=e.onPrediction,z=e.onBarcodeScanned,G=e.onCapture,$=e.onExit,V=e.processingScreen,q=e.processingDelay,W=void 0===q?0:q,H=e.assets,K=void 0===H?{}:H,Y=e.classNames,X=void 0===Y?{}:Y,J=e.colors,Z=void 0===J?{}:J,Q=e.verbiage,ee=void 0===Q?{}:Q,te=e.debugMode,ne=void 0!==te&&te,ae=De(),re=ae.ref,ie=ae.width,oe=void 0===ie?1:ie,se=ae.height,le=void 0===se?1:se,ce=t.useReducer(ao,no),ue=ce[0],de=ce[1],he=t.useState(""),fe=he[0],pe=he[1],me=t.useState(!1),ge=me[0],ve=me[1],ye=t.useContext(dt),be=ye.cameraRef,we=ye.cameraReady,xe=ye.takePhoto,Ee=ye.videoRef,Ce=ye.videoLoaded,ke=t.useRef(),Se=t.useContext(Xa),Te=Se.ready,Ie=Se.working,Re=Se.setThresholds,Ae=Se.makePrediction,Ne=Se.onPredictionMade,_e=Se.detectionTime,Fe=Se.focusPredictionTime,Me=Se.getBestFrame,Pe=Se.resetBestFrame;t.useEffect((function(){ke.current=new Date}),[]),t.useEffect((function(){de({type:"configure",payload:{requiredDocumentType:p,goodFramesThreshold:E,autoCaptureBarcodeRequired:k,barcodeScanningEnabled:P,maxBarcodeScanAttempts:B}}),Pe(),Re({document:w,passport:R,mrz:T,pdf417:A,focus:_})}),[p,w,_,T,E,k,P,B,R,A,Pe,Re]);var Le=t.useRef(0),Be=t.useRef(!1);t.useEffect((function(){Be.current=Ce&&we&&Te&&!ue.capturing&&!ue.captured}),[we,ue.captured,ue.capturing,Te,Ce]);var Oe=t.useState(null),Ue=Oe[0],je=Oe[1];t.useEffect((function(){if(Te&&we&&Ce)return Le.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){var t,n;return g(this,(function(a){switch(a.label){case 0:if(!Be.current||Ie.current)return[3,5];a.label=1;case 1:return a.trys.push([1,4,,5]),ue.shouldScanBarcode?[4,xe()]:[3,3];case 2:if(!(t=a.sent()))return Le.current=requestAnimationFrame(e),[2];je(t),a.label=3;case 3:return Ee.current&&Ae(Ee.current),[3,5];case 4:return n=a.sent(),console.error("error capturing frame",n),[3,5];case 5:return Le.current=requestAnimationFrame(e),[2]}}))}))})),function(){cancelAnimationFrame(Le.current)}}),[we,Ae,Te,Ie,ue.shouldScanBarcode,xe,Ce,Ee]),t.useEffect((function(){Ne((function(e){de({type:"objectsDetected",payload:{prediction:e}}),null==j||j(e)}))}),[j,Ne]),t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return ue.shouldScanBarcode&&Ue?[4,et(Ue,null===(t=ue.bestPdf417)||void 0===t?void 0:t.bbox)]:[3,2];case 1:(e=n.sent())?(de({type:"barcodeScanned",payload:{result:e}}),null==z||z(e)):de({type:"barcodeScanFailed"}),n.label=2;case 2:return[2]}}))}))}),[z,ue.shouldScanBarcode,null===(n=ue.bestPdf417)||void 0===n?void 0:n.bbox,xe,Ue]);var ze=y&&ue.goodFramesThresholdMet&&!ue.capturing&&!ue.captured&&!ue.waitingForBarcodeScan&&io(ue.captureStartedAt)>=3e3;t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t,n,a,r,i,o,s,l;return g(this,(function(c){switch(c.label){case 0:return ze?(de({type:"capturing"}),[4,Me()]):[2];case 1:return(e=c.sent())?(ve(!0),[4,(u=e,new Promise((function(e){var t=new Image;t.onload=function(){e([t.naturalWidth,t.naturalHeight])},t.src=URL.createObjectURL(u)})))]):(console.log("uh oh, i did not get a photo"),de({type:"captureFailed"}),[2]);case 2:return t=c.sent(),n=t[0],a=t[1],(r=document.createElement("canvas")).width=n,r.height=a,[4,createImageBitmap(e)];case 3:if(i=c.sent(),(n>1920&&a>1080||n>1080&&a>1920)&&ue.barcodeResult){if(n>a?(r.width=1920,r.height=a*(1920/n)):(r.height=1920,r.width=n*(1920/a)),!(o=r.getContext("2d")))return[2];o.drawImage(i,0,0,r.width,r.height)}else{if(!(s=r.getContext("bitmaprenderer")))return[2];s.transferFromImageBitmap(i)}return l=r.toDataURL("image/jpeg",.92),pe(l),setTimeout((function(){var e,t=(new Date).getTime()-(null!==(e=ke.current)&&void 0!==e?e:new Date).getTime();null==G||G(l,n,a,{autoCapture:"Y",captureTime:t}),de({type:"captured"}),ve(!1)}),W),[2]}var u}))}))}),[Me,G,W,ze,ue.barcodeResult]),K.portraitGuidesImageUrl||(K.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),K.landscapeGuidesImageUrl||(K.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg"));var Ge=a.useTheme();Z.guideBoxUnsatisfiedColor||(Z.guideBoxUnsatisfiedColor=null!==(o=null===(i=null===(r=Ge.idCapture)||void 0===r?void 0:r.guideBox)||void 0===i?void 0:i.unsatisfiedColor)&&void 0!==o?o:"white"),Z.guideBoxSatisfiedColor||(Z.guideBoxSatisfiedColor=null!==(u=null===(c=null===(l=Ge.idCapture)||void 0===l?void 0:l.guideBox)||void 0===c?void 0:c.satisfiedColor)&&void 0!==u?u:"green");var $e=ji(ee,{instructionText:"Scan the front of ID",processingIdCardText:"ID card front captured.",capturingText:"Capturing...",captureFailedText:"Capture failed!",guidanceSatisfiedText:"Document detected, hold still...",guidanceTooBlurryText:"Document out of focus – try improving the lighting",guidanceNotCenteredText:"Document is not centered",guidanceNotDetectedText:"Document not detected"}),Ve=dr({enabled:ne,pageWidth:oe,pageHeight:le,videoWidth:ue.videoWidth,videoHeight:ue.videoHeight}),qe=ue.isGoodFrame;return"boolean"==typeof U&&(qe=U),O||(O=qe?$e.guidanceSatisfiedText:ue.documentDetectionThresholdMet?ue.documentInBounds?ue.focusThresholdMet?"":$e.guidanceTooBlurryText:$e.guidanceNotCenteredText:$e.guidanceNotDetectedText),ge?s.default.createElement(s.default.Fragment,null,V,fe&&s.default.createElement(kr,{classNames:X.imagePreview,text:$e.processingIdCardText,imageUrl:fe})):""!==fe?s.default.createElement("img",{src:fe,alt:"",style:{maxWidth:"100%",maxHeight:"100%"}}):s.default.createElement(M,{ref:re,className:"flex ".concat(null!==(d=X.container)&&void 0!==d?d:"")},s.default.createElement(Ke,{classNames:X.guides,width:oe,height:le,instruction:ue.captureFailed?$e.captureFailedText:ue.capturing?null==$e?void 0:$e.capturingText:$e.instructionText,portraitGuidesImageUrl:K.portraitGuidesImageUrl,landscapeGuidesImageUrl:K.landscapeGuidesImageUrl,isMirrored:!(null===(h=be.current)||void 0===h?void 0:h.isRearFacing),borderColor:ue.isGoodFrame?Z.guideBoxSatisfiedColor:Z.guideBoxUnsatisfiedColor}),""!==O&&s.default.createElement(eo,{$top:"82.5vh",className:X.guidanceMessageContainer},s.default.createElement(to,{$variant:qe?"positive":"default",className:X.guidanceMessage},O)),ne&&ue.detectedObjects.length>0&&s.default.createElement(lr,{$flipX:!(null===(f=be.current)||void 0===f?void 0:f.isRearFacing)},ue.detectedObjects.map((function(e,t){var n;return s.default.createElement(hr,{key:t,obj:e,scaling:Ve,flipX:!(null===(n=be.current)||void 0===n?void 0:n.isRearFacing)})}))),ne&&s.default.createElement(sr,null,be.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",be.current.label," (",be.current.width,"x",be.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),ue.frameCaptureRate>.75?"✅":"👎"," Frame Rate:"," ",Math.round(1e3*(ue.frameCaptureRate+Number.EPSILON))/1e3," ","fps (",_e,"ms doc detect, ",Fe,"ms focus)",s.default.createElement("br",null),Te?s.default.createElement(s.default.Fragment,null,ue.documentDetectionThresholdMet?"✅":"❌"," Document Score: ",ue.documentDetectionScore," (",ue.documentType,")",s.default.createElement("br",null),ue.documentInBounds?"✅":"❌"," Document In Bounds",s.default.createElement("br",null),ue.focusThresholdMet?"✅":"❌"," Focus Score:"," ",ue.focusScore,s.default.createElement("br",null),ue.goodFramesThresholdMet?"✅":"❌"," Good Frame Count:"," ",ue.goodFramesCount,"/",ue.goodFramesThreshold,P&&ue.autoCaptureBarcodeRequired?s.default.createElement(s.default.Fragment,null,s.default.createElement("br",null),ue.barcodeResult?"✅":"❌"," Barcode Scanned (",Qe()?"Native":"ZXing",","," ",ue.barcodeScanFailedAttempts,"/",ue.maxBarcodeScanAttempts," failed attempts)"):null):s.default.createElement(s.default.Fragment,null,"❌ Models not ready")),s.default.createElement(Er,{onClick:$,className:X.exitCaptureBtn}))},io=function(e){return e?Math.abs((new Date).getTime()-e.getTime()):0},oo=function(e){var n,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(dt).retryCameraAccess;r.imageUrl||(r.imageUrl=Ga+"/camera-disable-icon.png");var f=ji(d,{headingText:"Your camera permission is disabled",descriptionText:"This application requires access to your camera to continue. Please accept the permission once prompted by the browser. If the browser does not prompt for camera permissions, you must go to settings and provide camera access to the current browser.",retryBtnText:"Retry"});return s.default.createElement(U,{className:"flex ".concat(null!==(n=o.container)&&void 0!==n?n:"")},s.default.createElement(so,{className:o.inner},s.default.createElement(lo,{className:o.imageContainer},s.default.createElement("img",{src:r.imageUrl,alt:"",className:o.image})),s.default.createElement("h3",{className:o.heading},f.headingText),s.default.createElement(co,{className:o.description},f.descriptionText),s.default.createElement(uo,{variant:"warning",onClick:h,colors:c.retryBtn,className:o.retryBtn,finished:!0},f.retryBtnText)))},so=u.default(j)($i||($i=y(["\n max-width: 500px;\n height: auto;\n margin: auto;\n"],["\n max-width: 500px;\n height: auto;\n margin: auto;\n"]))),lo=u.default(z)(Vi||(Vi=y(["\n flex-grow: 0;\n"],["\n flex-grow: 0;\n"]))),co=u.default.p(qi||(qi=y(["\n line-height: 1.5;\n margin-bottom: 50px;\n"],["\n line-height: 1.5;\n margin-bottom: 50px;\n"]))),uo=u.default(ce)(Wi||(Wi=y(["\n width: 200px;\n margin: 0 auto;\n"],["\n width: 200px;\n margin: 0 auto;\n"]))),ho=u.default.div(Hi||(Hi=y(["\n height: 48px;\n margin-top: -48px;\n margin-bottom: 8px;\n padding-top: 26px;\n"],["\n height: 48px;\n margin-top: -48px;\n margin-bottom: 8px;\n padding-top: 26px;\n"]))),fo=u.default.input(Ki||(Ki=y(["\n margin-right: 8px;\n"],["\n margin-right: 8px;\n"]))),po=function(e){var n=e.onDismissed,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(Xa).ready,f=t.useContext(dt),p=f.cameraReady,m=f.cameraAccessDenied,g=f.iphoneContinuityCameraAvailable,v=f.setIphoneContinuityCameraAllowed,y=t.useState(!1),b=y[0],w=y[1];r.instructionImageUrl||(r.instructionImageUrl="".concat(Ga,"/WebSDK-Instruction-DL-Capture-3-Portrait.png"));var x=ji(d,{headingText:"Use your device camera to capture your ID",useContinuityCameraText:"Use your iPhone as a webcam",modelsWarmingUpText:"Models warming up...",cameraInitializingText:"Camera initializing...",continueText:"Continue"});return t.useEffect((function(){if(h&&p)return function(){return null};var e=setTimeout((function(){w(!1)}),500);return function(){clearTimeout(e)}}),[p,h]),b?s.default.createElement(s.default.Fragment,null):m?s.default.createElement(oo,{assets:r.cameraAccessDenied,classNames:o.cameraAccessDenied,colors:c.cameraAccessDenied,verbiage:d.cameraAccessDenied}):s.default.createElement(U,{className:o.container},s.default.createElement(j,{className:o.inner},s.default.createElement("h3",{className:o.heading},x.headingText),s.default.createElement(z,{className:o.imageContainer,style:{pointerEvents:"none"}},s.default.createElement("img",{alt:x.headingText,src:r.instructionImageUrl,className:o.image})),s.default.createElement(ho,{className:o.continuityCameraCheckboxContainer},g&&s.default.createElement(s.default.Fragment,null,s.default.createElement(fo,{className:o.continuityCameraCheckbox,id:"use-continuity-camera",type:"checkbox",defaultChecked:!0,onChange:function(e){v(e.target.checked)}}),s.default.createElement("label",{htmlFor:"use-continuity-camera",className:o.continuityCameraCheckboxLabel},x.useContinuityCameraText))),s.default.createElement(ce,{className:o.continueBtn,variant:"positive",disabled:!p||!h,finished:h&&p,colors:c.continueBtn,onClick:function(){w(!0),null==n||n()}},p&&h?x.continueText:h?x.cameraInitializingText:x.modelsWarmingUpText)))},mo=u.default(He)(Yi||(Yi=y(["\n backface-visibility: hidden;\n transform-style: preserve-3d;\n position: relative;\n top: 0;\n left: 0;\n transition: transform ","s;\n transform: ",";\n"],["\n backface-visibility: hidden;\n transform-style: preserve-3d;\n position: relative;\n top: 0;\n left: 0;\n transition: transform ","s;\n transform: ",";\n"])),(function(e){return e.$transitionTime}),(function(e){return e.$transforms})),go=u.default(mo)(Xi||(Xi=y(["\n position: absolute;\n"],["\n position: absolute;\n"]))),vo=function(e){var n,a,r=e.assets,i=void 0===r?{}:r,o=e.classNames,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=De(),h=d.ref,f=d.width,p=void 0===f?1:f,m=d.height,g=void 0===m?1:m,v=t.useContext(dt).cameraRef;i.frontPortraitGuidesImageUrl||(i.frontPortraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),i.frontLandscapeGuidesImageUrl||(i.frontLandscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),i.backPortraitGuidesImageUrl||(i.backPortraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Portrait-2.svg")),i.backLandscapeGuidesImageUrl||(i.backLandscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var y=Ui(u.instructionText,"Please flip your ID card..."),b=_e()?0:50,w=!(null===(n=v.current)||void 0===n?void 0:n.isRearFacing),x=t.useContext(Ae),E=x.orientation,C=x.wrapperRef,k=x.wrapperWidth,S=x.wrapperHeight,T=x.imageAspectRatio,I=x.wrapperAspectRatio,R=x.onImageLoaded,D=x.setDimensions;t.useEffect((function(){D({width:p,height:g})}),[g,D,p]);var A=2*b+8,N=void 0,_=void 0;T>=I?N=k-A:_=S-A;var F=t.useState(1),P=F[0],L=F[1],B=t.useState(0),O=B[0],U=B[1],j=["rotateY(".concat(O,"deg)")];w&&j.push("scaleX(-1)");var z=["rotateY(".concat(180-O,"deg)")];return w&&z.push("scaleX(-1)"),t.useEffect((function(){var e=function(){L(1),U(180),setTimeout((function(){L(0),U(0)}),1500)};setTimeout(e,250);var t=setInterval(e,2500);return function(){clearInterval(t)}}),[]),s.default.createElement(M,{ref:h,className:"flex ".concat(null!==(a=l.container)&&void 0!==a?a:"")},s.default.createElement(ze,{ref:C,className:l.inner},s.default.createElement($e,{$minHeight:b,className:yo(l,"Top")},""!==y&&s.default.createElement(We,{className:l.guideText},y)),s.default.createElement(Ge,{className:l.centerRow},s.default.createElement($e,{$minWidth:b,className:yo(l,"Left")}),s.default.createElement(qe,{$borderWidth:4,$borderColor:"white",className:l.centerRegion},s.default.createElement(mo,{src:"portrait"===E?i.frontPortraitGuidesImageUrl:i.frontLandscapeGuidesImageUrl,alt:"",className:l.image,$width:N,$height:_,$transitionTime:P,$transforms:j.join(" "),onLoad:R}),s.default.createElement(go,{src:"portrait"===E?i.backPortraitGuidesImageUrl:i.backLandscapeGuidesImageUrl,alt:"",className:l.image,$width:N,$height:_,$transitionTime:P,$transforms:z.join(" ")})),s.default.createElement($e,{$minWidth:b,className:yo(l,"Right")})),s.default.createElement($e,{$minHeight:b,className:yo(l,"Bottom")},""!==y&&s.default.createElement(We,{style:{opacity:0}},y))))},yo=function(e,t){return[e.dimmingRegion,e["dimmingRegion".concat(t)]].filter((function(e){return e})).join(" ")},bo=u.default.div(Ji||(Ji=y(["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n"],["\n display: flex;\n gap: 0 15px;\n justify-content: center;\n"]))),wo=u.default.p(Zi||(Zi=y(["\n font-size: 18px;\n margin: 30px 0;\n"],["\n font-size: 18px;\n margin: 30px 0;\n"]))),xo=function(e){var n=e.capturedDocuments,a=e.onSubmitClick,r=e.onRetryClick,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(Ce).submissionStatus,f=n.ID_CARD_FRONT,p=n.ID_CARD_BACK,m=n.PASSPORT,g=ji(d,{headingText:"ID Capture Successful",idCardFrontText:"ID Card Front",idCardBackText:"ID Card Back",passportText:"Passport",instructionText:"Verify the entire ID was captured clearly with no glare.",retryText:"Retry",submittingText:"Submitting...",submitText:"Done"});return s.default.createElement(U,{className:o.container},s.default.createElement(j,{className:o.inner},s.default.createElement("h1",{className:o.heading},g.headingText),s.default.createElement(z,{className:o.imageContainer},s.default.createElement(G,{className:o.imageRow},f&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.idCardFrontText),s.default.createElement("img",{className:o.image,src:f.imageData,alt:g.idCardFrontText,width:f.width,height:f.height})),p&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.idCardBackText),s.default.createElement("img",{className:o.image,src:p.imageData,alt:g.idCardBackText,width:p.width,height:p.height})),m&&s.default.createElement("div",{className:o.imageCol},s.default.createElement("h3",{className:o.imageHeading},g.passportText),s.default.createElement("img",{className:o.image,src:m.imageData,alt:g.passportText,width:m.width,height:m.height})))),s.default.createElement(wo,{className:o.instruction},g.instructionText),s.default.createElement(bo,{className:o.buttonsRow},s.default.createElement(ce,{className:o.retryBtn,variant:"warning",onClick:r,colors:c.retryBtn,finished:!0},g.retryText),s.default.createElement(ce,{className:o.submitBtn,variant:"positive",onClick:a,disabled:h===w.SUBMITTING,colors:c.doneBtn,finished:!0},h===w.SUBMITTING?g.submittingText:g.submitText))))},Eo=function(e){var n,a=e.className,r=t.useContext(dt),i=r.videoRef,o=r.setVideoLoaded,l=r.cameraRef;t.useEffect((function(){o(!1)}),[o]),t.useEffect((function(){var e;i.current&&(null===(e=l.current)||void 0===e?void 0:e.stream)&&(i.current.srcObject=l.current.stream)}),[l,i]);var c=t.useCallback((function(){o(!0)}),[o]);return s.default.createElement(Co,{className:a,autoPlay:!0,playsInline:!0,muted:!0,ref:i,onLoadedData:c,$isRearFacing:null===(n=l.current)||void 0===n?void 0:n.isRearFacing})},Co=u.default.video(Qi||(Qi=y(["\n transform: ",";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"],["\n transform: ",";\n min-width: 100%;\n min-height: 100%;\n width: auto;\n height: auto;\n object-fit: cover;\n"])),(function(e){return e.$isRearFacing?"":"scaleX(-1)"}));function ko(e,n,a){var r=this,i=t.useState(!1),o=i[0],s=i[1];return t.useEffect((function(){n&&e&&("function"==typeof e?m(r,void 0,void 0,(function(){return g(this,(function(t){switch(t.label){case 0:return[4,e()];case 1:return t.sent()?null==a||a():s(!0),[2]}}))})):null==a||a())}),[n,a,e]),!e||o}var So,To,Io,Ro,Do,Ao,No,_o=function(e){var n=e.onCapture,a=e.onFinished,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=t.useRef(null),h=t.useState([]),f=h[0],p=h[1],m=ji(u,{headingText:"We're having some trouble.",descriptionText:"On-device capture guidance failed, please capture photos of your ID card or passport manually.",firstInstructionText:"Please capture the front of your ID card, or the ID page of your passport.",secondInstructionText:"Please capture the back of your ID card, or click Done if submitting a passport.",captureBtnText:"Capture",captureMoreBtnText:"Capture back of ID Card",doneBtnText:"Done"});return s.default.createElement(U,{className:i.container},s.default.createElement(Fo,{className:i.inner},s.default.createElement(Mo,{className:i.heading},m.headingText),s.default.createElement(Po,{className:i.description},m.descriptionText),f.length>0&&s.default.createElement(G,{className:i.imageContainer},f.map((function(e,t){return s.default.createElement(Bo,{key:t,className:i.imageCol},s.default.createElement("img",{src:e,alt:"",className:i.image}))}))),f.length<2&&s.default.createElement(Lo,{className:i.instruction},0===f.length?m.firstInstructionText:m.secondInstructionText),s.default.createElement("input",{ref:d,type:"file",accept:"image/*",onChange:function(e){var t,a=null===(t=e.target.files)||void 0===t?void 0:t[0];if(a){var r=new FileReader;r.addEventListener("load",(function(e){var t,a=null===(t=e.target)||void 0===t?void 0:t.result;p((function(e){return v(v([],e,!0),[a],!1)})),null==n||n(a)})),r.readAsDataURL(a)}},hidden:!0}),s.default.createElement(Oo,{className:i.buttonsRow},f.length<2&&s.default.createElement(ce,{variant:f.length>0?"secondary":"positive",className:f.length>0?i.captureMoreBtn:i.captureBtn,colors:f.length>0?l.captureMoreBtn:l.captureBtn,finished:!0,onClick:function(){var e;null===(e=d.current)||void 0===e||e.click()}},f.length>0?m.captureMoreBtnText:m.captureBtnText),f.length>0&&s.default.createElement(ce,{variant:"positive",className:i.doneBtn,colors:l.doneBtn,finished:!0,onClick:function(){null==a||a(f)}},m.doneBtnText))))},Fo=u.default(j)(So||(So=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),Mo=u.default.h3(To||(To=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Po=u.default.p(Io||(Io=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Lo=u.default.p(Ro||(Ro=y(["\n font-weight: bold;\n"],["\n font-weight: bold;\n"]))),Bo=u.default.div(Do||(Do=y(["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"],["\n display: flex;\n justify-content: center;\n flex-grow: 1;\n flex-basis: 0;\n"]))),Oo=u.default(bo)(Ao||(Ao=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"])));!function(e){e.CAPTURING="CAPTURING",e.COMPLETE="COMPLETE"}(No||(No={}));var Uo,jo,zo={captureState:No.CAPTURING,capturedDocuments:{},requestedDocumentType:se.ID_CARD_FRONT,currentDocumentType:se.NONE,differentDocumentTypeDetections:0,barcodeResult:null},Go=function(e,t){var n;switch(t.type){case"predictionMade":var a=t.payload.prediction;return(r=p(p({},e),{currentDocumentType:a.detectedDocumentType})).currentDocumentType===e.requestedDocumentType&&(r.differentDocumentTypeDetections=0),"PASSPORT"===a.detectedDocumentType&&"PASSPORT"!==e.requestedDocumentType&&(r.requestedDocumentType=se.PASSPORT),"PASSPORT"===e.requestedDocumentType&&a.passportDetectionScore<.3&&(r.requestedDocumentType=se.ID_CARD_FRONT),r;case"barcodeScanned":return p(p({},e),{barcodeResult:t.payload.result});case"imageCaptured":var r=p(p({},e),{capturedDocuments:p(p({},e.capturedDocuments),(n={},n[e.requestedDocumentType]=t.payload,n))});return"ID_CARD_FRONT"!==e.requestedDocumentType||e.capturedDocuments.ID_CARD_BACK?"ID_CARD_BACK"!==e.requestedDocumentType||e.capturedDocuments.ID_CARD_FRONT?r.captureState=No.COMPLETE:r.requestedDocumentType=se.ID_CARD_FRONT:r.requestedDocumentType=se.ID_CARD_BACK,r;case"imageCapturedManually":r=p({},e);var i=p(p({},t.payload),{width:0,height:0});return 0===Object.keys(e.capturedDocuments).length?r.capturedDocuments[se.PASSPORT]=i:(r.capturedDocuments={},r.capturedDocuments[se.ID_CARD_FRONT]=e.capturedDocuments[se.PASSPORT],r.capturedDocuments[se.ID_CARD_BACK]=i),r;case"reset":return p({},zo)}},$o=function(e){var n,a,r,i,o,l,c,u,d,h,f,p=e.onSuccess,m=e.onExitCapture,g=e.autoCaptureEnabled,v=void 0===g||g,y=e.autoCaptureGoodFramesRequired,b=void 0===y?3:y,x=e.autoCaptureBarcodeRequired,E=void 0===x?"mobile":x,C=e.barcodeScanningEnabled,S=void 0!==C&&C,T=e.idCardAutoCaptureScoreThreshold,I=void 0===T?.8:T,R=e.passportAutoCaptureScoreThreshold,D=void 0===R?.75:R,A=e.mrzDetectionScoreThreshold,N=void 0===A?.25:A,_=e.idCardFocusScoreThreshold,F=void 0===_?.3:_,P=e.passportFocusScoreThreshold,L=void 0===P?.3:P,B=e.skipSuccessScreen,O=void 0!==B&&B,U=e.releaseCameraAccessOnExit,j=void 0===U||U,z=e.assets,G=void 0===z?{}:z,$=e.classNames,V=void 0===$?{}:$,q=e.colors,W=void 0===q?{}:q,H=e.verbiage,K=void 0===H?{}:H,Y=e.debugMode,X=void 0!==Y&&Y,J=t.useReducer(Go,zo),Z=J[0],Q=J[1],ee=t.useContext(dt).releaseCameraAccess,te=t.useState(!1),ne=te[0],ae=te[1],re=t.useContext(Ce),ie=re.submissionStatus,oe=re.setIdFrontImage,le=re.setIdBackImage,ce=re.setPassportImage,ue=re.logIdFrontCaptureAttempt,de=re.logIdBackCaptureAttempt,he=t.useContext(Xa).error,fe=t.useRef();t.useEffect((function(){fe.current=new Date}),[Z.capturedDocuments.length]);var pe=t.useCallback((function(e){var t;e.operationTime=(new Date).getTime()-(null!==(t=fe.current)&&void 0!==t?t:new Date).getTime(),"ID_CARD_BACK"===Z.requestedDocumentType?de(e):ue(e)}),[de,ue,Z.requestedDocumentType]),me=t.useCallback((function(e){Q({type:"predictionMade",payload:{prediction:e}})}),[]),ge=t.useCallback((function(e){Q({type:"barcodeScanned",payload:{result:e}})}),[]),ve=t.useCallback((function(e,t,n,a){pe(a),Q({type:"imageCaptured",payload:{imageData:e,width:t,height:n}})}),[pe]),ye=t.useCallback((function(){var e=Z.capturedDocuments.ID_CARD_FRONT,t=Z.capturedDocuments.ID_CARD_BACK,n=Z.capturedDocuments.PASSPORT,a=e&&k(e.imageData),r=t&&k(t.imageData),i=n&&k(n.imageData);oe(a),le(r),ce(i),j&&ee(),setTimeout((function(){null==p||p({idFrontImage:a,idBackImage:r,passportImage:i})}),0)}),[p,ee,j,le,oe,ce,Z.capturedDocuments]),be=ko(O,Z.captureState===No.COMPLETE,ye),we=t.useCallback((function(){Q({type:"reset"})}),[]),xe=t.useState(0),Ee=xe[0],ke=xe[1],Se=t.useCallback((function(){ae(!1),ke((function(e){return e+1})),Q({type:"reset"}),null==m||m()}),[m]);t.useEffect((function(){ie!==w.READY&&j&&ee()}),[ee,j,ie]),G.idCardFront||(G.idCardFront={}),(a=G.idCardFront).portraitGuidesImageUrl||(a.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Portrait-2.svg")),(r=G.idCardFront).landscapeGuidesImageUrl||(r.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),G.idCardBack||(G.idCardBack={}),(i=G.idCardBack).portraitGuidesImageUrl||(i.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Portrait-2.svg")),(o=G.idCardBack).landscapeGuidesImageUrl||(o.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg")),G.passport||(G.passport={}),(l=G.passport).portraitGuidesImageUrl||(l.portraitGuidesImageUrl="".concat(Ga,"/Shieldout-Passport-Front-SVG-Portrait-2.svg")),(c=G.passport).landscapeGuidesImageUrl||(c.landscapeGuidesImageUrl="".concat(Ga,"/Shieldout-Passport-Front-SVG-Landscape-2.svg")),G.flipIdPrompt||(G.flipIdPrompt={}),(u=G.flipIdPrompt).frontPortraitGuidesImageUrl||(u.frontPortraitGuidesImageUrl=G.idCardFront.portraitGuidesImageUrl),(d=G.flipIdPrompt).frontLandscapeGuidesImageUrl||(d.frontLandscapeGuidesImageUrl=G.idCardFront.landscapeGuidesImageUrl),(h=G.flipIdPrompt).backPortraitGuidesImageUrl||(h.backPortraitGuidesImageUrl=G.idCardBack.portraitGuidesImageUrl),(f=G.flipIdPrompt).backLandscapeGuidesImageUrl||(f.backLandscapeGuidesImageUrl=G.idCardBack.landscapeGuidesImageUrl);var Te=ji(K.idCardFront,{instructionText:"Scan the front of ID",processingIdCardText:"ID card front captured."}),Ie=ji(K.idCardBack,{instructionText:"Scan the back of ID"}),Re=ji(K.idCardBack,{instructionText:"Scan the ID page of passport"});return he?s.default.createElement(_o,{onFinished:ye,onCapture:function(e){Q({type:"imageCapturedManually",payload:{imageData:e}})},classNames:V.fallback,colors:W.fallback,verbiage:K.fallback}):s.default.createElement(M,{className:"flex ".concat(null!==(n=null==V?void 0:V.container)&&void 0!==n?n:"")},Z.captureState!==No.COMPLETE&&s.default.createElement(Eo,{className:null==V?void 0:V.cameraFeed}),ne&&function(){var e=Object.keys(Z.capturedDocuments).length;switch(Z.requestedDocumentType){case se.ID_CARD_FRONT:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Z.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:I,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:!1,mrzDetectionScoreThreshold:N,focusScoreThreshold:F,onPrediction:me,onCapture:ve,onExit:Se,processingDelay:3500,assets:G.idCardFront,classNames:null==V?void 0:V.capture,colors:W,verbiage:Te,debugMode:X,processingScreen:s.default.createElement(vo,{assets:G.flipIdPrompt,classNames:V.flipIdPrompt,verbiage:K.flipIdPrompt})});case se.ID_CARD_BACK:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Z.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:I,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:S,mrzDetectionScoreThreshold:N,focusScoreThreshold:F,onPrediction:me,onBarcodeScanned:ge,onCapture:ve,onExit:Se,assets:G.idCardBack,classNames:null==V?void 0:V.capture,colors:W,verbiage:Ie,debugMode:X});case se.PASSPORT:return s.default.createElement(ro,{key:"capture".concat(e),requiredDocumentType:Z.requestedDocumentType,autoCaptureEnabled:v,autoCaptureScoreThreshold:D,mrzDetectionScoreThreshold:N,autoCaptureGoodFramesRequired:b,autoCaptureBarcodeRequired:E,barcodeScanningEnabled:!1,focusScoreThreshold:L,onPrediction:me,onBarcodeScanned:ge,onCapture:ve,onExit:Se,assets:G.passport,classNames:null==V?void 0:V.capture,colors:W,verbiage:Re,debugMode:X});default:return null}}(),!ne&&s.default.createElement(po,{key:Ee,assets:G.loadingOverlay,classNames:V.loadingOverlay,colors:W.loadingOverlay,verbiage:K.loadingOverlay,onDismissed:function(){ae(!0)}}),Z.captureState===No.COMPLETE&&be&&s.default.createElement(xo,{capturedDocuments:Z.capturedDocuments,barcodeResult:Z.barcodeResult,classNames:V.success,onSubmitClick:ye,onRetryClick:we,colors:W.success,verbiage:K.success}))},Vo=u.default.div(Uo||(Uo=y(["\n position: absolute;\n z-index: 1000;\n width: 100%;\n height: 100%;\n display: flex;\n"],["\n position: absolute;\n z-index: 1000;\n width: 100%;\n height: 100%;\n display: flex;\n"]))),qo=u.default.div(jo||(jo=y(["\n border-width: ","px;\n border-color: ",";\n border-style: solid;\n border-radius: 50%;\n aspect-ratio: 1 / 1.618;\n height: 50%;\n margin: auto;\n"],["\n border-width: ","px;\n border-color: ",";\n border-style: solid;\n border-radius: 50%;\n aspect-ratio: 1 / 1.618;\n height: 50%;\n margin: auto;\n"])),(function(e){return e.$borderWidth}),(function(e){var t,n,a,r;return null!==(r=null!==(t=e.$borderColor)&&void 0!==t?t:null===(a=null===(n=e.theme.selfieCapture)||void 0===n?void 0:n.guides)||void 0===a?void 0:a["".concat(e.$variant,"Color")])&&void 0!==r?r:"white"})),Wo=function(e){var t=e.classNames,n=void 0===t?{}:t,a=e.variant,r=e.borderWidth;return s.default.createElement(Vo,{className:n.container},s.default.createElement(qo,{className:n.oval,$variant:void 0===a?"unsatisfied":a,$borderWidth:void 0===r?3:r,$borderColor:e.borderColor}))},Ho=self;function Ko(){throw Error("Invalid UTF8")}function Yo(e,t){return t=String.fromCharCode.apply(null,t),null==e?t:e+t}let Xo,Jo;const Zo="undefined"!=typeof TextDecoder;let Qo;const es="undefined"!=typeof TextEncoder;function ts(e){if(es)e=(Qo||=new TextEncoder).encode(e);else{let n=0;const a=new Uint8Array(3*e.length);for(let r=0;r<e.length;r++){var t=e.charCodeAt(r);if(128>t)a[n++]=t;else{if(2048>t)a[n++]=t>>6|192;else{if(55296<=t&&57343>=t){if(56319>=t&&r<e.length){const i=e.charCodeAt(++r);if(56320<=i&&57343>=i){a[n++]=(t=1024*(t-55296)+i-56320+65536)>>18|240,a[n++]=t>>12&63|128,a[n++]=t>>6&63|128,a[n++]=63&t|128;continue}r--}t=65533}a[n++]=t>>12|224,a[n++]=t>>6&63|128}a[n++]=63&t|128}}e=n===a.length?a:a.subarray(0,n)}return e}var ns,as;e:{for(var rs=["CLOSURE_FLAGS"],is=Ho,os=0;os<rs.length;os++)if(null==(is=is[rs[os]])){as=null;break e}as=is}var ss,ls=as&&as[610401301];ns=null!=ls&&ls;const cs=Ho.navigator;function us(e){return!!ns&&!!ss&&ss.brands.some((({brand:t})=>t&&-1!=t.indexOf(e)))}function ds(e){var t;return(t=Ho.navigator)&&(t=t.userAgent)||(t=""),-1!=t.indexOf(e)}function hs(){return!!ns&&!!ss&&0<ss.brands.length}function fs(){return hs()?us("Chromium"):(ds("Chrome")||ds("CriOS"))&&!(!hs()&&ds("Edge"))||ds("Silk")}ss=cs&&cs.userAgentData||null;var ps=!hs()&&(ds("Trident")||ds("MSIE"));!ds("Android")||fs(),fs(),ds("Safari")&&(fs()||!hs()&&ds("Coast")||!hs()&&ds("Opera")||!hs()&&ds("Edge")||(hs()?us("Microsoft Edge"):ds("Edg/"))||hs()&&us("Opera"));var ms={},gs=null;function vs(){if(!gs){gs={};for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"],n=0;5>n;n++){var a=e.concat(t[n].split(""));ms[n]=a;for(var r=0;r<a.length;r++){var i=a[r];void 0===gs[i]&&(gs[i]=r)}}}}var ys="undefined"!=typeof Uint8Array,bs=!ps&&"function"==typeof btoa;function ws(e){if(!bs){var t;void 0===t&&(t=0),vs(),t=ms[t];var n=Array(Math.floor(e.length/3)),a=t[64]||"";let l=0,c=0;for(;l<e.length-2;l+=3){var r=e[l],i=e[l+1],o=e[l+2],s=t[r>>2];n[c++]=s+(r=t[(3&r)<<4|i>>4])+(i=t[(15&i)<<2|o>>6])+(o=t[63&o])}switch(s=0,o=a,e.length-l){case 2:o=t[(15&(s=e[l+1]))<<2]||a;case 1:n[c]=t[(e=e[l])>>2]+t[(3&e)<<4|s>>4]+o+a}return n.join("")}for(t="",n=0,a=e.length-10240;n<a;)t+=String.fromCharCode.apply(null,e.subarray(n,n+=10240));return t+=String.fromCharCode.apply(null,n?e.subarray(n):e),btoa(t)}const xs=/[-_.]/g,Es={"-":"+",_:"/",".":"="};function Cs(e){return Es[e]||""}function ks(e){if(!bs)return function(e){var t=e.length,n=3*t/4;n%3?n=Math.floor(n):-1!="=.".indexOf(e[t-1])&&(n=-1!="=.".indexOf(e[t-2])?n-2:n-1);var a=new Uint8Array(n),r=0;return function(e,t){function n(t){for(;a<e.length;){var n=e.charAt(a++),r=gs[n];if(null!=r)return r;if(!/^[\s\xa0]*$/.test(n))throw Error("Unknown base64 encoding at char: "+n)}return t}vs();for(var a=0;;){var r=n(-1),i=n(0),o=n(64),s=n(64);if(64===s&&-1===r)break;t(r<<2|i>>4),64!=o&&(t(i<<4&240|o>>2),64!=s&&t(o<<6&192|s))}}(e,(function(e){a[r++]=e})),r!==n?a.subarray(0,r):a}(e);xs.test(e)&&(e=e.replace(xs,Cs)),e=atob(e);const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function Ss(e){return ys&&null!=e&&e instanceof Uint8Array}let Ts;function Is(){return Ts||=new Uint8Array(0)}var Rs={};let Ds;function As(e){if(e!==Rs)throw Error("illegal external caller")}function Ns(){return Ds||=new Fs(null,Rs)}function _s(e){As(Rs);var t=e.N;return null==(t=null==t||Ss(t)?t:"string"==typeof t?ks(t):null)?t:e.N=t}var Fs=class{constructor(e,t){if(As(t),this.N=e,null!=e&&0===e.length)throw Error("ByteString should be constructed with non-empty values")}ha(){const e=_s(this);return e?new Uint8Array(e):Is()}};function Ms(e,t){return Error(`Invalid wire type: ${e} (at position ${t})`)}function Ps(){return Error("Failed to read varint, encoding is invalid.")}function Ls(e,t){return Error(`Tried to read past the end of the data ${t} > ${e}`)}function Bs(e){return 0==e.length?Ns():new Fs(e,Rs)}function Os(e){if("string"==typeof e)return{buffer:ks(e),H:!1};if(Array.isArray(e))return{buffer:new Uint8Array(e),H:!1};if(e.constructor===Uint8Array)return{buffer:e,H:!1};if(e.constructor===ArrayBuffer)return{buffer:new Uint8Array(e),H:!1};if(e.constructor===Fs)return{buffer:_s(e)||Is(),H:!0};if(e instanceof Uint8Array)return{buffer:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),H:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}const Us="function"==typeof Uint8Array.prototype.slice;let js,zs=0,Gs=0;function $s(e){const t=0>e;let n=(e=Math.abs(e))>>>0;if(e=Math.floor((e-n)/4294967296),t){const[t,a]=Ks(n,e);e=a,n=t}zs=n>>>0,Gs=e>>>0}function Vs(e){const t=js||=new DataView(new ArrayBuffer(8));t.setFloat32(0,+e,!0),Gs=0,zs=t.getUint32(0,!0)}function qs(e,t){return 4294967296*t+(e>>>0)}function Ws(e,t){const n=2147483648&t;return n&&(t=~t>>>0,0==(e=1+~e>>>0)&&(t=t+1>>>0)),e=qs(e,t),n?-e:e}function Hs(e){if(16>e.length)$s(Number(e));else if("function"==typeof BigInt)e=BigInt(e),zs=Number(e&BigInt(4294967295))>>>0,Gs=Number(e>>BigInt(32)&BigInt(4294967295));else{const t=+("-"===e[0]);Gs=zs=0;const n=e.length;for(let a=t,r=(n-t)%6+t;r<=n;a=r,r+=6){const t=Number(e.slice(a,r));Gs*=1e6,zs=1e6*zs+t,4294967296<=zs&&(Gs+=Math.trunc(zs/4294967296),Gs>>>=0,zs>>>=0)}if(t){const[e,t]=Ks(zs,Gs);zs=e,Gs=t}}}function Ks(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function Ys(e,t,{R:n=!1}={}){e.R=n,t&&(t=Os(t),e.h=t.buffer,e.s=t.H,e.v=0,e.l=e.h.length,e.g=e.v)}function Xs(e,t){if(e.g=t,t>e.l)throw Ls(e.l,t)}function Js(e,t){let n,a=0,r=0,i=0;const o=e.h;let s=e.g;do{n=o[s++],a|=(127&n)<<i,i+=7}while(32>i&&128&n);for(32<i&&(r|=(127&n)>>4),i=3;32>i&&128&n;i+=7)n=o[s++],r|=(127&n)<<i;if(Xs(e,s),128>n)return t(a>>>0,r>>>0);throw Ps()}function Zs(e){let t=0,n=e.g;const a=n+10,r=e.h;for(;n<a;){const a=r[n++];if(t|=a,0==(128&a))return Xs(e,n),!!(127&t)}throw Ps()}function Qs(e){var t=e.h;const n=e.g,a=t[n],r=t[n+1],i=t[n+2];return t=t[n+3],Xs(e,e.g+4),(a<<0|r<<8|i<<16|t<<24)>>>0}function el(e,t){if(0>t)throw Error(`Tried to read a negative byte length: ${t}`);const n=e.g,a=n+t;if(a>e.l)throw Ls(t,e.l-n);return e.g=a,n}function tl(e,t){if(0==t)return Ns();var n=el(e,t);return e.R&&e.s?n=e.h.subarray(n,n+t):(e=e.h,n=n===(t=n+t)?Is():Us?e.slice(n,t):new Uint8Array(e.subarray(n,t))),Bs(n)}var nl=class{constructor(e,t){this.h=null,this.s=!1,this.g=this.l=this.v=0,Ys(this,e,t)}m(){const e=this.h;let t=this.g,n=e[t++],a=127&n;if(128&n&&(n=e[t++],a|=(127&n)<<7,128&n&&(n=e[t++],a|=(127&n)<<14,128&n&&(n=e[t++],a|=(127&n)<<21,128&n&&(n=e[t++],a|=n<<28,128&n&&128&e[t++]&&128&e[t++]&&128&e[t++]&&128&e[t++]&&128&e[t++])))))throw Ps();return Xs(this,t),a}j(){return this.m()>>>0}A(){var e=Qs(this);const t=2*(e>>31)+1,n=e>>>23&255;return e&=8388607,255==n?e?NaN:1/0*t:0==n?t*Math.pow(2,-149)*e:t*Math.pow(2,n-150)*(e+Math.pow(2,23))}C(){return this.m()}},al=[];function rl(e){var t=e.g;if(t.g==t.l)return!1;e.l=e.g.g;var n=e.g.j();if(t=n>>>3,!(0<=(n&=7)&&5>=n))throw Ms(n,e.l);if(1>t)throw Error(`Invalid field number: ${t} (at position ${e.l})`);return e.m=t,e.h=n,!0}function il(e){switch(e.h){case 0:0!=e.h?il(e):Zs(e.g);break;case 1:Xs(e=e.g,e.g+8);break;case 2:if(2!=e.h)il(e);else{var t=e.g.j();Xs(e=e.g,e.g+t)}break;case 5:Xs(e=e.g,e.g+4);break;case 3:for(t=e.m;;){if(!rl(e))throw Error("Unmatched start-group tag: stream EOF");if(4==e.h){if(e.m!=t)throw Error("Unmatched end-group tag");break}il(e)}break;default:throw Ms(e.h,e.l)}}function ol(e,t,n){const a=e.g.l,r=e.g.j(),i=e.g.g+r;let o=i-a;if(0>=o&&(e.g.l=i,n(t,e,void 0,void 0,void 0),o=i-e.g.g),o)throw Error(`Message parsing ended unexpectedly. Expected to read ${r} bytes, instead read ${r-o} bytes, either the data ended unexpectedly or the message misreported its own length`);return e.g.g=i,e.g.l=a,t}function sl(e){var t=e.g.j(),n=el(e=e.g,t);if(e=e.h,Zo){var a,r=e;(a=Jo)||(a=Jo=new TextDecoder("utf-8",{fatal:!0})),e=n+t,r=0===n&&e===r.length?r:r.subarray(n,e);try{var i=a.decode(r)}catch(e){if(void 0===Xo){try{a.decode(new Uint8Array([128]))}catch(e){}try{a.decode(new Uint8Array([97])),Xo=!0}catch(e){Xo=!1}}throw!Xo&&(Jo=void 0),e}}else{t=(i=n)+t,n=[];let s,l=null;for(;i<t;){var o=e[i++];128>o?n.push(o):224>o?i>=t?Ko():(s=e[i++],194>o||128!=(192&s)?(i--,Ko()):n.push((31&o)<<6|63&s)):240>o?i>=t-1?Ko():(s=e[i++],128!=(192&s)||224===o&&160>s||237===o&&160<=s||128!=(192&(r=e[i++]))?(i--,Ko()):n.push((15&o)<<12|(63&s)<<6|63&r)):244>=o?i>=t-2?Ko():(s=e[i++],128!=(192&s)||0!=s-144+(o<<28)>>30||128!=(192&(r=e[i++]))||128!=(192&(a=e[i++]))?(i--,Ko()):(o=(7&o)<<18|(63&s)<<12|(63&r)<<6|63&a,n.push(55296+((o-=65536)>>10&1023),56320+(1023&o)))):Ko(),8192<=n.length&&(l=Yo(l,n),n.length=0)}i=Yo(l,n)}return i}function ll(e){const t=e.g.j();return tl(e.g,t)}function cl(e,t,n){var a=e.g.j();for(a=e.g.g+a;e.g.g<a;)n.push(t.call(e.g))}var ul=[];function dl(e){return e?/^\d+$/.test(e)?(Hs(e),new hl(zs,Gs)):null:fl||=new hl(0,0)}var hl=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let fl;function pl(e){return e?/^-?\d+$/.test(e)?(Hs(e),new ml(zs,Gs)):null:gl||=new ml(0,0)}var ml=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let gl;function vl(e,t,n){for(;0<n||127<t;)e.g.push(127&t|128),t=(t>>>7|n<<25)>>>0,n>>>=7;e.g.push(t)}function yl(e,t){for(;127<t;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function bl(e,t){if(0<=t)yl(e,t);else{for(let n=0;9>n;n++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function wl(e,t){e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function xl(e,t){0!==t.length&&(e.l.push(t),e.h+=t.length)}function El(e,t,n){yl(e.g,8*t+n)}function Cl(e,t){return El(e,t,2),t=e.g.end(),xl(e,t),t.push(e.h),t}function kl(e,t){var n=t.pop();for(n=e.h+e.g.length()-n;127<n;)t.push(127&n|128),n>>>=7,e.h++;t.push(n),e.h++}function Sl(e,t,n){El(e,t,2),yl(e.g,n.length),xl(e,e.g.end()),xl(e,n)}function Tl(e,t,n,a){null!=n&&(t=Cl(e,t),a(n,e),kl(e,t))}class Il{constructor(e,t,n){this.g=e,this.h=t,this.l=n}}function Rl(e){return Array.prototype.slice.call(e)}const Dl="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():void 0;var Al=Dl?(e,t)=>{e[Dl]|=t}:(e,t)=>{void 0!==e.D?e.D|=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Nl(e){const t=Fl(e);1!=(1&t)&&(Object.isFrozen(e)&&(e=Rl(e)),Pl(e,1|t))}var _l=Dl?(e,t)=>{e[Dl]&=~t}:(e,t)=>{void 0!==e.D&&(e.D&=~t)},Fl=Dl?e=>0|e[Dl]:e=>0|e.D,Ml=Dl?e=>e[Dl]:e=>e.D,Pl=Dl?(e,t)=>{e[Dl]=t}:(e,t)=>{void 0!==e.D?e.D=t:Object.defineProperties(e,{D:{value:t,configurable:!0,writable:!0,enumerable:!1}})};function Ll(){var e=[];return Al(e,1),e}function Bl(e){return Al(e,34),e}function Ol(e,t){Pl(t,-255&(0|e))}function Ul(e,t){Pl(t,-221&(34|e))}function jl(e){return 0==(e=e>>11&1023)?536870912:e}var zl,Gl={};function $l(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)&&e.constructor===Object}function Vl(e,t,n){if(null!=e)if("string"==typeof e)e=e?new Fs(e,Rs):Ns();else if(e.constructor!==Fs)if(Ss(e))e=n?Bs(e):e.length?new Fs(new Uint8Array(e),Rs):Ns();else{if(!t)throw Error();e=void 0}return e}const ql=[];function Wl(e){if(2&e)throw Error()}Pl(ql,55),zl=Object.freeze(ql);class Hl{constructor(e,t,n){this.l=0,this.g=e,this.h=t,this.m=n}next(){if(this.l<this.g.length){const e=this.g[this.l++];return{done:!1,value:this.h?this.h.call(this.m,e):e}}return{done:!0,value:void 0}}[Symbol.iterator](){return new Hl(this.g,this.h,this.m)}}var Kl={};let Yl,Xl;function Jl(e,t){(t=Yl?t[Yl]:void 0)&&(e[Yl]=Rl(t))}function Zl(e,t){e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity=t}function Ql(e){return null==e?e:"number"==typeof e||"NaN"===e||"Infinity"===e||"-Infinity"===e?Number(e):void 0}function ec(e){return null==e?e:"boolean"==typeof e||"number"==typeof e?!!e:void 0}function tc(e){return"number"==typeof e&&Number.isFinite(e)||!!e&&"string"==typeof e&&isFinite(e)}function nc(e){if(null==e)return e;if("string"==typeof e){if(!e)return;e=+e}return"number"==typeof e?e:void 0}function ac(e){if(null==e)return e;if("string"==typeof e){if(!e)return;e=+e}return"number"==typeof e?e:void 0}function rc(e){if("string"!=typeof e)throw Error();return e}function ic(e){if(null!=e&&"string"!=typeof e)throw Error();return e}function oc(e){return null==e||"string"==typeof e?e:void 0}function sc(e,t,n,a){var r=!1;return null==e||"object"!=typeof e||(r=Array.isArray(e))||e.M!==Gl?r?(0===(r=n=Fl(e))&&(r|=32&a),(r|=2&a)!==n&&Pl(e,r),new t(e)):(n?2&a?(e=t[lc])?t=e:(Bl((e=new t).u),t=t[lc]=e):t=new t:t=void 0,t):e}const lc="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():"di";function cc(e){return e}function uc(e,t,n){return"string"==typeof(e="number"==(t=typeof e)||"string"===t?e:n?0:void 0)&&(n=+e,Number.isSafeInteger(n))?n:e}let dc,hc,fc;function pc(e){switch(typeof e){case"boolean":return hc||=[0,void 0,!0];case"number":return 0<e?void 0:0===e?fc||=[0,void 0]:[-e,void 0];case"string":return[0,e];case"object":return e}}function mc(e,t){return gc(e,t[0],t[1])}function gc(e,t,n){if(null==e&&(e=dc),dc=void 0,null==e){var a=96;n?(e=[n],a|=512):e=[],t&&(a=-2095105&a|(1023&t)<<11)}else{if(!Array.isArray(e))throw Error();if(64&(a=Fl(e)))return Xl&&delete e[Xl],e;if(a|=64,n&&(a|=512,n!==e[0]))throw Error();e:{var r=(n=e).length;if(r){const e=r-1;var i=n[e];if($l(i)){1024<=(r=e-(t=+!!(512&(a|=256))-1))&&(vc(n,t,i),r=1023),a=-2095105&a|(1023&r)<<11;break e}}t&&(i=+!!(512&a)-1,1024<(t=Math.max(t,r-i))&&(vc(n,i,{}),a|=256,t=1023),a=-2095105&a|(1023&t)<<11)}}return Pl(e,a),e}function vc(e,t,n){const a=1023+t,r=e.length;for(let i=a;i<r;i++){const a=e[i];null!=a&&a!==n&&(n[i-t]=a)}e.length=a+1,e[a]=n}function yc(e){if(2&e.g)throw Error("Cannot mutate an immutable Map")}var bc=class extends Map{constructor(e,t,n=cc,a=cc){super();let r=Fl(e);r|=64,Pl(e,r),this.g=r,this.l=t,this.h=n||cc,this.j=this.l?wc:a||cc;for(let i=0;i<e.length;i++){const o=e[i],s=n(o[0],!1,!0);let l=o[1];t?void 0===l&&(l=null):l=a(o[1],!1,!0,void 0,void 0,r),super.set(s,l)}}s(e=xc){return this.m(e)}m(e=xc){const t=[],n=super.entries();for(var a;!(a=n.next()).done;)(a=a.value)[0]=e(a[0]),a[1]=e(a[1]),t.push(a);return t}clear(){yc(this),super.clear()}delete(e){return yc(this),super.delete(this.h(e,!0,!1))}entries(){var e=this.A();return new Hl(e,Ec,this)}keys(){return this.C()}values(){var e=this.A();return new Hl(e,bc.prototype.get,this)}forEach(e,t){super.forEach(((n,a)=>{e.call(t,this.get(a),a,this)}))}set(e,t){return yc(this),null==(e=this.h(e,!0,!1))?this:null==t?(super.delete(e),this):super.set(e,this.j(t,!0,!0,this.l,!1,this.g))}I(e){const t=this.h(e[0],!1,!0);e=e[1],e=this.l?void 0===e?null:e:this.j(e,!1,!0,void 0,!1,this.g),super.set(t,e)}has(e){return super.has(this.h(e,!1,!1))}get(e){e=this.h(e,!1,!1);const t=super.get(e);if(void 0!==t){var n=this.l;return n?((n=this.j(t,!1,!0,n,this.v,this.g))!==t&&super.set(e,n),n):t}}A(){return Array.from(super.keys())}C(){return super.keys()}[Symbol.iterator](){return this.entries()}};function wc(e,t,n,a,r,i){return e=sc(e,a,n,i),r&&(e=Ac(e)),e}function xc(e){return e}function Ec(e){return[e,this.get(e)]}function Cc(e,t,n,a,r,i){if(null!=e){if(Array.isArray(e))e=r&&0==e.length&&1&Fl(e)?void 0:i&&2&Fl(e)?e:kc(e,t,n,void 0!==a,r,i);else if($l(e)){const o={};for(let s in e)o[s]=Cc(e[s],t,n,a,r,i);e=o}else e=t(e,a);return e}}function kc(e,t,n,a,r,i){const o=a||n?Fl(e):0;a=a?!!(32&o):void 0;const s=Rl(e);for(let e=0;e<s.length;e++)s[e]=Cc(s[e],t,n,a,r,i);return n&&(Jl(s,e),n(o,s)),s}function Sc(e){return Cc(e,Tc,void 0,void 0,!1,!1)}function Tc(e){return e.M===Gl?e.toJSON():e instanceof bc?e.s(Sc):function(e){switch(typeof e){case"number":return isFinite(e)?e:String(e);case"boolean":return e?1:0;case"object":if(e&&!Array.isArray(e)){if(Ss(e))return ws(e);if(e instanceof Fs){const t=e.N;return null==t?"":"string"==typeof t?t:e.N=ws(t)}if(e instanceof bc)return e.s()}}return e}(e)}function Ic(e,t,n=Ul){if(null!=e){if(ys&&e instanceof Uint8Array)return t?e:new Uint8Array(e);if(Array.isArray(e)){var a=Fl(e);return 2&a?e:(t&&=0===a||!!(32&a)&&!(64&a||!(16&a)),t?(Pl(e,34|a),4&a&&Object.freeze(e),e):kc(e,Ic,4&a?Ul:n,!0,!1,!0))}return e.M===Gl?e=2&(a=Ml(n=e.u))?e:Rc(e,n,a,!0):e instanceof bc&&(n=Bl(e.m(Ic)),e=new bc(n,e.l,e.h,e.j)),e}}function Rc(e,t,n,a){return e=e.constructor,dc=t=Dc(t,n,a),t=new e(t),dc=void 0,t}function Dc(e,t,n){const a=n||2&t?Ul:Ol,r=!!(32&t);return e=function(e,t,n){const a=Rl(e);var r=a.length;const i=256&t?a[r-1]:void 0;for(r+=i?-1:0,t=512&t?1:0;t<r;t++)a[t]=n(a[t]);if(i){t=a[t]={};for(const e in i)t[e]=n(i[e])}return Jl(a,e),a}(e,t,(e=>Ic(e,r,a))),Al(e,32|(n?2:0)),e}function Ac(e){const t=e.u,n=Ml(t);return 2&n?Rc(e,t,n,!1):e}function Nc(e,t){return _c(e=e.u,Ml(e),t)}function _c(e,t,n,a){if(-1===n)return null;if(n>=jl(t)){if(256&t)return e[e.length-1][n]}else{var r=e.length;if(a&&256&t&&null!=(a=e[r-1][n]))return a;if((t=n+(+!!(512&t)-1))<r)return e[t]}}function Fc(e,t,n,a){const r=e.u,i=Ml(r);return Wl(i),Mc(r,i,t,n,a),e}function Mc(e,t,n,a,r){var i=jl(t);if(n>=i||r){if(r=t,256&t)i=e[e.length-1];else{if(null==a)return;i=e[i+(+!!(512&t)-1)]={},r|=256}i[n]=a,r!==t&&Pl(e,r)}else e[n+(+!!(512&t)-1)]=a,256&t&&n in(e=e[e.length-1])&&delete e[n]}function Pc(e,t,n,a,r){var i=2&t;let o=_c(e,t,n,r);Array.isArray(o)||(o=zl);const s=!(2&a),l=!(1&a);a=!!(32&t);let c=Fl(o);return 0!==c||!a||i||s?1&c||(c|=1,Pl(o,c)):(c|=33,Pl(o,c)),i?(2&c||Bl(o),l&&Object.freeze(o)):(i=2&c,l&&i?(o=Rl(o),i=1,a&&!s&&(i|=32),Pl(o,i),Mc(e,t,n,o,r)):s&&32&c&&!i&&_l(o,32)),o}function Lc(e,t){const n=Ml(e=e.u),a=_c(e,n,t),r=Ql(a);return null!=r&&r!==a&&Mc(e,n,t,r),r}function Bc(e){const t=Ml(e=e.u),n=_c(e,t,1),a=Vl(n,!0,!!(34&t));return null!=a&&a!==n&&Mc(e,t,1,a),a}function Oc(e,t,n){const a=Ml(e=e.u),r=2&a;let i=Pc(e,a,t,1),o=Fl(i);if(!(4&o)){Object.isFrozen(i)&&(i=Rl(i),Pl(i,o=-3&o|32),Mc(e,a,t,i));let s=0,l=0;for(;s<i.length;s++){const e=n(i[s]);null!=e&&(i[l++]=e)}l<s&&(i.length=l),o|=21,r?o|=34:o&=-33,Pl(i,o),2&o&&Object.freeze(i)}return!r&&(2&o||Object.isFrozen(i))&&(i=Rl(i),Pl(i,-35&o),Mc(e,a,t,i)),i}let Uc;function jc(){return Uc??=new bc(Bl([]),void 0,void 0,void 0,Kl)}function zc(e){e=Rl(e);for(let t=0;t<e.length;t++){const n=e[t]=Rl(e[t]);Array.isArray(n[1])&&(n[1]=Bl(n[1]))}return e}function Gc(e,t,n){{const a=Ml(e=e.u);if(Wl(a),null==n)Mc(e,a,t);else{if(!(4&Fl(n))){Object.isFrozen(n)&&(n=Rl(n));for(let e=0;e<n.length;e++)n[e]=rc(n[e]);Pl(n,5)}Mc(e,a,t,n)}}}function $c(e,t){return Vc(e=e.u,Ml(e),Fh)===t?t:-1}function Vc(e,t,n){let a=0;for(let r=0;r<n.length;r++){const i=n[r];null!=_c(e,t,i)&&(0!==a&&Mc(e,t,a),a=i)}return a}function qc(e,t,n,a){const r=Ml(e);Wl(r);const i=_c(e,r,n,a);let o;if(null!=i&&i.M===Gl)return(t=Ac(i))!==i&&Mc(e,r,n,t,a),t.u;if(Array.isArray(i)){const e=Fl(i);o=2&e?Dc(i,e,!1):i,o=mc(o,t)}else o=mc(void 0,t);return o!==i&&Mc(e,r,n,o,a),o}function Wc(e,t,n,a){const r=Ml(e=e.u),i=_c(e,r,n,a);return(t=sc(i,t,!1,r))!==i&&null!=t&&Mc(e,r,n,t,a),t}function Hc(e,t,n,a=!1){if(null==(t=Wc(e,t,n,a)))return t;const r=Ml(e=e.u);if(!(2&r)){const i=Ac(t);i!==t&&Mc(e,r,n,t=i,a)}return t}function Kc(e,t,n,a,r){var i=!!(2&t),o=Pc(e,t,a,1),s=o===zl;if(s&&2!==r)return o;if(s||!(4&Fl(o))){var l=o;o=!!(2&t),s=!!(2&Fl(l)),i=l,!o&&s&&(l=Rl(l));var c=t|((s=s||void 0)?2:0),u=s;s=!1;let d=0,h=0;for(;d<l.length;d++){const e=sc(l[d],n,!1,c);if(null==e)continue;const t=!!(2&Fl(e.u));u=u||t,s=s||!t,l[h++]=e}return h<d&&(l.length=h),c=5|(l=Fl(n=l)),u=u?-9&c:8|c,l!=(u=s?-17&u:16|u)&&(Object.isFrozen(n)&&(n=Rl(n)),Pl(n,u)),i!==(l=n)&&Mc(e,t,a,l),(o&&2!==r||1===r)&&Object.freeze(l),l}return 3===r||(i?2===r&&(r=Fl(o),o=Rl(o),Pl(o,r),Mc(e,t,a,o)):(i=Object.isFrozen(o),1===r?i||Object.freeze(o):(n=-33&(r=Fl(o)),i||2&r?(o=Rl(o),Pl(o,-3&n),Mc(e,t,a,o)):r!==n&&Pl(o,n)))),o}function Yc(e,t,n){var a=e.u;const r=Ml(a);if(t=Kc(a,r,t,n,(e=!!(2&r))?1:2),!(e||8&Fl(t))){for(n=0;n<t.length;n++)(e=t[n])!==(a=Ac(e))&&(t[n]=a);Al(t,8)}return t}function Xc(e,t,n,a,r){return null==a&&(a=void 0),Fc(e,n,a,r)}function Jc(e,t,n,a){null==a&&(a=void 0);const r=Ml(e=e.u);Wl(r),(n=Vc(e,r,n))&&n!==t&&null!=a&&Mc(e,r,n),Mc(e,r,t,a)}function Zc(e,t,n){const a=Ml(e=e.u);Wl(a),e=Kc(e,a,t,1,2),t=null!=n?n:new t,e.push(t),2&Fl(t.u)?_l(e,8):_l(e,16)}function Qc(e,t){return nc(Nc(e,t))}function eu(e){return null==(e=Nc(e,2))||tc(e)?e:void 0}function tu(e,t){return oc(Nc(e,t))}function nu(e){return e??0}function au(e,t){return nu(Lc(e,t))}function ru(e,t,n){if(null!=n){if("boolean"!=typeof n)throw e=typeof n,Error(`Expected boolean but got ${"object"!=e?e:n?Array.isArray(n)?"array":e:"null"}: ${n}`);n=!!n}Fc(e,t,n)}function iu(e,t,n){if(null!=n){if("number"!=typeof n)throw Zl(e=Error(),"warning"),e;if(!Number.isFinite(n)){const e=Error();Zl(e,"incident"),function(e){Ho.setTimeout((()=>{throw e}),0)}(e)}}Fc(e,t,n)}function ou(e,t,n){if(null!=n&&"number"!=typeof n)throw Error(`Value of float/double field must be a number, found ${typeof n}: ${n}`);Fc(e,t,n)}function su(e,t,n){n=rc(n);const a=Ml(e=e.u);Wl(a),Pc(e,a,t,2).push(n)}function lu(e,t,n){t.g?t.m(e,t.g,t.h,n,!0):t.m(e,t.h,n,!0)}bc.prototype.toJSON=void 0;var cu=class{constructor(e,t){this.u=gc(e,t)}toJSON(){return uu(this,kc(this.u,Tc,void 0,void 0,!1,!1),!0)}l(){var e=Af;return e.g?e.l(this,e.g,e.h,!0):e.l(this,e.h,e.defaultValue,!0)}clone(){const e=this.u;return Rc(this,e,Ml(e),!1)}H(){return!!(2&Fl(this.u))}};function uu(e,t,n){var a=e.constructor.B,r=jl(Ml(n?e.u:t)),i=!1;if(a){if(!n){var o;if((t=Rl(t)).length&&$l(o=t[t.length-1]))for(i=0;i<a.length;i++)if(a[i]>=r){Object.assign(t[t.length-1]={},o);break}i=!0}var s;r=t,n=!n,e=jl(o=Ml(e.u)),o=+!!(512&o)-1;for(let t=0;t<a.length;t++){var l=a[t];if(l<e){var c=r[l+=o];null==c?r[l]=n?zl:Ll():n&&c!==zl&&Nl(c)}else{if(!s){var u=void 0;r.length&&$l(u=r[r.length-1])?s=u:r.push(s={})}c=s[l],null==s[l]?s[l]=n?zl:Ll():n&&c!==zl&&Nl(c)}}}if(!(a=t.length))return t;let d,h;if($l(s=t[a-1])){e:{var f=s;u={},r=!1;for(let e in f)n=f[e],Array.isArray(n)&&n!=n&&(r=!0),null!=n?u[e]=n:r=!0;if(r){for(let e in u){f=u;break e}f=null}}f!=s&&(d=!0),a--}for(;0<a&&null==(s=t[a-1]);a--)h=!0;return d||h?(t=i?t:Array.prototype.slice.call(t,0,a),i&&(t.length=a),f&&t.push(f),t):t}function du(e){return{ca:od,U:e}}function hu(e,t){if(Array.isArray(t)){var n=Fl(t);if(4&n)return t;for(var a=0,r=0;a<t.length;a++){const n=e(t[a]);null!=n&&(t[r++]=n)}return r<a&&(t.length=r),Pl(t,5|n),2&n&&Object.freeze(t),t}}cu.prototype.M=Gl,cu.prototype.toString=function(){return uu(this,this.u,!1).toString()};const fu=Symbol();function pu(e){let t=e[fu];if(!t){const n=wu(e),a=Nu(e),r=a.h;t=r?(e,t)=>r(e,t,a):(e,t)=>{for(;rl(t)&&4!=t.h;){var r=t.m,i=a[r];if(!i){var o=a.g;o&&(o=o[r])&&(i=a[r]=mu(o))}i&&i(t,e,r)||(r=(i=t).l,il(i),i.aa?i=void 0:(o=i.g.g-r,i.g.g=r,i=tl(i.g,o)),r=e,i&&(Yl||=Symbol(),(o=r[Yl])?o.push(i):r[Yl]=[i]))}for(const t in n){e[Xl||=Symbol()]=n;break}},e[fu]=t}return t}function mu(e){const t=function(e){if(e=e.U)return pu(e)}(e),n=e.ca.g;if(t){const a=Nu(e.U).L;return(e,r,i)=>n(e,r,i,a,t)}return(e,t,a)=>n(e,t,a)}const gu=Symbol();function vu(e,t,n,a){let r;if(a){const t=a[gu];r=t?t.L:pc(a[0]),n[e]=t??a}r&&r===hc?((t=n.xa)||(n.xa=t=[]),t.push(e)):t.l&&((t=n.Ba)||(n.Ba=t=[]),t.push(e))}function yu(e,t,n,a){vu(e,t,a)}function bu(e,t,n,a,r){vu(e,t,r,n)}function wu(e){let t=e[gu];return t||(t=e[gu]={},xu(e,t,yu,bu,t))}function xu(e,t,n,a,r){t.L=pc(e[0]);let i=1;if(e.length>i&&!(e[i]instanceof Il)){var o=e[i++];if(Array.isArray(o))return t.h=o[0],t.g=o[1],t;t.g=o}for(o=0;i<e.length;){var s=e[i++],l=e[i];for("number"==typeof l?(i++,o+=l):o++,l=i;l<e.length&&!(e[l]instanceof Il);)l++;if(l-=i){var c=e,u=i,d=c[u];if("function"==typeof d&&(d=d(),c[u]=d),(c=Array.isArray(d))&&!(c=Ru in d||ku in d)&&(c=0<d.length)){const e=pc(u=(c=d)[0]);null!=e&&e!==u&&(c[0]=e),c=null!=e}(d=c?d:void 0)?(i++,1===l?void 0!==(s=a(o,s,d,void 0,r))&&(t[o]=s):void 0!==(s=a(o,s,d,e[i++],r))&&(t[o]=s)):void 0!==(s=n(o,s,e[i++],r))&&(t[o]=s)}else void 0!==(s=n(o,s,void 0,r))&&(t[o]=s)}return t}const Eu=Symbol();function Cu(e){let t=e[Eu];if(!t){const n=Iu(e);t=(e,t)=>Fu(e,t,n),e[Eu]=t}return t}const ku=Symbol();function Su(e,t){return t.h}function Tu(e,t,n){let a,r;const i=t.h;return(e,t,o)=>i(e,t,o,r||=Iu(n).L,a||=Cu(n))}function Iu(e){let t=e[ku];return t||(t=xu(e,e[ku]={},Su,Tu),Ru in e&&ku in e&&(e.length=0),t)}const Ru=Symbol();function Du(e,t,n){const a=t.g;return n?(e,t,r)=>a(e,t,r,n):a}function Au(e,t,n,a){const r=t.g;let i,o;return(e,t,s)=>r(e,t,s,o||=Nu(n).L,i||=pu(n),a)}function Nu(e){let t=e[Ru];return t||(wu(e),t=xu(e,e[Ru]={},Du,Au),Ru in e&&ku in e&&(e.length=0),t)}function _u(e,t){var n=e[t];if(n)return n;if((n=e.g)&&(n=n[t])){var a=n.U,r=n.ca.h;if(a){const e=Cu(a),t=Iu(a).L;n=(n,a,i)=>r(n,a,i,t,e)}else n=r;return e[t]=n}}function Fu(e,t,n){for(var a=Ml(e),r=+!!(512&a)-1,i=e.length,o=512&a?1:0,s=i+(256&a?-1:0);o<s;o++){const a=e[o];if(null==a)continue;const i=o-r,s=_u(n,i);s&&s(t,a,i)}if(256&a){a=e[i-1];for(let e in a)r=+e,Number.isNaN(r)||null!=(i=a[e])&&(s=_u(n,r))&&s(t,i,r)}if(e=Yl?e[Yl]:void 0)for(xl(t,t.g.end()),n=0;n<e.length;n++)xl(t,_s(e[n])||Is())}function Mu(e,t){return new Il(e,t,!1)}function Pu(e,t){return new Il(e,t,!0)}function Lu(e,t,n){Mc(e,Ml(e),t,n)}var Bu=Mu((function(e,t,n,a,r){return 2===e.h&&(e=ol(e,mc([void 0,void 0],a),r),Wl(a=Ml(t)),(r=_c(t,a,n))instanceof bc?0!=(2&r.g)?((r=r.m()).push(e),Mc(t,a,n,r)):r.I(e):Array.isArray(r)?(2&Fl(r)&&Mc(t,a,n,r=zc(r)),r.push(e)):Mc(t,a,n,[e]),!0)}),(function(e,t,n,a,r){if(t instanceof bc)t.forEach(((t,i)=>{Tl(e,n,mc([i,t],a),r)}));else if(Array.isArray(t))for(let i=0;i<t.length;i++){const o=t[i];Array.isArray(o)&&Tl(e,n,mc(o,a),r)}}));function Ou(e,t,n){e:if(null!=t){if(tc(t)){if("string"==typeof t)break e;if("number"==typeof t)break e}t=void 0}null!=t&&("string"==typeof t&&pl(t),null!=t&&(El(e,n,0),"number"==typeof t?(e=e.g,$s(t),vl(e,zs,Gs)):(n=pl(t),vl(e.g,n.h,n.g))))}function Uu(e,t,n){null!=(t=nc(t))&&null!=t&&(El(e,n,0),bl(e.g,t))}function ju(e,t,n){null!=(t=ec(t))&&(El(e,n,0),e.g.g.push(t?1:0))}function zu(e,t,n){null!=(t=oc(t))&&Sl(e,n,ts(t))}function Gu(e,t,n,a,r){Tl(e,n,t instanceof cu?t.u:Array.isArray(t)?mc(t,a):void 0,r)}function $u(e,t,n){null!=(t=null==t||"string"==typeof t||Ss(t)||t instanceof Fs?t:void 0)&&Sl(e,n,Os(t).buffer)}function Vu(e,t,n){return(5===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.A,t):t.push(e.g.A()),!0)}var qu=Mu((function(e,t,n){if(1!==e.h)return!1;var a=e.g;e=Qs(a);const r=Qs(a);a=2*(r>>31)+1;const i=r>>>20&2047;return e=4294967296*(1048575&r)+e,Lu(t,n,2047==i?e?NaN:1/0*a:0==i?a*Math.pow(2,-1074)*e:a*Math.pow(2,i-1075)*(e+4503599627370496)),!0}),(function(e,t,n){null!=(t=Ql(t))&&(El(e,n,1),e=e.g,(n=js||=new DataView(new ArrayBuffer(8))).setFloat64(0,+t,!0),zs=n.getUint32(0,!0),Gs=n.getUint32(4,!0),wl(e,zs),wl(e,Gs))})),Wu=Mu((function(e,t,n){return 5===e.h&&(Lu(t,n,e.g.A()),!0)}),(function(e,t,n){null!=(t=Ql(t))&&(El(e,n,5),e=e.g,Vs(t),wl(e,zs))})),Hu=Pu(Vu,(function(e,t,n){if(null!=(t=hu(Ql,t)))for(let i=0;i<t.length;i++){var a=e,r=t[i];null!=r&&(El(a,n,5),a=a.g,Vs(r),wl(a,zs))}})),Ku=Pu(Vu,(function(e,t,n){if(null!=(t=hu(Ql,t))&&t.length){El(e,n,2),yl(e.g,4*t.length);for(let a=0;a<t.length;a++)n=e.g,Vs(t[a]),wl(n,zs)}})),Yu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Js(e.g,Ws)),!0)}),Ou),Xu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,0===(e=Js(e.g,Ws))?void 0:e),!0)}),Ou),Ju=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Js(e.g,qs)),!0)}),(function(e,t,n){e:if(null!=t){if(tc(t)){if("string"==typeof t)break e;if("number"==typeof t)break e}t=void 0}null!=t&&("string"==typeof t&&dl(t),null!=t&&(El(e,n,0),"number"==typeof t?(e=e.g,$s(t),vl(e,zs,Gs)):(n=dl(t),vl(e.g,n.h,n.g))))})),Zu=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,e.g.m()),!0)}),Uu),Qu=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.m,t):t.push(e.g.m()),!0)}),(function(e,t,n){if(null!=(t=hu(nc,t))&&t.length){n=Cl(e,n);for(let n=0;n<t.length;n++)bl(e.g,t[n]);kl(e,n)}})),ed=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,0===(e=e.g.m())?void 0:e),!0)}),Uu),td=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,Zs(e.g)),!0)}),ju),nd=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,!1===(e=Zs(e.g))?void 0:e),!0)}),ju),ad=Pu((function(e,t,n){if(2!==e.h)return!1;e=sl(e);const a=Ml(t);return Wl(a),Pc(t,a,n,2).push(e),!0}),(function(e,t,n){if(null!=(t=hu(oc,t)))for(let r=0;r<t.length;r++){var a=t[r];null!=a&&Sl(e,n,ts(a))}})),rd=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,""===(e=sl(e))?void 0:e),!0)}),zu),id=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,sl(e)),!0)}),zu),od=Mu((function(e,t,n,a,r){return 2===e.h&&(ol(e,qc(t,a,n,!0),r),!0)}),Gu),sd=Mu((function(e,t,n,a,r){return 2===e.h&&(ol(e,qc(t,a,n),r),!0)}),Gu),ld=Pu((function(e,t,n,a,r){if(2!==e.h)return!1;a=mc(void 0,a);const i=Ml(t);Wl(i);let o=Pc(t,i,n,3);return(Object.isFrozen(o)||4&Fl(o))&&(o=Rl(o),Mc(t,i,n,o)),o.push(a),ol(e,a,r),!0}),(function(e,t,n,a,r){if(Array.isArray(t))for(let i=0;i<t.length;i++)Gu(e,t[i],n,a,r)})),cd=Mu((function(e,t,n,a,r,i){if(2!==e.h)return!1;const o=Ml(t);return Wl(o),(i=Vc(t,o,i))&&n!==i&&Mc(t,o,i),ol(e,t=qc(t,a,n),r),!0}),Gu),ud=Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,ll(e)),!0)}),$u),dd=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.j,t):t.push(e.g.j()),!0)}),(function(e,t,n){if(null!=(t=hu(ac,t)))for(let i=0;i<t.length;i++){var a=e,r=t[i];null!=r&&(El(a,n,0),yl(a.g,r))}})),hd=Mu((function(e,t,n){return 0===e.h&&(Lu(t,n,e.g.m()),!0)}),(function(e,t,n){null!=(t=nc(t))&&(t=parseInt(t,10),El(e,n,0),bl(e.g,t))})),fd=Pu((function(e,t,n){return(0===e.h||2===e.h)&&(t=Pc(t,Ml(t),n,2,!1),2==e.h?cl(e,nl.prototype.C,t):t.push(e.g.m()),!0)}),(function(e,t,n){if(null!=(t=hu(nc,t))&&t.length){n=Cl(e,n);for(let n=0;n<t.length;n++)bl(e.g,t[n]);kl(e,n)}}));class pd{constructor(e,t){this.h=e,this.g=t,this.l=Hc,this.m=Xc,this.defaultValue=void 0}}function md(e,t){return new pd(e,t)}function gd(e,t){return(n,a)=>{e:{if(ul.length){const e=ul.pop();e.o(a),Ys(e.g,n,a),n=e}else n=new class{constructor(e,t){if(al.length){const n=al.pop();Ys(n,e,t),e=n}else e=new nl(e,t);this.g=e,this.l=this.g.g,this.h=this.m=-1,this.o(t)}o({aa:e=!1}={}){this.aa=e}}(n,a);try{var r=new e;const a=r.u;pu(t)(a,n),Xl&&delete a[Xl];var i=r;break e}finally{(r=n.g).h=null,r.s=!1,r.v=0,r.l=0,r.g=0,r.R=!1,n.m=-1,n.h=-1,100>ul.length&&ul.push(n)}i=void 0}return i}}function vd(e){return function(){const t=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const e=this.g;return this.g=[],e}}}};Fu(this.u,t,Iu(e)),xl(t,t.g.end());const n=new Uint8Array(t.h),a=t.l,r=a.length;let i=0;for(let e=0;e<r;e++){const t=a[e];n.set(t,i),i+=t.length}return t.l=[n],n}}var yd=[0,rd,Mu((function(e,t,n){return 2===e.h&&(Lu(t,n,(e=ll(e))===Ns()?void 0:e),!0)}),(function(e,t,n){if(null!=t){if(t instanceof cu){const a=t.Ea;return void(a&&(t=a(t),null!=t&&Sl(e,n,Os(t).buffer)))}if(Array.isArray(t))return}$u(e,t,n)}))],bd=[0,id],wd=[0,Zu,hd,td,td,Qu,hd,hd],xd=[0,td,td],Ed=class extends cu{constructor(){super()}};Ed.B=[6];var Cd=[0,td,id,td,hd,hd,fd,id,id,sd,xd,hd],kd=[0,id,id,id],Sd=class extends cu{constructor(){super()}},Td=[0],Id=[0,Zu],Rd=[1,2,3,4,5],Dd=class extends cu{constructor(e){super(e,2)}},Ad={},Nd=[-2,Ad,td];Ad[336783863]=du([0,id,td,td,Zu,sd,[0,cd,Td,Rd,cd,Cd,Rd,cd,kd,Rd,cd,Id,Rd,cd,wd,Rd],sd,bd]);var _d=[0,rd,nd],Fd=[0,Xu,Xu,nd,nd,nd,nd,Xu,Qu,rd,ed,Xu,Xu,nd,ed,nd,nd,nd,rd],Md=[-1,{}],Pd=[0,id,sd,2,Md],Ld=[0,id,ad,sd,Md];function Bd(e,t){t=ic(t);const n=Ml(e=e.u);Wl(n),Mc(e,n,2,""===t?void 0:t)}function Od(e,t){su(e,3,t)}function Ud(e,t){su(e,4,t)}var jd=class extends cu{constructor(e){super(e,500)}o(e){return Xc(this,0,7,e)}};jd.B=[3,4,5,6,8,13,17,1005];var zd=[-500,rd,rd,ad,ad,ad,ad,sd,Nd,ld,yd,ed,ed,sd,Pd,sd,Ld,ld,_d,rd,sd,Fd,ed,ad,ad,988],Gd=[0,rd,rd,sd,Md],$d=[-500,id,id,sd,[-1,{}],id,999],Vd=[-500,id,ad,ad,sd,[-2,{},td],ad,998,ad],qd=[-500,id,ad,sd,Md,ad,999];function Wd(e,t){Zc(e,jd,t)}function Hd(e,t){su(e,10,t)}function Kd(e,t){su(e,15,t)}var Yd=class extends cu{constructor(e){super(e,500)}o(e){return Xc(this,0,1001,e)}};Yd.B=[1,6,7,9,10,15,16,17,14,1002];var Xd=[-500,ld,zd,ld,5,$d,ld,Vd,ed,ld,qd,ad,ed,sd,Pd,sd,Ld,ld,Gd,ad,ad,ad,sd,Fd,rd,rd,nd,sd,980,Md,ld,yd],Jd=gd(Yd,Xd);Yd.prototype.g=vd(Xd);var Zd=[0,ld,[0,Zu,Zu,Zu]],Qd=class extends cu{constructor(e){super(e)}},eh=[0,Zu,Wu,id,id],th=class extends cu{constructor(e){super(e)}g(){return Yc(this,Qd,1)}};th.B=[1];var nh=[0,ld,eh],ah=gd(th,nh),rh=[0,Zu,Wu],ih=[0,Zu,Zu,sd,Zd],oh=class extends cu{constructor(e){super(e)}},sh=[0,Zu,Zu,Zu,Zu],lh=[0,Wu,Wu,Wu,Wu],ch=class extends cu{constructor(e){super(e)}},uh=[0,Wu,Wu,id,Wu],dh=class extends cu{constructor(e){super(e)}h(){return Hc(this,oh,2)}g(){return Yc(this,ch,5)}};dh.B=[5];var hh=[0,hd,sd,sh,sd,lh,sd,ih,ld,uh],fh=class extends cu{constructor(e){super(e)}};fh.B=[1,2,3,8,9];var ph=gd(fh,[0,ad,Qu,Ku,sd,hh,id,id,Yu,ld,rh,ad,Yu]),mh=class extends cu{constructor(e){super(e)}},gh=[0,Wu,Wu,Wu,Wu,Wu],vh=class extends cu{constructor(e){super(e)}};vh.B=[1];var yh=gd(vh,[0,ld,gh]),bh=class extends cu{constructor(e){super(e)}},wh=[0,Wu,Wu,Wu,Wu,Wu],xh=class extends cu{constructor(e){super(e)}};xh.B=[1];var Eh=gd(xh,[0,ld,wh]),Ch=class extends cu{constructor(e){super(e)}};Ch.B=[3];var kh=[0,Zu,Zu,Ku,hd],Sh=class extends cu{constructor(){super()}};Sh.prototype.g=vd([0,Wu,Wu,Wu,Wu,Wu,Yu]);var Th=class extends cu{constructor(e){super(e)}},Ih=[0,Zu,2,id,sd,nh],Rh=class extends cu{constructor(e){super(e)}};Rh.B=[1];var Dh=gd(Rh,[0,ld,Ih,Yu]),Ah=class extends cu{constructor(e){super(e)}};Ah.B=[1];var Nh=class extends cu{constructor(e){super(e)}fa(){const e=Bc(this);return null==e?Ns():e}},_h=class extends cu{constructor(e){super(e)}},Fh=[1,2],Mh=[0,cd,[0,Ku],Fh,cd,[0,ud],Fh,Zu,id],Ph=class extends cu{constructor(e){super(e)}};Ph.B=[1];var Lh=gd(Ph,[0,ld,Mh,Yu]),Bh=class extends cu{constructor(e){super(e)}};Bh.B=[4,5];var Oh=[0,id,Zu,Wu,ad,ad],Uh=class extends cu{constructor(e){super(e)}},jh=[0,td,td],zh=class extends cu{constructor(e){super(e)}},Gh=[1,2,3,4,5],$h=class extends cu{constructor(e){super(e)}g(){return null!=Bc(this)}h(){return null!=tu(this,2)}},Vh=[0,ud,id,sd,[0,Zu,Yu,Yu],sd,[0,Ju,Yu]],qh=class extends cu{constructor(e){super(e)}g(){return ec(Nc(this,2))??!1}},Wh=[0,sd,Vh,td,sd,[0,cd,Id,Gh,cd,Cd,Gh,cd,wd,Gh,cd,Td,Gh,cd,kd,Gh]],Hh=class extends cu{constructor(e){super(e)}},Kh=[0,sd,Wh,Wu,Wu,Zu],Yh=md(502141897,Hh);Ad[502141897]=du(Kh);var Xh=[0,sd,Vh];Ad[512499200]=du(Xh);var Jh=[0,sd,Xh];Ad[515723506]=du(Jh);var Zh=gd(class extends cu{constructor(e){super(e)}},[0,sd,[0,hd,hd,Hu,dd],sd,kh]),Qh=[0,sd,Wh];Ad[508981768]=du(Qh);var ef=class extends cu{constructor(e){super(e)}},tf=[0,sd,Wh,Wu,sd,Qh,td],nf=class extends cu{constructor(e){super(e)}},af=[0,sd,Wh,sd,Kh,sd,tf,Wu,sd,Jh];Ad[508968149]=du(tf);var rf=md(508968150,nf);Ad[508968150]=du(af);var of=class extends cu{constructor(e){super(e)}},sf=md(513916220,of);Ad[513916220]=du([0,sd,Wh,sd,af,Zu]);var lf=class extends cu{constructor(e){super(e)}h(){return Hc(this,Bh,2)}g(){Fc(this,2)}},cf=[0,sd,Wh,sd,Oh];Ad[478825465]=du(cf);var uf=[0,sd,Wh];Ad[478825422]=du(uf);var df=class extends cu{constructor(e){super(e)}},hf=[0,sd,Wh,sd,uf,sd,cf,sd,cf],ff=class extends cu{constructor(e){super(e)}},pf=[0,sd,Wh,Wu,Zu],mf=class extends cu{constructor(e){super(e)}},gf=[0,sd,Wh,Wu],vf=class extends cu{constructor(e){super(e)}},yf=[0,sd,Wh,sd,pf,sd,gf,Wu],bf=class extends cu{constructor(e){super(e)}},wf=[0,sd,Wh,sd,yf,sd,hf];Ad[463370452]=du(hf),Ad[464864288]=du(pf),Ad[474472470]=du(gf);var xf=md(462713202,vf);Ad[462713202]=du(yf);var Ef=md(479097054,bf);Ad[479097054]=du(wf);var Cf=class extends cu{constructor(e){super(e)}},kf=md(456383383,Cf);Ad[456383383]=du([0,sd,Wh,sd,Oh]);var Sf=class extends cu{constructor(e){super(e)}},Tf=md(476348187,Sf);Ad[476348187]=du([0,sd,Wh,sd,jh]);var If=class extends cu{constructor(e){super(e)}},Rf=[0,hd,hd],Df=class extends cu{constructor(e){super(e)}};Df.B=[3];var Af=md(458105876,class extends cu{constructor(e){super(e)}g(){var e=this.u;const t=Ml(e);var n=2&t;return e=function(e,t,n){var a=Df;const r=2&t;let i=!1;if(null==n){if(r)return jc();n=[]}else if(n.constructor===bc){if(0==(2&n.g)||r)return n;n=n.m()}else Array.isArray(n)?i=!!(2&Fl(n)):n=[];if(r){if(!n.length)return jc();i||(i=!0,Bl(n))}else i&&(i=!1,n=zc(n));return i||(64&Fl(n)?_l(n,32):32&t&&Al(n,32)),Mc(e,t,2,a=new bc(n,a,uc,void 0),!1),a}(e,t,_c(e,t,2)),null==e||!n&&Df&&(e.v=!0),e}});Ad[458105876]=du([0,sd,Rf,Bu,[!0,Yu,sd,[0,id,id,ad]]]);var Nf=class extends cu{constructor(e){super(e)}},_f=md(458105758,Nf);Ad[458105758]=du([0,sd,Wh,id,sd,Rf]);var Ff=class extends cu{constructor(e){super(e)}};Ff.B=[5,6];var Mf=md(443442058,Ff);Ad[443442058]=du([0,sd,Wh,id,Zu,Wu,ad,ad]);var Pf=class extends cu{constructor(e){super(e)}},Lf=[0,sd,Wh,Wu,Wu,Zu];Ad[514774813]=du(Lf);var Bf=class extends cu{constructor(e){super(e)}},Of=[0,sd,Wh,Wu,td],Uf=class extends cu{constructor(e){super(e)}},jf=[0,sd,Wh,sd,Lf,sd,Of,Wu];Ad[518928384]=du(Of);var zf=md(516587230,Uf);function Gf(e,t){return t=t?t.clone():new Bh,void 0!==e.displayNamesLocale?Fc(t,1,ic(e.displayNamesLocale)):void 0===e.displayNamesLocale&&Fc(t,1),void 0!==e.maxResults?iu(t,2,e.maxResults):"maxResults"in e&&Fc(t,2),void 0!==e.scoreThreshold?ou(t,3,e.scoreThreshold):"scoreThreshold"in e&&Fc(t,3),void 0!==e.categoryAllowlist?Gc(t,4,e.categoryAllowlist):"categoryAllowlist"in e&&Fc(t,4),void 0!==e.categoryDenylist?Gc(t,5,e.categoryDenylist):"categoryDenylist"in e&&Fc(t,5),t}function $f(e,t=-1,n=""){return{categories:e.map((e=>({index:nu(Qc(e,1))??-1,score:au(e,2)??0,categoryName:tu(e,3)??""??"",displayName:tu(e,4)??""??""}))),headIndex:t,headName:n}}function Vf(e){var t=Oc(e,3,Ql),n=Oc(e,2,nc);const a=Oc(e,1,oc),r=Oc(e,9,oc),i={categories:[],keypoints:[]};for(let e=0;e<t.length;e++)i.categories.push({score:t[e],index:n[e]??-1,categoryName:a[e]??"",displayName:r[e]??""});if((t=Hc(e,dh,4)?.h())&&(i.boundingBox={originX:Qc(t,1)??0,originY:Qc(t,2)??0,width:Qc(t,3)??0,height:Qc(t,4)??0,angle:0}),Hc(e,dh,4)?.g().length)for(const t of Hc(e,dh,4).g())i.keypoints.push({x:Lc(t,1)??0,y:Lc(t,2)??0,score:Lc(t,4)??0,label:tu(t,3)??""});return i}function qf(e){const t=[];for(const n of Yc(e,bh,1))t.push({x:au(n,1)??0,y:au(n,2)??0,z:au(n,3)??0});return t}function Wf(e){const t=[];for(const n of Yc(e,mh,1))t.push({x:au(n,1)??0,y:au(n,2)??0,z:au(n,3)??0});return t}function Hf(e){return Array.from(e,(e=>127<e?e-256:e))}function Kf(e,t){if(e.length!==t.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${e.length} vs. ${t.length}).`);let n=0,a=0,r=0;for(let i=0;i<e.length;i++)n+=e[i]*t[i],a+=e[i]*e[i],r+=t[i]*t[i];if(0>=a||0>=r)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return n/Math.sqrt(a*r)}let Yf;Ad[516587230]=du(jf);const Xf=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function Jf(){if(void 0===Yf)try{await WebAssembly.instantiate(Xf),Yf=!0}catch{Yf=!1}return Yf}async function Zf(e,t=""){const n=await Jf()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${n}.js`,wasmBinaryPath:`${t}/${e}_${n}.wasm`}}var Qf=class{};function ep(){const e=navigator.userAgent;return e.includes("Safari")&&!e.includes("Chrome")}async function tp(e){if("function"!=typeof importScripts){const t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise(((e,n)=>{t.addEventListener("load",(()=>{e()}),!1),t.addEventListener("error",(e=>{n(e)}),!1),document.body.appendChild(t)}))}importScripts(e.toString())}function np(e,t,n){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),n(t=e.i.stringToNewUTF8(t)),e.i._free(t)}function ap(e,t,n){if(!e.i.canvas)throw Error("No OpenGL canvas configured.");if(n?e.i._bindTextureToStream(n):e.i._bindTextureToCanvas(),!(n=e.i.canvas.getContext("webgl2")||e.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");return e.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!0),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,t),e.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),t.videoWidth?(n=t.videoWidth,t=t.videoHeight):t.naturalWidth?(n=t.naturalWidth,t=t.naturalHeight):(n=t.width,t=t.height),!e.l||n===e.i.canvas.width&&t===e.i.canvas.height||(e.i.canvas.width=n,e.i.canvas.height=t),[n,t]}function rp(e,t,n){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const a=new Uint32Array(t.length);for(let n=0;n<t.length;n++)a[n]=e.i.stringToNewUTF8(t[n]);t=e.i._malloc(4*a.length),e.i.HEAPU32.set(a,t>>2),n(t);for(const t of a)e.i._free(t);e.i._free(t)}function ip(e,t,n){e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=n}function op(e,t,n){let a=[];e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=(e,t,r)=>{t?(n(a,r),a=[]):a.push(e)}}function sp(e,t){const n=Hc(e.baseOptions,$h,1)||new $h;"string"==typeof t?(Fc(n,2,ic(t)),Fc(n,1)):t instanceof Uint8Array&&(Fc(n,1,Vl(t,!1,!1)),Fc(n,2)),Xc(e.baseOptions,0,1,n)}function lp(e){try{const t=e.J.length;if(1===t)throw Error(e.J[0].message);if(1<t)throw Error("Encountered multiple errors: "+e.J.map((e=>e.message)).join(", "))}finally{e.J=[]}}function cp(e,t){e.I=Math.max(e.I,t)}function up(e,t){e.A=new jd,Bd(e.A,"PassThroughCalculator"),Od(e.A,"free_memory"),Ud(e.A,"free_memory_unused_out"),Hd(t,"free_memory"),Wd(t,e.A)}function dp(e,t){Od(e.A,t),Ud(e.A,t+"_unused_out")}function hp(e){e.g.addBoolToStream(!0,"free_memory",e.I)}Qf.forVisionTasks=function(e){return Zf("vision",e)},Qf.forTextTasks=function(e){return Zf("text",e)},Qf.forAudioTasks=function(e){return Zf("audio",e)},Qf.isSimdSupported=function(){return Jf()};var fp=class{constructor(e){this.g=e,this.J=[],this.I=0,this.g.setAutoRenderToScreen(!1)}l(e,t=!0){if(t){const t=e.baseOptions||{};if(e.baseOptions?.modelAssetBuffer&&e.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(Hc(this.baseOptions,$h,1)?.g()||Hc(this.baseOptions,$h,1)?.h()||e.baseOptions?.modelAssetBuffer||e.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(e,t){let n=Hc(e.baseOptions,zh,3);if(!n){var a=n=new zh,r=new Sd;Jc(a,4,Gh,r)}"delegate"in t&&("GPU"===t.delegate?(t=n,a=new Ed,Jc(t,2,Gh,a)):(t=n,a=new Sd,Jc(t,4,Gh,a))),Xc(e.baseOptions,0,3,n)}(this,t),t.modelAssetPath)return fetch(t.modelAssetPath.toString()).then((e=>{if(e.ok)return e.arrayBuffer();throw Error(`Failed to fetch model: ${t.modelAssetPath} (${e.status})`)})).then((e=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(e),!0,!1,!1),sp(this,"/model.dat"),this.m(),this.P()}));sp(this,t.modelAssetBuffer)}return this.m(),this.P(),Promise.resolve()}P(){}W(){let e;if(this.g.W((t=>{e=Jd(t)})),!e)throw Error("Failed to retrieve CalculatorGraphConfig");return e}setGraph(e,t){this.g.attachErrorListener(((e,t)=>{this.J.push(Error(t))})),this.g.Aa(),this.g.setGraph(e,t),this.A=void 0,lp(this)}finishProcessing(){this.g.finishProcessing(),lp(this)}close(){this.A=void 0,this.g.closeGraph()}};function pp(e,t){if(null===e)throw Error(`Unable to obtain required WebGL resource: ${t}`);return e}fp.prototype.close=fp.prototype.close;class mp{constructor(e,t,n,a){this.g=e,this.h=t,this.m=n,this.l=a}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function gp(e,t,n){const a=e.h;if(n=pp(a.createShader(n),"Failed to create WebGL shader"),a.shaderSource(n,t),a.compileShader(n),!a.getShaderParameter(n,a.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${a.getShaderInfoLog(n)}`);return a.attachShader(e.g,n),n}function vp(e,t){const n=e.h,a=pp(n.createVertexArray(),"Failed to create vertex array");n.bindVertexArray(a);const r=pp(n.createBuffer(),"Failed to create buffer");n.bindBuffer(n.ARRAY_BUFFER,r),n.enableVertexAttribArray(e.s),n.vertexAttribPointer(e.s,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),n.STATIC_DRAW);const i=pp(n.createBuffer(),"Failed to create buffer");return n.bindBuffer(n.ARRAY_BUFFER,i),n.enableVertexAttribArray(e.A),n.vertexAttribPointer(e.A,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array(t?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),n.bindVertexArray(null),new mp(n,a,r,i)}function yp(e,t){if(e.h){if(t!==e.h)throw Error("Cannot change GL context once initialized")}else e.h=t}function bp(e,t,n,a){if(yp(e,t),!e.g){const t=e.h;if(e.g=pp(t.createProgram(),"Failed to create WebGL program"),e.C=gp(e,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",t.VERTEX_SHADER),e.v=gp(e,"\n precision mediump float;\n varying vec2 vTex;\n uniform sampler2D inputTexture;\n void main() {\n gl_FragColor = texture2D(inputTexture, vTex);\n }\n ",t.FRAGMENT_SHADER),t.linkProgram(e.g),!t.getProgramParameter(e.g,t.LINK_STATUS))throw Error(`Error during program linking: ${t.getProgramInfoLog(e.g)}`);e.s=t.getAttribLocation(e.g,"aVertex"),e.A=t.getAttribLocation(e.g,"aTex")}return n?(e.m||(e.m=vp(e,!0)),n=e.m):(e.j||(e.j=vp(e,!1)),n=e.j),t.useProgram(e.g),n.bind(),e=a(),n.g.bindVertexArray(null),e}function wp(e,t,n){yp(e,t),e.l||(e.l=pp(t.createFramebuffer(),"Failed to create framebuffe.")),t.bindFramebuffer(t.FRAMEBUFFER,e.l),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,n,0)}function xp(e){e.h?.bindFramebuffer(e.h.FRAMEBUFFER,null)}var Ep=class{close(){if(this.g){const e=this.h;e.deleteProgram(this.g),e.deleteShader(this.C),e.deleteShader(this.v)}this.l&&this.h.deleteFramebuffer(this.l),this.j&&this.j.close(),this.m&&this.m.close()}};function Cp(e,t){switch(t){case 0:return e.g.find((e=>e instanceof ImageData));case 1:return e.g.find((e=>"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap));case 2:return e.g.find((e=>"undefined"!=typeof WebGLTexture&&e instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function kp(e){var t=Cp(e,0);if(!t){t=Tp(e);const n=Ip(e),a=new Uint8Array(e.width*e.height*4);wp(n,t,Sp(e)),t.readPixels(0,0,e.width,e.height,t.RGBA,t.UNSIGNED_BYTE,a),xp(n),t=new ImageData(new Uint8ClampedArray(a.buffer),e.width,e.height),e.g.push(t)}return t}function Sp(e){let t=Cp(e,2);if(!t){const n=Tp(e);t=Dp(e);const a=Cp(e,1)||kp(e);n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,a),Ap(e)}return t}function Tp(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when iniitializing the image.");return e.h||(e.h=pp(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Ip(e){return e.l||(e.l=new Ep),e.l}function Rp(e){(e=Tp(e)).texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR)}function Dp(e){const t=Tp(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let n=Cp(e,2);return n?t.bindTexture(t.TEXTURE_2D,n):(n=pp(t.createTexture(),"Failed to create texture"),e.g.push(n),e.m=!0,t.bindTexture(t.TEXTURE_2D,n),Rp(e)),n}function Ap(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}function Np(e){const t=Tp(e);return bp(Ip(e),t,!0,(()=>function(e,t){const n=e.canvas;if(n.width===e.width&&n.height===e.height)return t();const a=n.width,r=n.height;return n.width=e.width,n.height=e.height,e=t(),n.width=a,n.height=r,e}(e,(()=>{if(t.bindFramebuffer(t.FRAMEBUFFER,null),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),t.drawArrays(t.TRIANGLE_FAN,0,4),!(e.canvas instanceof OffscreenCanvas))throw Error("Conversion to ImageBitmap requires that the MediaPipe Tasks is initialized with an OffscreenCanvas");return e.canvas.transferToImageBitmap()}))))}var _p=class{constructor(e,t,n,a,r,i,o){this.g=e,this.j=t,this.m=n,this.canvas=a,this.l=r,this.width=i,this.height=o,(this.j||this.m)&&0==--Fp&&console.error("You seem to be creating MPImage instances without invoking .close(). This leaks resources.")}va(){return!!Cp(this,0)}ba(){return!!Cp(this,1)}K(){return!!Cp(this,2)}ra(){return kp(this)}qa(){var e=Cp(this,1);return e||(Sp(this),Dp(this),e=Np(this),Ap(this),this.g.push(e),this.j=!0),e}V(){return Sp(this)}clone(){const e=[];for(const t of this.g){let n;if(t instanceof ImageData)n=new ImageData(t.data,this.width,this.height);else if(t instanceof WebGLTexture){const e=Tp(this),t=Ip(this);e.activeTexture(e.TEXTURE1),n=pp(e.createTexture(),"Failed to create texture"),e.bindTexture(e.TEXTURE_2D,n),Rp(this),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,this.width,this.height,0,e.RGBA,e.UNSIGNED_BYTE,null),e.bindTexture(e.TEXTURE_2D,null),wp(t,e,n),bp(t,e,!1,(()=>{Dp(this),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.TRIANGLE_FAN,0,4),Ap(this)})),xp(t),Ap(this)}else{if(!(t instanceof ImageBitmap))throw Error(`Type is not supported: ${t}`);Sp(this),Dp(this),n=Np(this),Ap(this)}e.push(n)}return new _p(e,this.ba(),this.K(),this.canvas,this.l,this.width,this.height)}close(){this.j&&Cp(this,1).close(),this.m&&Tp(this).deleteTexture(Cp(this,2)),Fp=-1}};_p.prototype.close=_p.prototype.close,_p.prototype.clone=_p.prototype.clone,_p.prototype.getAsWebGLTexture=_p.prototype.V,_p.prototype.getAsImageBitmap=_p.prototype.qa,_p.prototype.getAsImageData=_p.prototype.ra,_p.prototype.hasWebGLTexture=_p.prototype.K,_p.prototype.hasImageBitmap=_p.prototype.ba,_p.prototype.hasImageData=_p.prototype.va;var Fp=250;function Mp(e,t){switch(t){case 0:return e.g.find((e=>e instanceof Uint8Array));case 1:return e.g.find((e=>e instanceof Float32Array));case 2:return e.g.find((e=>"undefined"!=typeof WebGLTexture&&e instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function Pp(e){var t=Mp(e,1);if(!t){if(t=Mp(e,0))t=new Float32Array(t).map((e=>e/255));else{t=new Float32Array(e.width*e.height);const a=Bp(e);var n=Up(e);if(wp(n,a,Lp(e)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document){n=new Float32Array(e.width*e.height*4),a.readPixels(0,0,e.width,e.height,a.RGBA,a.FLOAT,n);for(let e=0,a=0;e<t.length;++e,a+=4)t[e]=n[a]}else a.readPixels(0,0,e.width,e.height,a.RED,a.FLOAT,t)}e.g.push(t)}return t}function Lp(e){let t=Mp(e,2);if(!t){const n=Bp(e);t=zp(e);const a=Pp(e),r=Op(e);n.texImage2D(n.TEXTURE_2D,0,r,e.width,e.height,0,n.RED,n.FLOAT,a),Gp(e)}return t}function Bp(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return e.h||(e.h=pp(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Op(e){if(e=Bp(e),!$p)if(e.getExtension("EXT_color_buffer_float")&&e.getExtension("OES_texture_float_linear")&&e.getExtension("EXT_float_blend"))$p=e.R32F;else{if(!e.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");$p=e.R16F}return $p}function Up(e){return e.l||(e.l=new Ep),e.l}function jp(e){(e=Bp(e)).texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST)}function zp(e){const t=Bp(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let n=Mp(e,2);return n?t.bindTexture(t.TEXTURE_2D,n):(n=pp(t.createTexture(),"Failed to create texture"),e.g.push(n),e.m=!0,t.bindTexture(t.TEXTURE_2D,n),jp(e)),n}function Gp(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}var $p,Vp=class{constructor(e,t,n,a,r,i){this.g=e,this.m=t,this.canvas=n,this.l=a,this.width=r,this.height=i,this.m&&0==--qp&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources.")}wa(){return!!Mp(this,0)}ua(){return!!Mp(this,1)}K(){return!!Mp(this,2)}sa(){return(e=Mp(this,0))||(e=Pp(this),e=new Uint8Array(e.map((e=>255*e))),this.g.push(e)),e;var e}pa(){return Pp(this)}V(){return Lp(this)}clone(){const e=[];for(const t of this.g){let n;if(t instanceof Uint8Array)n=new Uint8Array(t);else if(t instanceof Float32Array)n=new Float32Array(t);else{if(!(t instanceof WebGLTexture))throw Error(`Type is not supported: ${t}`);{const e=Bp(this),t=Up(this);e.activeTexture(e.TEXTURE1),n=pp(e.createTexture(),"Failed to create texture"),e.bindTexture(e.TEXTURE_2D,n),jp(this);const a=Op(this);e.texImage2D(e.TEXTURE_2D,0,a,this.width,this.height,0,e.RED,e.FLOAT,null),e.bindTexture(e.TEXTURE_2D,null),wp(t,e,n),bp(t,e,!1,(()=>{zp(this),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.TRIANGLE_FAN,0,4),Gp(this)})),xp(t),Gp(this)}}e.push(n)}return new Vp(e,this.K(),this.canvas,this.l,this.width,this.height)}close(){this.m&&Bp(this).deleteTexture(Mp(this,2)),qp=-1}};Vp.prototype.close=Vp.prototype.close,Vp.prototype.clone=Vp.prototype.clone,Vp.prototype.getAsWebGLTexture=Vp.prototype.V,Vp.prototype.getAsFloat32Array=Vp.prototype.pa,Vp.prototype.getAsUint8Array=Vp.prototype.sa,Vp.prototype.hasWebGLTexture=Vp.prototype.K,Vp.prototype.hasFloat32Array=Vp.prototype.ua,Vp.prototype.hasUint8Array=Vp.prototype.wa;var qp=250;function Wp(...e){return e.map((([e,t])=>({start:e,end:t})))}const Hp=function(e){return class extends e{Aa(){this.i._registerModelResourcesGraphService()}}}((Kp=class{constructor(e,t){this.l=!0,this.i=e,this.g=null,this.h=0,this.m="function"==typeof this.i._addIntToInputStream,void 0!==t?this.i.canvas=t:"undefined"==typeof OffscreenCanvas||ep()?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.i.canvas=document.createElement("canvas")):this.i.canvas=new OffscreenCanvas(1,1)}async initializeGraph(e){const t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph((new TextEncoder).encode(e),!1)}setGraph(e,t){const n=e.length,a=this.i._malloc(n);this.i.HEAPU8.set(e,a),t?this.i._changeBinaryGraph(n,a):this.i._changeTextGraph(n,a),this.i._free(a)}configureAudio(e,t,n,a,r){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),np(this,a||"input_audio",(a=>{np(this,r=r||"audio_header",(r=>{this.i._configureAudio(a,r,e,t,n)}))}))}setAutoResizeCanvas(e){this.l=e}setAutoRenderToScreen(e){this.i._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.i.gpuOriginForWebTexturesIsBottomLeft=e}W(e){ip(this,"__graph_config__",(t=>{e(t)})),np(this,"__graph_config__",(e=>{this.i._getGraphConfig(e,void 0)})),delete this.i.simpleListeners.__graph_config__}attachErrorListener(e){this.i.errorListener=e}attachEmptyPacketListener(e,t){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[e]=t}addAudioToStream(e,t,n){this.addAudioToStreamWithShape(e,0,0,t,n)}addAudioToStreamWithShape(e,t,n,a,r){const i=4*e.length;this.h!==i&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(i),this.h=i),this.i.HEAPF32.set(e,this.g/4),np(this,a,(e=>{this.i._addAudioToInputStream(this.g,t,n,e,r)}))}addGpuBufferToStream(e,t,n){np(this,t,(t=>{const[a,r]=ap(this,e,t);this.i._addBoundTextureToStream(t,a,r,n)}))}addBoolToStream(e,t,n){np(this,t,(t=>{this.i._addBoolToInputStream(e,t,n)}))}addDoubleToStream(e,t,n){np(this,t,(t=>{this.i._addDoubleToInputStream(e,t,n)}))}addFloatToStream(e,t,n){np(this,t,(t=>{this.i._addFloatToInputStream(e,t,n)}))}addIntToStream(e,t,n){np(this,t,(t=>{this.i._addIntToInputStream(e,t,n)}))}addStringToStream(e,t,n){np(this,t,(t=>{np(this,e,(e=>{this.i._addStringToInputStream(e,t,n)}))}))}addStringRecordToStream(e,t,n){np(this,t,(t=>{rp(this,Object.keys(e),(a=>{rp(this,Object.values(e),(r=>{this.i._addFlatHashMapToInputStream(a,r,Object.keys(e).length,t,n)}))}))}))}addProtoToStream(e,t,n,a){np(this,n,(n=>{np(this,t,(t=>{const r=this.i._malloc(e.length);this.i.HEAPU8.set(e,r),this.i._addProtoToInputStream(r,e.length,t,n,a),this.i._free(r)}))}))}addEmptyPacketToStream(e,t){np(this,e,(e=>{this.i._addEmptyPacketToInputStream(e,t)}))}addBoolToInputSidePacket(e,t){np(this,t,(t=>{this.i._addBoolToInputSidePacket(e,t)}))}addDoubleToInputSidePacket(e,t){np(this,t,(t=>{this.i._addDoubleToInputSidePacket(e,t)}))}addFloatToInputSidePacket(e,t){np(this,t,(t=>{this.i._addFloatToInputSidePacket(e,t)}))}addIntToInputSidePacket(e,t){np(this,t,(t=>{this.i._addIntToInputSidePacket(e,t)}))}addStringToInputSidePacket(e,t){np(this,t,(t=>{np(this,e,(e=>{this.i._addStringToInputSidePacket(e,t)}))}))}addProtoToInputSidePacket(e,t,n){np(this,n,(n=>{np(this,t,(t=>{const a=this.i._malloc(e.length);this.i.HEAPU8.set(e,a),this.i._addProtoToInputSidePacket(a,e.length,t,n),this.i._free(a)}))}))}attachBoolListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachBoolListener(e)}))}attachBoolVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachBoolVectorListener(e)}))}attachIntListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachIntListener(e)}))}attachIntVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachIntVectorListener(e)}))}attachDoubleListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachDoubleListener(e)}))}attachDoubleVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachDoubleVectorListener(e)}))}attachFloatListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachFloatListener(e)}))}attachFloatVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachFloatVectorListener(e)}))}attachStringListener(e,t){ip(this,e,t),np(this,e,(e=>{this.i._attachStringListener(e)}))}attachStringVectorListener(e,t){op(this,e,t),np(this,e,(e=>{this.i._attachStringVectorListener(e)}))}attachProtoListener(e,t,n){ip(this,e,t),np(this,e,(e=>{this.i._attachProtoListener(e,n||!1)}))}attachProtoVectorListener(e,t,n){op(this,e,t),np(this,e,(e=>{this.i._attachProtoVectorListener(e,n||!1)}))}attachAudioListener(e,t,n){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),ip(this,e,((e,n)=>{e=new Float32Array(e.buffer,e.byteOffset,e.length/4),t(e,n)})),np(this,e,(e=>{this.i._attachAudioListener(e,n||!1)}))}finishProcessing(){this.i._waitUntilIdle()}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0}},class extends Kp{get Y(){return this.i}ga(e,t,n){np(this,t,(t=>{const[a,r]=ap(this,e,t);this.Y._addBoundTextureAsImageToStream(t,a,r,n)}))}S(e,t){ip(this,e,t),np(this,e,(e=>{this.Y._attachImageListener(e)}))}T(e,t){op(this,e,t),np(this,e,(e=>{this.Y._attachImageVectorListener(e)}))}}));var Kp,Yp=class extends Hp{};async function Xp(e,t,n){return async function(e,t,n,a){return async function(e,t,n,a){return e=await(async(e,t,n,a,r)=>{if(t&&await tp(t),!self.ModuleFactory)throw Error("ModuleFactory not set.");if(n&&(await tp(n),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&r&&((t=self.Module).locateFile=r.locateFile,r.mainScriptUrlOrBlob&&(t.mainScriptUrlOrBlob=r.mainScriptUrlOrBlob)),r=await self.ModuleFactory(self.Module||r),self.ModuleFactory=self.Module=void 0,new e(r,a)})(e,n.wasmLoaderPath,n.assetLoaderPath,t,{locateFile:e=>e.endsWith(".wasm")?n.wasmBinaryPath.toString():n.assetBinaryPath&&e.endsWith(".data")?n.assetBinaryPath.toString():e}),await e.o(a),e}(e,t,n,a)}(e,n.canvas??("undefined"==typeof OffscreenCanvas||ep()?document.createElement("canvas"):void 0),t,n)}function Jp(e,t,n,a){if(e.Z){const i=new Sh;if(n?.regionOfInterest){if(!e.ea)throw Error("This task doesn't support region-of-interest.");var r=n.regionOfInterest;if(r.left>=r.right||r.top>=r.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(0>r.left||0>r.top||1<r.right||1<r.bottom)throw Error("Expected RectF values to be in [0,1].");ou(i,1,(r.left+r.right)/2),ou(i,2,(r.top+r.bottom)/2),ou(i,4,r.right-r.left),ou(i,3,r.bottom-r.top)}else ou(i,1,.5),ou(i,2,.5),ou(i,4,1),ou(i,3,1);if(n?.rotationDegrees){if(0!=n?.rotationDegrees%90)throw Error("Expected rotation to be a multiple of 90°.");if(ou(i,5,-Math.PI*n.rotationDegrees/180),0!=n?.rotationDegrees%180){const[e,a]=void 0!==t.videoWidth?[t.videoWidth,t.videoHeight]:void 0!==t.naturalWidth?[t.naturalWidth,t.naturalHeight]:[t.width,t.height];n=au(i,3)*a/e,r=au(i,4)*e/a,ou(i,4,n),ou(i,3,r)}}e.g.addProtoToStream(i.g(),"mediapipe.NormalizedRect",e.Z,a)}e.g.ga(t,e.da,a??performance.now()),e.finishProcessing()}function Zp(e,t,n){if(e.baseOptions?.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");Jp(e,t,n,e.I+1)}function Qp(e,t,n,a){if(!e.baseOptions?.g())throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");Jp(e,t,n,a)}function em(e,t,n){var a=t.data;const r=t.width,i=r*(t=t.height);if((a instanceof Uint8Array||a instanceof Float32Array)&&a.length!==i)throw Error("Unsupported channel count: "+a.length/i);return e=new Vp([a],!1,e.g.i.canvas,e.O,r,t),n?e.clone():e}var tm=class extends fp{constructor(e,t,n,a){super(e),this.g=e,this.da=t,this.Z=n,this.ea=a,this.O=new Ep}l(e,t=!0){if("runningMode"in e&&ru(this.baseOptions,2,!!e.runningMode&&"IMAGE"!==e.runningMode),void 0!==e.canvas&&this.g.i.canvas!==e.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(e,t)}close(){this.O.close(),super.close()}};tm.prototype.close=tm.prototype.close;var nm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect_in",!1),this.j={detections:[]},this.h=new Hh,e=new qh,Xc(this.h,0,1,e),ou(this.h,2,.5),ou(this.h,3,.3)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"minDetectionConfidence"in e&&ou(this.h,2,e.minDetectionConfidence??.5),"minSuppressionThreshold"in e&&ou(this.h,3,e.minSuppressionThreshold??.3),this.l(e)}F(e,t){return this.j={detections:[]},Zp(this,e,t),this.j}G(e,t,n){return this.j={detections:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect_in"),Kd(e,"detections");const t=new Dd;lu(t,Yh,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect_in"),Ud(n,"DETECTIONS:detections"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("detections",((e,t)=>{for(const t of e)e=ph(t),this.j.detections.push(Vf(e));cp(this,t)})),this.g.attachEmptyPacketListener("detections",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};nm.prototype.detectForVideo=nm.prototype.G,nm.prototype.detect=nm.prototype.F,nm.prototype.setOptions=nm.prototype.o,nm.createFromModelPath=async function(e,t){return Xp(nm,e,{baseOptions:{modelAssetPath:t}})},nm.createFromModelBuffer=function(e,t){return Xp(nm,e,{baseOptions:{modelAssetBuffer:t}})},nm.createFromOptions=function(e,t){return Xp(nm,e,t)};var am=Wp([61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]),rm=Wp([263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]),im=Wp([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),om=Wp([474,475],[475,476],[476,477],[477,474]),sm=Wp([33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]),lm=Wp([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),cm=Wp([469,470],[470,471],[471,472],[472,469]),um=Wp([10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]),dm=[...am,...rm,...im,...sm,...lm,...um],hm=Wp([127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]);function fm(e){e.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]}}var pm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,this.h=new nf,e=new qh,Xc(this.h,0,1,e),this.v=new ef,Xc(this.h,0,3,this.v),this.s=new Hh,Xc(this.h,0,2,this.s),iu(this.s,4,1),ou(this.s,2,.5),ou(this.v,2,.5),ou(this.h,4,.5)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"numFaces"in e&&iu(this.s,4,e.numFaces??1),"minFaceDetectionConfidence"in e&&ou(this.s,2,e.minFaceDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.h,4,e.minTrackingConfidence??.5),"minFacePresenceConfidence"in e&&ou(this.v,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in e&&(this.outputFacialTransformationMatrixes=!!e.outputFacialTransformationMatrixes),this.l(e)}F(e,t){return fm(this),Zp(this,e,t),this.j}G(e,t,n){return fm(this),Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"face_landmarks");const t=new Dd;lu(t,rf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"NORM_LANDMARKS:face_landmarks"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("face_landmarks",((e,t)=>{for(const t of e)e=Eh(t),this.j.faceLandmarks.push(qf(e));cp(this,t)})),this.g.attachEmptyPacketListener("face_landmarks",(e=>{cp(this,e)})),this.outputFaceBlendshapes&&(Kd(e,"blendshapes"),Ud(n,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",((e,t)=>{if(this.outputFaceBlendshapes)for(const t of e)e=ah(t),this.j.faceBlendshapes.push($f(e.g()??[]));cp(this,t)})),this.g.attachEmptyPacketListener("blendshapes",(e=>{cp(this,e)}))),this.outputFacialTransformationMatrixes&&(Kd(e,"face_geometry"),Ud(n,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",((e,t)=>{if(this.outputFacialTransformationMatrixes)for(const t of e)(e=Hc(Zh(t),Ch,2))&&this.j.facialTransformationMatrixes.push({rows:nu(Qc(e,1))??0,columns:nu(Qc(e,2))??0,data:Oc(e,3,Ql)??[]});cp(this,t)})),this.g.attachEmptyPacketListener("face_geometry",(e=>{cp(this,e)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};pm.prototype.detectForVideo=pm.prototype.G,pm.prototype.detect=pm.prototype.F,pm.prototype.setOptions=pm.prototype.o,pm.createFromModelPath=function(e,t){return Xp(pm,e,{baseOptions:{modelAssetPath:t}})},pm.createFromModelBuffer=function(e,t){return Xp(pm,e,{baseOptions:{modelAssetBuffer:t}})},pm.createFromOptions=function(e,t){return Xp(pm,e,t)},pm.FACE_LANDMARKS_LIPS=am,pm.FACE_LANDMARKS_LEFT_EYE=rm,pm.FACE_LANDMARKS_LEFT_EYEBROW=im,pm.FACE_LANDMARKS_LEFT_IRIS=om,pm.FACE_LANDMARKS_RIGHT_EYE=sm,pm.FACE_LANDMARKS_RIGHT_EYEBROW=lm,pm.FACE_LANDMARKS_RIGHT_IRIS=cm,pm.FACE_LANDMARKS_FACE_OVAL=um,pm.FACE_LANDMARKS_CONTOURS=dm,pm.FACE_LANDMARKS_TESSELATION=hm;var mm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!0),this.j=new of,e=new qh,Xc(this.j,0,1,e)}get baseOptions(){return Hc(this.j,qh,1)}set baseOptions(e){Xc(this.j,0,1,e)}o(e){return super.l(e)}Da(e,t,n){const a="function"!=typeof t?t:{};if(this.h="function"==typeof t?t:n,Zp(this,e,a??{}),!this.h)return this.s}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"stylized_image");const t=new Dd;lu(t,sf,this.j);const n=new jd;Bd(n,"mediapipe.tasks.vision.face_stylizer.FaceStylizerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"STYLIZED_IMAGE:stylized_image"),n.o(t),Wd(e,n),this.g.S("stylized_image",((e,t)=>{var n=!this.h,a=e.data,r=e.width;const i=r*(e=e.height);if(a instanceof Uint8Array)if(a.length===3*i){const t=new Uint8ClampedArray(4*i);for(let e=0;e<i;++e)t[4*e]=a[3*e],t[4*e+1]=a[3*e+1],t[4*e+2]=a[3*e+2],t[4*e+3]=255;a=new ImageData(t,r,e)}else{if(a.length!==4*i)throw Error("Unsupported channel count: "+a.length/i);a=new ImageData(new Uint8ClampedArray(a.buffer,a.byteOffset,a.length),r,e)}else if(!(a instanceof WebGLTexture))throw Error(`Unsupported format: ${a.constructor.name}`);r=new _p([a],!1,!1,this.g.i.canvas,this.O,r,e),this.s=n=n?r.clone():r,this.h&&this.h(n),cp(this,t)})),this.g.attachEmptyPacketListener("stylized_image",(e=>{this.s=null,this.h&&this.h(null),cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};mm.prototype.stylize=mm.prototype.Da,mm.prototype.setOptions=mm.prototype.o,mm.createFromModelPath=function(e,t){return Xp(mm,e,{baseOptions:{modelAssetPath:t}})},mm.createFromModelBuffer=function(e,t){return Xp(mm,e,{baseOptions:{modelAssetBuffer:t}})},mm.createFromOptions=function(e,t){return Xp(mm,e,t)};var gm=Wp([0,1],[1,2],[2,3],[3,4],[0,5],[5,6],[6,7],[7,8],[5,9],[9,10],[10,11],[11,12],[9,13],[13,14],[14,15],[15,16],[13,17],[0,17],[17,18],[18,19],[19,20]);function vm(e){e.gestures=[],e.landmarks=[],e.worldLandmarks=[],e.handedness=[]}function ym(e){return 0===e.gestures.length?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:e.gestures,landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handedness:e.handedness,handednesses:e.handedness}}function bm(e,t=!0){const n=[];for(const r of e){var a=ah(r);e=[];for(const n of a.g())a=t&&null!=Qc(n,1)?nu(Qc(n,1)):-1,e.push({score:au(n,2)??0,index:a,categoryName:tu(n,3)??""??"",displayName:tu(n,4)??""??""});n.push(e)}return n}var wm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.v=new bf,e=new qh,Xc(this.v,0,1,e),this.C=new vf,Xc(this.v,0,2,this.C),this.s=new mf,Xc(this.C,0,3,this.s),this.h=new ff,Xc(this.C,0,2,this.h),this.j=new df,Xc(this.v,0,3,this.j),ou(this.h,2,.5),ou(this.C,4,.5),ou(this.s,2,.5)}get baseOptions(){return Hc(this.v,qh,1)}set baseOptions(e){Xc(this.v,0,1,e)}o(e){if(iu(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&ou(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.C,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&ou(this.s,2,e.minHandPresenceConfidence??.5),e.cannedGesturesClassifierOptions){var t=new lf,n=Gf(e.cannedGesturesClassifierOptions,Hc(this.j,lf,3)?.h());Xc(t,0,2,n),Xc(this.j,0,3,t)}else void 0===e.cannedGesturesClassifierOptions&&Hc(this.j,lf,3)?.g();return e.customGesturesClassifierOptions?(Xc(t=new lf,0,2,n=Gf(e.customGesturesClassifierOptions,Hc(this.j,lf,4)?.h())),Xc(this.j,0,4,t)):void 0===e.customGesturesClassifierOptions&&Hc(this.j,lf,4)?.g(),this.l(e)}ya(e,t){return vm(this),Zp(this,e,t),ym(this)}za(e,t,n){return vm(this),Qp(this,e,n,t),ym(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"hand_gestures"),Kd(e,"hand_landmarks"),Kd(e,"world_hand_landmarks"),Kd(e,"handedness");const t=new Dd;lu(t,Ef,this.v);const n=new jd;Bd(n,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"HAND_GESTURES:hand_gestures"),Ud(n,"LANDMARKS:hand_landmarks"),Ud(n,"WORLD_LANDMARKS:world_hand_landmarks"),Ud(n,"HANDEDNESS:handedness"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("hand_landmarks",((e,t)=>{for(const t of e){e=Eh(t);const n=[];for(const t of Yc(e,bh,1))n.push({x:au(t,1)??0,y:au(t,2)??0,z:au(t,3)??0});this.landmarks.push(n)}cp(this,t)})),this.g.attachEmptyPacketListener("hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("world_hand_landmarks",((e,t)=>{for(const t of e){e=yh(t);const n=[];for(const t of Yc(e,mh,1))n.push({x:au(t,1)??0,y:au(t,2)??0,z:au(t,3)??0});this.worldLandmarks.push(n)}cp(this,t)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("hand_gestures",((e,t)=>{this.gestures.push(...bm(e,!1)),cp(this,t)})),this.g.attachEmptyPacketListener("hand_gestures",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("handedness",((e,t)=>{this.handedness.push(...bm(e)),cp(this,t)})),this.g.attachEmptyPacketListener("handedness",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function xm(e){return{landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handednesses:e.handedness,handedness:e.handedness}}wm.prototype.recognizeForVideo=wm.prototype.za,wm.prototype.recognize=wm.prototype.ya,wm.prototype.setOptions=wm.prototype.o,wm.createFromModelPath=function(e,t){return Xp(wm,e,{baseOptions:{modelAssetPath:t}})},wm.createFromModelBuffer=function(e,t){return Xp(wm,e,{baseOptions:{modelAssetBuffer:t}})},wm.createFromOptions=function(e,t){return Xp(wm,e,t)},wm.HAND_CONNECTIONS=gm;var Em=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.j=new vf,e=new qh,Xc(this.j,0,1,e),this.s=new mf,Xc(this.j,0,3,this.s),this.h=new ff,Xc(this.j,0,2,this.h),iu(this.h,3,1),ou(this.h,2,.5),ou(this.s,2,.5),ou(this.j,4,.5)}get baseOptions(){return Hc(this.j,qh,1)}set baseOptions(e){Xc(this.j,0,1,e)}o(e){return"numHands"in e&&iu(this.h,3,e.numHands??1),"minHandDetectionConfidence"in e&&ou(this.h,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.j,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&ou(this.s,2,e.minHandPresenceConfidence??.5),this.l(e)}F(e,t){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Zp(this,e,t),xm(this)}G(e,t,n){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Qp(this,e,n,t),xm(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"hand_landmarks"),Kd(e,"world_hand_landmarks"),Kd(e,"handedness");const t=new Dd;lu(t,xf,this.j);const n=new jd;Bd(n,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"LANDMARKS:hand_landmarks"),Ud(n,"WORLD_LANDMARKS:world_hand_landmarks"),Ud(n,"HANDEDNESS:handedness"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("hand_landmarks",((e,t)=>{for(const t of e)e=Eh(t),this.landmarks.push(qf(e));cp(this,t)})),this.g.attachEmptyPacketListener("hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("world_hand_landmarks",((e,t)=>{for(const t of e)e=yh(t),this.worldLandmarks.push(Wf(e));cp(this,t)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(e=>{cp(this,e)})),this.g.attachProtoVectorListener("handedness",((e,t)=>{var n=this.handedness,a=n.push;const r=[];for(const t of e){e=ah(t);const n=[];for(const t of e.g())n.push({score:au(t,2)??0,index:nu(Qc(t,1))??-1,categoryName:tu(t,3)??""??"",displayName:tu(t,4)??""??""});r.push(n)}a.call(n,...r),cp(this,t)})),this.g.attachEmptyPacketListener("handedness",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Em.prototype.detectForVideo=Em.prototype.G,Em.prototype.detect=Em.prototype.F,Em.prototype.setOptions=Em.prototype.o,Em.createFromModelPath=function(e,t){return Xp(Em,e,{baseOptions:{modelAssetPath:t}})},Em.createFromModelBuffer=function(e,t){return Xp(Em,e,{baseOptions:{modelAssetBuffer:t}})},Em.createFromOptions=function(e,t){return Xp(Em,e,t)},Em.HAND_CONNECTIONS=gm;var Cm=class extends tm{constructor(e,t){super(new Yp(e,t),"input_image","norm_rect",!0),this.j={classifications:[]},this.h=new Cf,e=new qh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){var t=Gf(e,Hc(this.h,Bh,2));return Xc(this.h,0,2,t),this.l(e)}ia(e,t){return this.j={classifications:[]},Zp(this,e,t),this.j}ja(e,t,n){return this.j={classifications:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"input_image"),Hd(e,"norm_rect"),Kd(e,"classifications");const t=new Dd;lu(t,kf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),Od(n,"IMAGE:input_image"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"CLASSIFICATIONS:classifications"),n.o(t),Wd(e,n),this.g.attachProtoListener("classifications",((e,t)=>{this.j=function(e){const t={classifications:Yc(e,Th,1).map((e=>$f(Hc(e,th,4)?.g()??[],nu(Qc(e,2)),tu(e,3)??"")))};return null!=eu(e)&&(t.timestampMs=nu(eu(e))),t}(Dh(e)),cp(this,t)})),this.g.attachEmptyPacketListener("classifications",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Cm.prototype.classifyForVideo=Cm.prototype.ja,Cm.prototype.classify=Cm.prototype.ia,Cm.prototype.setOptions=Cm.prototype.o,Cm.createFromModelPath=function(e,t){return Xp(Cm,e,{baseOptions:{modelAssetPath:t}})},Cm.createFromModelBuffer=function(e,t){return Xp(Cm,e,{baseOptions:{modelAssetBuffer:t}})},Cm.createFromOptions=function(e,t){return Xp(Cm,e,t)};var km=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!0),this.h=new Sf,this.embeddings={embeddings:[]},e=new qh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){var t=this.h,n=Hc(this.h,Uh,2);return n=n?n.clone():new Uh,void 0!==e.l2Normalize?ru(n,1,e.l2Normalize):"l2Normalize"in e&&Fc(n,1),void 0!==e.quantize?ru(n,2,e.quantize):"quantize"in e&&Fc(n,2),Xc(t,0,2,n),this.l(e)}na(e,t){return Zp(this,e,t),this.embeddings}oa(e,t,n){return Qp(this,e,n,t),this.embeddings}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"embeddings_out");const t=new Dd;lu(t,Tf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"EMBEDDINGS:embeddings_out"),n.o(t),Wd(e,n),this.g.attachProtoListener("embeddings_out",((e,t)=>{e=Lh(e),this.embeddings=function(e){return{embeddings:Yc(e,_h,1).map((e=>{const t={headIndex:nu(Qc(e,3))??-1,headName:tu(e,4)??""??""};if(void 0!==Wc(e,Ah,$c(e,1)))e=Oc(e=Hc(e,Ah,$c(e,1)),1,Ql),t.floatEmbedding=e;else{const n=new Uint8Array(0);t.quantizedEmbedding=Hc(e,Nh,$c(e,2))?.fa()?.ha()??n}return t})),timestampMs:nu(eu(e))}}(e),cp(this,t)})),this.g.attachEmptyPacketListener("embeddings_out",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};km.cosineSimilarity=function(e,t){if(e.floatEmbedding&&t.floatEmbedding)e=Kf(e.floatEmbedding,t.floatEmbedding);else{if(!e.quantizedEmbedding||!t.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");e=Kf(Hf(e.quantizedEmbedding),Hf(t.quantizedEmbedding))}return e},km.prototype.embedForVideo=km.prototype.oa,km.prototype.embed=km.prototype.na,km.prototype.setOptions=km.prototype.o,km.createFromModelPath=function(e,t){return Xp(km,e,{baseOptions:{modelAssetPath:t}})},km.createFromModelBuffer=function(e,t){return Xp(km,e,{baseOptions:{modelAssetBuffer:t}})},km.createFromOptions=function(e,t){return Xp(km,e,t)};var Sm=class{constructor(e,t,n){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=n}close(){this.confidenceMasks?.forEach((e=>{e.close()})),this.categoryMask?.close()}};function Tm(e){e.categoryMask=void 0,e.confidenceMasks=void 0,e.qualityScores=void 0}function Im(e){try{const t=new Sm(e.confidenceMasks,e.categoryMask,e.qualityScores);if(!e.j)return t;e.j(t)}finally{hp(e)}}Sm.prototype.close=Sm.prototype.close;var Rm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.s=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Nf,this.v=new If,Xc(this.h,0,3,this.v),e=new qh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return void 0!==e.displayNamesLocale?Fc(this.h,2,ic(e.displayNamesLocale)):"displayNamesLocale"in e&&Fc(this.h,2),"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}P(){!function(e){const t=Yc(e.W(),jd,1).filter((e=>(tu(e,1)??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator")));if(e.s=[],1<t.length)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");1===t.length&&(Hc(t[0],Dd,7)?.l()?.g()??new Map).forEach(((t,n)=>{e.s[Number(n)]=tu(t,1)??""}))}(this)}X(e,t,n){const a="function"!=typeof t?t:{};return this.j="function"==typeof t?t:n,Tm(this),Zp(this,e,a),Im(this)}Ca(e,t,n,a){const r="function"!=typeof n?n:{};return this.j="function"==typeof n?n:a,Tm(this),Qp(this,e,r,t),Im(this)}ta(){return this.s}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect");const t=new Dd;lu(t,_f,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),n.o(t),Wd(e,n),up(this,e),this.outputConfidenceMasks&&(Kd(e,"confidence_masks"),Ud(n,"CONFIDENCE_MASKS:confidence_masks"),dp(this,"confidence_masks"),this.g.T("confidence_masks",((e,t)=>{this.confidenceMasks=e.map((e=>em(this,e,!this.j))),cp(this,t)})),this.g.attachEmptyPacketListener("confidence_masks",(e=>{this.confidenceMasks=[],cp(this,e)}))),this.outputCategoryMask&&(Kd(e,"category_mask"),Ud(n,"CATEGORY_MASK:category_mask"),dp(this,"category_mask"),this.g.S("category_mask",((e,t)=>{this.categoryMask=em(this,e,!this.j),cp(this,t)})),this.g.attachEmptyPacketListener("category_mask",(e=>{this.categoryMask=void 0,cp(this,e)}))),Kd(e,"quality_scores"),Ud(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((e,t)=>{this.qualityScores=e,cp(this,t)})),this.g.attachEmptyPacketListener("quality_scores",(e=>{this.categoryMask=void 0,cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Rm.prototype.getLabels=Rm.prototype.ta,Rm.prototype.segmentForVideo=Rm.prototype.Ca,Rm.prototype.segment=Rm.prototype.X,Rm.prototype.setOptions=Rm.prototype.o,Rm.createFromModelPath=function(e,t){return Xp(Rm,e,{baseOptions:{modelAssetPath:t}})},Rm.createFromModelBuffer=function(e,t){return Xp(Rm,e,{baseOptions:{modelAssetBuffer:t}})},Rm.createFromOptions=function(e,t){return Xp(Rm,e,t)};var Dm=class{constructor(e,t,n){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=n}close(){this.confidenceMasks?.forEach((e=>{e.close()})),this.categoryMask?.close()}};Dm.prototype.close=Dm.prototype.close;var Am=class extends cu{constructor(e){super(e)}},Nm=[0,Zu,Zu,Zu],_m=[0,qu,qu,qu,qu,td],Fm=[0,qu,qu,qu,qu,td,qu,qu],Mm=[0,sd,Fm],Pm=[0,sd,Mm,sd,Nm],Lm=[0,sd,Fm,sd,Nm],Bm=[0,sd,Fm,Zu,Zu],Om=[0,sd,Bm,sd,Nm],Um=[0,qu,qu,qu,qu,td,sd,Nm,sd,Nm],jm=[0,qu,qu,qu,qu,td,hd],zm=class extends cu{constructor(e){super(e)}},Gm=[0,qu,qu,td],$m=class extends cu{constructor(){super()}};$m.B=[1];var Vm=class extends cu{constructor(e){super(e)}},qm=[1,2,3,4,5,6,7,8,9,10,14,15],Wm=[0,cd,Fm,qm,cd,Lm,qm,cd,Mm,qm,cd,Pm,qm,cd,Gm,qm,cd,jm,qm,cd,_m,qm,cd,[0,id,qu,qu,qu,td,Zu,td,td,qu,3,sd,Nm],qm,cd,Bm,qm,cd,Om,qm,qu,sd,Nm,id,cd,Um,qm,cd,[0,ld,Gm],qm],Hm=[0,id,Zu,Zu,td],Km=class extends cu{constructor(){super()}};Km.B=[1],Km.prototype.g=vd([0,ld,Wm,id,sd,Hm]);var Ym=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Nf,this.v=new If,Xc(this.h,0,3,this.v),e=new qh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}X(e,t,n,a){const r="function"!=typeof n?n:{};this.j="function"==typeof n?n:a,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,n=this.I+1,a=new Km;const i=new Vm;var o=new Am;if(iu(o,1,255),Xc(i,0,12,o),t.keypoint&&t.scribble)throw Error("Cannot provide both keypoint and scribble.");if(t.keypoint){var s=new zm;ru(s,3,!0),ou(s,1,t.keypoint.x),ou(s,2,t.keypoint.y),Jc(i,5,qm,s)}else{if(!t.scribble)throw Error("Must provide either a keypoint or a scribble.");for(s of(o=new $m,t.scribble))ru(t=new zm,3,!0),ou(t,1,s.x),ou(t,2,s.y),Zc(o,zm,t);Jc(i,15,qm,o)}Zc(a,Vm,i),this.g.addProtoToStream(a.g(),"drishti.RenderData","roi_in",n),Zp(this,e,r);e:{try{const e=new Dm(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var l=e;break e}this.j(e)}finally{hp(this)}l=void 0}return l}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"roi_in"),Hd(e,"norm_rect_in");const t=new Dd;lu(t,_f,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraph"),Od(n,"IMAGE:image_in"),Od(n,"ROI:roi_in"),Od(n,"NORM_RECT:norm_rect_in"),n.o(t),Wd(e,n),up(this,e),this.outputConfidenceMasks&&(Kd(e,"confidence_masks"),Ud(n,"CONFIDENCE_MASKS:confidence_masks"),dp(this,"confidence_masks"),this.g.T("confidence_masks",((e,t)=>{this.confidenceMasks=e.map((e=>em(this,e,!this.j))),cp(this,t)})),this.g.attachEmptyPacketListener("confidence_masks",(e=>{this.confidenceMasks=[],cp(this,e)}))),this.outputCategoryMask&&(Kd(e,"category_mask"),Ud(n,"CATEGORY_MASK:category_mask"),dp(this,"category_mask"),this.g.S("category_mask",((e,t)=>{this.categoryMask=em(this,e,!this.j),cp(this,t)})),this.g.attachEmptyPacketListener("category_mask",(e=>{this.categoryMask=void 0,cp(this,e)}))),Kd(e,"quality_scores"),Ud(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((e,t)=>{this.qualityScores=e,cp(this,t)})),this.g.attachEmptyPacketListener("quality_scores",(e=>{this.categoryMask=void 0,cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Ym.prototype.segment=Ym.prototype.X,Ym.prototype.setOptions=Ym.prototype.o,Ym.createFromModelPath=function(e,t){return Xp(Ym,e,{baseOptions:{modelAssetPath:t}})},Ym.createFromModelBuffer=function(e,t){return Xp(Ym,e,{baseOptions:{modelAssetBuffer:t}})},Ym.createFromOptions=function(e,t){return Xp(Ym,e,t)};var Xm=class extends tm{constructor(e,t){super(new Yp(e,t),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},this.h=new Ff,e=new qh,Xc(this.h,0,1,e)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return void 0!==e.displayNamesLocale?Fc(this.h,2,ic(e.displayNamesLocale)):"displayNamesLocale"in e&&Fc(this.h,2),void 0!==e.maxResults?iu(this.h,3,e.maxResults):"maxResults"in e&&Fc(this.h,3),void 0!==e.scoreThreshold?ou(this.h,4,e.scoreThreshold):"scoreThreshold"in e&&Fc(this.h,4),void 0!==e.categoryAllowlist?Gc(this.h,5,e.categoryAllowlist):"categoryAllowlist"in e&&Fc(this.h,5),void 0!==e.categoryDenylist?Gc(this.h,6,e.categoryDenylist):"categoryDenylist"in e&&Fc(this.h,6),this.l(e)}F(e,t){return this.j={detections:[]},Zp(this,e,t),this.j}G(e,t,n){return this.j={detections:[]},Qp(this,e,n,t),this.j}m(){var e=new Yd;Hd(e,"input_frame_gpu"),Hd(e,"norm_rect"),Kd(e,"detections");const t=new Dd;lu(t,Mf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.ObjectDetectorGraph"),Od(n,"IMAGE:input_frame_gpu"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"DETECTIONS:detections"),n.o(t),Wd(e,n),this.g.attachProtoVectorListener("detections",((e,t)=>{for(const t of e)e=ph(t),this.j.detections.push(Vf(e));cp(this,t)})),this.g.attachEmptyPacketListener("detections",(e=>{cp(this,e)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Jm(e){e.landmarks=[],e.worldLandmarks=[],e.v=void 0}function Zm(e){try{const t=new class{constructor(e,t,n){this.landmarks=e,this.worldLandmarks=t,this.g=n}close(){this.g?.forEach((e=>{e.close()}))}}(e.landmarks,e.worldLandmarks,e.v);if(!e.s)return t;e.s(t)}finally{hp(e)}}Xm.prototype.detectForVideo=Xm.prototype.G,Xm.prototype.detect=Xm.prototype.F,Xm.prototype.setOptions=Xm.prototype.o,Xm.createFromModelPath=async function(e,t){return Xp(Xm,e,{baseOptions:{modelAssetPath:t}})},Xm.createFromModelBuffer=function(e,t){return Xp(Xm,e,{baseOptions:{modelAssetBuffer:t}})},Xm.createFromOptions=function(e,t){return Xp(Xm,e,t)};var Qm=class extends tm{constructor(e,t){super(new Yp(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,this.h=new Uf,e=new qh,Xc(this.h,0,1,e),this.C=new Bf,Xc(this.h,0,3,this.C),this.j=new Pf,Xc(this.h,0,2,this.j),iu(this.j,4,1),ou(this.j,2,.5),ou(this.C,2,.5),ou(this.h,4,.5)}get baseOptions(){return Hc(this.h,qh,1)}set baseOptions(e){Xc(this.h,0,1,e)}o(e){return"numPoses"in e&&iu(this.j,4,e.numPoses??1),"minPoseDetectionConfidence"in e&&ou(this.j,2,e.minPoseDetectionConfidence??.5),"minTrackingConfidence"in e&&ou(this.h,4,e.minTrackingConfidence??.5),"minPosePresenceConfidence"in e&&ou(this.C,2,e.minPosePresenceConfidence??.5),"outputSegmentationMasks"in e&&(this.outputSegmentationMasks=e.outputSegmentationMasks??!1),this.l(e)}F(e,t,n){const a="function"!=typeof t?t:{};return this.s="function"==typeof t?t:n,Jm(this),Zp(this,e,a),Zm(this)}G(e,t,n,a){const r="function"!=typeof n?n:{};return this.s="function"==typeof n?n:a,Jm(this),Qp(this,e,r,t),Zm(this)}m(){var e=new Yd;Hd(e,"image_in"),Hd(e,"norm_rect"),Kd(e,"normalized_landmarks"),Kd(e,"world_landmarks"),Kd(e,"segmentation_masks");const t=new Dd;lu(t,zf,this.h);const n=new jd;Bd(n,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),Od(n,"IMAGE:image_in"),Od(n,"NORM_RECT:norm_rect"),Ud(n,"NORM_LANDMARKS:normalized_landmarks"),Ud(n,"WORLD_LANDMARKS:world_landmarks"),n.o(t),Wd(e,n),up(this,e),this.g.attachProtoVectorListener("normalized_landmarks",((e,t)=>{this.landmarks=[];for(const t of e)e=Eh(t),this.landmarks.push(qf(e));cp(this,t)})),this.g.attachEmptyPacketListener("normalized_landmarks",(e=>{this.landmarks=[],cp(this,e)})),this.g.attachProtoVectorListener("world_landmarks",((e,t)=>{this.worldLandmarks=[];for(const t of e)e=yh(t),this.worldLandmarks.push(Wf(e));cp(this,t)})),this.g.attachEmptyPacketListener("world_landmarks",(e=>{this.worldLandmarks=[],cp(this,e)})),this.outputSegmentationMasks&&(Ud(n,"SEGMENTATION_MASK:segmentation_masks"),dp(this,"segmentation_masks"),this.g.T("segmentation_masks",((e,t)=>{this.v=e.map((e=>em(this,e,!this.s))),cp(this,t)})),this.g.attachEmptyPacketListener("segmentation_masks",(e=>{this.v=[],cp(this,e)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Qm.prototype.detectForVideo=Qm.prototype.G,Qm.prototype.detect=Qm.prototype.F,Qm.prototype.setOptions=Qm.prototype.o,Qm.createFromModelPath=function(e,t){return Xp(Qm,e,{baseOptions:{modelAssetPath:t}})},Qm.createFromModelBuffer=function(e,t){return Xp(Qm,e,{baseOptions:{modelAssetBuffer:t}})},Qm.createFromOptions=function(e,t){return Xp(Qm,e,t)},Qm.POSE_CONNECTIONS=Wp([0,1],[1,2],[2,3],[3,7],[0,4],[4,5],[5,6],[6,8],[9,10],[11,12],[11,13],[13,15],[15,17],[15,19],[15,21],[17,19],[12,14],[14,16],[16,18],[16,20],[16,22],[18,20],[11,23],[12,24],[23,24],[23,25],[24,26],[25,27],[26,28],[27,29],[28,30],[29,31],[30,32],[27,31],[28,32]);var eg;function tg(e,t,n,a){t.forEach((function(t){var r=t.keypoints.map((function(e){return[e.x,e.y]}));if(n){e.strokeStyle="#FF2C35",e.lineWidth=1;var i=t.box;!function(e,t,n){var a=new Path2D;a.moveTo(t[0][0],t[0][1]);for(var r=1;r<t.length;r++){var i=t[r];a.lineTo(i[0],i[1])}n&&a.closePath(),e.stroke(a)}(e,[[i.xMin,i.yMin],[i.xMax,i.yMin],[i.xMax,i.yMax],[i.xMin,i.yMax]],!0)}if(a){e.fillStyle="#32EEDB";for(var o=0;o<6;o++){var s=r[o][0],l=r[o][1];e.beginPath(),e.arc(s,l,3,0,2*Math.PI),e.fill()}}}))}function ng(){return m(this,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return eg?[2,eg]:[4,Qf.forVisionTasks("https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@0.10.7/wasm")];case 1:return e=t.sent(),[4,nm.createFromOptions(e,{baseOptions:{modelAssetPath:"https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/1/blaze_face_short_range.tflite",delegate:"GPU"},runningMode:"VIDEO"})];case 2:return[2,eg=t.sent()]}}))}))}var ag,rg,ig,og,sg,lg,cg,ug,dg,hg=t.createContext({start:function(){return null},stop:function(){return null},onPredictionMade:function(){return null},canvasRef:{current:null},ready:!1,error:null}),fg=function(e){var n=e.autoStart,a=void 0===n||n,r=e.children,i=e.throttleMs,o=t.useContext(dt),s=o.videoRef,c=o.videoLoaded,u=o.cameraReady,d=t.useRef(null),h=t.useRef(),f=t.useState(!1),v=f[0],y=f[1],b=t.useState(!1),w=b[0],x=b[1],E=t.useRef(null),C=t.useRef(0),k=t.useRef(0),S=t.useState(null),T=S[0],I=S[1];t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:y(!1),n.label=1;case 1:return n.trys.push([1,3,,4]),e=E,[4,ng()];case 2:return e.current=n.sent(),[3,4];case 3:return t=n.sent(),I(t),[3,4];case 4:return y(!0),[2]}}))}))}),[]),t.useEffect((function(){if(c&&u&&w&&v){var e;k.current+=1;var t=k.current;return m(void 0,void 0,void 0,(function(){var n,a,r,o;return g(this,(function(l){switch(l.label){case 0:return s.current&&E.current?(n=null===(a=d.current)||void 0===a?void 0:a.getContext("2d"),d.current&&(d.current.width=null===(r=s.current)||void 0===r?void 0:r.videoWidth,d.current.height=null===(o=s.current)||void 0===o?void 0:o.videoHeight,null==n||n.translate(s.current.videoWidth,0),null==n||n.scale(-1,1)),[4,function a(){var r;return m(this,void 0,void 0,(function(){var o,l,c,u,d;return g(this,(function(f){switch(f.label){case 0:return E.current&&s.current&&t===k.current?s.current.readyState<2?[4,new Promise((function(e){s.current&&(s.current.onloadeddata=function(){e([])})}))]:[3,2]:[2];case 1:f.sent(),f.label=2;case 2:o=s.current.videoWidth,l=s.current.videoHeight,null==n||n.drawImage(s.current,0,0,o,l),f.label=3;case 3:return f.trys.push([3,5,,6]),[4,E.current.detectForVideo(s.current,performance.now())];case 4:return(c=f.sent())&&(u=c.detections.map((function(e){var t,n,a,r,i,s,c,u,d,h,f,m,g,v,y,b;return{keypoints:e.keypoints.map((function(e){var t;return p(p({},e),{x:e.x*o,y:e.y*l,name:null!==(t=e.label)&&void 0!==t?t:""})})),box:{xMin:null!==(n=null===(t=e.boundingBox)||void 0===t?void 0:t.originX)&&void 0!==n?n:0,xMax:(null!==(r=null===(a=e.boundingBox)||void 0===a?void 0:a.originX)&&void 0!==r?r:0)+(null!==(s=null===(i=e.boundingBox)||void 0===i?void 0:i.width)&&void 0!==s?s:0),yMin:null!==(u=null===(c=e.boundingBox)||void 0===c?void 0:c.originY)&&void 0!==u?u:0,yMax:(null!==(h=null===(d=e.boundingBox)||void 0===d?void 0:d.originY)&&void 0!==h?h:0)+(null!==(m=null===(f=e.boundingBox)||void 0===f?void 0:f.height)&&void 0!==m?m:0),width:null!==(v=null===(g=e.boundingBox)||void 0===g?void 0:g.width)&&void 0!==v?v:0,height:null!==(b=null===(y=e.boundingBox)||void 0===y?void 0:y.height)&&void 0!==b?b:0}}})),null===(r=h.current)||void 0===r||r.call(h,u),n&&tg(n,u,!0,!0)),[3,6];case 5:return d=f.sent(),console.error("caught face detection error",d),[3,6];case 6:return i?e=setTimeout((function(){C.current=requestAnimationFrame(a)}),i):C.current=requestAnimationFrame(a),[2]}}))}))}()]):[2];case 1:return l.sent(),[2]}}))})),function(){C.current&&cancelAnimationFrame(C.current),e&&clearTimeout(e)}}}),[u,v,w,i,c,s]);var R=t.useCallback((function(){x(!0)}),[]),D=t.useCallback((function(){x(!1)}),[]);t.useEffect((function(){return a&&R(),function(){D()}}),[a,R,D]);var A=t.useCallback((function(e){h.current=e}),[]),N=t.useMemo((function(){return{start:R,stop:D,ready:v,canvasRef:d,onPredictionMade:A,error:T}}),[T,A,v,R,D]);return l.createElement(hg.Provider,{value:N},r)},pg=function(e,n,a,r,i){void 0===i&&(i=!0);var o=t.useState(!1),s=o[0],l=o[1],c=t.useState(),u=c[0],d=c[1];return t.useEffect((function(){if(e&&i){d(new Date);var t=setTimeout((function(){l(!0)}),e);return function(){t&&clearTimeout(t)}}}),[e,i]),t.useEffect((function(){if(s&&!a){if(r){var e=setTimeout((function(){null==n||n()}),12e4);return function(){clearTimeout(e)}}null==n||n()}}),[n,r,s,a]),{timedOut:s,timeoutStartedAt:u}},mg=function(e){var n=e.onFinished,a=e.onCapture,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c,d=t.useState(null),h=d[0],f=d[1],p=t.useRef(null),m=t.useState(!1),g=m[0],v=m[1],y=ji(u,{headingText:"We're having some trouble.",descriptionText:"On-device capture guidance failed, please capture a selfie manually.",captureBtnText:"Capture",doneBtnText:"Done",doneBtnLoadingText:"Verifying..."});return s.default.createElement(U,{className:i.container},s.default.createElement(gg,{className:i.inner},s.default.createElement(vg,{className:i.heading},y.headingText),s.default.createElement(yg,{className:i.description},y.descriptionText),h&&s.default.createElement(bg,{className:i.imageContainer},s.default.createElement("img",{src:h,alt:"",className:i.image})),s.default.createElement("input",{ref:p,type:"file",accept:"image/*",onChange:function(e){var t,n=null===(t=e.target.files)||void 0===t?void 0:t[0];if(n){var r=new FileReader;r.addEventListener("load",(function(e){var t,n=null===(t=e.target)||void 0===t?void 0:t.result;f(n),null==a||a(n)})),r.readAsDataURL(n)}},hidden:!0}),s.default.createElement(wg,{className:i.buttonsRow},!h&&s.default.createElement(ce,{variant:"positive",className:i.captureBtn,colors:l.captureBtn,finished:!0,onClick:function(){var e;null===(e=p.current)||void 0===e||e.click()}},y.captureBtnText),h&&s.default.createElement(ce,{variant:"positive",key:g?"loading-btn":"ready-btn",className:i.doneBtn,colors:l.doneBtn,finished:!g,onClick:function(){v(!0),null==n||n(h)}},g?y.doneBtnLoadingText:y.doneBtnText))))},gg=u.default(j)(ag||(ag=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),vg=u.default.h3(rg||(rg=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),yg=u.default.p(ig||(ig=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),bg=u.default(z)(og||(og=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),wg=u.default(bo)(sg||(sg=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),xg={videoWidth:0,videoHeight:0,capturing:!1,captured:!1,captureFailed:!1,frame:null,faces:[],faceNotCentered:!1,faceLookingAway:!1,faceTooClose:!1,faceTooFar:!1,faceReady:!1,faceReadyAt:null,goodFramesCount:0,goodFramesThreshold:1,goodFramesThresholdMet:!1},Eg=function(e,t){switch(t.type){case"configure":return p(p({},e),{videoWidth:t.payload.videoWidth,videoHeight:t.payload.videoHeight});case"capturing":return p(p({},e),{capturing:!0,captured:!1,captureFailed:!1});case"captured":return p(p({},e),{capturing:!1,captured:!0,captureFailed:!1});case"captureFailed":return p(p({},e),{capturing:!1,captured:!1,captureFailed:!0});case"facesDetected":var n=t.payload.faces,a=n[0],r=!0,i=!1,o=!1,s=!1,l=e.faceReadyAt,c=e.goodFramesCount;if(a){var u=e.videoHeight/2,d=(a.box.xMin+a.box.xMax)/2,h=(a.box.yMin+a.box.yMax)/2,f=.125*e.videoWidth,m=.125*e.videoHeight,g=.2*a.box.width,v=.2*a.box.height,y=a.keypoints[2];y&&(r=Math.abs(e.videoWidth/2-d)>f||Math.abs(u+50-h)>m,i=Math.abs(d-y.x)>g||Math.abs(h-y.y)>v);var b=e.videoWidth<e.videoHeight;o=a.box.width>e.videoWidth/(b?2:4.5),s=a.box.width<e.videoWidth/(b?6:7)}var w=!(r||i||o||s);return w?e.faceReady||(l=new Date):(l=null,c=0),p(p({},e),{faces:n,faceNotCentered:r,faceLookingAway:i,faceTooClose:o,faceTooFar:s,faceReady:w,faceReadyAt:l,goodFramesCount:c})}},Cg=function(e){var n,a,r=e.onGuidanceSatisfied,i=e.onGuidanceNotSatisfied,o=e.onSelfieCaptured,l=e.onTimeout,c=e.onExit,u=e.timeoutDurationMs,d=void 0===u?15e3:u,h=e.guidanceMessage,f=e.guidanceSatisfied,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=De(),S=k.ref,T=k.width,I=void 0===T?1:T,R=k.height,D=void 0===R?1:R,A=t.useReducer(Eg,xg),N=A[0],_=A[1],F=t.useRef(null),P=t.useContext(dt),L=P.cameraRef,B=P.cameraReady,O=P.videoRef,U=t.useContext(hg),j=U.onPredictionMade,z=U.error;t.useEffect((function(){B&&O.current&&0!==O.current.videoWidth&&_({type:"configure",payload:{videoWidth:O.current.videoWidth,videoHeight:O.current.videoHeight}})}),[B,O]),t.useEffect((function(){j((function(e){_({type:"facesDetected",payload:{faces:e}})}))}),[j]);var G=t.useState(!1),$=G[0],V=G[1];t.useEffect((function(){var e;return N.faceReady?(null==r||r(),e=setTimeout((function(){V(!0)}),1e3)):null==i||i(),function(){e&&clearTimeout(e)}}),[i,r,N.faceReady]),t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){if($&&O.current&&F.current&&N.faces.length>0){if(Wa(F.current,O.current),!(e=F.current.getContext("2d")))return[2];t=e.getImageData(0,0,O.current.videoWidth,O.current.videoHeight),null==o||o(t,N.faces[0]),Ha(F.current)}return[2]}))}))}),[$,o,N.faces,O]);var q=pg(d,l),W=q.timedOut,H=q.timeoutStartedAt,K=dr({enabled:C,pageWidth:I,pageHeight:D,videoWidth:N.videoWidth,videoHeight:N.videoHeight});b.guidesUnsatisfiedColor||(b.guidesUnsatisfiedColor="white"),b.guidesSatisfiedColor||(b.guidesSatisfiedColor="green");var Y=ji(x,{guidanceHoldStillText:"Hold still for a few seconds...",guidanceLookStraightText:"Look straight into the camera...",guidanceMoveBackText:"Move back...",guidanceMoveForwardText:"Move forward...",guidanceMoveToCenterText:"Move to the center..."}),X=N.faceReady;return"boolean"==typeof f&&(X=f),h||(h=X?Y.guidanceHoldStillText:N.faceLookingAway?Y.guidanceLookStraightText:N.faceTooClose?Y.guidanceMoveBackText:N.faceTooFar?Y.guidanceMoveForwardText:N.faceNotCentered?Y.guidanceMoveToCenterText:""),z?s.default.createElement(mg,{classNames:v.fallback}):s.default.createElement(M,{ref:S,className:"flex ".concat(null!==(n=v.container)&&void 0!==n?n:"")},s.default.createElement(qa,{ref:F}),s.default.createElement(Eo,{className:v.cameraFeed}),s.default.createElement(Wo,{classNames:v.guides,variant:X?"satisfied":"unsatisfied"}),""!==h&&s.default.createElement(eo,{className:v.guidanceMessageContainer},s.default.createElement(to,{$variant:X?"positive":"negative",className:v.guidanceMessage},h)),C&&N.faces.length>0&&s.default.createElement(lr,{$flipX:!(null===(a=L.current)||void 0===a?void 0:a.isRearFacing)},N.faces.map((function(e,t){var n;return s.default.createElement(fr,{key:t,face:e,scaling:K,flipX:!(null===(n=L.current)||void 0===n?void 0:n.isRearFacing),color:X?"green":"red"})}))),C&&s.default.createElement(sr,null,L.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",L.current.label," (",L.current.width,"x",L.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),N.faceNotCentered?"❌":"✅"," Face Centered",s.default.createElement("br",null),N.faceTooClose||N.faceTooFar?"❌":"✅"," Face"," ",N.faceTooClose?"Too Close":N.faceTooFar?"Too Far":"Distance Correct",s.default.createElement("br",null),N.faceLookingAway?"❌":"✅"," Face Looking Forward",s.default.createElement("br",null),N.goodFramesThresholdMet?"✅":"❌"," ",N.goodFramesCount," ","Good Frames",s.default.createElement("br",null),W?"❌":"✅"," Time Remaining:"," ",Math.max(0,d-((new Date).getTime()-(null!=H?H:new Date).getTime())),"ms"),s.default.createElement(Er,{onClick:c,className:v.exitCaptureBtn}))},kg={frame:null,face:null,requestState:"CAPTURING",requestError:null,imageUrl:null,faceLive:!1,eyeCoveringDetected:!1,maskDetected:!1,headCoveringDetected:!1,phoneDetected:!1,timesLivenessCheckFailed:0},Sg=function(e,t){var n,a;switch(t.type){case"livenessReady":return["CAPTURING","FAILED","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"livenessChecking":return p(p({},e),{requestState:"IN_PROGRESS"});case"livenessChecked":var r=t.payload.response,i=r.status,o=i.statusMessage,s=i.errorData,l=r.resultData;if("000"!==i.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(o,": ").concat(s))});var c="Live Face Detected"===l.verificationResult,u="true"===l.eyeCovering,d="true"===l.faceMask,h="true"===l.headCovering,f="true"===l.cellPhone,m=c&&!u&&!d&&!h,g=m?"PASSED":"FAILED",v=e.timesLivenessCheckFailed;return m?v=0:v+=1,p(p({},e),{frame:null!==(n=t.payload.frame)&&void 0!==n?n:null,face:null!==(a=t.payload.face)&&void 0!==a?a:null,imageUrl:t.payload.imageUrl,requestState:g,faceLive:c,eyeCoveringDetected:u,maskDetected:d,headCoveringDetected:h,phoneDetected:f,timesLivenessCheckFailed:v});case"livenessCheckFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},Tg=function(e){var n,a=e.onCapture,r=e.onSuccess,i=e.onTimeout,o=e.onExit,l=e.timeoutDurationMs,c=void 0===l?15e3:l,u=e.classNames,d=void 0===u?{}:u,h=e.colors,f=void 0===h?{}:h,p=e.verbiage,v=void 0===p?{}:p,y=e.debugMode,b=t.useContext(Ce),w=b.checkLiveness,x=b.submissionError,E=t.useContext(hg).error,k=t.useReducer(Sg,kg),S=k[0],T=k[1],I=t.useState(null),R=I[0],D=I[1],A=t.useRef(null),N=t.useRef(null),_=t.useCallback((function(e,t){null==a||a(),T({type:"livenessReady",payload:{frame:e,face:t}})}),[a]),F=S.frame,M=S.face,P="CAPTURED"===S.requestState,L="PASSED"===S.requestState;t.useEffect((function(){F&&M&&P&&!x&&(T({type:"livenessChecking"}),m(void 0,void 0,void 0,(function(){var e,t,n,a;return g(this,(function(r){switch(r.label){case 0:return r.trys.push([0,3,,4]),e=Ka(A.current,N.current,F,M),D(e),n=w,[4,C(e)];case 1:return[4,n.apply(void 0,[r.sent()])];case 2:return t=r.sent(),T({type:"livenessChecked",payload:{frame:F,face:M,imageUrl:e,response:t}}),[3,4];case 3:return a=r.sent(),T({type:"livenessCheckFailed",payload:{error:a}}),[3,4];case 4:return[2]}}))})))}),[w,M,F,P,x]);var B=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t,n,a;return g(this,(function(r){switch(r.label){case 0:T({type:"livenessChecking"}),r.label=1;case 1:return r.trys.push([1,4,,5]),n=w,[4,C(e)];case 2:return[4,n.apply(void 0,[r.sent()])];case 3:return t=r.sent(),T({type:"livenessChecked",payload:{imageUrl:e,response:t}}),[3,5];case 4:return a=r.sent(),T({type:"livenessCheckFailed",payload:{error:a}}),[3,5];case 5:return[2]}}))}))}),[w]);t.useEffect((function(){L&&S.imageUrl&&(null==r||r(S.imageUrl))}),[r,S.imageUrl,L]),t.useEffect((function(){S.timesLivenessCheckFailed>=(E?1:2)&&(null==i||i())}),[E,i,S.timesLivenessCheckFailed]),pg(c,i,"PASSED"===S.requestState||!!E,"IN_PROGRESS"===S.requestState);var O=ji(v,{guidanceRemoveEyeCoveringsText:"Please remove your eye coverings (sunglasses, eye patch, etc.)...",guidanceRemoveHeadCoveringsText:"Please remove your head coverings (hat, scarf, etc.)...",guidanceRemoveMaskText:"Please remove your mask...",progressPreviewText:"Processing..."}),U=S.eyeCoveringDetected?O.guidanceRemoveEyeCoveringsText:S.headCoveringDetected?O.guidanceRemoveHeadCoveringsText:S.maskDetected?O.guidanceRemoveMaskText:void 0;return E?s.default.createElement(mg,{onFinished:B}):s.default.createElement(s.default.Fragment,null,s.default.createElement(qa,{ref:A}),s.default.createElement(qa,{ref:N}),s.default.createElement(Cg,{onSelfieCaptured:_,onExit:o,timeoutDurationMs:c,guidanceMessage:U,guidanceSatisfied:!U&&void 0,classNames:d,colors:f,verbiage:O,debugMode:y}),R&&s.default.createElement(Sr,{classNames:d.imagePreview,imageUrl:R,text:null!==(n=O.progressPreviewText)&&void 0!==n?n:""}))},Ig=function(e){var n=e.onDismissed,a=e.assets,r=void 0===a?{}:a,i=e.classNames,o=void 0===i?{}:i,l=e.colors,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=t.useContext(dt),f=h.cameraReady,p=h.cameraAccessDenied,m=t.useContext(hg).ready;r.instructionImageUrl||(r.instructionImageUrl="".concat(Ga,"/Selfie-Image-1.png"));var g=ji(d,{headingText:"Use your device camera to capture your face",removeEyeCoveringsText:"Remove Sunglasses & Hat",avoidExcessiveBacklightingText:"Avoid Excessive Backlighting",continueText:"Continue",cameraInitializingText:"Camera initializing...",modelsWarmingUpText:"Models warming up..."}),v=t.useState(!1),y=v[1];return v[0]?s.default.createElement(s.default.Fragment,null):p?s.default.createElement(oo,{assets:r.cameraAccessDenied,classNames:o.cameraAccessDenied,colors:c.cameraAccessDenied,verbiage:d.cameraAccessDenied}):s.default.createElement(U,{className:o.container},s.default.createElement(j,{className:o.inner},s.default.createElement("h3",{className:o.heading},g.headingText),s.default.createElement(Rg,null,g.removeEyeCoveringsText,s.default.createElement("br",null),g.avoidExcessiveBacklightingText),s.default.createElement(z,{className:o.imageContainer},s.default.createElement("img",{className:o.image,alt:g.headingText,src:r.instructionImageUrl})),s.default.createElement(Dg,{className:o.buttonsRow},s.default.createElement(ce,{variant:"positive",disabled:!f||!m,finished:f&&m,className:o.continueBtn,colors:c.continueBtn,onClick:function(){y(!0),null==n||n()}},f&&m?g.continueText:m?g.cameraInitializingText:g.modelsWarmingUpText)),s.default.createElement("div",{style:{display:"none"}},s.default.createElement(Eo,null))))},Rg=u.default(to)(lg||(lg=y(["\n padding: 12px 24px;\n font-weight: normal;\n line-height: 1.5;\n margin-bottom: -30px;\n"],["\n padding: 12px 24px;\n font-weight: normal;\n line-height: 1.5;\n margin-bottom: -30px;\n"]))),Dg=u.default(bo)(cg||(cg=y(["\n flex-direction: column;\n padding-top: 25px;\n"],["\n flex-direction: column;\n padding-top: 25px;\n"]))),Ag=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=ji(void 0===c?{}:c,{headingText:"Face liveness has been verified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(U,{className:i.container},s.default.createElement(j,{className:i.inner},s.default.createElement(Ng,{className:i.heading},u.headingText),s.default.createElement(z,{className:i.imageContainer},s.default.createElement("img",{alt:u.headingText,src:t,className:i.image})),s.default.createElement(bo,{className:i.buttonsRow},s.default.createElement(ce,{variant:"warning",onClick:a,colors:l.retryBtn,finished:!0},u.retryBtnText),s.default.createElement(ce,{variant:"positive",onClick:n,colors:l.doneBtn,finished:!0},u.doneBtnText))))},Ng=u.default.h3(ug||(ug=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),_g=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Live face not detected, please try again",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(U,{className:c.container},s.default.createElement(j,{className:c.inner},s.default.createElement("h3",{className:c.heading},p.headingText),s.default.createElement(Fg,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(bo,{className:c.buttonsRow},n&&s.default.createElement(ce,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ce,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},Fg=u.default(z)(dg||(dg=y(["\n max-height: calc(100vh - 185px);\n margin: 0 24px;\n"],["\n max-height: calc(100vh - 185px);\n margin: 0 24px;\n"]))),Mg=function(e){var n=e.onComplete,a=e.onSuccess,r=e.onTimeout,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.timeoutDurationMs,c=void 0===l?15e3:l,u=e.maxRetries,d=void 0===u?2:u,h=e.skipSuccessScreen,f=void 0!==h&&h,p=e.releaseCameraAccessOnExit,v=void 0===p||p,y=e.assets,b=void 0===y?{}:y,w=e.classNames,x=void 0===w?{}:w,E=e.colors,k=void 0===E?{}:E,S=e.verbiage,T=void 0===S?{}:S,I=e.debugMode,R=void 0!==I&&I,D=t.useContext(Ce),A=D.submissionResponse,N=D.livenessCheckRequest,_=D.setSelfieImage,F=D.logSelfieCaptureAttempt,M=t.useContext(dt).releaseCameraAccess,P=t.useState(""),L=P[0],B=P[1],O=t.useState(0),U=O[0],j=O[1],z=t.useState("LOADING"),G=z[0],$=z[1],V=t.useRef(),q=t.useRef(),W=t.useRef();t.useEffect((function(){W.current=new Date}),[]),t.useEffect((function(){"CAPTURING"===G&&(V.current=new Date)}),[G]);var H=t.useCallback((function(){q.current=new Date}),[]),K=t.useCallback((function(){var e,t,n;F({autoCapture:"Y",captureTime:(null!==(e=q.current)&&void 0!==e?e:new Date).getTime()-(null!==(t=V.current)&&void 0!==t?t:new Date).getTime(),operationTime:(new Date).getTime()-(null!==(n=W.current)&&void 0!==n?n:new Date).getTime()}),W.current=new Date}),[F]),Y=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return N&&A?($("SUCCESS"),B(e),t=_,[4,C(e)]):[2];case 1:return t.apply(void 0,[n.sent()]),null==a||a(A,N),[2]}}))}))}),[a,_,N,A]),X=t.useCallback((function(){$("FAILED"),null==r||r(A,N)}),[r,N,A]),J=t.useState(0),Z=J[0],Q=J[1],ee=t.useCallback((function(){Q((function(e){return e+1})),$("LOADING"),null==i||i()}),[i]),te=t.useCallback((function(){K(),v&&M(),setTimeout((function(){null==n||n(A,N)}),0)}),[K,n,M,v,N,A]),ne=ko(f,"SUCCESS"===G,te);return s.default.createElement(s.default.Fragment,null,"LOADING"!==G&&function(){switch(G){case"CAPTURING":return s.default.createElement(Tg,{key:"capture".concat(Z),onCapture:H,onSuccess:Y,onTimeout:X,onExit:ee,timeoutDurationMs:c,classNames:x.capture,colors:k,verbiage:T,debugMode:R});case"SUCCESS":return ne?s.default.createElement(Ag,{key:"success",imageUrl:L,classNames:x.success,colors:k.success,verbiage:T.success,onDoneClick:te,onRetryClick:function(){K(),$("CAPTURING")}}):null;case"FAILED":return s.default.createElement(_g,{key:"failure",assets:b.failure,classNames:x.failure,colors:k.failure,verbiage:T.failure,canRetry:d>-1&&U<d,onRetryClick:function(){K(),j((function(e){return e+1})),$("CAPTURING")},onExitClick:function(){v&&M(),setTimeout((function(){null==o||o(A,N)}),0)}});default:return null}}(),s.default.createElement(Ig,{key:Z,assets:b.loadingOverlay,classNames:x.loadingOverlay,colors:k.loadingOverlay,verbiage:T.loadingOverlay,onDismissed:function(){$("CAPTURING")}}))},Pg=function(e){var n=e.children,a=t.useState({width:1,height:1}),r=a[1],i=t.useState(1),o=i[0],l=i[1],c=De(),u=c.ref,d=c.width,h=void 0===d?1:d,f=c.height,p=void 0===f?1:f,m=h/p,g=t.useCallback((function(e){var t=e.target;l(t.naturalWidth/t.naturalHeight)}),[]);return s.default.createElement(Ae.Provider,{value:{orientation:"landscape",wrapperWidth:h,wrapperHeight:p,wrapperAspectRatio:m,imageAspectRatio:o,setDimensions:r,wrapperRef:u,onImageLoaded:g}},n)},Lg=function(){var e=t.useContext(Ce),n=e.submissionRequest,a=e.submissionResponse,r=t.useState(!1),i=r[0],o=r[1],l=t.useState(!0),c=l[0],u=l[1],d=t.useMemo((function(){var e,t,a,r,i,o,s=JSON.parse(JSON.stringify(n));return c&&((null===(t=null===(e=null==s?void 0:s.customerData)||void 0===e?void 0:e.idData)||void 0===t?void 0:t.idImageFront)&&(s.customerData.idData.idImageFront=Bg(s.customerData.idData.idImageFront,200)),(null===(r=null===(a=null==s?void 0:s.customerData)||void 0===a?void 0:a.idData)||void 0===r?void 0:r.idImageBack)&&(s.customerData.idData.idImageBack=Bg(s.customerData.idData.idImageBack,200)),(null===(o=null===(i=null==s?void 0:s.customerData)||void 0===i?void 0:i.biometricData)||void 0===o?void 0:o.selfie)&&(s.customerData.biometricData.selfie=Bg(s.customerData.biometricData.selfie,200))),JSON.stringify(s,null,2)}),[n,c]);return s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,"Submission completed!"),s.default.createElement("button",{onClick:function(){o(!i)}},i?"Hide":"Show"," request body"),i&&s.default.createElement(s.default.Fragment,null,s.default.createElement("button",{style:{marginLeft:8},onClick:function(){u(!c)}},c?"Display full images":"Truncate images"),s.default.createElement("h5",null,"Request Body"),s.default.createElement("pre",null,d)),s.default.createElement("h5",null,"Response Body"),s.default.createElement("pre",null,JSON.stringify(a,null,2)))};function Bg(e,t){var n=e.split("").splice(0,t).join("");return n.length<e.length&&(n+="..."),n}var Og,Ug,jg,zg,Gg=function(e){var n=e.document,a=e.onComplete,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=t.useRef(null),u=t.useState(null),d=u[0],h=u[1],f=ji(l,{headingText:"Additional document capture",captureBtnText:"Capture",nextBtnText:"Next"});return s.default.createElement(U,{className:i.container},s.default.createElement($g,{className:i.inner},s.default.createElement(Vg,{className:i.heading},f.headingText,": ",n.name),n.description&&s.default.createElement(qg,{className:i.description},n.description),s.default.createElement("input",{ref:c,type:"file",accept:"image/*,.pdf",onChange:function(e){var t,n=null===(t=e.target.files)||void 0===t?void 0:t[0];n&&h(n)},hidden:!0}),s.default.createElement(Wg,{className:i.buttonsRow},d?s.default.createElement(ce,{variant:"positive",className:i.nextBtn,disabled:!d,finished:!0,onClick:function(){if(d){var e=new FileReader;e.onloadend=function(){if(e.result){var t=e.result.toString();null==a||a({documentName:n.name,additionalDocument:{name:d.name,fileContent:k(t),type:S(t),fileUploadType:"Y",isImageControlData:"N",fieldId:""}})}},e.readAsDataURL(d)}}},f.nextBtnText):s.default.createElement(ce,{variant:"primary",className:i.captureBtn,finished:!0,onClick:function(){var e;null===(e=c.current)||void 0===e||e.click()}},f.captureBtnText))))},$g=u.default(j)(Og||(Og=y(["\n justify-content: center;\n"],["\n justify-content: center;\n"]))),Vg=u.default.h3(Ug||(Ug=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),qg=u.default.p(jg||(jg=y(["\n margin-bottom: 8px;\n"],["\n margin-bottom: 8px;\n"]))),Wg=u.default(bo)(zg||(zg=y(["\n margin-top: 32px;\n"],["\n margin-top: 32px;\n"]))),Hg=function(e){var n=e.documents,a=e.onComplete,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=t.useState([]),u=c[0],d=c[1],h=u.length,f=n[h],p=h>=n.length;return t.useEffect((function(){(null==f?void 0:f.skip)&&m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return[4,null===(e=f.skip)||void 0===e?void 0:e.call(f)];case 1:return t.sent()&&d((function(e){return v(v([],e,!0),[null],!1)})),[2]}}))}))}),[f]),t.useEffect((function(){p&&(null==a||a(u.filter((function(e){return!!e}))))}),[p,a,u]),p?s.default.createElement(s.default.Fragment,null,"Thanks, your documents have been received."):s.default.createElement(Gg,{key:h,document:f,classNames:i,verbiage:l,onComplete:function(e){d((function(t){return v(v([],t,!0),[e],!1)}))}})},Kg="function"==typeof Symbol&&Symbol.for,Yg=Kg?Symbol.for("react.element"):60103,Xg=Kg?Symbol.for("react.portal"):60106,Jg=Kg?Symbol.for("react.fragment"):60107,Zg=Kg?Symbol.for("react.strict_mode"):60108,Qg=Kg?Symbol.for("react.profiler"):60114,ev=Kg?Symbol.for("react.provider"):60109,tv=Kg?Symbol.for("react.context"):60110,nv=Kg?Symbol.for("react.async_mode"):60111,av=Kg?Symbol.for("react.concurrent_mode"):60111,rv=Kg?Symbol.for("react.forward_ref"):60112,iv=Kg?Symbol.for("react.suspense"):60113,ov=Kg?Symbol.for("react.suspense_list"):60120,sv=Kg?Symbol.for("react.memo"):60115,lv=Kg?Symbol.for("react.lazy"):60116,cv=Kg?Symbol.for("react.block"):60121,uv=Kg?Symbol.for("react.fundamental"):60117,dv=Kg?Symbol.for("react.responder"):60118,hv=Kg?Symbol.for("react.scope"):60119;function fv(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Yg:switch(e=e.type){case nv:case av:case Jg:case Qg:case Zg:case iv:return e;default:switch(e=e&&e.$$typeof){case tv:case rv:case lv:case sv:case ev:return e;default:return t}}case Xg:return t}}}function pv(e){return fv(e)===av}var mv={AsyncMode:nv,ConcurrentMode:av,ContextConsumer:tv,ContextProvider:ev,Element:Yg,ForwardRef:rv,Fragment:Jg,Lazy:lv,Memo:sv,Portal:Xg,Profiler:Qg,StrictMode:Zg,Suspense:iv,isAsyncMode:function(e){return pv(e)||fv(e)===nv},isConcurrentMode:pv,isContextConsumer:function(e){return fv(e)===tv},isContextProvider:function(e){return fv(e)===ev},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Yg},isForwardRef:function(e){return fv(e)===rv},isFragment:function(e){return fv(e)===Jg},isLazy:function(e){return fv(e)===lv},isMemo:function(e){return fv(e)===sv},isPortal:function(e){return fv(e)===Xg},isProfiler:function(e){return fv(e)===Qg},isStrictMode:function(e){return fv(e)===Zg},isSuspense:function(e){return fv(e)===iv},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Jg||e===av||e===Qg||e===Zg||e===iv||e===ov||"object"==typeof e&&null!==e&&(e.$$typeof===lv||e.$$typeof===sv||e.$$typeof===ev||e.$$typeof===tv||e.$$typeof===rv||e.$$typeof===uv||e.$$typeof===dv||e.$$typeof===hv||e.$$typeof===cv)},typeOf:fv};V((function(e,t){}));V((function(e){e.exports=mv}));function gv(){}function vv(){}vv.resetWarningCache=gv;var yv=V((function(e){e.exports=function(){function e(e,t,n,a,r,i){if("SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"!==i){var o=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw o.name="Invariant Violation",o}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:vv,resetWarningCache:gv};return n.PropTypes=n,n}()}));function bv(e,t,n){this.x=e,this.y=t,this.time=n||(new Date).getTime()}function wv(e,t,n,a){this.startPoint=e,this.control1=t,this.control2=n,this.endPoint=a}function xv(e,t){var n=this,a=t||{};this.velocityFilterWeight=a.velocityFilterWeight||.7,this.minWidth=a.minWidth||.5,this.maxWidth=a.maxWidth||2.5,this.throttle="throttle"in a?a.throttle:16,this.minDistance="minDistance"in a?a.minDistance:5,this._strokeMoveUpdate=this.throttle?function(e,t,n){var a,r,i,o=null,s=0;n||(n={});var l=function(){s=!1===n.leading?0:Date.now(),o=null,i=e.apply(a,r),o||(a=r=null)};return function(){var c=Date.now();s||!1!==n.leading||(s=c);var u=t-(c-s);return a=this,r=arguments,u<=0||u>t?(o&&(clearTimeout(o),o=null),s=c,i=e.apply(a,r),o||(a=r=null)):o||!1===n.trailing||(o=setTimeout(l,u)),i}}(xv.prototype._strokeUpdate,this.throttle):xv.prototype._strokeUpdate,this.dotSize=a.dotSize||function(){return(this.minWidth+this.maxWidth)/2},this.penColor=a.penColor||"black",this.backgroundColor=a.backgroundColor||"rgba(0,0,0,0)",this.onBegin=a.onBegin,this.onEnd=a.onEnd,this._canvas=e,this._ctx=e.getContext("2d"),this.clear(),this._handleMouseDown=function(e){1===e.which&&(n._mouseButtonDown=!0,n._strokeBegin(e))},this._handleMouseMove=function(e){n._mouseButtonDown&&n._strokeMoveUpdate(e)},this._handleMouseUp=function(e){1===e.which&&n._mouseButtonDown&&(n._mouseButtonDown=!1,n._strokeEnd(e))},this._handleTouchStart=function(e){1===e.targetTouches.length&&n._strokeBegin(e.changedTouches[0])},this._handleTouchMove=function(e){e.preventDefault(),n._strokeMoveUpdate(e.targetTouches[0])},this._handleTouchEnd=function(e){e.target===n._canvas&&(e.preventDefault(),n._strokeEnd(e))},this.on()}bv.prototype.velocityFrom=function(e){return this.time!==e.time?this.distanceTo(e)/(this.time-e.time):1},bv.prototype.distanceTo=function(e){return Math.sqrt(Math.pow(this.x-e.x,2)+Math.pow(this.y-e.y,2))},bv.prototype.equals=function(e){return this.x===e.x&&this.y===e.y&&this.time===e.time},wv.prototype.length=function(){for(var e=0,t=void 0,n=void 0,a=0;a<=10;a+=1){var r=a/10,i=this._point(r,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),o=this._point(r,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(a>0){var s=i-t,l=o-n;e+=Math.sqrt(s*s+l*l)}t=i,n=o}return e},wv.prototype._point=function(e,t,n,a,r){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*a*(1-e)*e*e+r*e*e*e},xv.prototype.clear=function(){var e=this._ctx,t=this._canvas;e.fillStyle=this.backgroundColor,e.clearRect(0,0,t.width,t.height),e.fillRect(0,0,t.width,t.height),this._data=[],this._reset(),this._isEmpty=!0},xv.prototype.fromDataURL=function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=new Image,r=n.ratio||window.devicePixelRatio||1,i=n.width||this._canvas.width/r,o=n.height||this._canvas.height/r;this._reset(),a.src=e,a.onload=function(){t._ctx.drawImage(a,0,0,i,o)},this._isEmpty=!1},xv.prototype.toDataURL=function(e){var t;if("image/svg+xml"===e)return this._toSVG();for(var n=arguments.length,a=Array(n>1?n-1:0),r=1;r<n;r++)a[r-1]=arguments[r];return(t=this._canvas).toDataURL.apply(t,[e].concat(a))},xv.prototype.on=function(){this._handleMouseEvents(),this._handleTouchEvents()},xv.prototype.off=function(){this._canvas.removeEventListener("mousedown",this._handleMouseDown),this._canvas.removeEventListener("mousemove",this._handleMouseMove),document.removeEventListener("mouseup",this._handleMouseUp),this._canvas.removeEventListener("touchstart",this._handleTouchStart),this._canvas.removeEventListener("touchmove",this._handleTouchMove),this._canvas.removeEventListener("touchend",this._handleTouchEnd)},xv.prototype.isEmpty=function(){return this._isEmpty},xv.prototype._strokeBegin=function(e){this._data.push([]),this._reset(),this._strokeUpdate(e),"function"==typeof this.onBegin&&this.onBegin(e)},xv.prototype._strokeUpdate=function(e){var t=this._createPoint(e.clientX,e.clientY),n=this._data[this._data.length-1],a=n&&n[n.length-1],r=a&&t.distanceTo(a)<this.minDistance;if(!a||!r){var i=this._addPoint(t),o=i.curve,s=i.widths;o&&s&&this._drawCurve(o,s.start,s.end),this._data[this._data.length-1].push({x:t.x,y:t.y,time:t.time,color:this.penColor})}},xv.prototype._strokeEnd=function(e){var t=this.points[0];if(!(this.points.length>2)&&t&&this._drawDot(t),t){var n=this._data[this._data.length-1];t.equals(n[n.length-1])||n.push({x:t.x,y:t.y,time:t.time,color:this.penColor})}"function"==typeof this.onEnd&&this.onEnd(e)},xv.prototype._handleMouseEvents=function(){this._mouseButtonDown=!1,this._canvas.addEventListener("mousedown",this._handleMouseDown),this._canvas.addEventListener("mousemove",this._handleMouseMove),document.addEventListener("mouseup",this._handleMouseUp)},xv.prototype._handleTouchEvents=function(){this._canvas.style.msTouchAction="none",this._canvas.style.touchAction="none",this._canvas.addEventListener("touchstart",this._handleTouchStart),this._canvas.addEventListener("touchmove",this._handleTouchMove),this._canvas.addEventListener("touchend",this._handleTouchEnd)},xv.prototype._reset=function(){this.points=[],this._lastVelocity=0,this._lastWidth=(this.minWidth+this.maxWidth)/2,this._ctx.fillStyle=this.penColor},xv.prototype._createPoint=function(e,t,n){var a=this._canvas.getBoundingClientRect();return new bv(e-a.left,t-a.top,n||(new Date).getTime())},xv.prototype._addPoint=function(e){var t=this.points,n=void 0;if(t.push(e),t.length>2){3===t.length&&t.unshift(t[0]);var a=(n=this._calculateCurveControlPoints(t[0],t[1],t[2])).c2;n=this._calculateCurveControlPoints(t[1],t[2],t[3]);var r=new wv(t[1],a,n.c1,t[2]),i=this._calculateCurveWidths(r);return t.shift(),{curve:r,widths:i}}return{}},xv.prototype._calculateCurveControlPoints=function(e,t,n){var a=e.x-t.x,r=e.y-t.y,i=t.x-n.x,o=t.y-n.y,s=(e.x+t.x)/2,l=(e.y+t.y)/2,c=(t.x+n.x)/2,u=(t.y+n.y)/2,d=Math.sqrt(a*a+r*r),h=Math.sqrt(i*i+o*o),f=h/(d+h),p=t.x-(c+(s-c)*f),m=t.y-(u+(l-u)*f);return{c1:new bv(s+p,l+m),c2:new bv(c+p,u+m)}},xv.prototype._calculateCurveWidths=function(e){var t={start:null,end:null},n=this.velocityFilterWeight*e.endPoint.velocityFrom(e.startPoint)+(1-this.velocityFilterWeight)*this._lastVelocity,a=this._strokeWidth(n);return t.start=this._lastWidth,t.end=a,this._lastVelocity=n,this._lastWidth=a,t},xv.prototype._strokeWidth=function(e){return Math.max(this.maxWidth/(e+1),this.minWidth)},xv.prototype._drawPoint=function(e,t,n){var a=this._ctx;a.moveTo(e,t),a.arc(e,t,n,0,2*Math.PI,!1),this._isEmpty=!1},xv.prototype._drawCurve=function(e,t,n){var a=this._ctx,r=n-t,i=Math.floor(e.length());a.beginPath();for(var o=0;o<i;o+=1){var s=o/i,l=s*s,c=l*s,u=1-s,d=u*u,h=d*u,f=h*e.startPoint.x;f+=3*d*s*e.control1.x,f+=3*u*l*e.control2.x;var p=h*e.startPoint.y;p+=3*d*s*e.control1.y,p+=3*u*l*e.control2.y,this._drawPoint(f+=c*e.endPoint.x,p+=c*e.endPoint.y,t+c*r)}a.closePath(),a.fill()},xv.prototype._drawDot=function(e){var t=this._ctx,n="function"==typeof this.dotSize?this.dotSize():this.dotSize;t.beginPath(),this._drawPoint(e.x,e.y,n),t.closePath(),t.fill()},xv.prototype._fromData=function(e,t,n){for(var a=0;a<e.length;a+=1){var r=e[a];if(r.length>1)for(var i=0;i<r.length;i+=1){var o=r[i],s=new bv(o.x,o.y,o.time),l=o.color;if(0===i)this.penColor=l,this._reset(),this._addPoint(s);else if(i!==r.length-1){var c=this._addPoint(s),u=c.curve,d=c.widths;u&&d&&t(u,d,l)}}else this._reset(),n(r[0])}},xv.prototype._toSVG=function(){var e=this,t=this._data,n=this._canvas,a=Math.max(window.devicePixelRatio||1,1),r=n.width/a,i=n.height/a,o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.setAttributeNS(null,"width",n.width),o.setAttributeNS(null,"height",n.height),this._fromData(t,(function(e,t,n){var a=document.createElement("path");if(!(isNaN(e.control1.x)||isNaN(e.control1.y)||isNaN(e.control2.x)||isNaN(e.control2.y))){var r="M "+e.startPoint.x.toFixed(3)+","+e.startPoint.y.toFixed(3)+" C "+e.control1.x.toFixed(3)+","+e.control1.y.toFixed(3)+" "+e.control2.x.toFixed(3)+","+e.control2.y.toFixed(3)+" "+e.endPoint.x.toFixed(3)+","+e.endPoint.y.toFixed(3);a.setAttribute("d",r),a.setAttribute("stroke-width",(2.25*t.end).toFixed(3)),a.setAttribute("stroke",n),a.setAttribute("fill","none"),a.setAttribute("stroke-linecap","round"),o.appendChild(a)}}),(function(t){var n=document.createElement("circle"),a="function"==typeof e.dotSize?e.dotSize():e.dotSize;n.setAttribute("r",a),n.setAttribute("cx",t.x),n.setAttribute("cy",t.y),n.setAttribute("fill",t.color),o.appendChild(n)}));var s='<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 '+r+" "+i+'" width="'+r+'" height="'+i+'">',l=o.innerHTML;if(void 0===l){var c=document.createElement("dummy"),u=o.childNodes;c.innerHTML="";for(var d=0;d<u.length;d+=1)c.appendChild(u[d].cloneNode(!0));l=c.innerHTML}return"data:image/svg+xml;base64,"+btoa(s+l+"</svg>")},xv.prototype.fromData=function(e){var t=this;this.clear(),this._fromData(e,(function(e,n){return t._drawCurve(e,n.start,n.end)}),(function(e){return t._drawDot(e)})),this._data=e},xv.prototype.toData=function(){return this._data};var Ev=Object.freeze({__proto__:null,default:xv}),Cv=V((function(e,t){e.exports=function(e){function t(a){if(n[a])return n[a].exports;var r=n[a]={exports:{},id:a,loaded:!1};return e[a].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t){function n(e){var t=e.getContext("2d"),n=e.width,a=e.height,r=t.getImageData(0,0,n,a).data,s=i(!0,n,a,r),l=i(!1,n,a,r),c=o(!0,n,a,r),u=o(!1,n,a,r)-c+1,d=l-s+1,h=t.getImageData(c,s,u,d);return e.width=u,e.height=d,t.clearRect(0,0,u,d),t.putImageData(h,0,0),e}function a(e,t,n,a){return{red:a[4*(n*t+e)],green:a[4*(n*t+e)+1],blue:a[4*(n*t+e)+2],alpha:a[4*(n*t+e)+3]}}function r(e,t,n,r){return a(e,t,n,r).alpha}function i(e,t,n,a){for(var i=e?1:-1,o=e?0:n-1;e?o<n:o>-1;o+=i)for(var s=0;s<t;s++)if(r(s,o,t,a))return o;return null}function o(e,t,n,a){for(var i=e?1:-1,o=e?0:t-1;e?o<t:o>-1;o+=i)for(var s=0;s<n;s++)if(r(o,s,t,a))return o;return null}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n}])}));$(Cv);var kv=function(e){return e&&e.default||e}(Ev),Sv=V((function(e,t){e.exports=function(e,t,n,a){return function(e){function t(a){if(n[a])return n[a].exports;var r=n[a]={exports:{},id:a,loaded:!1};return e[a].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){function a(e){return e&&e.__esModule?e:{default:e}}function r(e,t){var n={};for(var a in e)t.indexOf(a)>=0||Object.prototype.hasOwnProperty.call(e,a)&&(n[a]=e[a]);return n}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},c=function(){function e(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(t,n,a){return n&&e(t.prototype,n),a&&e(t,a),t}}(),u=a(n(1)),d=n(2),h=a(d),f=a(n(3)),p=a(n(4)),m=function(e){function t(){var e,n,a;i(this,t);for(var s=arguments.length,l=Array(s),c=0;c<s;c++)l[c]=arguments[c];return n=a=o(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(l))),a._sigPad=null,a._excludeOurProps=function(){var e=a.props;return r(e,["canvasProps","clearOnResize"])},a.getCanvas=function(){return a._canvas},a.getTrimmedCanvas=function(){var e=document.createElement("canvas");return e.width=a._canvas.width,e.height=a._canvas.height,e.getContext("2d").drawImage(a._canvas,0,0),(0,p.default)(e)},a.getSignaturePad=function(){return a._sigPad},a._checkClearOnResize=function(){a.props.clearOnResize&&a._resizeCanvas()},a._resizeCanvas=function(){var e=a.props.canvasProps||{},t=e.width,n=e.height;if(!t||!n){var r=a._canvas,i=Math.max(window.devicePixelRatio||1,1);t||(r.width=r.offsetWidth*i),n||(r.height=r.offsetHeight*i),r.getContext("2d").scale(i,i),a.clear()}},a.on=function(){return window.addEventListener("resize",a._checkClearOnResize),a._sigPad.on()},a.off=function(){return window.removeEventListener("resize",a._checkClearOnResize),a._sigPad.off()},a.clear=function(){return a._sigPad.clear()},a.isEmpty=function(){return a._sigPad.isEmpty()},a.fromDataURL=function(e,t){return a._sigPad.fromDataURL(e,t)},a.toDataURL=function(e,t){return a._sigPad.toDataURL(e,t)},a.fromData=function(e){return a._sigPad.fromData(e)},a.toData=function(){return a._sigPad.toData()},o(a,n)}return s(t,e),c(t,[{key:"componentDidMount",value:function(){this._sigPad=new f.default(this._canvas,this._excludeOurProps()),this._resizeCanvas(),this.on()}},{key:"componentWillUnmount",value:function(){this.off()}},{key:"componentDidUpdate",value:function(){Object.assign(this._sigPad,this._excludeOurProps())}},{key:"render",value:function(){var e=this;return h.default.createElement("canvas",l({ref:function(t){e._canvas=t}},this.props.canvasProps))}}]),t}(d.Component);m.propTypes={velocityFilterWeight:u.default.number,minWidth:u.default.number,maxWidth:u.default.number,minDistance:u.default.number,dotSize:u.default.oneOfType([u.default.number,u.default.func]),penColor:u.default.string,throttle:u.default.number,onEnd:u.default.func,onBegin:u.default.func,canvasProps:u.default.object,clearOnResize:u.default.bool},m.defaultProps={clearOnResize:!0},t.default=m},function(t,n){t.exports=e},function(e,n){e.exports=t},function(e,t){e.exports=n},function(e,t){e.exports=a}])}(yv,s.default,kv,Cv)})),Tv=$(Sv);function Iv(e){var t,n=null!==(t=e.toDataURL())&&void 0!==t?t:null,a={clickX_simple:[],clickY_simple:[],time_simple:[],pressure:"",fileContent:n?k(n):""};return e.toData().forEach((function(e){var t=[],n=[],r=[];e.forEach((function(e){t.push(e.x),n.push(e.y),r.push(new Date(e.time).toString())})),a.clickX_simple.push(t),a.clickY_simple.push(n),a.time_simple.push(r)})),a}var Rv,Dv,Av,Nv,_v,Fv,Mv,Pv=u.default.div(Rv||(Rv=y(["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n ","\n ","\n ","\n"],["\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n ","\n ","\n ","\n"])),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.background)?"background: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.background,";"):""}),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.backgroundSize)?"background-size: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.backgroundSize,";"):""}),(function(e){var t,n;return(null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.backgroundPosition)?"background-position: ".concat(null===(n=e.theme.signatureCapture)||void 0===n?void 0:n.backgroundPosition,";"):""})),Lv=u.default.div(Dv||(Dv=y(["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"],["\n position: absolute;\n top: 25%;\n left: 15%;\n width: 70%;\n height: 50%;\n\n @media (max-width: 800px) {\n top: 15%;\n left: 2%;\n width: 96%;\n height: 70%;\n }\n"]))),Bv=u.default.div(Av||(Av=y(["\n position: relative;\n background: ",";\n border: ",";\n border-radius: ",";\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"],["\n position: relative;\n background: ",";\n border: ",";\n border-radius: ",";\n flex-grow: 1;\n z-index: 100;\n height: 100%;\n"])),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.background)&&void 0!==a?a:"rgba(255, 255, 255, 0.5)"}),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.border)&&void 0!==a?a:"1px solid #dedede"}),(function(e){var t,n,a;return null!==(a=null===(n=null===(t=e.theme.signatureCapture)||void 0===t?void 0:t.canvas)||void 0===n?void 0:n.borderRadius)&&void 0!==a?a:"16px"})),Ov=u.default(bo)(Nv||(Nv=y(["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"],["\n flex-grow: 0;\n padding-top: 12px;\n display: flex;\n z-index: 1000;\n position: relative;\n"]))),Uv=function(e){var n,a=e.onAccept,r=e.classNames,i=void 0===r?{}:r,o=e.verbiage,l=void 0===o?{}:o,c=De(),u=c.ref,d=c.width,h=c.height,f=t.useRef(null),p=ji(l,{headingText:"Please sign the box below",acceptBtnText:"Accept",clearBtnText:"Clear"});return s.default.createElement(M,{className:i.container},s.default.createElement(Pv,{className:i.inner},s.default.createElement(eo,{className:i.guidanceMessageContainer,$top:"5vh"},s.default.createElement(to,{className:i.guidanceMessage},p.headingText)),s.default.createElement(Lv,{className:i.canvasContainer},s.default.createElement(Bv,{ref:u,className:i.canvasInner},s.default.createElement(Tv,{ref:f,canvasProps:{width:d,height:h,className:i.canvas}})),s.default.createElement(Ov,{className:i.buttonsRow},s.default.createElement(ce,{variant:"secondary",className:i.clearBtn,onClick:null===(n=f.current)||void 0===n?void 0:n.clear,finished:!0},p.clearBtnText),s.default.createElement(jv,{variant:"positive",className:i.acceptBtn,onClick:function(){if(f.current){var e=Iv(f.current);null==a||a(e,f.current.toDataURL())}},finished:!0},p.acceptBtnText)))))},jv=u.default(ce)(_v||(_v=y(["\n margin-left: auto;\n"],["\n margin-left: auto;\n"]))),zv=function(e){var n=t.useRef(null),a=t.useRef([]),r=t.useState(null),i=r[0],o=r[1],s=t.useState(!1),l=s[0],c=s[1],u=null==e?void 0:e.stream,d=t.useCallback((function(){u&&(a.current=[],c(!0),n.current=new MediaRecorder(u),n.current.ondataavailable=function(e){a.current.push(e.data)},n.current.onstop=function(){var t=new Blob(a.current,{type:"video/mp4"});a.current=[],o(URL.createObjectURL(t)),c(!1),null==e||e.release()},n.current.start())}),[e,u]),h=t.useCallback((function(){var e;null===(e=n.current)||void 0===e||e.stop()}),[]);return{isRecording:l,startRecording:d,stopRecording:h,videoUrl:i}},Gv=function(e){var n,a,r,i,o=e.onVideoCaptured,l=e.onFaceNotDetected,c=e.onExit,u=e.classNames,d=void 0===u?{}:u,h=e.colors,f=void 0===h?{}:h,p=e.verbiage,y=void 0===p?{}:p,b=e.debugMode,w=void 0!==b&&b,x=t.useContext(dt),E=x.cameraRef,C=x.videoRef,k=De(),S=k.ref,T=k.width,I=k.height,R=t.useRef(null),D=t.useRef(null),A=t.useRef([]),N=t.useState(null),_=N[0],F=N[1],P=t.useContext(hg).onPredictionMade,L=zv(E.current),B=L.isRecording,O=L.startRecording,U=L.stopRecording,j=L.videoUrl,z=t.useState(null),G=z[0],$=z[1],V=t.useState(null),q=V[0],W=V[1],H=t.useState(null),K=H[0],Y=H[1];f.guidanceMessageBackgroundColor||(f.guidanceMessageBackgroundColor="#ccc"),f.guidanceMessageTextColor||(f.guidanceMessageTextColor="black");var X=ji(y,{guidanceMessageText:"Please sign the box below",acceptBtnText:"Accept",clearBtnText:"Clear"}),J=t.useRef(null);t.useEffect((function(){setTimeout((function(){if(!B&&!j&&J.current){O();var e=J.current.captureStream(25);D.current=new MediaRecorder(e,{}),D.current.start(),D.current.ondataavailable=function(e){var t;A.current.push(e.data),"recording"===(null===(t=D.current)||void 0===t?void 0:t.state)&&D.current.stop()},D.current.onstop=function(){var e=new Blob(A.current,{type:"video/mp4"});Y(e);var t=URL.createObjectURL(e);F(t)}}}),100)}),[B,O,j]),t.useEffect((function(){K&&G&&q&&(null==o||o(K,G,q))}),[o,G,q,K]);var Z=t.useRef(0);t.useEffect((function(){var e;if(R.current&&C.current&&J.current&&E.current&&B){var t=[E.current.width,E.current.height],n=t[0],a=t[1],r=window.innerWidth<window.innerHeight;r&&n>a&&(n=(e=[a,n])[0],a=e[1]),J.current.width=n,J.current.height=a;var i=J.current.getContext("2d");if(i)return Z.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){var t;return g(this,(function(o){return R.current&&C.current&&J.current?(t=[n*(r?.02:.15),a*(r?.15:.25),n*(r?.96:.7),a*(r?.7:.5)],i.drawImage(C.current,0,0,n,a),i.beginPath(),i.fillStyle="rgba(255,255,255,0.5)",i.roundRect.apply(i,v(v([],t,!1),[16],!1)),i.fill(),i.drawImage.apply(i,v([R.current.getCanvas()],t,!1)),Z.current=requestAnimationFrame(e),[2]):(cancelAnimationFrame(Z.current),[2])}))}))})),function(){cancelAnimationFrame(Z.current)}}}),[E,B,l,C]);var Q=t.useState(0),ee=Q[0],te=Q[1];if(t.useEffect((function(){P((function(e){te((function(t){return 0===e.length?t+1:0}))}))}),[P]),t.useEffect((function(){ee>=2&&(null==l||l())}),[ee,l]),!B&&j)return s.default.createElement(s.default.Fragment,null,_&&s.default.createElement("video",{src:_,controls:!0,width:"100%"}),q&&s.default.createElement("img",{src:q,alt:"signature"}),G&&s.default.createElement("textarea",{readOnly:!0,style:{width:"100%",height:500},value:JSON.stringify(G,null,2)}));return s.default.createElement(M,{className:"flex ".concat(null!==(n=d.container)&&void 0!==n?n:"")},s.default.createElement(Eo,{className:d.cameraFeed}),X.guidanceMessageText&&s.default.createElement(eo,{$top:"5vh",className:d.guidanceMessageContainer},s.default.createElement(to,{className:d.guidanceMessage,$background:f.guidanceMessageBackgroundColor,$textColor:f.guidanceMessageTextColor},X.guidanceMessageText)),s.default.createElement(Lv,{className:d.canvasContainer},s.default.createElement(Bv,{ref:S,className:d.canvasInner},s.default.createElement(Tv,{ref:R,canvasProps:{width:T,height:I,className:d.canvas}})),s.default.createElement(Ov,{className:d.buttonsRow},s.default.createElement(ce,{variant:"secondary",className:d.clearBtn,onClick:null===(a=R.current)||void 0===a?void 0:a.clear,finished:!0},X.clearBtnText),s.default.createElement($v,{variant:"positive",className:d.acceptBtn,style:{marginLeft:"auto"},onClick:function(){var e;if(R.current){var t=Iv(R.current);$(t),W(R.current.toDataURL()),U(),null===(e=D.current)||void 0===e||e.stop()}},finished:!0},X.acceptBtnText))),w&&s.default.createElement(sr,null,"Video: ",null===(r=E.current)||void 0===r?void 0:r.width,"x",null===(i=E.current)||void 0===i?void 0:i.height),s.default.createElement(Er,{onClick:c,className:d.exitCaptureBtn}),s.default.createElement("div",{style:{display:"none"}},s.default.createElement("canvas",{ref:J})))},$v=u.default(ce)(Fv||(Fv=y(["\n margin-left: auto;\n"],["\n margin-left: auto;\n"]))),Vv=function(e){var t=e.videoUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=ji(void 0===c?{}:c,{headingText:"Video signature has been successfully captured!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(U,{className:i.container},s.default.createElement(j,{className:i.inner},s.default.createElement("h1",null,u.headingText),s.default.createElement(z,{className:i.videoContainer},s.default.createElement(qv,{className:i.video,src:t,poster:t+"#t=0.1",controls:!0,preload:"metadata",autoPlay:!0})),s.default.createElement(bo,{className:i.buttonsRow},s.default.createElement(ce,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},u.retryBtnText),s.default.createElement(ce,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},u.doneBtnText))))},qv=u.default.video(Mv||(Mv=y(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"],["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"]))),Wv=function(e){var n=e.onComplete,a=e.onVideoCaptured,r=e.onRetryClicked,i=e.onExitCapture,o=e.skipSuccessScreen,l=void 0!==o&&o,c=e.assets,u=void 0===c?{}:c,d=e.classNames,h=void 0===d?{}:d,f=e.colors,p=void 0===f?{}:f,v=e.verbiage,y=void 0===v?{}:v,b=e.debugMode,w=void 0!==b&&b,x=t.useContext(Ce),E=x.selfieImage,k=x.signatureVideoUrl,S=x.setSelfieImage,T=x.setSignatureData,I=x.setSignatureVideoUrl,R=x.logSelfieCaptureAttempt,D=t.useState("LOADING"),A=D[0],N=D[1],_=t.useRef(),F=t.useRef(),M=t.useRef();t.useEffect((function(){_.current=new Date}),[]),t.useEffect((function(){"CHECKING_LIVENESS"===A&&(F.current=new Date)}),[A]);var P=t.useCallback((function(){var e,t,n;R({autoCapture:"Y",captureTime:(null!==(e=M.current)&&void 0!==e?e:new Date).getTime()-(null!==(t=F.current)&&void 0!==t?t:new Date).getTime(),operationTime:(new Date).getTime()-(null!==(n=_.current)&&void 0!==n?n:new Date).getTime()}),_.current=new Date}),[R]),L=t.useCallback((function(){N("CHECKING_LIVENESS")}),[]),B=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){var t;return g(this,(function(n){switch(n.label){case 0:return N("CAPTURING_SIGNATURE"),P(),E?[3,2]:(t=S,[4,C(e)]);case 1:t.apply(void 0,[n.sent()]),n.label=2;case 2:return[2]}}))}))}),[P,E,S]),O=t.useCallback((function(e,t,n){T(t),I(URL.createObjectURL(e)),N("SUCCESS"),null==a||a(e,t,n)}),[a,T,I]),U=t.useCallback((function(){N("CHECKING_LIVENESS")}),[]),j=t.useState(0),z=j[0],G=j[1],$=t.useCallback((function(){G((function(e){return e+1})),N("LOADING"),null==i||i()}),[i]),V=t.useCallback((function(){null==r||r(),$()}),[$,r]),q=ko(l,"SUCCESS"===A,n);return s.default.createElement(fg,{throttleMs:"CAPTURING_SIGNATURE"===A?250:0},"LOADING"!==A&&function(){switch(A){case"CHECKING_LIVENESS":return s.default.createElement(Tg,{onSuccess:B,onExit:$,classNames:h.faceLiveness,colors:p.faceLiveness,verbiage:y.faceLiveness,debugMode:w});case"CAPTURING_SIGNATURE":return s.default.createElement(Gv,{onVideoCaptured:O,onFaceNotDetected:U,onExit:$,classNames:h,colors:p,verbiage:y,debugMode:w});case"SUCCESS":if(!q)return;return s.default.createElement(Vv,{videoUrl:null!=k?k:"",onDoneClick:n,onRetryClick:V,classNames:h.success,colors:p.success,verbiage:y.success});default:return null}}(),s.default.createElement(Ig,{key:z,assets:u.loadingOverlay,classNames:h.loadingOverlay,verbiage:y.loadingOverlay,onDismissed:L}))},Hv=function(e){var n,a=e.imageWidth,r=e.imageHeight,i=e.style,o=void 0===i?{}:i,l=e.assets,c=void 0===l?{}:l,u=e.verbiage,d=void 0===u?{}:u,h=De(),f=h.ref,m=h.width,g=void 0===m?1:m,v=h.height,y=void 0===v?1:v,b=t.useContext(dt).cameraRef;c.frontImageUrl||(c.frontImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),c.backImageUrl||(c.backImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var w,x=Ui(d.instructionText,"Please flip your ID card..."),E=!(null===(n=b.current)||void 0===n?void 0:n.isRearFacing),C=t.useCallback((function(){}),[]);w={width:g-0-8};var k=t.useState(1),S=k[0],T=k[1],I=t.useState(0),R=I[0],D=I[1],A=["rotateY(".concat(R,"deg)")];E&&A.push("scaleX(-1)");var N=["rotateY(".concat(180-R,"deg)")];return E&&N.push("scaleX(-1)"),t.useEffect((function(){var e=function(){T(1),D(180),setTimeout((function(){T(0),D(0)}),1500)};setTimeout(e,250);var t=setInterval(e,2500);return function(){clearInterval(t)}}),[]),s.default.createElement("div",{ref:f,style:p(p({},o),{position:"relative"})},s.default.createElement("div",{style:{display:"flex",flexFlow:"column nowrap",height:"100%"}},s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12}},x)),s.default.createElement("div",{style:{position:"relative",display:"flex",flexFlow:"row nowrap",alignItems:"center",justifyItems:"center",maxWidth:"calc(100%)",maxHeight:"calc(100% - ".concat(0,"px - ").concat(8,"px)")}},s.default.createElement("div",{style:{width:"100%",height:"100%",minWidth:0,flexGrow:1}}),s.default.createElement("div",{style:{maxWidth:"calc(100% - ".concat(0,"px - ").concat(8,"px)"),maxHeight:y-0-8}},s.default.createElement("div",{style:{position:"relative",border:"".concat(4,"px solid ").concat("white")}},s.default.createElement("img",{src:c.frontImageUrl,alt:"",width:a,height:r,onLoad:C,style:p({backfaceVisibility:"hidden",transition:"transform ".concat(S,"s"),transform:A.join(" "),transformStyle:"preserve-3d",position:"relative",top:0,left:0,display:"block"},w)}),s.default.createElement("img",{src:c.backImageUrl,alt:"",style:p({backfaceVisibility:"hidden",transition:"transform ".concat(S,"s"),transform:N.join(" "),transformStyle:"preserve-3d",position:"absolute",top:0,left:0,display:"block"},w)}))),s.default.createElement("div",{style:{width:"100%",height:"100%",minWidth:0,flexGrow:1}})),s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12,opacity:0}},x))))},Kv=function(e){var n=e.requestedAction,a=void 0===n?"SHOW_ID_FRONT":n,r=e.borderWidth,i=void 0===r?3:r,o=e.borderColor,l=void 0===o?"white":o,c=e.assets,u=void 0===c?{}:c,d=e.verbiage,h=void 0===d?{}:d,f=t.useRef(null),p=t.useState(0),m=p[0],g=p[1],v=t.useState(0),y=v[0],b=v[1];u.frontImageUrl||(u.frontImageUrl="".concat(Ga,"/Shieldout-IDCard-Front-SVG-Landscape-2.svg")),u.backImageUrl||(u.backImageUrl="".concat(Ga,"/Shieldout-IDCard-Back-SVG-Landscape-2.svg"));var w=ji(h,{idFrontInstructionText:"Display the front of your ID card...",idBackInstructionText:"Display the back of your ID card..."}),x="SHOW_ID_FRONT"===a?w.idFrontInstructionText:w.idBackInstructionText,E=window.innerWidth>window.innerHeight?"30%":"75%";return s.default.createElement(s.default.Fragment,null,s.default.createElement("div",{style:{position:"absolute",zIndex:1e3,width:"100%",height:"100%",display:"flex",flexDirection:"column"}},s.default.createElement("div",{style:{borderWidth:i,borderColor:l,borderStyle:"solid",borderRadius:"50%",aspectRatio:"1 / 1.618",height:"100%",margin:"4% auto auto"}}),"FLIP_ID"===a?s.default.createElement(Hv,{assets:u,verbiage:{instructionText:w.flipIdInstructionText},imageWidth:m,imageHeight:y,style:{width:E,margin:"2% auto 2%"}}):s.default.createElement("div",{style:{width:E,margin:"2% auto 2%",display:"flex",flexFlow:"column nowrap"}},s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12}},x)),s.default.createElement("div",{style:{border:"4px solid ".concat(l)}},s.default.createElement("img",{ref:f,src:"SHOW_ID_BACK"===a?u.backImageUrl:u.frontImageUrl,alt:"",style:{width:"100%"},onLoad:function(){var e,t,n,a;m||g(null!==(t=null===(e=f.current)||void 0===e?void 0:e.width)&&void 0!==t?t:0),y||b(null!==(a=null===(n=f.current)||void 0===n?void 0:n.height)&&void 0!==a?a:0)}})),s.default.createElement("div",{style:{width:"100%",height:"100%",flexGrow:1,textAlign:"center",color:"white",display:"flex",flexDirection:"column",justifyContent:"end"}},s.default.createElement("span",{style:{alignContent:"center",marginTop:12,marginBottom:12,opacity:0}},x)))))},Yv=function(e){var n,a,r,i,o,l,c=e.onComplete,u=e.onIdFrontImageCaptured,d=e.onIdBackImageCaptured,h=e.onFaceNotDetected,f=e.idCardFrontDetectionThreshold,p=void 0===f?.48:f,v=e.idCardFrontFocusThreshold,y=void 0===v?.15:v,b=e.goodIdCardFrontFramesThreshold,w=void 0===b?3:b,x=e.showIdCardBackDurationMs,E=void 0===x?5e3:x,C=e.skipShowIdCardBack,k=void 0!==C&&C,S=e.readTextPrompt,T=e.readTextTimeoutDurationMs,I=void 0===T?15e3:T,R=e.assets,D=void 0===R?{}:R,A=e.colors,N=void 0===A?{}:A,_=e.verbiage,F=void 0===_?{}:_,P=e.debugMode,L=void 0!==P&&P,B=De(),O=B.ref,U=B.width,j=void 0===U?1:U,z=B.height,G=void 0===z?1:z,$=t.useContext(dt),V=$.cameraRef,q=$.videoRef,W=$.videoLoaded,H=$.cameraReady,K=t.useState([]),Y=K[0],X=K[1],J=t.useState([]),Z=J[0],Q=J[1],ee=t.useContext(Xa),te=ee.ready,ne=ee.working,ae=ee.makePrediction,re=ee.onPredictionMade,ie=ee.setThresholds,oe=t.useContext(hg).onPredictionMade,se=zv(V.current),le=se.isRecording,ue=se.startRecording,de=se.stopRecording,he=se.videoUrl;t.useEffect((function(){le||he||ue(),he&&(null==c||c(he))}),[le,c,ue,he]);var fe=t.useRef(0),pe=t.useRef(!1);t.useEffect((function(){pe.current=W&&H&&te}),[H,te,W]);var me=t.useState("SHOW_ID_FRONT"),ge=me[0],ve=me[1];t.useEffect((function(){if("SHOW_ID_FRONT"===ge&&te&&H&&W)return fe.current=requestAnimationFrame((function e(){return m(this,void 0,void 0,(function(){return g(this,(function(t){return pe.current&&!ne.current&&q.current&&ae(q.current),fe.current=requestAnimationFrame(e),[2]}))}))})),function(){cancelAnimationFrame(fe.current)}}),[H,te,ne,ae,ge,W,q]),t.useEffect((function(){ie({document:p,passport:1,focus:y})}),[p,y,ie]);var ye=t.useState(0),be=ye[0],we=ye[1],xe=be>=w;t.useEffect((function(){re((function(e){X(e.detectedObjects),we(e.detectionThresholdMet&&e.focusThresholdMet?function(e){return e+1}:0)}))}),[p,re]);var Ee=t.useRef(null),Ce=t.useCallback((function(){if(Ee.current&&q.current){Wa(Ee.current,q.current);var e=Ee.current.toDataURL("image/jpeg",.98);return Ha(Ee.current),e}}),[q]),ke=t.useCallback((function(){S?ve("READ_TEXT"):de()}),[S,de]);t.useEffect((function(){m(void 0,void 0,void 0,(function(){var e;return g(this,(function(t){switch(t.label){case 0:return xe&&"SHOW_ID_FRONT"==ge?(u&&(console.log("capturing front frame!"),e=Ce(),console.log(e),e&&u(e)),k?!0!==k?[3,1]:[2,ke()]:[3,3]):[3,4];case 1:return[4,k()];case 2:if(t.sent())return[2,ke()];t.label=3;case 3:ve("FLIP_ID"),setTimeout((function(){ve("SHOW_ID_BACK"),setTimeout((function(){if(d){console.log("capturing rear frame!");var e=Ce();console.log(e),e&&d(e)}}),E-1e3)}),3500),t.label=4;case 4:return[2]}}))}))}),[Ce,xe,ke,d,u,ge,E,k]),pg(E,ke,"SHOW_ID_BACK"!==ge,!1,"SHOW_ID_BACK"===ge);var Se=t.useCallback((function(){de()}),[de]),Te=pg(I,Se,"READ_TEXT"!==ge,!1,"READ_TEXT"===ge).timeoutStartedAt,Ie=t.useState(0),Re=Ie[0],Ae=Ie[1];t.useEffect((function(){oe((function(e){Q(e),Ae((function(t){return 0===e.length?t+1:0}))}))}),[oe]),t.useEffect((function(){Re>=2&&(null==h||h())}),[Re,h]),N.guidesSatisfiedColor||(N.guidesSatisfiedColor="green"),N.guidesUnsatisfiedColor||(N.guidesUnsatisfiedColor="white");var Ne=ji(F,{readTextHeading:"Please read the following text aloud",readTextDoneBtnText:"Done"});S=Ui(S,"");var _e=dr({enabled:L,pageWidth:j,pageHeight:G,videoWidth:null!==(a=null===(n=q.current)||void 0===n?void 0:n.videoWidth)&&void 0!==a?a:0,videoHeight:null!==(i=null===(r=q.current)||void 0===r?void 0:r.videoHeight)&&void 0!==i?i:0}),Fe=function(e){var t=e%1e3;e=(e-t)/1e3;var n=e%60;e=(e-n)/60;var a=e%60;return a+":"+("00"+(n+=1)).slice(-2)}(Math.max(0,I-((new Date).getTime()-(null!=Te?Te:new Date).getTime()))),Me="SHOW_ID_BACK"===ge||be>0;return s.default.createElement(M,{ref:O,className:"flex"},s.default.createElement(Eo,null),s.default.createElement(qa,{ref:Ee}),"READ_TEXT"===ge?s.default.createElement("div",{style:{position:"absolute",width:"100%",height:"100%",top:0,left:0,display:"flex",flexDirection:"column"}},s.default.createElement("div",{style:{margin:"auto auto 32px",background:"rgba(255,255,255,0.5)",borderRadius:8,padding:20,fontWeight:"bold"}},Ne.readTextHeading),s.default.createElement("div",{style:{margin:"0 auto",textAlign:"center",background:"rgba(255,255,255,0.5)",borderRadius:8,padding:50,fontSize:24,maxWidth:window.innerWidth>window.innerHeight?"40%":"90%"}},S),s.default.createElement("div",{style:{display:"flex",margin:"32px auto auto",gap:20}},s.default.createElement("div",{style:{background:"rgba(255,255,255,0.5)",borderRadius:4,padding:20}},Fe),s.default.createElement(ce,{variant:"positive",onClick:de,colors:N.readTextDoneBtn,finished:!0},Ne.readTextDoneBtnText))):s.default.createElement(s.default.Fragment,null,s.default.createElement(Kv,{assets:D.guides,verbiage:F.guides,requestedAction:ge,borderColor:Me?N.guidesSatisfiedColor:N.guidesUnsatisfiedColor}),L&&"SHOW_ID_FRONT"===ge&&s.default.createElement(s.default.Fragment,null,s.default.createElement(lr,{$flipX:!(null===(o=V.current)||void 0===o?void 0:o.isRearFacing)},Y.map((function(e,t){var n;return s.default.createElement(hr,{key:t,obj:e,scaling:_e,color:"blue",flipX:!(null===(n=V.current)||void 0===n?void 0:n.isRearFacing)})}))),s.default.createElement(lr,{$flipX:!(null===(l=V.current)||void 0===l?void 0:l.isRearFacing)},Z.map((function(e,t){var n;return s.default.createElement(fr,{key:t,face:e,scaling:_e,flipX:!(null===(n=V.current)||void 0===n?void 0:n.isRearFacing)})}))))),L&&s.default.createElement(sr,null,V.current?s.default.createElement(s.default.Fragment,null,"✅ Camera: ",V.current.label," (",V.current.width,"x",V.current.height,")"):"❌ Camera not ready",s.default.createElement("br",null),le?"✅ Recording":"❌ Not recording",s.default.createElement("br",null),xe?"✅":"❌"," Good Frame Count:"," ",be,"/",w))};var Xv,Jv,Zv,Qv,ey,ty,ny,ay,ry,iy,oy,sy,ly,cy=function(e){var t=e.videoUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.colors,i=void 0===r?{}:r,o=e.verbiage,l=ji(void 0===o?{}:o,{headingText:"Video ID has been successfully captured!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(U,null,s.default.createElement(j,null,s.default.createElement("h1",null,l.headingText),s.default.createElement(z,null,s.default.createElement(uy,{src:t,poster:t+"#t=0.1",controls:!0,preload:"metadata",autoPlay:!0})),s.default.createElement(bo,null,s.default.createElement(ce,{variant:"warning",onClick:a,colors:i.retryBtn,finished:!0},l.retryBtnText),s.default.createElement(ce,{variant:"positive",onClick:n,colors:i.doneBtn,finished:!0},l.doneBtnText))))},uy=u.default.video(Xv||(Xv=y(["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"],["\n margin-left: auto;\n margin-right: auto;\n max-width: 100%;\n"]))),dy=function(e){var n,a,r,i,o=e.onComplete,l=e.onExitCapture,c=e.onExitAfterFailure,u=e.idCaptureProps,d=void 0===u?{}:u,h=e.faceLivenessProps,f=void 0===h?{}:h,v=e.idCardFrontDetectionThreshold,y=e.idCardFrontFocusThreshold,b=e.goodIdCardFrontFramesThreshold,x=e.showIdCardBackDurationMs,E=e.readTextPrompt,C=e.readTextTimeoutDurationMs,k=e.skipIdCapture,S=void 0!==k&&k,T=e.skipShowIdCardBack,I=void 0!==T&&T,R=e.assets,D=void 0===R?{}:R,A=e.classNames,N=void 0===A?{}:A,_=e.colors,F=void 0===_?{}:_,P=e.verbiage,L=void 0===P?{}:P,B=e.debugMode,O=void 0!==B&&B,U=t.useContext(Ce),j=U.submissionStatus,z=U.idCaptureVideoUrl,G=U.setIdCaptureVideoUrl,$=U.setIdCaptureVideoIdFrontImage,V=U.setIdCaptureVideoIdBackImage,q=t.useState("CAPTURING_ID"),W=q[0],H=q[1];t.useEffect((function(){S&&"CAPTURING_ID"===W&&H("CHECKING_LIVENESS")}),[W,S]);var K=d.onSuccess,Y=t.useCallback((function(e){null==K||K(e),H("CHECKING_LIVENESS")}),[K]),X=t.useCallback((function(){return m(void 0,void 0,void 0,(function(){return g(this,(function(e){return H("CAPTURING_VIDEO"),[2]}))}))}),[]),J=t.useCallback((function(e){return m(void 0,void 0,void 0,(function(){return g(this,(function(t){return G(e),H("SUCCESS"),[2]}))}))}),[G]),Z=t.useCallback((function(){H("CHECKING_LIVENESS")}),[]),Q=t.useState(0),ee=Q[0],te=Q[1],ne=null!=c?c:f.onExitAfterFailure,ae=t.useCallback((function(e,t){null==ne||ne(e,t),te((function(e){return e+1})),H("CAPTURING_ID")}),[ne]),re=t.useCallback((function(){te((function(e){return e+1})),H("CAPTURING_ID")}),[]),ie=["LOADING","CAPTURING_ID"].includes(W);return t.useEffect((function(){j===w.SUBMITTING&&lt()}),[j]),j===w.SUBMITTING?s.default.createElement(M,{className:"flex"},s.default.createElement(Cr,null)):s.default.createElement(Qa,{documentDetectionModelUrl:null!==(a=null===(n=d.assets)||void 0===n?void 0:n.documentDetectionModelUrl)&&void 0!==a?a:"",focusModelUrl:null!==(i=null===(r=d.assets)||void 0===r?void 0:r.focusModelUrl)&&void 0!==i?i:"",logPredictions:O},s.default.createElement(ht,{key:ie?"id-camera":"selfie-camera",preferContinuityCamera:ie,preferFrontFacingCamera:!ie,requestMicrophoneAccess:!ie&&!!E},s.default.createElement(fg,null,function(){switch(W){case"CAPTURING_ID":return s.default.createElement(Pg,null,s.default.createElement($o,p({key:"id-capture-".concat(ee)},d,{assets:D.idCapture,classNames:N.idCapture,colors:F.idCapture,verbiage:L.idCapture,onSuccess:Y,onExitCapture:l,skipSuccessScreen:!0,releaseCameraAccessOnExit:!1,debugMode:O})));case"CHECKING_LIVENESS":return s.default.createElement(Mg,p({key:"face-liveness-".concat(ee)},f,{onComplete:X,onExitCapture:l,onExitAfterFailure:ae,skipSuccessScreen:!0,releaseCameraAccessOnExit:!1,assets:D.faceLiveness,classNames:N.faceLiveness,colors:F.faceLiveness,verbiage:L.faceLiveness,debugMode:O}));case"CAPTURING_VIDEO":return s.default.createElement(Yv,{key:"id-video-capture-".concat(ee),onComplete:J,onIdFrontImageCaptured:$,onIdBackImageCaptured:V,onFaceNotDetected:Z,idCardFrontDetectionThreshold:v,idCardFrontFocusThreshold:y,goodIdCardFrontFramesThreshold:b,showIdCardBackDurationMs:x,skipShowIdCardBack:I,readTextPrompt:E,readTextTimeoutDurationMs:C,assets:D.idVideoCapture,colors:F.idVideoCapture,verbiage:L.idVideoCapture,debugMode:O});case"SUCCESS":return s.default.createElement(cy,{videoUrl:null!=z?z:"",onDoneClick:o,onRetryClick:re,colors:F.success,verbiage:L.success});default:return s.default.createElement(s.default.Fragment,null)}}())))},hy=function(e){var n,a,r,i,o,l=e.checks,c=e.idCaptureProps,u=void 0===c?{}:c,d=e.faceLivenessProps,h=void 0===d?{}:d,f=e.additionalDocumentCaptureProps,m=e.signatureCaptureProps,g=void 0===m?{}:m,y=e.videoSignatureCaptureProps,b=void 0===y?{}:y,x=e.videoIdCaptureProps,E=void 0===x?{}:x,C=e.captureSignature,k=void 0!==C&&C,S=e.captureSignatureVideo,T=void 0!==S&&S,I=e.debugMode,R=void 0!==I&&I,D=t.useContext(Ce),A=D.submit,N=D.submissionStatus,_=D.setSignatureData,F=D.setAdditionalDocuments,P=t.useState(0),L=P[0],B=P[1],O=t.useMemo((function(){var e,t,n=v([],l,!0);if(k&&T)throw new Error("captureSignature and captureSignatureVideo cannot be used together");return k&&n.push("SignatureCapture"),T&&(n.push("VideoSignatureCapture"),n.includes("FaceLiveness")&&n.splice(n.indexOf("FaceLiveness"),1)),null!==(t=null===(e=null==f?void 0:f.documents)||void 0===e?void 0:e.length)&&void 0!==t&&t&&n.push("AdditionalDocumentCapture"),n}),[null===(n=null==f?void 0:f.documents)||void 0===n?void 0:n.length,k,T,l]),U=O[L],j=L>=O.length;t.useEffect((function(){"SignatureCapture"===U&&"function"==typeof k?k().then((function(e){e||B((function(e){return e+1}))})):"VideoSignatureCapture"===U&&"function"==typeof T&&T().then((function(e){e||B((function(e){return e+1}))}))}),[k,T,U]),t.useEffect((function(){j&&A()}),[j,A]);var z=u.onSuccess,G=t.useCallback((function(e){null==z||z(e),B((function(e){return e+1}))}),[z]),$=E.onComplete,V=t.useCallback((function(){null==$||$(),B((function(e){return e+1}))}),[$]),q=h.onComplete,W=t.useCallback((function(e,t){null==q||q(e,t),B((function(e){return e+1}))}),[q]),H=t.useCallback((function(e){_(e),B((function(e){return e+1}))}),[_]),K=b.onComplete,Y=t.useCallback((function(){null==K||K(),B((function(e){return e+1}))}),[K]),X=t.useState(0),J=X[0],Z=X[1],Q=b.onRetryClicked,ee=t.useCallback((function(){null==Q||Q(),Z((function(e){return e+1}))}),[Q]),te=null==f?void 0:f.onComplete,ne=t.useCallback((function(e){F(e),null==te||te(e),B((function(e){return e+1}))}),[te,F]),ae=t.useMemo((function(){var e;return null!==(e=null==f?void 0:f.documents)&&void 0!==e?e:[]}),[null==f?void 0:f.documents]);if(j)switch(N){case w.SUBMITTING:return s.default.createElement(M,{className:"flex"},s.default.createElement(Cr,null));case w.SUBMITTED:return s.default.createElement(Lg,null);case w.FAILED:return s.default.createElement(s.default.Fragment,null,"Submission failed!");default:return s.default.createElement(s.default.Fragment,null,"Complete!!")}switch(O[L]){case"IdCapture":return s.default.createElement(Qa,{documentDetectionModelUrl:null!==(r=null===(a=u.assets)||void 0===a?void 0:a.documentDetectionModelUrl)&&void 0!==r?r:"",focusModelUrl:null!==(o=null===(i=u.assets)||void 0===i?void 0:i.focusModelUrl)&&void 0!==o?o:"",logPredictions:R},s.default.createElement(ht,{key:"IdCaptureCamera"},s.default.createElement(Pg,null,s.default.createElement($o,p({},u,{onSuccess:G})))));case"VideoIdCapture":return s.default.createElement(dy,p({},E,{onComplete:V}));case"FaceLiveness":return s.default.createElement(ht,{key:"FaceLivenessCamera",preferFrontFacingCamera:!0,preferContinuityCamera:!1},s.default.createElement(fg,null,s.default.createElement(Mg,p({},h,{onComplete:W}))));case"SignatureCapture":return s.default.createElement(Uv,p({},g,{onAccept:H}));case"VideoSignatureCapture":return s.default.createElement(ht,{key:"SignatureKycCamera-".concat(J),preferContinuityCamera:!1,preferFrontFacingCamera:!0},s.default.createElement(Wv,p({},b,{onComplete:Y,onRetryClicked:ee})));case"AdditionalDocumentCapture":return s.default.createElement(Hg,p({},f,{documents:ae,onComplete:ne}));default:return s.default.createElement(s.default.Fragment,null)}},fy={default:{fontFamily:"Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif",isFullscreen:!0,background:"white",textColor:"black",textAlign:"center",padding:"25px",colors:{primary:{50:"#eef8ff",100:"#d8eeff",200:"#b9e0ff",300:"#89cfff",400:"#52b4ff",500:"#2a91ff",600:"#0d6efd",700:"#0c5ae9",800:"#1149bc",900:"#144194",950:"#11295a"},secondary:{50:"#f6f6f6",100:"#e7e7e7",200:"#d1d1d1",300:"#b0b0b0",400:"#888888",500:"#666666",600:"#5d5d5d",700:"#4f4f4f",800:"#454545",900:"#3d3d3d",950:"#262626"},positive:{50:"#f1fcf9",100:"#cef9eb",200:"#9df2d8",300:"#65e3c2",400:"#35cca9",500:"#1cb090",600:"#16a085",700:"#147160",800:"#155a4f",900:"#164b42",950:"#062d28"},negative:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},warning:{50:"#fdf5ef",100:"#fbe7d9",200:"#f6cdb2",300:"#f0ab81",400:"#ea8557",500:"#e35e2c",600:"#d54621",700:"#b1341d",800:"#8d2b1f",900:"#72261c",950:"#3d100d"}},buttons:{style:"bootstrap",primary:{backgroundColor:"var(--idm-color-primary-600)",textColor:"white"},secondary:{backgroundColor:"var(--idm-color-secondary-500)",textColor:"white"},positive:{backgroundColor:"var(--idm-color-positive-600)",textColor:"white"},negative:{backgroundColor:"var(--idm-color-negative-400)",textColor:"white"},warning:{backgroundColor:"var(--idm-color-warning-400)",textColor:"white"},loading:{backgroundColor:"gray",textColor:"white"}},guidanceMessages:{default:{backgroundColor:"var(--idm-color-secondary-200)",textColor:"black"},positive:{backgroundColor:"var(--idm-color-positive-700)",textColor:"white"},negative:{backgroundColor:"var(--idm-color-negative-600)",textColor:"white"}},idCapture:{guideOverlay:{backgroundColor:"rgba(0,0,0,0.5)",textColor:"white"},guideBox:{unsatisfiedColor:"white",satisfiedColor:"var(--idm-color-positive-500)",borderWidth:4}},selfieCapture:{guides:{unsatisfiedColor:"white",satisfiedColor:"var(--idm-color-positive-500)"}},signatureCapture:{background:"radial-gradient(#444cf7 0.5px, transparent 0.5px), radial-gradient(#444cf7 0.5px, #e5e5f7 0.5px)",backgroundSize:"20px 20px",backgroundPosition:"0 0, 10px 10px"}},none:{}},py=function(e){var n,r=e.children,i="string"==typeof(n=e.theme)?n in fy?fy[n]:fy.none:n,o=i.colors;return t.useEffect((function(){for(var e in o){var t=o[e];for(var n in t){var a=t[n];document.documentElement.style.setProperty("--idm-color-".concat(e,"-").concat(n),a)}}}),[o]),s.default.createElement(a.ThemeProvider,{theme:i},r)},my=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.idAutoCaptureEnabled,C=void 0===E||E,k=e.idCardAutoCaptureScoreThreshold,S=void 0===k?.8:k,T=e.passportAutoCaptureScoreThreshold,I=void 0===T?.75:T,R=e.idCardFocusScoreThreshold,D=void 0===R?.3:R,A=e.passportFocusScoreThreshold,N=void 0===A?.3:A,_=e.skipSuccessScreen,F=void 0!==_&&_,M=e.onBeforeSubmit,P=e.onComplete,L=e.onApproved,B=e.onDenied,O=e.onExitCapture,U=e.theme,j=void 0===U?"default":U,z=e.assets,G=void 0===z?{}:z,$=e.classNames,V=void 0===$?{}:$,q=e.colors,W=void 0===q?{}:q,H=e.verbiage,K=void 0===H?{}:H,Y=e.captureSignature,X=void 0!==Y&&Y,J=e.captureSignatureVideo,Z=void 0!==J&&J,Q=e.captureAdditionalDocuments,ee=void 0===Q?[]:Q,te=e.geolocationEnabled,ne=void 0===te||te,ae=e.geolocationRequired,re=void 0!==ae&&ae,ie=e.debugMode,oe=void 0!==ie&&ie;Bi(void 0===n?"auto":n);var se=t.useMemo((function(){return{onExitCapture:O,autoCaptureEnabled:C,idCardAutoCaptureScoreThreshold:S,passportAutoCaptureScoreThreshold:I,mrzDetectionScoreThreshold:.5,idCardFocusScoreThreshold:D,passportFocusScoreThreshold:N,barcodeScanningEnabled:!1,skipSuccessScreen:F,assets:G,classNames:V,colors:W,verbiage:K,debugMode:oe}}),[G,V,W,oe,C,S,D,O,I,N,F,K]),le=t.useMemo((function(){return{documents:ee,classNames:V.additionalDocumentCapture,verbiage:K.additionalDocumentCapture}}),[ee,V.additionalDocumentCapture,K.additionalDocumentCapture]),ce=t.useMemo((function(){return{classNames:V.signatureCapture,verbiage:K.signatureCapture}}),[V.signatureCapture,K.signatureCapture]),ue=t.useMemo((function(){return{onExitCapture:O,skipSuccessScreen:F,classNames:V.videoSignatureCapture,colors:W.videoSignatureCapture,verbiage:K.videoSignatureCapture,debugMode:oe}}),[V.videoSignatureCapture,W.videoSignatureCapture,oe,O,F,K.videoSignatureCapture]),de=t.useCallback((function(e,t){null==P||P(e,t),"Approved"===e.resultData.verificationResult?null==L||L(e,t):null==B||B(e,t)}),[L,P,B]);return s.default.createElement(py,{theme:j},s.default.createElement(ke,{action:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onBeforeSubmit:M,onResponseReceived:de,geolocationEnabled:ne,geolocationRequired:re},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture"]}),[]),idCaptureProps:se,additionalDocumentCaptureProps:le,signatureCaptureProps:ce,videoSignatureCaptureProps:ue,captureSignature:X,captureSignatureVideo:Z,debugMode:oe})))},gy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.webhooksEnabled,c=e.webhooksClientTraceId,u=e.webhooksStripSpecialCharacters,d=e.webhooksSendInputImages,h=e.webhooksSendProcessedImages,f=e.timeoutDurationMs,p=void 0===f?15e3:f,m=e.skipSuccessScreen,g=void 0!==m&&m,v=e.onBeforeSubmit,y=e.onComplete,w=e.onApproved,x=e.onDenied,E=e.onExitCapture,C=e.onExitAfterFailure,k=e.theme,S=void 0===k?"default":k,T=e.assets,I=e.classNames,R=e.colors,D=e.verbiage,A=e.geolocationEnabled,N=void 0===A||A,_=e.geolocationRequired,F=void 0!==_&&_,M=e.debugMode,P=void 0!==M&&M;Bi(void 0===n?"auto":n);var L=t.useMemo((function(){return{timeoutDurationMs:p,skipSuccessScreen:g,onComplete:y,onSuccess:w,onTimeout:x,onExitCapture:E,onExitAfterFailure:C,assets:T,classNames:I,colors:R,verbiage:D,debugMode:P}}),[T,I,R,P,w,y,x,C,E,g,p,D]);return s.default.createElement(py,{theme:S},s.default.createElement(ke,{action:b.NONE,url:r,token:a,companyId:i,needImmediateResponse:o,webhooksEnabled:l,webhooksClientTraceId:c,webhooksStripSpecialCharacters:u,webhooksSendInputImages:d,webhooksSendProcessedImages:h,onBeforeLivenessCheck:v,geolocationEnabled:N,geolocationRequired:F},s.default.createElement(hy,{checks:t.useMemo((function(){return["FaceLiveness"]}),[]),faceLivenessProps:L,debugMode:P})))},vy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.idAutoCaptureEnabled,C=void 0===E||E,k=e.idCardAutoCaptureScoreThreshold,S=void 0===k?.8:k,T=e.mrzDetectionScoreThreshold,I=void 0===T?.5:T,R=e.passportAutoCaptureScoreThreshold,D=void 0===R?.75:R,A=e.idCardFocusScoreThreshold,N=void 0===A?.3:A,_=e.passportFocusScoreThreshold,F=void 0===_?.3:_,M=e.faceLivenessTimeoutDurationMs,P=void 0===M?15e3:M,L=e.skipSuccessScreen,B=void 0!==L&&L,O=e.onBeforeLivenessCheck,U=e.onBeforeSubmit,j=e.onComplete,z=e.onApproved,G=e.onDenied,$=e.onExitCapture,V=e.onExitAfterFailure,q=e.captureSignature,W=void 0!==q&&q,H=e.captureSignatureVideo,K=void 0!==H&&H,Y=e.captureAdditionalDocuments,X=void 0===Y?[]:Y,J=e.theme,Z=void 0===J?"default":J,Q=e.assets,ee=void 0===Q?{}:Q,te=e.classNames,ne=void 0===te?{}:te,ae=e.colors,re=void 0===ae?{}:ae,ie=e.verbiage,oe=void 0===ie?{}:ie,se=e.geolocationEnabled,le=void 0===se||se,ce=e.geolocationRequired,ue=void 0!==ce&&ce,de=e.debugMode,he=void 0!==de&&de;Bi(void 0===n?"auto":n);var fe=t.useMemo((function(){return{onExitCapture:$,assets:ee.idCapture,classNames:ne.idCapture,colors:re.idCapture,verbiage:oe.idCapture,autoCaptureEnabled:C,idCardAutoCaptureScoreThreshold:S,passportAutoCaptureScoreThreshold:D,mrzDetectionScoreThreshold:I,idCardFocusScoreThreshold:N,passportFocusScoreThreshold:F,skipSuccessScreen:B,debugMode:he}}),[ee.idCapture,ne.idCapture,re.idCapture,he,C,S,N,I,$,D,F,B,oe.idCapture]),pe=t.useMemo((function(){return{timeoutDurationMs:P,onTimeout:G,onExitCapture:$,onExitAfterFailure:V,skipSuccessScreen:B,assets:ee.faceLiveness,classNames:ne.faceLiveness,colors:re.faceLiveness,verbiage:oe.faceLiveness,debugMode:he}}),[ee.faceLiveness,ne.faceLiveness,re.faceLiveness,he,P,G,V,$,B,oe.faceLiveness]),me=t.useMemo((function(){return{documents:X,classNames:ne.additionalDocumentCapture,verbiage:oe.additionalDocumentCapture}}),[X,ne.additionalDocumentCapture,oe.additionalDocumentCapture]),ge=t.useMemo((function(){return{classNames:ne.signatureCapture,verbiage:oe.signatureCapture}}),[ne.signatureCapture,oe.signatureCapture]),ve=t.useMemo((function(){return{onExitCapture:$,skipSuccessScreen:B,classNames:ne.videoSignatureCapture,colors:re.videoSignatureCapture,verbiage:oe.videoSignatureCapture,debugMode:he}}),[ne.videoSignatureCapture,re.videoSignatureCapture,he,$,B,oe.videoSignatureCapture]),ye=t.useCallback((function(e,t){null==j||j(e,t),"Approved"===e.resultData.verificationResult?null==z||z(e,t):null==G||G(e,t)}),[z,j,G]);return s.default.createElement(py,{theme:Z},s.default.createElement(ke,{action:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onBeforeSubmit:U,onBeforeLivenessCheck:O,onResponseReceived:ye,geolocationEnabled:le,geolocationRequired:ue},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture","FaceLiveness"]}),[]),idCaptureProps:fe,faceLivenessProps:pe,signatureCaptureProps:ge,videoSignatureCaptureProps:ve,additionalDocumentCaptureProps:me,captureSignature:W,captureSignatureVideo:K,debugMode:he})))},yy=function(e){var n=e.enrollmentId,a=e.lang,r=e.submissionToken,i=e.submissionUrl,o=e.companyId,l=e.needImmediateResponse,c=e.manualReviewRequired,u=e.idBackImageRequired,d=e.idImageResolutionCheck,h=e.verifyIdWithExternalDatabases,f=e.bypassAgeValidation,p=e.bypassNameMatching,m=e.personalData,g=e.cardData,v=e.deduplicationEnabled,y=e.deduplicationSynchronous,w=e.webhooksEnabled,x=e.webhooksClientTraceId,E=e.webhooksStripSpecialCharacters,C=e.webhooksSendInputImages,k=e.webhooksSendProcessedImages,S=e.webhooksFireOnReview,T=e.idAutoCaptureEnabled,I=void 0===T||T,R=e.idCardAutoCaptureScoreThreshold,D=void 0===R?.8:R,A=e.mrzDetectionScoreThreshold,N=void 0===A?.5:A,_=e.passportAutoCaptureScoreThreshold,F=void 0===_?.75:_,M=e.idCardFocusScoreThreshold,P=void 0===M?.3:M,L=e.passportFocusScoreThreshold,B=void 0===L?.3:L,O=e.faceLivenessTimeoutDurationMs,U=void 0===O?15e3:O,j=e.skipSuccessScreen,z=void 0!==j&&j,G=e.onBeforeSubmit,$=e.onComplete,V=e.onEnrolled,q=e.onDenied,W=e.onExitCapture,H=e.onExitAfterFailure,K=e.captureSignature,Y=void 0!==K&&K,X=e.captureSignatureVideo,J=void 0!==X&&X,Z=e.captureAdditionalDocuments,Q=void 0===Z?[]:Z,ee=e.theme,te=void 0===ee?"default":ee,ne=e.assets,ae=void 0===ne?{}:ne,re=e.classNames,ie=void 0===re?{}:re,oe=e.colors,se=void 0===oe?{}:oe,le=e.verbiage,ce=void 0===le?{}:le,ue=e.geolocationEnabled,de=void 0===ue||ue,he=e.geolocationRequired,fe=void 0!==he&&he,pe=e.debugMode,me=void 0!==pe&&pe;Bi(void 0===a?"auto":a);var ge=t.useMemo((function(){return{assets:ae.idCapture,classNames:ie.idCapture,colors:se.idCapture,verbiage:ce.idCapture,autoCaptureEnabled:I,idCardAutoCaptureScoreThreshold:D,passportAutoCaptureScoreThreshold:F,mrzDetectionScoreThreshold:N,idCardFocusScoreThreshold:P,passportFocusScoreThreshold:B,onExitCapture:W,skipSuccessScreen:z,debugMode:me}}),[ae.idCapture,ie.idCapture,se.idCapture,me,I,D,P,N,W,F,B,z,ce.idCapture]),ve=t.useMemo((function(){return{onExitCapture:W,onExitAfterFailure:H,timeoutDurationMs:U,skipSuccessScreen:z,assets:ae.faceLiveness,classNames:ie.faceLiveness,colors:se.faceLiveness,verbiage:ce.faceLiveness,debugMode:me}}),[ae.faceLiveness,ie.faceLiveness,se.faceLiveness,me,U,H,W,z,ce.faceLiveness]),ye=t.useMemo((function(){return{documents:Q,classNames:ie.additionalDocumentCapture,verbiage:ce.additionalDocumentCapture}}),[Q,ie.additionalDocumentCapture,ce.additionalDocumentCapture]),be=t.useMemo((function(){return{classNames:ie.signatureCapture,verbiage:ce.signatureCapture}}),[ie.signatureCapture,ce.signatureCapture]),we=t.useMemo((function(){return{onExitCapture:W,skipSuccessScreen:z,classNames:ie.videoSignatureCapture,colors:se.videoSignatureCapture,verbiage:ce.videoSignatureCapture,debugMode:me}}),[ie.videoSignatureCapture,se.videoSignatureCapture,me,W,z,ce.videoSignatureCapture]),xe=t.useCallback((function(e,t){null==$||$(e,t),"Customer Onboarded"===e.resultData.verificationResult?null==V||V(e,t):null==q||q(e,t)}),[V,$,q]);return s.default.createElement(py,{theme:te},s.default.createElement(ke,{action:b.ENROLL,url:i,token:r,companyId:o,enrollmentId:n,needImmediateResponse:l,manualReviewRequired:c,idBackImageRequired:u,idImageResolutionCheck:d,verifyIdWithExternalDatabases:h,bypassAgeValidation:f,bypassNameMatching:p,personalData:m,cardData:g,deduplicationEnabled:v,deduplicationSynchronous:y,webhooksEnabled:w,webhooksClientTraceId:x,webhooksStripSpecialCharacters:E,webhooksSendInputImages:C,webhooksSendProcessedImages:k,webhooksFireOnReview:S,onBeforeSubmit:G,onResponseReceived:xe,geolocationEnabled:de,geolocationRequired:fe},s.default.createElement(hy,{checks:t.useMemo((function(){return["IdCapture","FaceLiveness"]}),[]),idCaptureProps:ge,faceLivenessProps:ve,additionalDocumentCaptureProps:ye,signatureCaptureProps:be,videoSignatureCaptureProps:we,captureSignature:Y,captureSignatureVideo:J,debugMode:me})))},by={frame:null,face:null,imageUrl:null,requestState:"CAPTURING",requestError:null,unverifiedTimes:0},wy=function(e,t){switch(t.type){case"verificationReady":return["CAPTURING","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"verifying":return p(p({},e),{requestState:"VERIFYING",imageUrl:t.payload.imageUrl});case"verificationCompleted":var n=t.payload.response,a=n.status,r=a.statusMessage,i=a.errorData,o=n.resultData;if("000"!==a.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(r,": ").concat(i))});var s=e.requestState,l=e.unverifiedTimes;return"00"===o.verificationResultCode?s="VERIFIED":l<0?(s="CAPTURING",l+=1):s="REJECTED",p(p({},e),{requestState:s,unverifiedTimes:l});case"verificationFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},xy=function(e){var n=e.onCustomerMatched,a=e.onCustomerNotMatched,r=e.onCaptureGuidanceTimeout,i=e.onExit,o=e.captureGuidanceTimeoutDurationMs,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h,p=e.debugMode,v=void 0!==p&&p,y=t.useReducer(wy,by),b=y[0],w=y[1],x=b.frame,E=b.face,k=t.useContext(Ce),S=k.submit,T=k.submissionRequest,I=k.submissionResponse,R=k.submissionError,D=k.selfieImage,A=k.setSelfieImage,N=t.useState(null),_=N[0],F=N[1],M=t.useRef(null),P=t.useRef(null),L=t.useCallback((function(e,t){w({type:"verificationReady",payload:{frame:e,face:t}})}),[]),B="CAPTURED"===b.requestState;t.useEffect((function(){if(x&&E&&!R){var e=Ka(M.current,P.current,x,E);F(e),C(e).then((function(e){A(e)}))}}),[E,x,A,R]),t.useEffect((function(){B&&D&&!R&&m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),w({type:"verifying",payload:{imageUrl:D}}),[4,S()];case 1:if(!(e=n.sent()))throw new Error("submission failed!");return w({type:"verificationCompleted",payload:{response:e}}),[3,3];case 2:return t=n.sent(),w({type:"verificationFailed",payload:{error:t}}),[3,3];case 3:return[2]}}))}))}),[B,n,a,D,b.requestState,R,S]),t.useEffect((function(){T&&I&&("VERIFIED"===b.requestState?null==n||n(I,T):"REJECTED"===b.requestState&&(null==a||a(I,T)))}),[n,a,b.requestState,T,I]),pg(o,r,["VERIFIED","REJECTED"].includes(b.requestState),"VERIFYING"===b.requestState);var O=Ui(f.progressPreviewText,"Processing...");return s.default.createElement(s.default.Fragment,null,s.default.createElement(qa,{ref:M}),s.default.createElement(qa,{ref:P}),s.default.createElement(Cg,{onSelfieCaptured:L,onExit:i,timeoutDurationMs:o,classNames:c,colors:d,verbiage:f,debugMode:v}),_&&s.default.createElement(Sr,{imageUrl:_,text:O,classNames:c.imagePreview}))},Ey=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c;t||(t="".concat(Ga,"/Selfie-Image-1.png"));var d=ji(u,{headingText:"Customer has been verified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(U,{className:i.container},s.default.createElement(j,{className:i.inner},s.default.createElement(Cy,{className:i.heading},d.headingText),s.default.createElement(ky,{className:i.imageContainer},s.default.createElement("img",{alt:d.headingText,src:t,className:i.image})),s.default.createElement(Sy,{className:i.buttonsRow},s.default.createElement(ce,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},d.retryBtnText),s.default.createElement(ce,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},d.doneBtnText))))},Cy=u.default.h3(Jv||(Jv=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),ky=u.default(bo)(Zv||(Zv=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Sy=u.default(bo)(Qv||(Qv=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Ty=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Customer not verified",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(U,{className:c.container},s.default.createElement(j,{className:c.inner},s.default.createElement(Iy,{className:c.heading},p.headingText),s.default.createElement(Ry,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(Dy,{className:c.buttonsRow},n&&s.default.createElement(ce,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ce,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},Iy=u.default.h3(ey||(ey=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),Ry=u.default(bo)(ty||(ty=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Dy=u.default(bo)(ny||(ny=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Ay=function(e){var n=e.onComplete,a=e.onCustomerMatched,r=e.onCustomerNotMatched,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.onCaptureGuidanceTimeout,c=e.captureGuidanceTimeoutDurationMs,u=e.skipSuccessScreen,d=void 0!==u&&u,h=e.assets,f=void 0===h?{}:h,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=t.useContext(Ce),S=k.submissionRequest,T=k.submissionResponse,I=k.selfieImage,R=t.useState("LOADING"),D=R[0],A=R[1],N=t.useContext(dt).releaseCameraAccess,_=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return A("MATCHED"),null==a||a(e,t),[2]}))}))}),[a]),F=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return A("NOT_MATCHED"),null==r||r(e,t),[2]}))}))}),[r]),M=t.useCallback((function(){A("FAILED"),null==l||l()}),[l]),P=t.useState(0),L=P[0],B=P[1],O=t.useCallback((function(){B((function(e){return e+1})),A("LOADING"),null==i||i()}),[i]),U=t.useCallback((function(){N(),S&&T&&(null==n||n(T,S))}),[n,N,S,T]),j=ko(d,"MATCHED"===D,U);return s.default.createElement(s.default.Fragment,null,"LOADING"!==D&&function(){switch(D){case"CAPTURING":return s.default.createElement(xy,{key:"capture".concat(L),onCustomerMatched:_,onCustomerNotMatched:F,onCaptureGuidanceTimeout:M,onExit:O,captureGuidanceTimeoutDurationMs:c,classNames:v,colors:b,verbiage:x,debugMode:C});case"MATCHED":if(!j)return;return s.default.createElement(Ey,{imageUrl:"data:image/png;base64, ".concat(I),classNames:v.success,colors:b.success,verbiage:x.success,onDoneClick:U,onRetryClick:function(){A("CAPTURING"),B(0)}});case"NOT_MATCHED":case"FAILED":return s.default.createElement(Ty,{assets:f.failure,classNames:v.failure,colors:b.failure,verbiage:x.failure,canRetry:L<2,onExitClick:function(){N(),null==o||o()},onRetryClick:function(){B((function(e){return e+1}))}});default:return null}}(),s.default.createElement(Ig,{key:L,assets:f.loadingOverlay,classNames:v.loadingOverlay,colors:b.loadingOverlay,verbiage:x.loadingOverlay,onDismissed:function(){A("CAPTURING")}}))},Ny=function(e){var t=e.lang,n=e.enrollmentId,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.webhooksEnabled,c=e.webhooksClientTraceId,u=e.webhooksStripSpecialCharacters,d=e.webhooksSendInputImages,h=e.webhooksSendProcessedImages,f=e.timeoutDurationMs,p=void 0===f?15e3:f,m=e.skipSuccessScreen,g=void 0!==m&&m,v=e.theme,y=void 0===v?"default":v,w=e.assets,x=e.classNames,E=e.colors,C=e.verbiage,k=e.onBeforeSubmit,S=e.onComplete,T=e.onCustomerMatched,I=e.onCustomerNotMatched,R=e.onExitCapture,D=e.onExitAfterFailure,A=e.geolocationEnabled,N=void 0===A||A,_=e.geolocationRequired,F=void 0!==_&&_,M=e.debugMode,P=void 0!==M&&M;return Bi(void 0===t?"auto":t),s.default.createElement(py,{theme:y},s.default.createElement(ke,{action:b.VERIFY,url:r,token:a,companyId:i,enrollmentId:n,needImmediateResponse:o,webhooksEnabled:l,webhooksClientTraceId:c,webhooksStripSpecialCharacters:u,webhooksSendInputImages:d,webhooksSendProcessedImages:h,onBeforeSubmit:k,geolocationEnabled:N,geolocationRequired:F},s.default.createElement(ht,{preferFrontFacingCamera:!0},s.default.createElement(fg,null,s.default.createElement(Ay,{onComplete:S,onCustomerMatched:T,onCustomerNotMatched:I,onExitCapture:R,onExitAfterFailure:D,captureGuidanceTimeoutDurationMs:p,skipSuccessScreen:g,assets:w,classNames:x,colors:E,verbiage:C,debugMode:P})))))},_y={frame:null,face:null,imageUrl:null,requestState:"CAPTURING",requestError:null,notFoundTimes:0},Fy=function(e,t){switch(t.type){case"identificationReady":return["CAPTURING","ERROR"].includes(e.requestState)?p(p({},e),{requestState:"CAPTURED",frame:t.payload.frame,face:t.payload.face}):e;case"identifying":return p(p({},e),{requestState:"IDENTIFYING",imageUrl:t.payload.imageUrl});case"identificationCompleted":var n=t.payload.response,a=n.status,r=a.statusMessage,i=a.errorData,o=n.resultData;if("000"!==a.statusCode)return p(p({},e),{requestState:"ERROR",requestError:new Error("".concat(r,": ").concat(i))});var s=e.requestState,l=e.notFoundTimes;return"46"===o.verificationResultCode?s="FOUND":l<0?(s="CAPTURING",l+=1):s="NOT_FOUND",p(p({},e),{requestState:s,notFoundTimes:l});case"identificationFailed":return p(p({},e),{requestState:"ERROR",requestError:t.payload.error});default:return e}},My=function(e){var n=e.onCustomerMatched,a=e.onCustomerNotMatched,r=e.onCaptureGuidanceTimeout,i=e.onExit,o=e.captureGuidanceTimeoutDurationMs,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h,p=e.debugMode,v=void 0!==p&&p,y=t.useReducer(Fy,_y),b=y[0],w=y[1],x=t.useContext(Ce),E=x.submit,k=x.submissionRequest,S=x.submissionResponse,T=x.submissionError,I=x.selfieImage,R=x.setSelfieImage,D=t.useState(null),A=D[0],N=D[1],_=t.useRef(null),F=t.useRef(null),M=t.useCallback((function(e,t){w({type:"identificationReady",payload:{frame:e,face:t}})}),[]),P=b.frame,L=b.face,B="CAPTURED"===b.requestState;t.useEffect((function(){if(P&&L&&!T){var e=Ka(_.current,F.current,P,L);N(e),C(e).then((function(e){R(e)}))}}),[L,P,R,T]),t.useEffect((function(){B&&I&&!T&&m(void 0,void 0,void 0,(function(){var e,t;return g(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),w({type:"identifying",payload:{imageUrl:I}}),[4,E()];case 1:if(!(e=n.sent()))throw new Error("submission failed!");return w({type:"identificationCompleted",payload:{response:e}}),[3,3];case 2:return t=n.sent(),w({type:"identificationFailed",payload:{error:t}}),[3,3];case 3:return[2]}}))}))}),[B,n,a,I,b.requestState,T,E]),t.useEffect((function(){k&&S&&("FOUND"===b.requestState?null==n||n(S,k):"NOT_FOUND"===b.requestState&&(null==a||a(S,k)))}),[n,a,b.requestState,k,S]),pg(o,r,["FOUND","NOT_FOUND"].includes(b.requestState),"IDENTIFYING"===b.requestState);var O=Ui(f.progressPreviewText,"Processing...");return s.default.createElement(s.default.Fragment,null,s.default.createElement(qa,{ref:_}),s.default.createElement(qa,{ref:F}),s.default.createElement(Cg,{onSelfieCaptured:M,onExit:i,timeoutDurationMs:o,classNames:c,colors:d,verbiage:f,debugMode:v}),A&&s.default.createElement(Sr,{text:O,imageUrl:A,classNames:c.imagePreview}))},Py=function(e){var t=e.imageUrl,n=e.onDoneClick,a=e.onRetryClick,r=e.classNames,i=void 0===r?{}:r,o=e.colors,l=void 0===o?{}:o,c=e.verbiage,u=void 0===c?{}:c;t||(t="".concat(Ga,"/Selfie-Image-1.png"));var d=ji(u,{headingText:"Customer has been identified!",retryBtnText:"Retry",doneBtnText:"Done"});return s.default.createElement(U,{className:i.container},s.default.createElement(j,{className:i.inner},s.default.createElement(Ly,{className:i.heading},d.headingText),s.default.createElement(By,{className:i.imageContainer},s.default.createElement("img",{alt:d.headingText,src:t,className:i.image})),s.default.createElement(Oy,{className:i.buttonsRow},s.default.createElement(ce,{variant:"warning",className:i.retryBtn,onClick:a,colors:l.retryBtn,finished:!0},d.retryBtnText),s.default.createElement(ce,{variant:"positive",className:i.doneBtn,onClick:n,colors:l.doneBtn,finished:!0},d.doneBtnText))))},Ly=u.default.h3(ay||(ay=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),By=u.default(bo)(ry||(ry=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Oy=u.default(bo)(iy||(iy=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),Uy=function(e){var t=e.canRetry,n=void 0===t||t,a=e.onRetryClick,r=e.onExitClick,i=e.assets,o=void 0===i?{}:i,l=e.classNames,c=void 0===l?{}:l,u=e.colors,d=void 0===u?{}:u,h=e.verbiage,f=void 0===h?{}:h;o.imageUrl||(o.imageUrl="".concat(Ga,"/manual_capture.png"));var p=ji(f,{headingText:"Customer not found",retryBtnText:"Retry",exitBtnText:"Exit"});return s.default.createElement(U,{className:c.container},s.default.createElement(j,{className:c.inner},s.default.createElement(jy,{className:c.heading},p.headingText),s.default.createElement(zy,{className:c.imageContainer},s.default.createElement("img",{alt:p.headingText,src:o.imageUrl,className:c.image})),s.default.createElement(Gy,{className:c.buttonsRow},n&&s.default.createElement(ce,{variant:"warning",className:c.retryBtn,onClick:a,colors:d.retryBtn,finished:!0},p.retryBtnText),s.default.createElement(ce,{variant:"secondary",className:c.exitBtn,onClick:r,colors:d.exitBtn,finished:!0},p.exitBtnText))))},jy=u.default.h3(oy||(oy=y(["\n margin-bottom: 24px;\n"],["\n margin-bottom: 24px;\n"]))),zy=u.default(bo)(sy||(sy=y(["\n max-height: calc(100vh - 185px);\n"],["\n max-height: calc(100vh - 185px);\n"]))),Gy=u.default(bo)(ly||(ly=y(["\n margin-top: 24px;\n"],["\n margin-top: 24px;\n"]))),$y=function(e){var n=e.onComplete,a=e.onCustomerMatched,r=e.onCustomerNotMatched,i=e.onExitCapture,o=e.onExitAfterFailure,l=e.onCaptureGuidanceTimeout,c=e.captureGuidanceTimeoutDurationMs,u=e.skipSuccessScreen,d=void 0!==u&&u,h=e.assets,f=void 0===h?{}:h,p=e.classNames,v=void 0===p?{}:p,y=e.colors,b=void 0===y?{}:y,w=e.verbiage,x=void 0===w?{}:w,E=e.debugMode,C=void 0!==E&&E,k=t.useContext(Ce),S=k.submissionResponse,T=k.submissionRequest,I=k.selfieImage,R=t.useState("LOADING"),D=R[0],A=R[1],N=t.useContext(dt).releaseCameraAccess,_=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return A("FOUND"),null==a||a(e,t),[2]}))}))}),[a]),F=t.useCallback((function(e,t){return m(void 0,void 0,void 0,(function(){return g(this,(function(n){return A("NOT_FOUND"),null==r||r(e,t),[2]}))}))}),[r]),M=t.useCallback((function(){A("FAILED"),null==l||l()}),[l]),P=t.useState(0),L=P[0],B=P[1],O=t.useCallback((function(){B((function(e){return e+1})),A("LOADING"),null==i||i()}),[i]),U=t.useCallback((function(){N(),T&&S&&(null==n||n(S,T))}),[n,N,T,S]),j=ko(d,"FOUND"===D,U);return s.default.createElement(s.default.Fragment,null,"LOADING"!==D&&function(){switch(D){case"CAPTURING":return s.default.createElement(My,{key:"capture".concat(L),onCustomerMatched:_,onCustomerNotMatched:F,onCaptureGuidanceTimeout:M,onExit:O,captureGuidanceTimeoutDurationMs:c,classNames:v,colors:b,verbiage:x,debugMode:C});case"FOUND":if(!j)return;return s.default.createElement(Py,{imageUrl:"data:image/png;base64, ".concat(I),classNames:v.success,colors:b.success,verbiage:x.success,onDoneClick:U,onRetryClick:function(){A("CAPTURING"),B(0)}});case"NOT_FOUND":case"FAILED":return s.default.createElement(Uy,{assets:f.failure,classNames:v.failure,colors:b.failure,verbiage:x.failure,canRetry:L<2,onExitClick:function(){N(),null==o||o()},onRetryClick:function(){B((function(e){return e+1}))}});default:return null}}(),s.default.createElement(Ig,{key:L,assets:f.loadingOverlay,classNames:v.loadingOverlay,colors:b.loadingOverlay,verbiage:x.loadingOverlay,onDismissed:function(){A("CAPTURING")}}))},Vy=function(e){var t=e.lang,n=e.submissionToken,a=e.submissionUrl,r=e.companyId,i=e.needImmediateResponse,o=e.webhooksEnabled,l=e.webhooksClientTraceId,c=e.webhooksStripSpecialCharacters,u=e.webhooksSendInputImages,d=e.webhooksSendProcessedImages,h=e.timeoutDurationMs,f=void 0===h?15e3:h,p=e.skipSuccessScreen,m=void 0!==p&&p,g=e.onBeforeSubmit,v=e.onComplete,y=e.onCustomerMatched,w=e.onCustomerNotMatched,x=e.onCaptureGuidanceTimeout,E=e.onExitCapture,C=e.onExitAfterFailure,k=e.theme,S=void 0===k?"default":k,T=e.assets,I=e.classNames,R=e.colors,D=e.verbiage,A=e.geolocationEnabled,N=e.geolocationRequired,_=void 0!==N&&N,F=e.debugMode,M=void 0!==F&&F;return Bi(void 0===t?"auto":t),s.default.createElement(py,{theme:S},s.default.createElement(ke,{action:b.IDENTIFY,url:a,token:n,companyId:r,needImmediateResponse:i,webhooksEnabled:o,webhooksClientTraceId:l,webhooksStripSpecialCharacters:c,webhooksSendInputImages:u,webhooksSendProcessedImages:d,onBeforeSubmit:g,geolocationEnabled:A,geolocationRequired:_},s.default.createElement(ht,{preferFrontFacingCamera:!0},s.default.createElement(fg,null,s.default.createElement($y,{onComplete:v,onCustomerMatched:y,onCustomerNotMatched:w,onExitCapture:E,onExitAfterFailure:C,onCaptureGuidanceTimeout:x,captureGuidanceTimeoutDurationMs:f,skipSuccessScreen:m,assets:T,classNames:I,colors:R,verbiage:D,debugMode:M})))))},qy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.onBeforeSubmit,o=e.onComplete,l=e.skipSuccessScreen,c=void 0!==l&&l,u=e.theme,d=void 0===u?"default":u,h=e.classNames,f=e.colors,p=e.verbiage,m=e.geolocationEnabled,g=e.geolocationRequired,v=e.debugMode;Bi(void 0===n?"auto":n);var y=t.useState(0),w=y[1];return s.default.createElement(py,{theme:d},s.default.createElement(ke,{action:b.NONE,url:r,token:a,onBeforeSubmit:i,onResponseReceived:o,geolocationEnabled:m,geolocationRequired:g},s.default.createElement(ht,{key:y[0],preferContinuityCamera:!1,preferFrontFacingCamera:!0},s.default.createElement(Wv,{skipSuccessScreen:c,classNames:h,colors:f,debugMode:v,verbiage:p,onRetryClicked:function(){w((function(e){return e+1}))}}))))},Wy=function(e){var n=e.lang,a=e.submissionToken,r=e.submissionUrl,i=e.companyId,o=e.needImmediateResponse,l=e.manualReviewRequired,c=e.idBackImageRequired,u=e.verifyIdWithExternalDatabases,d=e.bypassAgeValidation,h=e.bypassNameMatching,f=e.personalData,p=e.cardData,m=e.webhooksEnabled,g=e.webhooksClientTraceId,v=e.webhooksStripSpecialCharacters,y=e.webhooksSendInputImages,w=e.webhooksSendProcessedImages,x=e.webhooksFireOnReview,E=e.onSubmit,C=e.onBeforeSubmit,k=e.onComplete,S=e.onExitCapture,T=e.onExitAfterFailure,I=e.idCaptureProps,R=e.faceLivenessProps,D=e.idCardFrontDetectionThreshold,A=void 0===D?.48:D,N=e.idCardFrontFocusThreshold,_=void 0===N?.15:N,F=e.goodIdCardFrontFramesThreshold,M=void 0===F?3:F,P=e.showIdCardBackDurationMs,L=void 0===P?5e3:P,B=e.readTextPrompt,O=e.readTextTimeoutDurationMs,U=void 0===O?15e3:O,j=e.skipSuccessScreen,z=void 0!==j&&j,G=e.skipIdCapture,$=void 0!==G&&G,V=e.skipShowIdCardBack,q=void 0!==V&&V,W=e.theme,H=void 0===W?"default":W,K=e.assets,Y=void 0===K?{}:K,X=e.classNames,J=void 0===X?{}:X,Z=e.colors,Q=void 0===Z?{}:Z,ee=e.verbiage,te=void 0===ee?{}:ee,ne=e.captureSignature,ae=void 0!==ne&&ne,re=e.captureSignatureVideo,ie=void 0!==re&&re,oe=e.captureAdditionalDocuments,se=void 0===oe?[]:oe,le=e.geolocationEnabled,ce=void 0===le||le,ue=e.geolocationRequired,de=void 0!==ue&&ue,he=e.debugMode,fe=void 0!==he&&he;Bi(void 0===n?"auto":n);var pe=t.useMemo((function(){return{idCaptureProps:I,faceLivenessProps:R,idCardFrontDetectionThreshold:A,idCardFrontFocusThreshold:_,goodIdCardFrontFramesThreshold:M,showIdCardBackDurationMs:L,readTextPrompt:B,readTextTimeoutDurationMs:U,onExitCapture:S,onExitAfterFailure:T,skipSuccessScreen:z,skipIdCapture:$,skipShowIdCardBack:q,assets:Y,classNames:J,colors:Q,verbiage:te,debugMode:fe}}),[Y,J,Q,fe,R,M,I,A,_,T,S,B,U,L,$,q,z,te]),me=t.useMemo((function(){return{documents:se,classNames:J.additionalDocumentCapture,verbiage:te.additionalDocumentCapture}}),[se,J.additionalDocumentCapture,te.additionalDocumentCapture]),ge=t.useMemo((function(){return{classNames:J.signatureCapture,verbiage:te.signatureCapture}}),[J.signatureCapture,te.signatureCapture]),ve=t.useMemo((function(){return{onExitCapture:S,skipSuccessScreen:z,classNames:J.videoSignatureCapture,colors:Q.videoSignatureCapture,verbiage:te.videoSignatureCapture,debugMode:fe}}),[J.videoSignatureCapture,Q.videoSignatureCapture,fe,S,z,te.videoSignatureCapture]);return s.default.createElement(py,{theme:H},s.default.createElement(ke,{action:$?b.NONE:b.VALIDATE,url:r,token:a,companyId:i,needImmediateResponse:o,manualReviewRequired:l,idBackImageRequired:c,verifyIdWithExternalDatabases:u,bypassAgeValidation:d,bypassNameMatching:h,personalData:f,cardData:p,webhooksEnabled:m,webhooksClientTraceId:g,webhooksStripSpecialCharacters:v,webhooksSendInputImages:y,webhooksSendProcessedImages:w,webhooksFireOnReview:x,onSubmit:E,onBeforeSubmit:C,onResponseReceived:k,geolocationEnabled:ce,geolocationRequired:de},s.default.createElement(hy,{checks:t.useMemo((function(){return["VideoIdCapture"]}),[]),videoIdCaptureProps:pe,additionalDocumentCaptureProps:me,signatureCaptureProps:ge,videoSignatureCaptureProps:ve,captureSignature:ae,captureSignatureVideo:ie,debugMode:fe})))},Hy=function(e){var t=e.documentDetectionModel,n=void 0===t||t,a=e.focusModel,r=void 0===a||a,i=e.faceDetectionModel,o=void 0===i||i;return m(void 0,void 0,void 0,(function(){return g(this,(function(e){switch(e.label){case 0:return n?(!0===n&&(n="".concat(Ga,"/models/documentdetection448/model.json")),[4,Te(n)]):[3,2];case 1:e.sent(),e.label=2;case 2:return r?(!0===r&&(r="".concat(Ga,"/models/focus/model.json")),[4,ft(r)]):[3,4];case 3:e.sent(),e.label=4;case 4:return o?[4,ng()]:[3,6];case 5:e.sent(),e.label=6;case 6:return[2]}}))}))},Ky=function(e){var n=e.enrollmentId,a=e.lang,r=e.submissionToken,i=e.submissionUrl,o=e.companyId,l=e.needImmediateResponse,c=e.deduplicationEnabled,u=e.deduplicationSynchronous,d=e.webhooksEnabled,h=e.webhooksClientTraceId,f=e.webhooksStripSpecialCharacters,p=e.webhooksSendInputImages,m=e.webhooksSendProcessedImages,g=e.timeoutDurationMs,v=void 0===g?15e3:g,y=e.skipSuccessScreen,w=void 0!==y&&y,x=e.onBeforeSubmit,E=e.onComplete,C=e.onEnrolled,k=e.onDenied,S=e.onExitCapture,T=e.onExitAfterFailure,I=e.captureAdditionalDocuments,R=void 0===I?[]:I,D=e.captureSignature,A=void 0!==D&&D,N=e.captureSignatureVideo,_=void 0!==N&&N,F=e.theme,M=void 0===F?"default":F,P=e.assets,L=void 0===P?{}:P,B=e.classNames,O=void 0===B?{}:B,U=e.colors,j=void 0===U?{}:U,z=e.verbiage,G=void 0===z?{}:z,$=e.geolocationEnabled,V=void 0===$||$,q=e.geolocationRequired,W=void 0!==q&&q,H=e.debugMode,K=void 0!==H&&H;Bi(void 0===a?"auto":a);var Y=t.useMemo((function(){return{onExitCapture:S,onExitAfterFailure:T,timeoutDurationMs:v,skipSuccessScreen:w,assets:L.faceLiveness,classNames:O.faceLiveness,colors:j.faceLiveness,verbiage:G.faceLiveness,debugMode:K}}),[L.faceLiveness,O.faceLiveness,j.faceLiveness,K,T,S,w,v,G.faceLiveness]),X=t.useMemo((function(){return{documents:R,classNames:O.additionalDocumentCapture,verbiage:G.additionalDocumentCapture}}),[R,O.additionalDocumentCapture,G.additionalDocumentCapture]),J=t.useMemo((function(){return{classNames:O.signatureCapture,verbiage:G.signatureCapture}}),[O.signatureCapture,G.signatureCapture]),Z=t.useMemo((function(){return{onExitCapture:S,skipSuccessScreen:w,classNames:O.videoSignatureCapture,colors:j.videoSignatureCapture,verbiage:G.videoSignatureCapture,debugMode:K}}),[O.videoSignatureCapture,j.videoSignatureCapture,K,S,w,G.videoSignatureCapture]),Q=t.useCallback((function(e,t){null==E||E(e,t),"Customer Onboarded"===e.resultData.verificationResult?null==C||C(e,t):null==k||k(e,t)}),[C,E,k]);return s.default.createElement(py,{theme:M},s.default.createElement(ke,{action:b.ENROLL,url:i,token:r,companyId:o,enrollmentId:n,needImmediateResponse:l,deduplicationEnabled:c,deduplicationSynchronous:u,webhooksEnabled:d,webhooksClientTraceId:h,webhooksStripSpecialCharacters:f,webhooksSendInputImages:p,webhooksSendProcessedImages:m,onBeforeSubmit:x,onResponseReceived:Q,geolocationEnabled:V,geolocationRequired:W},s.default.createElement(hy,{checks:t.useMemo((function(){return["FaceLiveness"]}),[]),faceLivenessProps:Y,additionalDocumentCaptureProps:X,signatureCaptureProps:J,videoSignatureCaptureProps:Z,captureSignature:A,captureSignatureVideo:_,debugMode:K})))};function Yy(e,t,n){return n||(n=t,t=void 0),function(e,t){if("string"==typeof t){var n=document.querySelector(t);if(!n)throw new Error("targetElement ".concat(t," not found"));t=n}else t||(t=document.createElement("div"),document.body.append(t));var a=c.createRoot(t);if(a.render(s.default.createElement(U,null,e)),"remove"in t){var r=t.remove;t.remove=function(){try{a.unmount(),r()}catch(e){}}}return t}(s.default.createElement(e,p({},n)),t)}Pi.use(Jr).use(te).init({resources:Li,detection:{caches:[]},fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}});var Xy=function(e,t){return Yy(my,e,t)},Jy=function(e,t){return Yy(gy,e,t)},Zy=function(e,t){return Yy(vy,e,t)},Qy=function(e,t){return Yy(yy,e,t)},eb=function(e,t){return Yy(Ky,e,t)},tb=function(e,t){return Yy(Ny,e,t)},nb=function(e,t){return Yy(Vy,e,t)},ab=function(e,t){return Yy(qy,e,t)},rb=function(e,t){return Yy(Wy,e,t)};globalThis.IDmissionSDK={renderIdValidation:Xy,renderFaceValidation:Jy,renderIdAndFaceValidation:Zy,renderCustomerIdAndBiometricsEnrollment:Qy,renderCustomerBiometricsEnrollment:eb,renderCustomerVerification:tb,renderCustomerIdentification:nb,renderSignatureKYC:ab,renderVideoIdValidation:rb,preloadModels:Hy,themes:fy,version:x,ready:!0};var ib=function(){return ib=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},ib.apply(this,arguments)},ob={lines:12,length:7,width:5,radius:10,scale:1,corners:1,color:"#000",fadeColor:"transparent",animation:"spinner-line-fade-default",rotate:0,direction:1,speed:1,zIndex:2e9,className:"spinner",top:"50%",left:"50%",shadow:"0 0 1px transparent",position:"absolute"},sb=function(){function e(e){void 0===e&&(e={}),this.opts=ib(ib({},ob),e)}return e.prototype.spin=function(e){return this.stop(),this.el=document.createElement("div"),this.el.className=this.opts.className,this.el.setAttribute("role","progressbar"),lb(this.el,{position:this.opts.position,width:0,zIndex:this.opts.zIndex,left:this.opts.left,top:this.opts.top,transform:"scale("+this.opts.scale+")"}),e&&e.insertBefore(this.el,e.firstChild||null),function(e,t){var n=Math.round(t.corners*t.width*500)/1e3+"px",a="none";!0===t.shadow?a="0 2px 4px #000":"string"==typeof t.shadow&&(a=t.shadow);for(var r=function(e){for(var t=/^\s*([a-zA-Z]+\s+)?(-?\d+(\.\d+)?)([a-zA-Z]*)\s+(-?\d+(\.\d+)?)([a-zA-Z]*)(.*)$/,n=[],a=0,r=e.split(",");a<r.length;a++){var i=r[a].match(t);if(null!==i){var o=+i[2],s=+i[5],l=i[4],c=i[7];0!==o||l||(l=c),0!==s||c||(c=l),l===c&&n.push({prefix:i[1]||"",x:o,y:s,xUnits:l,yUnits:c,end:i[8]})}}return n}(a),i=0;i<t.lines;i++){var o=~~(360/t.lines*i+t.rotate),s=lb(document.createElement("div"),{position:"absolute",top:-t.width/2+"px",width:t.length+t.width+"px",height:t.width+"px",background:cb(t.fadeColor,i),borderRadius:n,transformOrigin:"left",transform:"rotate("+o+"deg) translateX("+t.radius+"px)"}),l=i*t.direction/t.lines/t.speed;l-=1/t.speed;var c=lb(document.createElement("div"),{width:"100%",height:"100%",background:cb(t.color,i),borderRadius:n,boxShadow:ub(r,o),animation:1/t.speed+"s linear "+l+"s infinite "+t.animation});s.appendChild(c),e.appendChild(s)}}(this.el,this.opts),this},e.prototype.stop=function(){return this.el&&("undefined"!=typeof requestAnimationFrame?cancelAnimationFrame(this.animateId):clearTimeout(this.animateId),this.el.parentNode&&this.el.parentNode.removeChild(this.el),this.el=void 0),this},e}();function lb(e,t){for(var n in t)e.style[n]=t[n];return e}function cb(e,t){return"string"==typeof e?e:e[t%e.length]}function ub(e,t){for(var n=[],a=0,r=e;a<r.length;a++){var i=r[a],o=db(i.x,i.y,t);n.push(i.prefix+o[0]+i.xUnits+" "+o[1]+i.yUnits+i.end)}return n.join(", ")}function db(e,t,n){var a=n*Math.PI/180,r=Math.sin(a),i=Math.cos(a);return[Math.round(1e3*(e*i+t*r))/1e3,Math.round(1e3*(-e*r+t*i))/1e3]}var hb=[];function fb(e){if(void 0!==e){if(e.classList.contains("ladda-button")||e.classList.add("ladda-button"),e.hasAttribute("data-style")||e.setAttribute("data-style","expand-right"),!e.querySelector(".ladda-label")){var t=document.createElement("span");t.className="ladda-label",function(e,t){var n=document.createRange();n.selectNodeContents(e),n.surroundContents(t),e.appendChild(t)}(e,t)}var n,a,r=e.querySelector(".ladda-spinner");r||((r=document.createElement("span")).className="ladda-spinner"),e.appendChild(r);var i={start:function(){return a||(a=function(e){var t,n,a=e.offsetHeight;0===a&&(a=parseFloat(window.getComputedStyle(e).height));a>32&&(a*=.8);e.hasAttribute("data-spinner-size")&&(a=parseInt(e.getAttribute("data-spinner-size"),10));e.hasAttribute("data-spinner-color")&&(t=e.getAttribute("data-spinner-color"));e.hasAttribute("data-spinner-lines")&&(n=parseInt(e.getAttribute("data-spinner-lines"),10));var r=.2*a;return new sb({color:t||"#fff",lines:n||12,radius:r,length:.6*r,width:r<7?2:3,animation:"ladda-spinner-line-fade",zIndex:"auto",top:"auto",left:"auto",className:""})}(e)),e.disabled=!0,e.setAttribute("data-loading",""),clearTimeout(n),a.spin(r),this.setProgress(0),this},startAfter:function(e){return clearTimeout(n),n=setTimeout((function(){i.start()}),e),this},stop:function(){return i.isLoading()&&(e.disabled=!1,e.removeAttribute("data-loading")),clearTimeout(n),a&&(n=setTimeout((function(){a.stop()}),1e3)),this},toggle:function(){return this.isLoading()?this.stop():this.start()},setProgress:function(t){t=Math.max(Math.min(t,1),0);var n=e.querySelector(".ladda-progress");0===t&&n&&n.parentNode?n.parentNode.removeChild(n):(n||((n=document.createElement("div")).className="ladda-progress",e.appendChild(n)),n.style.width=(t||0)*e.offsetWidth+"px")},isLoading:function(){return e.hasAttribute("data-loading")},remove:function(){clearTimeout(n),e.disabled=!1,e.removeAttribute("data-loading"),a&&(a.stop(),a=null),hb.splice(hb.indexOf(i),1)}};return hb.push(i),i}console.warn("Ladda button target must be defined.")}function pb(e,t){if("function"==typeof e.addEventListener){var n=fb(e),a=-1;e.addEventListener("click",(function(){var r=!0,i=function(e,t){for(;e.parentNode&&e.tagName!==t;)e=e.parentNode;return t===e.tagName?e:void 0}(e,"FORM");void 0===i||i.hasAttribute("novalidate")||"function"==typeof i.checkValidity&&(r=i.checkValidity()),r&&(n.startAfter(1),"number"==typeof t.timeout&&(clearTimeout(a),a=setTimeout(n.stop,t.timeout)),"function"==typeof t.callback&&t.callback.apply(null,[n]))}),!1)}}var mb=Object.freeze({__proto__:null,create:fb,bind:function(e,t){var n;if("string"==typeof e)n=document.querySelectorAll(e);else{if("object"!=typeof e)throw new Error("target must be string or object");n=[e]}t=t||{};for(var a=0;a<n.length;a++)pb(n[a],t)},stopAll:function(){for(var e=0,t=hb.length;e<t;e++)hb[e].stop()}});e.CustomerBiometricsEnrollment=Ky,e.CustomerIdAndBiometricsEnrollment=yy,e.CustomerIdentification=Vy,e.CustomerVerification=Ny,e.FaceValidation=gy,e.IdAndFaceValidation=vy,e.IdValidation=my,e.SignatureKYC=qy,e.VideoIdValidation=Wy,e.preloadModels=Hy,e.renderCustomerBiometricsEnrollment=eb,e.renderCustomerIdAndBiometricsEnrollment=Qy,e.renderCustomerIdentification=nb,e.renderCustomerVerification=tb,e.renderFaceValidation=Jy,e.renderIdAndFaceValidation=Zy,e.renderIdValidation=Xy,e.renderSignatureKYC=ab,e.renderVideoIdValidation=rb,e.themes=fy,Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=sdk2.umd.production.js.map