@transmitsecurity/platform-web-sdk 1.16.2 → 1.17.1

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.
Files changed (77) hide show
  1. package/CHANGELOG.md +23 -2
  2. package/README.md +69 -48
  3. package/dist/web-sdk-drs+idv+webauthn+ido.js +2 -2
  4. package/dist/web-sdk.d.ts +4 -16
  5. package/package.json +12 -13
  6. package/build/drs-entry.d.ts +0 -20
  7. package/build/drs-entry.js +0 -19
  8. package/build/drs-only.d.ts +0 -22
  9. package/build/drs-only.js +0 -25
  10. package/build/drs.d.ts +0 -28
  11. package/build/drs.js +0 -45
  12. package/build/ido/idoImpl.d.ts +0 -2
  13. package/build/ido/idoImpl.js +0 -4
  14. package/build/ido/index.d.ts +0 -7
  15. package/build/ido/index.js +0 -9
  16. package/build/ido-entry.d.ts +0 -17
  17. package/build/ido-entry.js +0 -19
  18. package/build/ido.d.ts +0 -18
  19. package/build/ido.js +0 -27
  20. package/build/idv-entry.d.ts +0 -17
  21. package/build/idv-entry.js +0 -19
  22. package/build/idv.d.ts +0 -18
  23. package/build/idv.js +0 -27
  24. package/build/initialize-only.d.ts +0 -7
  25. package/build/initialize-only.js +0 -40
  26. package/build/initialize.d.ts +0 -1
  27. package/build/initialize.js +0 -2
  28. package/build/mainExport.d.ts +0 -16
  29. package/build/mainExport.js +0 -43
  30. package/build/sdk-factory.d.ts +0 -109
  31. package/build/sdk-factory.js +0 -108
  32. package/build/shared-state.d.ts +0 -4
  33. package/build/shared-state.js +0 -32
  34. package/build/webauthn-entry.d.ts +0 -19
  35. package/build/webauthn-entry.js +0 -19
  36. package/build/webauthn.d.ts +0 -24
  37. package/build/webauthn.js +0 -44
  38. package/bundler-config.json +0 -14
  39. package/dist/docs/.nojekyll +0 -1
  40. package/dist/docs/README.md +0 -72
  41. package/dist/docs/enums/ErrorCode.md +0 -113
  42. package/dist/docs/interfaces/ActionEventOptions.md +0 -44
  43. package/dist/docs/interfaces/ActionResponse.md +0 -9
  44. package/dist/docs/interfaces/AuthenticationAutofillActivateHandlers.md +0 -61
  45. package/dist/docs/interfaces/AutofillHandlers.md +0 -50
  46. package/dist/docs/interfaces/CrossDeviceController.md +0 -27
  47. package/dist/docs/interfaces/SdkError.md +0 -28
  48. package/dist/docs/interfaces/WebauthnApis.md +0 -73
  49. package/dist/docs/interfaces/WebauthnAuthenticationFlows.md +0 -52
  50. package/dist/docs/interfaces/WebauthnCrossDeviceFlows.md +0 -107
  51. package/dist/docs/interfaces/WebauthnCrossDeviceRegistrationOptions.md +0 -23
  52. package/dist/docs/interfaces/WebauthnRegistrationOptions.md +0 -55
  53. package/dist/docs/interfaces/initConfigParams.md +0 -7
  54. package/dist/docs/modules/drs.md +0 -92
  55. package/dist/docs/modules/idv.md +0 -106
  56. package/dist/docs/modules/webauthn.md +0 -197
  57. package/dist/docs/modules.md +0 -146
  58. package/dist/drs.cjs +0 -1
  59. package/dist/drs.d.ts +0 -248
  60. package/dist/drs.js +0 -1
  61. package/dist/ido.cjs +0 -3
  62. package/dist/ido.d.ts +0 -57
  63. package/dist/ido.js +0 -3
  64. package/dist/idv.cjs +0 -1
  65. package/dist/idv.d.ts +0 -69
  66. package/dist/idv.js +0 -1
  67. package/dist/index.cjs +0 -3
  68. package/dist/index.esm.js +0 -3
  69. package/dist/index.umd.js +0 -3
  70. package/dist/ts-platform-websdk.js +0 -3
  71. package/dist/webauthn.cjs +0 -1
  72. package/dist/webauthn.d.ts +0 -463
  73. package/dist/webauthn.js +0 -1
  74. package/scripts/make-semver-aliases.sh +0 -11
  75. package/scripts/upload-dist.sh +0 -9
  76. package/src/mainExport.ts +0 -75
  77. package/src/tsconfig.json +0 -14
@@ -1,197 +0,0 @@
1
- # Namespace: webauthn
2
-
3
- ## Type Aliases
4
-
5
- ### ApiCrossDeviceStatusResponse
6
-
7
- Ƭ **ApiCrossDeviceStatusResponse**: `ApiCrossDeviceStatusResponse`
8
-
9
- ___
10
-
11
- ### AttachDeviceResult
12
-
13
- Ƭ **AttachDeviceResult**: `AttachDeviceResult`
14
-
15
- ___
16
-
17
- ### AuthenticationAutofillActivateHandlers
18
-
19
- Ƭ **AuthenticationAutofillActivateHandlers**: [`AuthenticationAutofillActivateHandlers`](../interfaces/AuthenticationAutofillActivateHandlers.md)
20
-
21
- ___
22
-
23
- ### AutofillHandlers
24
-
25
- Ƭ **AutofillHandlers**: [`AutofillHandlers`](../interfaces/AutofillHandlers.md)
26
-
27
- ___
28
-
29
- ### CrossDeviceAuthenticationHandlers
30
-
31
- Ƭ **CrossDeviceAuthenticationHandlers**: `CrossDeviceAuthenticationHandlers`
32
-
33
- ___
34
-
35
- ### CrossDeviceController
36
-
37
- Ƭ **CrossDeviceController**: [`CrossDeviceController`](../interfaces/CrossDeviceController.md)
38
-
39
- ___
40
-
41
- ### CrossDeviceRegistrationHandlers
42
-
43
- Ƭ **CrossDeviceRegistrationHandlers**: `CrossDeviceRegistrationHandlers`
44
-
45
- ___
46
-
47
- ### SdkError
48
-
49
- Ƭ **SdkError**: [`SdkError`](../interfaces/SdkError.md)
50
-
51
- ___
52
-
53
- ### WebauthnApis
54
-
55
- Ƭ **WebauthnApis**: [`WebauthnApis`](../interfaces/WebauthnApis.md)
56
-
57
- ___
58
-
59
- ### WebauthnApprovalFlows
60
-
61
- Ƭ **WebauthnApprovalFlows**: `WebauthnApprovalFlows`
62
-
63
- ___
64
-
65
- ### WebauthnAuthenticationFlows
66
-
67
- Ƭ **WebauthnAuthenticationFlows**: [`WebauthnAuthenticationFlows`](../interfaces/WebauthnAuthenticationFlows.md)
68
-
69
- ___
70
-
71
- ### WebauthnAuthenticationOptions
72
-
73
- Ƭ **WebauthnAuthenticationOptions**: `WebauthnAuthenticationOptions`
74
-
75
- ___
76
-
77
- ### WebauthnCrossDeviceFlows
78
-
79
- Ƭ **WebauthnCrossDeviceFlows**: [`WebauthnCrossDeviceFlows`](../interfaces/WebauthnCrossDeviceFlows.md)
80
-
81
- ___
82
-
83
- ### WebauthnCrossDeviceRegistrationOptions
84
-
85
- Ƭ **WebauthnCrossDeviceRegistrationOptions**: [`WebauthnCrossDeviceRegistrationOptions`](../interfaces/WebauthnCrossDeviceRegistrationOptions.md)
86
-
87
- ___
88
-
89
- ### WebauthnCrossDeviceStatus
90
-
91
- Ƭ **WebauthnCrossDeviceStatus**: `WebauthnCrossDeviceStatus`
92
-
93
- ___
94
-
95
- ### WebauthnRegistrationOptions
96
-
97
- Ƭ **WebauthnRegistrationOptions**: [`WebauthnRegistrationOptions`](../interfaces/WebauthnRegistrationOptions.md)
98
-
99
- ## Variables
100
-
101
- ### WebauthnCrossDeviceStatus
102
-
103
- • **WebauthnCrossDeviceStatus**: typeof `WebauthnCrossDeviceStatus`
104
-
105
- ___
106
-
107
- ### approve
108
-
109
- • `Const` **approve**: typeof `approve`
110
-
111
- ___
112
-
113
- ### authenticate
114
-
115
- • `Const` **authenticate**: typeof [`authenticate`](../modules.md#authenticate)
116
-
117
- ___
118
-
119
- ### crossDevice
120
-
121
- • `Const` **crossDevice**: typeof [`crossDevice`](../modules.md#crossdevice)
122
-
123
- ## Functions
124
-
125
- ### getDefaultPaths
126
-
127
- ▸ **getDefaultPaths**(): [`WebauthnApis`](../interfaces/WebauthnApis.md)
128
-
129
- Returns the default API paths for webauthn
130
-
131
- #### Returns
132
-
133
- [`WebauthnApis`](../interfaces/WebauthnApis.md)
134
-
135
- ___
136
-
137
- ### isAutofillSupported
138
-
139
- ▸ **isAutofillSupported**(): `Promise`<`boolean`\>
140
-
141
- Indicates whether this browser supports Passkey Autofill
142
-
143
- #### Returns
144
-
145
- `Promise`<`boolean`\>
146
-
147
- ___
148
-
149
- ### isPlatformAuthenticatorSupported
150
-
151
- ▸ **isPlatformAuthenticatorSupported**(): `Promise`<`boolean`\>
152
-
153
- Indicates whether this browser supports WebAuthn, and has a platform authenticator
154
-
155
- #### Returns
156
-
157
- `Promise`<`boolean`\>
158
-
159
- ___
160
-
161
- ### register
162
-
163
- ▸ **register**(`username`, `options?`): `Promise`<`string`\>
164
-
165
- Invokes a WebAuthn credential registration for the specified user, including prompting the user for biometrics.
166
- If registration is completed successfully, this call will return a promise that resolves to the credential result, which is an object encoded as a base64 string. This encoded result should then be passed to the relevant backend registration endpoint to complete the registration for either a [logged-in user](/openapi/user/backend-webauthn/#operation/webauthn-registration) or [logged-out user](/openapi/user/backend-webauthn/#operation/webauthn-registration-external).
167
-
168
- If registration fails, an SdkError will be thrown.
169
-
170
- **`Throws`**
171
-
172
- [NotInitialized](../enums/ErrorCode.md#notinitialized)
173
-
174
- **`Throws`**
175
-
176
- [RegistrationFailed](../enums/ErrorCode.md#registrationfailed)
177
-
178
- **`Throws`**
179
-
180
- [RegistrationCanceled](../enums/ErrorCode.md#registrationcanceled)
181
-
182
- #### Parameters
183
-
184
- | Name | Type | Description |
185
- | :------ | :------ | :------ |
186
- | `username` | `string` | WebAuthn username to register |
187
- | `options?` | [`WebauthnRegistrationOptions`](../interfaces/WebauthnRegistrationOptions.md) | Additional configuration for registration flow |
188
-
189
- #### Returns
190
-
191
- `Promise`<`string`\>
192
-
193
- ## References
194
-
195
- ### ErrorCode
196
-
197
- Re-exports [ErrorCode](../enums/ErrorCode.md)
@@ -1,146 +0,0 @@
1
- # Transmit Security Web SDK API Reference
2
-
3
- ## Interfaces
4
-
5
- - [ActionResponse](interfaces/ActionResponse.md)
6
- - [ActionEventOptions](interfaces/ActionEventOptions.md)
7
- - [WebauthnApis](interfaces/WebauthnApis.md)
8
- - [CrossDeviceController](interfaces/CrossDeviceController.md)
9
- - [WebauthnCrossDeviceRegistrationOptions](interfaces/WebauthnCrossDeviceRegistrationOptions.md)
10
- - [WebauthnRegistrationOptions](interfaces/WebauthnRegistrationOptions.md)
11
- - [WebauthnCrossDeviceFlows](interfaces/WebauthnCrossDeviceFlows.md)
12
- - [SdkError](interfaces/SdkError.md)
13
- - [AuthenticationAutofillActivateHandlers](interfaces/AuthenticationAutofillActivateHandlers.md)
14
- - [AutofillHandlers](interfaces/AutofillHandlers.md)
15
- - [WebauthnAuthenticationFlows](interfaces/WebauthnAuthenticationFlows.md)
16
- - [initConfigParams](interfaces/initConfigParams.md)
17
-
18
- ## Namespaces
19
-
20
- - [drs](modules/drs.md)
21
- - [idv](modules/idv.md)
22
- - [webauthn](modules/webauthn.md)
23
-
24
- ## Enumerations
25
-
26
- - [ErrorCode](enums/ErrorCode.md)
27
-
28
- ## Variables
29
-
30
- ### authenticate
31
-
32
- • `Const` **authenticate**: [`WebauthnAuthenticationFlows`](interfaces/WebauthnAuthenticationFlows.md)
33
-
34
- Returns the authentication flows for webauthn
35
-
36
- ___
37
-
38
- ### crossDevice
39
-
40
- • `Const` **crossDevice**: [`WebauthnCrossDeviceFlows`](interfaces/WebauthnCrossDeviceFlows.md)
41
-
42
- Returns webauthn cross device flows
43
-
44
- ___
45
-
46
- ### ido
47
-
48
- • `Const` **ido**: `IdoSdk`
49
-
50
- ___
51
-
52
- ### default
53
-
54
- • `Const` **default**: `TSWebSDK`
55
-
56
- ___
57
-
58
- ### PACKAGE\_VERSION
59
-
60
- • `Const` **PACKAGE\_VERSION**: ``"1.16.1"``
61
-
62
- ## Functions
63
-
64
- ### register
65
-
66
- ▸ **register**(`username`, `options?`): `Promise`<`string`\>
67
-
68
- Invokes a WebAuthn credential registration for the specified user, including prompting the user for biometrics.
69
- If registration is completed successfully, this call will return a promise that resolves to the credential result, which is an object encoded as a base64 string. This encoded result should then be passed to the relevant backend registration endpoint to complete the registration for either a [logged-in user](/openapi/user/backend-webauthn/#operation/webauthn-registration) or [logged-out user](/openapi/user/backend-webauthn/#operation/webauthn-registration-external).
70
-
71
- If registration fails, an SdkError will be thrown.
72
-
73
- **`Throws`**
74
-
75
- [NotInitialized](enums/ErrorCode.md#notinitialized)
76
-
77
- **`Throws`**
78
-
79
- [RegistrationFailed](enums/ErrorCode.md#registrationfailed)
80
-
81
- **`Throws`**
82
-
83
- [RegistrationCanceled](enums/ErrorCode.md#registrationcanceled)
84
-
85
- #### Parameters
86
-
87
- | Name | Type | Description |
88
- | :------ | :------ | :------ |
89
- | `username` | `string` | WebAuthn username to register |
90
- | `options?` | [`WebauthnRegistrationOptions`](interfaces/WebauthnRegistrationOptions.md) | Additional configuration for registration flow |
91
-
92
- #### Returns
93
-
94
- `Promise`<`string`\>
95
-
96
- ___
97
-
98
- ### isPlatformAuthenticatorSupported
99
-
100
- ▸ **isPlatformAuthenticatorSupported**(): `Promise`<`boolean`\>
101
-
102
- Indicates whether this browser supports WebAuthn, and has a platform authenticator
103
-
104
- #### Returns
105
-
106
- `Promise`<`boolean`\>
107
-
108
- ___
109
-
110
- ### isAutofillSupported
111
-
112
- ▸ **isAutofillSupported**(): `Promise`<`boolean`\>
113
-
114
- Indicates whether this browser supports Passkey Autofill
115
-
116
- #### Returns
117
-
118
- `Promise`<`boolean`\>
119
-
120
- ___
121
-
122
- ### getDefaultPaths
123
-
124
- ▸ **getDefaultPaths**(): [`WebauthnApis`](interfaces/WebauthnApis.md)
125
-
126
- Returns the default API paths for webauthn
127
-
128
- #### Returns
129
-
130
- [`WebauthnApis`](interfaces/WebauthnApis.md)
131
-
132
- ___
133
-
134
- ### initialize
135
-
136
- ▸ **initialize**(`params`): `void`
137
-
138
- #### Parameters
139
-
140
- | Name | Type |
141
- | :------ | :------ |
142
- | `params` | [`initConfigParams`](interfaces/initConfigParams.md) |
143
-
144
- #### Returns
145
-
146
- `void`
package/dist/drs.cjs DELETED
@@ -1 +0,0 @@
1
- "undefined"==typeof globalThis&&("undefined"!=typeof window?(window.globalThis=window,window.global=window):"undefined"!=typeof self&&(self.globalThis=self,self.global=self));const t=Symbol("MODULE_INITIALIZED"),e=new Map;function i(t,i){var n,r;null===(n=e.get(t))||void 0===n||n.forEach((r=t=>t(i),function(){try{return r(...arguments)}catch(t){console.log(t)}}))}let n=null;function r(t){n=t}var a=Object.freeze({__proto__:null,getInitConfig:function(){return n},get initConfig(){return n},setInitConfig:r});function s(e){r(e),i(t,void 0)}var o=Object.freeze({__proto__:null,initialize:s});function c(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,n)}return i}function l(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?c(Object(i),!0).forEach((function(e){d(t,e,i[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):c(Object(i)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))}))}return t}function x(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,e||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==typeof e?e:String(e)}function d(t,e,i){return(e=x(e))in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function h(t,e){if(null==t)return{};var i,n,r=function(t,e){if(null==t)return{};var i,n,r={},a=Object.keys(t);for(n=0;n<a.length;n++)i=a[n],e.indexOf(i)>=0||(r[i]=t[i]);return r}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n<a.length;n++)i=a[n],e.indexOf(i)>=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(r[i]=t[i])}return r}function u(t,e){return Object.entries(e).reduce(((e,i)=>{let[n,r]=i;return l(l({},e),{},{[n]:f.isPrototypeOf(r)?new r(t.slug):"function"==typeof r?r.bind(t):"object"==typeof r&&!Array.isArray(r)&&r?u(t,r):r})}),{})}class f{constructor(t){this.slug=t}static create(t){return class extends f{constructor(e){super(e),Object.assign(this,u(this,t(this)))}}}}var g=Object.freeze({__proto__:null,Agent:f}),_=Object.freeze({__proto__:null,MODULE_INITIALIZED:t,emit:i,off:function(t,i){const n=e.get(t);if(!n)return;const r=n.indexOf(i);-1!==r&&n.splice(r,1)},on:function(t,i){var n;e.has(t)?null===(n=e.get(t))||void 0===n||n.push(i):e.set(t,[i])}});function p(t,e){const i=!t||"object"!=typeof t||Array.isArray(t)?{}:t;return[e.reduce(((t,e)=>{if(e in t){const i=t[e];if(null!==i&&"object"==typeof i&&!Array.isArray(i))return i}const i={};return t[e]=i,i}),i),i]}function y(t,e){let i=t;return e.every((t=>!(!i||"object"!=typeof i||Array.isArray(i)||!(t in i))&&(i=i[t],!0)),t)}const w="tsec",v="general";function m(t){return t?v:n.clientId}function b(t){return function(t){if(!t)return{};try{return JSON.parse(t)}catch(t){return{}}}((t?sessionStorage:localStorage).getItem(w))}function S(t,e){const i=t?sessionStorage:localStorage,n=e(b(t));i.setItem(w,JSON.stringify(n))}var E=Object.freeze({__proto__:null,COMMON_STORAGE_KEY:w,GENERAL_ID_KEY:v,getValue:function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=m(!!e.isGeneral),n=b(!!e.sessionOnly),[r]=p(n,[this.slug.toString(),i]);return r[t]},hasValue:function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=m(!!e.isGeneral),n=b(!!e.sessionOnly);return y(n,[this.slug.toString(),i,t])},removeValue:function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=m(!!e.isGeneral);S(!!e.sessionOnly,(e=>{const[n,r]=p(e,[this.slug.toString(),i]);return delete n[t],r}))},setValue:function(t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=m(!!i.isGeneral);S(!!i.sessionOnly,(i=>{const[r,a]=p(i,[this.slug.toString(),n]);return r[t]=e,a}))}});const D="RSA-PSS",I=async(t,e)=>await window.crypto.subtle.generateKey({name:t,modulusLength:2048,publicExponent:new Uint8Array([1,0,1]),hash:"SHA-256"},!1,e),T=async()=>await I("RSA-OAEP",["encrypt","decrypt"]),k=async()=>await I(D,["sign"]),A=async(t,e)=>{const i=(new TextEncoder).encode(e);return await window.crypto.subtle.sign({name:D,saltLength:32},t,i)};class P{constructor(t,e,i){this.slug=t,this.dbName=e,this.dbVersion=i}queryObjectStore(t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=(window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB||window.shimIndexedDB).open(`${this.slug}:${this.dbName}`,this.dbVersion||1);n.onupgradeneeded=()=>{var e;const i=n.result;(null===(e=null==i?void 0:i.objectStoreNames)||void 0===e?void 0:e.contains)&&!i.objectStoreNames.contains(t)&&i.createObjectStore(t,{keyPath:"key"})},n.onsuccess=()=>{const r=n.result,a=r.transaction(t,(null==i?void 0:i.operation)||"readwrite"),s=a.objectStore(t);e(s),a.oncomplete=()=>{r.close()}}}put(t,e,i){return new Promise(((n,r)=>{this.queryObjectStore(t,(t=>{const a=t.put({key:e,value:i});a.onsuccess=()=>{n(a.result)},a.onerror=t=>{r("Failed adding item to objectStore, err: "+t)}}))}))}add(t,e,i){return new Promise(((n,r)=>{this.queryObjectStore(t,(t=>{const a=t.add({key:e,value:i});a.onsuccess=()=>{n(a.result)},a.onerror=t=>{const e=t.target.error;r(e)}}))}))}get(t,e){return new Promise(((i,n)=>{this.queryObjectStore(t,(t=>{const r=t.get(e);r.onsuccess=()=>{var t;r.result?i(null===(t=r.result)||void 0===t?void 0:t.value):i(void 0)},r.onerror=t=>{n("Failed adding item to objectStore, err: "+t)}}))}))}getAll(t,e){return new Promise(((i,n)=>{this.queryObjectStore(t,(t=>{const r=t.getAll(null,e);r.onsuccess=()=>{if(r.result){const t=r.result;(null==t?void 0:t.length)?i(t.map((t=>null==t?void 0:t.value))):i(t)}else i([])},r.onerror=t=>{n("Failed getting items, err: "+t)}}))}))}delete(t,e){return new Promise(((i,n)=>{this.queryObjectStore(t,(t=>{const r=t.delete(e);r.onsuccess=()=>{i()},r.onerror=t=>{n(`Failed deleting key: '${e}' from objectStore, err: `+t)}}))}))}clear(t){return new Promise(((e,i)=>{this.queryObjectStore(t,(t=>{const n=t.clear();n.onsuccess=()=>{e()},n.onerror=t=>{i("Failed clearing objectStore, err: "+t)}}))}))}}const C="platform",M="init",O="completed",R="RSA2048",K=[M,O];class L{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"sign",i=arguments.length>2?arguments[2]:void 0;var r,a,s,o;this.agent=t,this.keysType=e,this.options=i,this._extractingKeysPromise=null;const c=!(null===(r=this.options)||void 0===r?void 0:r.productScope);this.keysDatabaseName=c||!(null===(a=this.options)||void 0===a?void 0:a.indexedDBName)?"ts_crypto_binding":this.options.indexedDBName,this.dbVersion=c?1:(null===(s=this.options)||void 0===s?void 0:s.dbVersion)||1,this.keysStoreName=c||!(null===(o=this.options)||void 0===o?void 0:o.keysStoreName)?"identifiers_store":this.options.keysStoreName,this.indexedDBClient=new P(c?C:t.slug,this.keysDatabaseName,this.dbVersion),this.indexedDBClientFallback=new P((c?C:t.slug)+`:${n.clientId}`,this.keysDatabaseName,this.dbVersion)}getKeysRecordKey(){return`${this.keysType}_keys`}getRotatedKeysRecordKey(){return`rotated_${this.keysType}_keys`}getRotatedKeysRecordKeyPending(){return`rotated_pending_${this.keysType}_keys`}arrayBufferToBase64(t){return window.btoa(String.fromCharCode(...new Uint8Array(t)))}async getPKRepresentations(t){const e=await crypto.subtle.exportKey("spki",t);return{arrayBufferKey:e,base64Key:this.arrayBufferToBase64(e)}}async generateKeyPair(){return"sign"==this.keysType?await k():await T()}async calcKeyIdentifier(t){const e=await crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(e)).map((t=>t.toString(16).padStart(2,"0"))).join("")}async extractKeysData(){if(this._extractingKeysPromise)return this._extractingKeysPromise;this._extractingKeysPromise=(async()=>{var t,e;const i=(null===(e=null===(t=this.options)||void 0===t?void 0:t.keyRotation)||void 0===e?void 0:e.isEnabled)?await this.getRotatedKeysData():await this.getKeysData(),{base64Key:n}=await this.getPKRepresentations(i.publicKey);return this.publicKeyBase64=n,this.keyIdentifier=i.keyIdentifier,i})();try{return await this._extractingKeysPromise}finally{this._extractingKeysPromise=null}}async generateKeyPairData(t){const e=await this.generateKeyPair(),{arrayBufferKey:i}=await this.getPKRepresentations(e.publicKey),n=t||await this.calcKeyIdentifier(i);return l(l({},e),{},{keyIdentifier:n,createdDate:Date.now()})}shouldKeyBeRotated(t){var e;const i=null===(e=this.options)||void 0===e?void 0:e.keyRotation;if(!(null==i?void 0:i.isEnabled)||!i.expiryDays||void 0===i.startedAt)return!1;const n=24*i.expiryDays*60*60*1e3,r=t.createdDate&&t.createdDate>=i.startedAt?t.createdDate:i.startedAt;return Date.now()-r>n-2592e6}async extractMainKeysData(){return await this.indexedDBClient.get(this.keysStoreName,this.getKeysRecordKey())}async extractFallbackMainKeysData(){return await this.indexedDBClientFallback.get(this.keysStoreName,this.getKeysRecordKey())}async extractRotatedKeysData(){return await this.indexedDBClient.get(this.keysStoreName,this.getRotatedKeysRecordKey())}async extractPendingRotatedKeysData(){return await this.indexedDBClient.get(this.keysStoreName,this.getRotatedKeysRecordKeyPending())}async saveKeyData(t,e){try{return await this.indexedDBClient.add(this.keysStoreName,t,e),e}catch(e){if(e instanceof DOMException&&"ConstraintError"===e.name){const e=await this.indexedDBClient.get(this.keysStoreName,t);if(e)return e}throw e}}async getKeysData(){const t=this.getKeysRecordKey();let e=await this.extractMainKeysData();if(e)return e;if(e=await this.extractFallbackMainKeysData(),e)return this.saveKeyData(t,e);const i=await this.generateKeyPairData();return this.saveKeyData(t,i)}async getOrCreateRotatedKeys(){let t=await this.extractRotatedKeysData();if(!t){const e=this.getRotatedKeysRecordKey(),i=await this.getKeysData(),n=l(l({},i),{},{createdDate:i.createdDate||Date.now()});t=await this.saveKeyData(e,n)}return t}async getRotatedKeysData(){const t=await this.getOrCreateRotatedKeys();if(this.shouldKeyBeRotated(t)){if(!await this.extractPendingRotatedKeysData()){const e=this.getRotatedKeysRecordKeyPending(),i=await this.generateKeyPairData(t.keyIdentifier);await this.saveKeyData(e,i)}}return t}async getPublicData(){return this.publicKeyBase64&&this.keyIdentifier||await this.extractKeysData(),{publicKey:this.publicKeyBase64,keyIdentifier:this.keyIdentifier}}async sign(t){if("sign"==this.keysType){const{privateKey:e}=await this.extractKeysData(),i=await A(e,t);return this.arrayBufferToBase64(i)}throw new Error("keysType must be 'sign' in order to use sign keys")}async clearKeys(){const t=this.getKeysRecordKey();await this.indexedDBClient.delete(this.keysStoreName,t)}getBaseRotationPayload(){return{keyIdentifier:this.keyIdentifier,slot:this.getRotatedKeysRecordKey(),publicKey:this.publicKeyBase64,publicKeyType:R,tenantId:this.options.keyRotation.tenantId}}async getRotationData(){var t,e;if(!(null===(e=null===(t=this.options)||void 0===t?void 0:t.keyRotation)||void 0===e?void 0:e.isEnabled))return;this.publicKeyBase64&&this.keyIdentifier||await this.extractKeysData();const i=await this.extractPendingRotatedKeysData();if(i){const{base64Key:t}=await this.getPKRepresentations(i.publicKey),{privateKey:e}=await this.extractKeysData(),n=l(l({},this.getBaseRotationPayload()),{},{newPublicKey:t,createdDate:i.createdDate,newPublicKeyType:R}),r=JSON.stringify(n);return{data:r,signature:await this.signPayload(r,e)}}const n=await this.extractRotatedKeysData();if(n&&!1===n.confirmed){await this.extractKeysData();const t=JSON.stringify(this.getBaseRotationPayload());return{data:t,signature:await this.signPayload(t,n.privateKey)}}}async signPayload(t,e){const i=await A(e,t);return this.arrayBufferToBase64(i)}async handleRotateResponse(t){if(K.includes(t))if(t===M){const t=await this.extractPendingRotatedKeysData();if(t){await this.indexedDBClient.delete(this.keysStoreName,this.getRotatedKeysRecordKey());const e=l(l({},t),{},{confirmed:!1});await this.indexedDBClient.put(this.keysStoreName,this.getRotatedKeysRecordKey(),e),await this.indexedDBClient.delete(this.keysStoreName,this.getRotatedKeysRecordKeyPending());const{base64Key:i}=await this.getPKRepresentations(t.publicKey);this.publicKeyBase64=i,this.keyIdentifier=t.keyIdentifier}}else if(t===O){const t=await this.extractRotatedKeysData();t&&!1===t.confirmed&&await this.indexedDBClient.put(this.keysStoreName,this.getRotatedKeysRecordKey(),l(l({},t),{},{confirmed:!0}))}}}var N=Object.freeze({__proto__:null,createCryptoBinding:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"sign",e=arguments.length>1?arguments[1]:void 0;return new L(this,t,e)},generateRSAKeyPair:T,generateRSASignKeyPair:k,signAssymetric:A,verifyAssymetric:async(t,e,i)=>{const n=(new TextEncoder).encode(e);return await window.crypto.subtle.verify(D,t,i,n)}}),z=Object.freeze({__proto__:null});const U=f.create((t=>{class e extends Error{constructor(e,i){super(`${t.slug}-${e} ${i}`)}}return{TsError:e,TsInternalError:class extends e{constructor(t){super(t,"Internal error")}}}}));var B=f.create((()=>l({exceptions:U},g)));class F{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];this.agent=t,this.middlewares=e,this.logs=[]}info(t,e){this.pushLog(3,t,e)}warn(t,e){this.pushLog(4,t,e)}error(t,e){this.pushLog(5,t,e)}pushLog(t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.logs.push({timestamp:Date.now(),module:this.agent.slug,severity:t,fields:i,message:e});const n=this.middlewares.map((t=>t(this)));Promise.all(n).catch((()=>{}))}}var j=Object.freeze({__proto__:null,consoleMiddleware:function(t){const e=t.logs[t.logs.length-1];console.log(`${e.severity} ${e.message}`,e.fields)},createSdkLogger:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return new F(this,t)}});function Z(t,e){if(!(null==t?void 0:t.trim()))return"";if(function(t){try{return new URL(t),!0}catch(t){return!1}}(t))return t;const i="http://mock.com",n=new URL(i);n.search=(null==e?void 0:e.toString())||"",n.pathname=t;return n.href.replace(i,"")}const V={"Content-Type":"application/json","X-TS-client-time":(new Date).toUTCString(),"X-TS-ua":navigator.userAgent};function H(t,e,i){var n;const r=(a=e||{},encodeURI(JSON.stringify(a)).split(/%..|./).length-1);var a;return{method:t,headers:l(l(l({},{"X-TS-body-size":String(r)}),V),i||{}),body:null!==(n=e&&JSON.stringify(e||{}))&&void 0!==n?n:void 0}}function G(t,e,i,n,r){const a=Z(t,n),s=H(e,i,r);return fetch(a,s)}async function W(t,e,i,n,r){let a;if(a=await G(t,e,i,n,r),!a.ok)throw new Error("Request failed");return a}var Y=Object.freeze({__proto__:null,httpDelete:async function(t,e){const i=await W(t,"DELETE",void 0,void 0,e);return l(l({data:await i.json()},i),{},{headers:i.headers})},httpGet:async function(t,e,i){const n=await W(t,"GET",void 0,e,i);return l(l({data:await n.json()},n),{},{headers:n.headers})},httpPost:async function(t,e,i,n){const r=await W(t,"POST",e,i,n);return l(l({data:await r.json()},r),{},{headers:r.headers})},httpPut:async function(t,e,i,n){const r=await W(t,"PUT",e,i,n);return l(l({data:await r.json()},r),{},{headers:r.headers})},init:H}),q=f.create((()=>({events:_,moduleMetadata:a,mainEntry:o,utils:B,storage:E,crypto:N,indexedDB:z,logger:j,http:Y}))),J={},$={};function X(t){let e=t.length;for(;--e>=0;)t[e]=0}const Q=256,tt=286,et=30,it=15,nt=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),rt=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),at=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),st=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),ot=new Array(576);X(ot);const ct=new Array(60);X(ct);const lt=new Array(512);X(lt);const xt=new Array(256);X(xt);const dt=new Array(29);X(dt);const ht=new Array(et);function ut(t,e,i,n,r){this.static_tree=t,this.extra_bits=e,this.extra_base=i,this.elems=n,this.max_length=r,this.has_stree=t&&t.length}let ft,gt,_t;function pt(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}X(ht);const yt=t=>t<256?lt[t]:lt[256+(t>>>7)],wt=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},vt=(t,e,i)=>{t.bi_valid>16-i?(t.bi_buf|=e<<t.bi_valid&65535,wt(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=i-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=i)},mt=(t,e,i)=>{vt(t,i[2*e],i[2*e+1])},bt=(t,e)=>{let i=0;do{i|=1&t,t>>>=1,i<<=1}while(--e>0);return i>>>1},St=(t,e,i)=>{const n=new Array(16);let r,a,s=0;for(r=1;r<=it;r++)n[r]=s=s+i[r-1]<<1;for(a=0;a<=e;a++){let e=t[2*a+1];0!==e&&(t[2*a]=bt(n[e]++,e))}},Et=t=>{let e;for(e=0;e<tt;e++)t.dyn_ltree[2*e]=0;for(e=0;e<et;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0},Dt=t=>{t.bi_valid>8?wt(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},It=(t,e,i,n)=>{const r=2*e,a=2*i;return t[r]<t[a]||t[r]===t[a]&&n[e]<=n[i]},Tt=(t,e,i)=>{const n=t.heap[i];let r=i<<1;for(;r<=t.heap_len&&(r<t.heap_len&&It(e,t.heap[r+1],t.heap[r],t.depth)&&r++,!It(e,n,t.heap[r],t.depth));)t.heap[i]=t.heap[r],i=r,r<<=1;t.heap[i]=n},kt=(t,e,i)=>{let n,r,a,s,o=0;if(0!==t.last_lit)do{n=t.pending_buf[t.d_buf+2*o]<<8|t.pending_buf[t.d_buf+2*o+1],r=t.pending_buf[t.l_buf+o],o++,0===n?mt(t,r,e):(a=xt[r],mt(t,a+Q+1,e),s=nt[a],0!==s&&(r-=dt[a],vt(t,r,s)),n--,a=yt(n),mt(t,a,i),s=rt[a],0!==s&&(n-=ht[a],vt(t,n,s)))}while(o<t.last_lit);mt(t,256,e)},At=(t,e)=>{const i=e.dyn_tree,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,a=e.stat_desc.elems;let s,o,c,l=-1;for(t.heap_len=0,t.heap_max=573,s=0;s<a;s++)0!==i[2*s]?(t.heap[++t.heap_len]=l=s,t.depth[s]=0):i[2*s+1]=0;for(;t.heap_len<2;)c=t.heap[++t.heap_len]=l<2?++l:0,i[2*c]=1,t.depth[c]=0,t.opt_len--,r&&(t.static_len-=n[2*c+1]);for(e.max_code=l,s=t.heap_len>>1;s>=1;s--)Tt(t,i,s);c=a;do{s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],Tt(t,i,1),o=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=o,i[2*c]=i[2*s]+i[2*o],t.depth[c]=(t.depth[s]>=t.depth[o]?t.depth[s]:t.depth[o])+1,i[2*s+1]=i[2*o+1]=c,t.heap[1]=c++,Tt(t,i,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const i=e.dyn_tree,n=e.max_code,r=e.stat_desc.static_tree,a=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,c=e.stat_desc.max_length;let l,x,d,h,u,f,g=0;for(h=0;h<=it;h++)t.bl_count[h]=0;for(i[2*t.heap[t.heap_max]+1]=0,l=t.heap_max+1;l<573;l++)x=t.heap[l],h=i[2*i[2*x+1]+1]+1,h>c&&(h=c,g++),i[2*x+1]=h,x>n||(t.bl_count[h]++,u=0,x>=o&&(u=s[x-o]),f=i[2*x],t.opt_len+=f*(h+u),a&&(t.static_len+=f*(r[2*x+1]+u)));if(0!==g){do{for(h=c-1;0===t.bl_count[h];)h--;t.bl_count[h]--,t.bl_count[h+1]+=2,t.bl_count[c]--,g-=2}while(g>0);for(h=c;0!==h;h--)for(x=t.bl_count[h];0!==x;)d=t.heap[--l],d>n||(i[2*d+1]!==h&&(t.opt_len+=(h-i[2*d+1])*i[2*d],i[2*d+1]=h),x--)}})(t,e),St(i,l,t.bl_count)},Pt=(t,e,i)=>{let n,r,a=-1,s=e[1],o=0,c=7,l=4;for(0===s&&(c=138,l=3),e[2*(i+1)+1]=65535,n=0;n<=i;n++)r=s,s=e[2*(n+1)+1],++o<c&&r===s||(o<l?t.bl_tree[2*r]+=o:0!==r?(r!==a&&t.bl_tree[2*r]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,a=r,0===s?(c=138,l=3):r===s?(c=6,l=3):(c=7,l=4))},Ct=(t,e,i)=>{let n,r,a=-1,s=e[1],o=0,c=7,l=4;for(0===s&&(c=138,l=3),n=0;n<=i;n++)if(r=s,s=e[2*(n+1)+1],!(++o<c&&r===s)){if(o<l)do{mt(t,r,t.bl_tree)}while(0!=--o);else 0!==r?(r!==a&&(mt(t,r,t.bl_tree),o--),mt(t,16,t.bl_tree),vt(t,o-3,2)):o<=10?(mt(t,17,t.bl_tree),vt(t,o-3,3)):(mt(t,18,t.bl_tree),vt(t,o-11,7));o=0,a=r,0===s?(c=138,l=3):r===s?(c=6,l=3):(c=7,l=4)}};let Mt=!1;const Ot=(t,e,i,n)=>{vt(t,0+(n?1:0),3),((t,e,i,n)=>{Dt(t),n&&(wt(t,i),wt(t,~i)),t.pending_buf.set(t.window.subarray(e,e+i),t.pending),t.pending+=i})(t,e,i,!0)};$._tr_init=t=>{Mt||((()=>{let t,e,i,n,r;const a=new Array(16);for(i=0,n=0;n<28;n++)for(dt[n]=i,t=0;t<1<<nt[n];t++)xt[i++]=n;for(xt[i-1]=n,r=0,n=0;n<16;n++)for(ht[n]=r,t=0;t<1<<rt[n];t++)lt[r++]=n;for(r>>=7;n<et;n++)for(ht[n]=r<<7,t=0;t<1<<rt[n]-7;t++)lt[256+r++]=n;for(e=0;e<=it;e++)a[e]=0;for(t=0;t<=143;)ot[2*t+1]=8,t++,a[8]++;for(;t<=255;)ot[2*t+1]=9,t++,a[9]++;for(;t<=279;)ot[2*t+1]=7,t++,a[7]++;for(;t<=287;)ot[2*t+1]=8,t++,a[8]++;for(St(ot,287,a),t=0;t<et;t++)ct[2*t+1]=5,ct[2*t]=bt(t,5);ft=new ut(ot,nt,257,tt,it),gt=new ut(ct,rt,0,et,it),_t=new ut(new Array(0),at,0,19,7)})(),Mt=!0),t.l_desc=new pt(t.dyn_ltree,ft),t.d_desc=new pt(t.dyn_dtree,gt),t.bl_desc=new pt(t.bl_tree,_t),t.bi_buf=0,t.bi_valid=0,Et(t)},$._tr_stored_block=Ot,$._tr_flush_block=(t,e,i,n)=>{let r,a,s=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,i=4093624447;for(e=0;e<=31;e++,i>>>=1)if(1&i&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e<Q;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),At(t,t.l_desc),At(t,t.d_desc),s=(t=>{let e;for(Pt(t,t.dyn_ltree,t.l_desc.max_code),Pt(t,t.dyn_dtree,t.d_desc.max_code),At(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*st[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),r=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=r&&(r=a)):r=a=i+5,i+4<=r&&-1!==e?Ot(t,e,i,n):4===t.strategy||a===r?(vt(t,2+(n?1:0),3),kt(t,ot,ct)):(vt(t,4+(n?1:0),3),((t,e,i,n)=>{let r;for(vt(t,e-257,5),vt(t,i-1,5),vt(t,n-4,4),r=0;r<n;r++)vt(t,t.bl_tree[2*st[r]+1],3);Ct(t,t.dyn_ltree,e-1),Ct(t,t.dyn_dtree,i-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),kt(t,t.dyn_ltree,t.dyn_dtree)),Et(t),n&&Dt(t)},$._tr_tally=(t,e,i)=>(t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&i,t.last_lit++,0===e?t.dyn_ltree[2*i]++:(t.matches++,e--,t.dyn_ltree[2*(xt[i]+Q+1)]++,t.dyn_dtree[2*yt(e)]++),t.last_lit===t.lit_bufsize-1),$._tr_align=t=>{vt(t,2,3),mt(t,256,ot),(t=>{16===t.bi_valid?(wt(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)};var Rt=(t,e,i,n)=>{let r=65535&t|0,a=t>>>16&65535|0,s=0;for(;0!==i;){s=i>2e3?2e3:i,i-=s;do{r=r+e[n++]|0,a=a+r|0}while(--s);r%=65521,a%=65521}return r|a<<16|0};const Kt=new Uint32Array((()=>{let t,e=[];for(var i=0;i<256;i++){t=i;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[i]=t}return e})());var Lt=(t,e,i,n)=>{const r=Kt,a=n+i;t^=-1;for(let i=n;i<a;i++)t=t>>>8^r[255&(t^e[i])];return-1^t},Nt={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},zt={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:Ut,_tr_stored_block:Bt,_tr_flush_block:Ft,_tr_tally:jt,_tr_align:Zt}=$,Vt=Rt,Ht=Lt,Gt=Nt,{Z_NO_FLUSH:Wt,Z_PARTIAL_FLUSH:Yt,Z_FULL_FLUSH:qt,Z_FINISH:Jt,Z_BLOCK:$t,Z_OK:Xt,Z_STREAM_END:Qt,Z_STREAM_ERROR:te,Z_DATA_ERROR:ee,Z_BUF_ERROR:ie,Z_DEFAULT_COMPRESSION:ne,Z_FILTERED:re,Z_HUFFMAN_ONLY:ae,Z_RLE:se,Z_FIXED:oe,Z_DEFAULT_STRATEGY:ce,Z_UNKNOWN:le,Z_DEFLATED:xe}=zt,de=258,he=262,ue=103,fe=113,ge=666,_e=(t,e)=>(t.msg=Gt[e],e),pe=t=>(t<<1)-(t>4?9:0),ye=t=>{let e=t.length;for(;--e>=0;)t[e]=0};let we=(t,e,i)=>(e<<t.hash_shift^i)&t.hash_mask;const ve=t=>{const e=t.state;let i=e.pending;i>t.avail_out&&(i=t.avail_out),0!==i&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+i),t.next_out),t.next_out+=i,e.pending_out+=i,t.total_out+=i,t.avail_out-=i,e.pending-=i,0===e.pending&&(e.pending_out=0))},me=(t,e)=>{Ft(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,ve(t.strm)},be=(t,e)=>{t.pending_buf[t.pending++]=e},Se=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Ee=(t,e,i,n)=>{let r=t.avail_in;return r>n&&(r=n),0===r?0:(t.avail_in-=r,e.set(t.input.subarray(t.next_in,t.next_in+r),i),1===t.state.wrap?t.adler=Vt(t.adler,e,r,i):2===t.state.wrap&&(t.adler=Ht(t.adler,e,r,i)),t.next_in+=r,t.total_in+=r,r)},De=(t,e)=>{let i,n,r=t.max_chain_length,a=t.strstart,s=t.prev_length,o=t.nice_match;const c=t.strstart>t.w_size-he?t.strstart-(t.w_size-he):0,l=t.window,x=t.w_mask,d=t.prev,h=t.strstart+de;let u=l[a+s-1],f=l[a+s];t.prev_length>=t.good_match&&(r>>=2),o>t.lookahead&&(o=t.lookahead);do{if(i=e,l[i+s]===f&&l[i+s-1]===u&&l[i]===l[a]&&l[++i]===l[a+1]){a+=2,i++;do{}while(l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&l[++a]===l[++i]&&a<h);if(n=de-(h-a),a=h-de,n>s){if(t.match_start=e,s=n,n>=o)break;u=l[a+s-1],f=l[a+s]}}}while((e=d[e&x])>c&&0!=--r);return s<=t.lookahead?s:t.lookahead},Ie=t=>{const e=t.w_size;let i,n,r,a,s;do{if(a=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-he)){t.window.set(t.window.subarray(e,e+e),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,n=t.hash_size,i=n;do{r=t.head[--i],t.head[i]=r>=e?r-e:0}while(--n);n=e,i=n;do{r=t.prev[--i],t.prev[i]=r>=e?r-e:0}while(--n);a+=e}if(0===t.strm.avail_in)break;if(n=Ee(t.strm,t.window,t.strstart+t.lookahead,a),t.lookahead+=n,t.lookahead+t.insert>=3)for(s=t.strstart-t.insert,t.ins_h=t.window[s],t.ins_h=we(t,t.ins_h,t.window[s+1]);t.insert&&(t.ins_h=we(t,t.ins_h,t.window[s+3-1]),t.prev[s&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=s,s++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead<he&&0!==t.strm.avail_in)},Te=(t,e)=>{let i,n;for(;;){if(t.lookahead<he){if(Ie(t),t.lookahead<he&&e===Wt)return 1;if(0===t.lookahead)break}if(i=0,t.lookahead>=3&&(t.ins_h=we(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==i&&t.strstart-i<=t.w_size-he&&(t.match_length=De(t,i)),t.match_length>=3)if(n=jt(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=we(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=we(t,t.ins_h,t.window[t.strstart+1]);else n=jt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(me(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===Jt?(me(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(me(t,!1),0===t.strm.avail_out)?1:2},ke=(t,e)=>{let i,n,r;for(;;){if(t.lookahead<he){if(Ie(t),t.lookahead<he&&e===Wt)return 1;if(0===t.lookahead)break}if(i=0,t.lookahead>=3&&(t.ins_h=we(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==i&&t.prev_length<t.max_lazy_match&&t.strstart-i<=t.w_size-he&&(t.match_length=De(t,i),t.match_length<=5&&(t.strategy===re||3===t.match_length&&t.strstart-t.match_start>4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){r=t.strstart+t.lookahead-3,n=jt(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=r&&(t.ins_h=we(t,t.ins_h,t.window[t.strstart+3-1]),i=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,n&&(me(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(n=jt(t,0,t.window[t.strstart-1]),n&&me(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=jt(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===Jt?(me(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(me(t,!1),0===t.strm.avail_out)?1:2};function Ae(t,e,i,n,r){this.good_length=t,this.max_lazy=e,this.nice_length=i,this.max_chain=n,this.func=r}const Pe=[new Ae(0,0,0,0,((t,e)=>{let i=65535;for(i>t.pending_buf_size-5&&(i=t.pending_buf_size-5);;){if(t.lookahead<=1){if(Ie(t),0===t.lookahead&&e===Wt)return 1;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;const n=t.block_start+i;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,me(t,!1),0===t.strm.avail_out))return 1;if(t.strstart-t.block_start>=t.w_size-he&&(me(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Jt?(me(t,!0),0===t.strm.avail_out?3:4):(t.strstart>t.block_start&&(me(t,!1),t.strm.avail_out),1)})),new Ae(4,4,8,4,Te),new Ae(4,5,16,8,Te),new Ae(4,6,32,32,Te),new Ae(4,4,16,16,ke),new Ae(8,16,32,32,ke),new Ae(8,16,128,128,ke),new Ae(8,32,128,256,ke),new Ae(32,128,258,1024,ke),new Ae(32,258,258,4096,ke)];function Ce(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=xe,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),ye(this.dyn_ltree),ye(this.dyn_dtree),ye(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),ye(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),ye(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Me=t=>{if(!t||!t.state)return _e(t,te);t.total_in=t.total_out=0,t.data_type=le;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?42:fe,t.adler=2===e.wrap?0:1,e.last_flush=Wt,Ut(e),Xt},Oe=t=>{const e=Me(t);return e===Xt&&(t=>{t.window_size=2*t.w_size,ye(t.head),t.max_lazy_match=Pe[t.level].max_lazy,t.good_match=Pe[t.level].good_length,t.nice_match=Pe[t.level].nice_length,t.max_chain_length=Pe[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0})(t.state),e},Re=(t,e,i,n,r,a)=>{if(!t)return te;let s=1;if(e===ne&&(e=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),r<1||r>9||i!==xe||n<8||n>15||e<0||e>9||a<0||a>oe)return _e(t,te);8===n&&(n=9);const o=new Ce;return t.state=o,o.strm=t,o.wrap=s,o.gzhead=null,o.w_bits=n,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=r+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<r+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.d_buf=1*o.lit_bufsize,o.l_buf=3*o.lit_bufsize,o.level=e,o.strategy=a,o.method=i,Oe(t)};J.deflateInit=(t,e)=>Re(t,e,xe,15,8,ce),J.deflateInit2=Re,J.deflateReset=Oe,J.deflateResetKeep=Me,J.deflateSetHeader=(t,e)=>t&&t.state?2!==t.state.wrap?te:(t.state.gzhead=e,Xt):te,J.deflate=(t,e)=>{let i,n;if(!t||!t.state||e>$t||e<0)return t?_e(t,te):te;const r=t.state;if(!t.output||!t.input&&0!==t.avail_in||r.status===ge&&e!==Jt)return _e(t,0===t.avail_out?ie:te);r.strm=t;const a=r.last_flush;if(r.last_flush=e,42===r.status)if(2===r.wrap)t.adler=0,be(r,31),be(r,139),be(r,8),r.gzhead?(be(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),be(r,255&r.gzhead.time),be(r,r.gzhead.time>>8&255),be(r,r.gzhead.time>>16&255),be(r,r.gzhead.time>>24&255),be(r,9===r.level?2:r.strategy>=ae||r.level<2?4:0),be(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(be(r,255&r.gzhead.extra.length),be(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(t.adler=Ht(t.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69):(be(r,0),be(r,0),be(r,0),be(r,0),be(r,0),be(r,9===r.level?2:r.strategy>=ae||r.level<2?4:0),be(r,3),r.status=fe);else{let e=xe+(r.w_bits-8<<4)<<8,i=-1;i=r.strategy>=ae||r.level<2?0:r.level<6?1:6===r.level?2:3,e|=i<<6,0!==r.strstart&&(e|=32),e+=31-e%31,r.status=fe,Se(r,e),0!==r.strstart&&(Se(r,t.adler>>>16),Se(r,65535&t.adler)),t.adler=1}if(69===r.status)if(r.gzhead.extra){for(i=r.pending;r.gzindex<(65535&r.gzhead.extra.length)&&(r.pending!==r.pending_buf_size||(r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),ve(t),i=r.pending,r.pending!==r.pending_buf_size));)be(r,255&r.gzhead.extra[r.gzindex]),r.gzindex++;r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=73)}else r.status=73;if(73===r.status)if(r.gzhead.name){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),ve(t),i=r.pending,r.pending===r.pending_buf_size)){n=1;break}n=r.gzindex<r.gzhead.name.length?255&r.gzhead.name.charCodeAt(r.gzindex++):0,be(r,n)}while(0!==n);r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),0===n&&(r.gzindex=0,r.status=91)}else r.status=91;if(91===r.status)if(r.gzhead.comment){i=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),ve(t),i=r.pending,r.pending===r.pending_buf_size)){n=1;break}n=r.gzindex<r.gzhead.comment.length?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,be(r,n)}while(0!==n);r.gzhead.hcrc&&r.pending>i&&(t.adler=Ht(t.adler,r.pending_buf,r.pending-i,i)),0===n&&(r.status=ue)}else r.status=ue;if(r.status===ue&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&ve(t),r.pending+2<=r.pending_buf_size&&(be(r,255&t.adler),be(r,t.adler>>8&255),t.adler=0,r.status=fe)):r.status=fe),0!==r.pending){if(ve(t),0===t.avail_out)return r.last_flush=-1,Xt}else if(0===t.avail_in&&pe(e)<=pe(a)&&e!==Jt)return _e(t,ie);if(r.status===ge&&0!==t.avail_in)return _e(t,ie);if(0!==t.avail_in||0!==r.lookahead||e!==Wt&&r.status!==ge){let i=r.strategy===ae?((t,e)=>{let i;for(;;){if(0===t.lookahead&&(Ie(t),0===t.lookahead)){if(e===Wt)return 1;break}if(t.match_length=0,i=jt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,i&&(me(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Jt?(me(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(me(t,!1),0===t.strm.avail_out)?1:2})(r,e):r.strategy===se?((t,e)=>{let i,n,r,a;const s=t.window;for(;;){if(t.lookahead<=de){if(Ie(t),t.lookahead<=de&&e===Wt)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(r=t.strstart-1,n=s[r],n===s[++r]&&n===s[++r]&&n===s[++r])){a=t.strstart+de;do{}while(n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&n===s[++r]&&r<a);t.match_length=de-(a-r),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(i=jt(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(i=jt(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),i&&(me(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===Jt?(me(t,!0),0===t.strm.avail_out?3:4):t.last_lit&&(me(t,!1),0===t.strm.avail_out)?1:2})(r,e):Pe[r.level].func(r,e);if(3!==i&&4!==i||(r.status=ge),1===i||3===i)return 0===t.avail_out&&(r.last_flush=-1),Xt;if(2===i&&(e===Yt?Zt(r):e!==$t&&(Bt(r,0,0,!1),e===qt&&(ye(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),ve(t),0===t.avail_out))return r.last_flush=-1,Xt}return e!==Jt?Xt:r.wrap<=0?Qt:(2===r.wrap?(be(r,255&t.adler),be(r,t.adler>>8&255),be(r,t.adler>>16&255),be(r,t.adler>>24&255),be(r,255&t.total_in),be(r,t.total_in>>8&255),be(r,t.total_in>>16&255),be(r,t.total_in>>24&255)):(Se(r,t.adler>>>16),Se(r,65535&t.adler)),ve(t),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?Xt:Qt)},J.deflateEnd=t=>{if(!t||!t.state)return te;const e=t.state.status;return 42!==e&&69!==e&&73!==e&&91!==e&&e!==ue&&e!==fe&&e!==ge?_e(t,te):(t.state=null,e===fe?_e(t,ee):Xt)},J.deflateSetDictionary=(t,e)=>{let i=e.length;if(!t||!t.state)return te;const n=t.state,r=n.wrap;if(2===r||1===r&&42!==n.status||n.lookahead)return te;if(1===r&&(t.adler=Vt(t.adler,e,i,0)),n.wrap=0,i>=n.w_size){0===r&&(ye(n.head),n.strstart=0,n.block_start=0,n.insert=0);let t=new Uint8Array(n.w_size);t.set(e.subarray(i-n.w_size,i),0),e=t,i=n.w_size}const a=t.avail_in,s=t.next_in,o=t.input;for(t.avail_in=i,t.next_in=0,t.input=e,Ie(n);n.lookahead>=3;){let t=n.strstart,e=n.lookahead-2;do{n.ins_h=we(n,n.ins_h,n.window[t+3-1]),n.prev[t&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=t,t++}while(--e);n.strstart=t,n.lookahead=2,Ie(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,t.next_in=s,t.input=o,t.avail_in=a,n.wrap=r,Xt},J.deflateInfo="pako deflate (from Nodeca project)";var Ke={};const Le=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);Ke.assign=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const i=e.shift();if(i){if("object"!=typeof i)throw new TypeError(i+"must be non-object");for(const e in i)Le(i,e)&&(t[e]=i[e])}}return t},Ke.flattenChunks=t=>{let e=0;for(let i=0,n=t.length;i<n;i++)e+=t[i].length;const i=new Uint8Array(e);for(let e=0,n=0,r=t.length;e<r;e++){let r=t[e];i.set(r,n),n+=r.length}return i};var Ne={};let ze=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){ze=!1}const Ue=new Uint8Array(256);for(let t=0;t<256;t++)Ue[t]=t>=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Ue[254]=Ue[254]=1,Ne.string2buf=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,i,n,r,a,s=t.length,o=0;for(r=0;r<s;r++)i=t.charCodeAt(r),55296==(64512&i)&&r+1<s&&(n=t.charCodeAt(r+1),56320==(64512&n)&&(i=65536+(i-55296<<10)+(n-56320),r++)),o+=i<128?1:i<2048?2:i<65536?3:4;for(e=new Uint8Array(o),a=0,r=0;a<o;r++)i=t.charCodeAt(r),55296==(64512&i)&&r+1<s&&(n=t.charCodeAt(r+1),56320==(64512&n)&&(i=65536+(i-55296<<10)+(n-56320),r++)),i<128?e[a++]=i:i<2048?(e[a++]=192|i>>>6,e[a++]=128|63&i):i<65536?(e[a++]=224|i>>>12,e[a++]=128|i>>>6&63,e[a++]=128|63&i):(e[a++]=240|i>>>18,e[a++]=128|i>>>12&63,e[a++]=128|i>>>6&63,e[a++]=128|63&i);return e};Ne.buf2string=(t,e)=>{const i=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let n,r;const a=new Array(2*i);for(r=0,n=0;n<i;){let e=t[n++];if(e<128){a[r++]=e;continue}let s=Ue[e];if(s>4)a[r++]=65533,n+=s-1;else{for(e&=2===s?31:3===s?15:7;s>1&&n<i;)e=e<<6|63&t[n++],s--;s>1?a[r++]=65533:e<65536?a[r++]=e:(e-=65536,a[r++]=55296|e>>10&1023,a[r++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&ze)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let i="";for(let n=0;n<e;n++)i+=String.fromCharCode(t[n]);return i})(a,r)},Ne.utf8border=(t,e)=>{(e=e||t.length)>t.length&&(e=t.length);let i=e-1;for(;i>=0&&128==(192&t[i]);)i--;return i<0||0===i?e:i+Ue[t[i]]>e?i:e};const Be=J,Fe=Ke,je=Ne,Ze=Nt,Ve=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0},He=Object.prototype.toString,{Z_NO_FLUSH:Ge,Z_SYNC_FLUSH:We,Z_FULL_FLUSH:Ye,Z_FINISH:qe,Z_OK:Je,Z_STREAM_END:$e,Z_DEFAULT_COMPRESSION:Xe,Z_DEFAULT_STRATEGY:Qe,Z_DEFLATED:ti}=zt;function ei(t){this.options=Fe.assign({level:Xe,method:ti,chunkSize:16384,windowBits:15,memLevel:8,strategy:Qe},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Ve,this.strm.avail_out=0;let i=Be.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(i!==Je)throw new Error(Ze[i]);if(e.header&&Be.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?je.string2buf(e.dictionary):"[object ArrayBuffer]"===He.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,i=Be.deflateSetDictionary(this.strm,t),i!==Je)throw new Error(Ze[i]);this._dict_set=!0}}ei.prototype.push=function(t,e){const i=this.strm,n=this.options.chunkSize;let r,a;if(this.ended)return!1;for(a=e===~~e?e:!0===e?qe:Ge,"string"==typeof t?i.input=je.string2buf(t):"[object ArrayBuffer]"===He.call(t)?i.input=new Uint8Array(t):i.input=t,i.next_in=0,i.avail_in=i.input.length;;)if(0===i.avail_out&&(i.output=new Uint8Array(n),i.next_out=0,i.avail_out=n),(a===We||a===Ye)&&i.avail_out<=6)this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;else{if(r=Be.deflate(i,a),r===$e)return i.next_out>0&&this.onData(i.output.subarray(0,i.next_out)),r=Be.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===Je;if(0!==i.avail_out){if(a>0&&i.next_out>0)this.onData(i.output.subarray(0,i.next_out)),i.avail_out=0;else if(0===i.avail_in)break}else this.onData(i.output)}return!0},ei.prototype.onData=function(t){this.chunks.push(t)},ei.prototype.onEnd=function(t){t===Je&&(this.result=Fe.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var ii=function(t,e){return(e=e||{}).gzip=!0,function(t,e){const i=new ei(e);if(i.push(t,!0),i.err)throw i.msg||Ze[i.err];return i.result}(t,e)};const ni=["enabled","userId"];var ri,ai,si=["drs"];ri=si,ai=391,function(t){for(;--t;)ri.push(ri.shift())}(++ai);var oi,ci,li,xi=new q((oi="0x0",si[oi-=0])),di=["getItem","sessionStorage","setItem","removeItemSessionStorageSafe","removeItem","localStorage","FALLBACK_SESSION_STORAGE","FALLBACK_LOCAL_STORAGE","clientId","getClientId","getFullStorageKey","getItemSessionStorageSafe"];ci=di,li=378,function(t){for(;--t;)ci.push(ci.shift())}(++li);var hi=function(t,e){return di[t-=0]};class ui{constructor(t){this[hi("0x0")]={},this[hi("0x1")]={},this[hi("0x2")]=t}[hi("0x3")](){return this[hi("0x2")]}setClientId(t){this[hi("0x2")]=t}[hi("0x4")](t){return this[hi("0x2")]+"_"+t}[hi("0x5")](t){const e=this[hi("0x4")](t);try{return window.sessionStorage[hi("0x6")](e)}catch(t){return this[hi("0x0")][e]}}setItemSessionStorageSafe(t,e){const i=this[hi("0x4")](t);try{window[hi("0x7")][hi("0x8")](i,e)}catch(t){this[hi("0x0")][i]=e}}[hi("0x9")](t){const e=this.getFullStorageKey(t);try{window[hi("0x7")][hi("0xa")](e)}catch(t){this.FALLBACK_SESSION_STORAGE[e]=void 0}}getItemLocalStorageSafe(t){const e=this.getFullStorageKey(t);try{return window.localStorage[hi("0x6")](e)}catch(t){return this.FALLBACK_LOCAL_STORAGE[e]}}setItemLocalStorageSafe(t,e){const i=this[hi("0x4")](t);try{window[hi("0xb")][hi("0x8")](i,e)}catch(t){this[hi("0x1")][i]=e}}removeItemLocalStorageSafe(t){const e=this[hi("0x4")](t);try{window.localStorage[hi("0xa")](e)}catch(t){this[hi("0x1")][e]=void 0}}}var fi,gi,_i=["pushLog","warn","error","flush","log","logPrefix","stringify","push","now","formatter","unshift","enabled","logsLimit","logs","middlewares","info"];fi=_i,gi=235,function(t){for(;--t;)fi.push(fi.shift())}(++gi);var pi=function(t,e){return _i[t-=0]};class yi{constructor(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this[pi("0x0")]=t,this.logPrefix="[AccountProtection SDK]",this[pi("0x1")]=1e4,this[pi("0x2")]=[],this[pi("0x3")]=[]}[pi("0x4")](t,e){this[pi("0x5")](3,t,e)}[pi("0x6")](t,e){this[pi("0x5")](4,t,e)}[pi("0x7")](t,e){this.pushLog(5,t,e)}[pi("0x8")](){const t=this[pi("0x2")];return this[pi("0x2")]=[],t}pushLog(t,e,i){this.enabled&&console[pi("0x9")]("%s %s %s",this[pi("0xa")],e,JSON[pi("0xb")](i)),this.logs[pi("0xc")]({timestamp:Date[pi("0xd")](),severity:t,text:JSON[pi("0xb")](l(l({},i),{},{message:e}),this[pi("0xe")])}),this[pi("0x2")].length>this[pi("0x1")]&&this.logs[pi("0xf")]();const n=this[pi("0x3")].map((t=>t()));Promise.all(n).catch((()=>{}))}[pi("0xe")](t,e){if(e instanceof Error){const{name:t,stack:i,message:n}=e;return{name:t,stack:i,message:n}}return e}}const wi=new yi;var vi,mi,bi=["refreshConf","keys","setItemLocalStorageSafe","stringify","timestamp","ric","storageManager","requestsManager","conf","loadConf","device/conf?tenantId=","error","error fetching config","getItemLocalStorageSafe","parse","error loading config","getConfValue"];vi=bi,mi=174,function(t){for(;--t;)vi.push(vi.shift())}(++mi);var Si=function(t,e){return bi[t-=0]};const Ei=Si("0x0"),Di=Si("0x1");class Ii{constructor(t,e){this[Si("0x2")]=t,this[Si("0x3")]=e,this[Si("0x4")]=this[Si("0x5")]()}async fetchConf(t){try{const e=Si("0x6")+t,i=await this[Si("0x3")].getData(e);return null!=i?i:{}}catch(e){return wi[Si("0x7")](Si("0x8"),{clientId:t,error:e}),{}}}[Si("0x5")](){const t=this[Si("0x2")][Si("0x9")](Di);if(null!=t)try{return JSON[Si("0xa")](t)}catch(t){wi[Si("0x7")](Si("0xb"),{error:t})}return{}}shouldUpdateConf(){const t=this[Si("0xc")](Ei,0);return Date.now()-t>36e5}async[Si("0xd")](t){if(!this.shouldUpdateConf())return!1;let e=await this.fetchConf(t);return 0==Object[Si("0xe")](e).length?e=this.loadConf():this[Si("0x2")][Si("0xf")](Di,JSON[Si("0x10")](e)),this[Si("0x4")]=e,!0}[Si("0xc")](t,e){const i=void 0!==this[Si("0x4")]?this[Si("0x4")][t]:void 0;return null!=i?i:e}}var Ti,ki,Ai=["EVENT_TYPE_INTERACTION","interaction","EVENT_TYPE_IDENTIFICATION","desktop_web","mobile_web","device"];Ti=Ai,ki=419,function(t){for(;--t;)Ti.push(Ti.shift())}(++ki);var Pi,Ci,Mi=function(t,e){return Ai[t-=0]};(Ci=Pi||(Pi={})).EVENT_TYPE_ACTION="action",Ci.EVENT_TYPE_DEVICE=Mi("0x0"),Ci[Mi("0x1")]=Mi("0x2"),Ci[Mi("0x3")]="identification";const Oi=Mi("0x4"),Ri=Mi("0x5");var Ki,Li,Ni=["length","splice","push","maintainLastXItems"];Ki=Ni,Li=131,function(t){for(;--t;)Ki.push(Ki.shift())}(++Li);var zi=function(t,e){return Ni[t-=0]};class Ui{static[zi("0x0")](t,e,i){return t[zi("0x1")]>=e&&t[zi("0x2")](0,1),t[zi("0x3")](i),t}}var Bi,Fi,ji=["location","shiftKey","inputType","view","data","buffer","collect","extractEventData","maintainLastXItems","getData","now","extractButtonsPressedData","altKey","buttons","offsetX","offsetY","firesTouchEvents","sourceCapabilities","target","isTrusted","cancelable","metaKey","bufferSize","composed"];Bi=ji,Fi=292,function(t){for(;--t;)Bi.push(Bi.shift())}(++Fi);var Zi=function(t,e){return ji[t-=0]};class Vi{constructor(t){this[Zi("0x0")]=[],this[Zi("0x1")]=t}[Zi("0x2")](t){const e=this[Zi("0x3")](t);Ui[Zi("0x4")](this[Zi("0x0")],this[Zi("0x1")],e)}[Zi("0x5")](){return this[Zi("0x0")]}[Zi("0x3")](t){return l({x:t.x,y:t.y,tspl:Date[Zi("0x6")]()},this.extractButtonsPressedData(t))}[Zi("0x7")](t){return l(l(l(l({},t.ctrlKey&&{ctrlKey:!0}),t[Zi("0x8")]&&{altKey:!0}),t.shiftKey&&{shiftKey:!0}),0!=t.buttons&&{buttons:t[Zi("0x9")]})}}class Hi{constructor(t){this[Zi("0x0")]=[],this.buffer=t}[Zi("0x2")](t){var e;const i={x:t.x,y:t.y,timestamp:Date[Zi("0x6")](),mouseButtonType:t.detail,offsetX:t[Zi("0xa")],offsetY:t[Zi("0xb")],isPressed:null==(null===(e=t.sourceCapabilities)||void 0===e?void 0:e[Zi("0xc")])?null:!t[Zi("0xd")].firesTouchEvents,target_id:t[Zi("0xe")].id};Ui[Zi("0x4")](this.data,this.buffer,i)}[Zi("0x5")](){const t=[...this[Zi("0x0")]];return this.data=[],t}}class Gi{constructor(t){this[Zi("0x0")]=[],this.bufferSize=t}[Zi("0x2")](t){var e;const i={isTrusted:t[Zi("0xf")],cancelable:t[Zi("0x10")],composed:t.composed,isView:!!t.view,shiftKey:t.shiftKey,metaKey:t[Zi("0x11")],firesTouchEvents:null===(e=t[Zi("0xd")])||void 0===e?void 0:e.firesTouchEvents,timestamp:Date[Zi("0x6")]()};Ui[Zi("0x4")](this[Zi("0x0")],this[Zi("0x12")],i)}[Zi("0x5")](){const t=[...this[Zi("0x0")]];return this[Zi("0x0")]=[],t}}class Wi{constructor(t){this.data=[],this.bufferSize=t}[Zi("0x2")](t){var e;const i={isTrusted:t[Zi("0xf")],cancelable:t[Zi("0x10")],composed:t[Zi("0x13")],isView:!!t.view,location:t[Zi("0x14")],shiftKey:t[Zi("0x15")],firesTouchEvents:null===(e=t[Zi("0xd")])||void 0===e?void 0:e[Zi("0xc")],timestamp:Date[Zi("0x6")]()};Ui[Zi("0x4")](this[Zi("0x0")],this.bufferSize,i)}[Zi("0x5")](){const t=this[Zi("0x0")];return this.data=[],t}}class Yi{constructor(t){this.data=[],this[Zi("0x12")]=t}[Zi("0x2")](t){const e={isTrusted:t[Zi("0xf")],cancelable:t[Zi("0x10")],composed:t[Zi("0x13")],inputType:t[Zi("0x16")],isView:!!t[Zi("0x17")],timestamp:Date[Zi("0x6")]()};Ui[Zi("0x4")](this[Zi("0x0")],this[Zi("0x12")],e)}[Zi("0x5")](){const t=this[Zi("0x0")];return this[Zi("0x0")]=[],t}}class qi{constructor(t){this[Zi("0x0")]=[],this[Zi("0x12")]=t}[Zi("0x2")](t){const e={isTrusted:t.isTrusted,cancelable:t[Zi("0x10")],composed:t.composed,timestamp:Date[Zi("0x6")]()};Ui[Zi("0x4")](this[Zi("0x0")],this[Zi("0x12")],e)}[Zi("0x5")](){const t=this[Zi("0x0")];return this[Zi("0x0")]=[],t}}var Ji,$i,Xi=["getGenericAttributes","getAttachedData","error","error adding interaction listener","eventTypesToAttach","getData","href","change","paste","mousemove","mouseup","mousedown","submit","keyup","input","focusout","SELECT","TEXTAREA","safeEventCallback","interactionEventsCollectorsData","detail","sourceCapabilities","firesTouchEvents","offsetX","offsetY","target","isTrusted","cancelable","composed","dropEffect","clipboardData","effectAllowed","mouseEventsCollectionBuffer","dataset","virtualKeyboard","inputTypeFilter","tagName","includes","entries","addSafeInteractionListener","Error while adding listener","filter","handleEvent","forEach"];Ji=Xi,$i=227,function(t){for(;--t;)Ji.push(Ji.shift())}(++$i);var Qi=function(t,e){return Xi[t-=0]};const tn=Qi("0x0"),en=Qi("0x1"),nn=Qi("0x2"),rn=Qi("0x3"),an=Qi("0x4"),sn=Qi("0x5"),on=Qi("0x6"),cn="keydown",ln=Qi("0x7"),xn=Qi("0x8"),dn=["INPUT",Qi("0x9"),Qi("0xa")];class hn{constructor(t,e,i){this.deviceEventDataCollectionIgnoreList=t,this.mouseEventsCollectionBuffer=e,this[Qi("0xb")]=i,this[Qi("0xc")]={click:{eventTypesToAttach:[nn,rn,an],attributesMapper:t=>{var e;return{x:t.x,y:t.y,mouseButtonType:t[Qi("0xd")],isPressed:null==(null===(e=t[Qi("0xe")])||void 0===e?void 0:e[Qi("0xf")])?null:!t[Qi("0xe")][Qi("0xf")],offsetX:t[Qi("0x10")],offsetY:t[Qi("0x11")],target_id:t[Qi("0x12")].id}}},[en]:{attributesMapper:t=>({target_id:t.target.id,isTrusted:t[Qi("0x13")],cancelable:t[Qi("0x14")],composed:t[Qi("0x15")],dropEffect:t.clipboardData[Qi("0x16")],effectAllowed:t[Qi("0x17")][Qi("0x18")]})},[sn]:{attributesMapper:t=>({target_id:t[Qi("0x12")].id})},[nn]:{continousCollectors:[new Vi(this[Qi("0x19")])]},[rn]:{continousCollectors:[new Hi(1)]},[an]:{continousCollectors:[new Hi(1)]},[xn]:{eventTypesToAttach:[ln,on,cn,tn],filter:this.inputTypeFilter,attributesMapper:t=>{const{target:e,isTrusted:i,cancelable:n,composed:r}=t;return l({target_id:e.id,dataset_keys:Object.keys(e[Qi("0x1a")]||{}),isTrusted:i,cancelable:n,composed:r},navigator[Qi("0x1b")]&&{navigator_virtualKeyboard:navigator[Qi("0x1b")].overlaysContent})}},[ln]:{filter:this[Qi("0x1c")],continousCollectors:[new Yi(50)]},[on]:{filter:this[Qi("0x1c")],continousCollectors:[new Wi(50)]},[cn]:{filter:this[Qi("0x1c")],continousCollectors:[new Gi(50)]},[tn]:{continousCollectors:[new qi(50)]}}}inputTypeFilter(t){var e;const i=null===(e=t[Qi("0x12")])||void 0===e?void 0:e[Qi("0x1d")];return dn[Qi("0x1e")](i)}registerEventListeners(){for(const[t,e]of Object[Qi("0x1f")](this[Qi("0xc")]))if(!this.deviceEventDataCollectionIgnoreList[Qi("0x1e")](t))try{this[Qi("0x20")](t,e)}catch(e){wi.error(Qi("0x21"),{error:e,eventType:t})}}[Qi("0x22")](t,e){return!t.filter||t[Qi("0x22")](e)}async[Qi("0x23")](t,e,i){const{attributesMapper:n,continousCollectors:r}=t;if(!this[Qi("0x22")](t,e))return!1;if(r)r[Qi("0x24")]((t=>{t.collect(e)}));else{const t=this[Qi("0x25")](),r=this[Qi("0x26")](i),a=l(l(l({},t),n(e)),r&&{attachedEventsData:r});await this.safeEventCallback(i,a)}return!0}addSafeInteractionListener(t,e){window.addEventListener(t,(async i=>{try{await this[Qi("0x23")](e,i,t)}catch(t){wi[Qi("0x27")](Qi("0x28"),{error:t})}}))}[Qi("0x26")](t){let e;const i=this[Qi("0xc")][t][Qi("0x29")];return i&&(e={},i[Qi("0x24")]((t=>{const{continousCollectors:i}=this[Qi("0xc")][t];i&&i[Qi("0x24")]((i=>e[t]=i[Qi("0x2a")]()))}))),e}[Qi("0x25")](){return{location:window.location[Qi("0x2b")]}}}var un,fn,gn=["race","catch","warn","executor reached timeout","finally","getHighEntropyValues","model","platform","platformVersion","fullVersionList","bitness","mobile","wow64","resolve","setTimeout"];un=gn,fn=140,function(t){for(;--t;)un.push(un.shift())}(++fn);var _n=function(t,e){return gn[t-=0]};function pn(){var t;return null===(t=navigator.userAgentData)||void 0===t?void 0:t[_n("0x0")](["architecture",_n("0x1"),_n("0x2"),_n("0x3"),_n("0x4"),_n("0x5"),_n("0x6"),_n("0x7"),"uaFullVersion"])}function yn(t,e){let i;const n=[Promise[_n("0x8")](t()).catch((()=>{})),new Promise(((t,n)=>i=window[_n("0x9")](n,e)))];return Promise[_n("0xa")](n)[_n("0xb")]((()=>wi[_n("0xc")](_n("0xd"),{fnName:t.name})))[_n("0xe")]((()=>clearTimeout(i)))}var wn,vn,mn=["worker throw error","resolve","collectPromisesData","worker promise rejected","getCookieEnabled","getFIDOEnabled","credentials","PublicKeyCredential","crypto","getRandomValues","from","RTCPeerConnection","getWindowBasedKeys","chrome","safari","__crWeb","yandex","__yb","__ybro","__edgeTrackingPreventionStatistics","webkit","samsungAr","ucweb","UCShellJava","puffinDevice","_phantom","callPhantom","Buffer","emit","spawn","domAutomationController","domAutomation","__nightmare","_selenium","callSelenium","_Selenium_IDE_Recorder","__$webdriverAsyncExecutor","__driver_evaluate","__driver_unwrapped","__fxdriver_evaluate","__lastWatirAlert","__lastWatirConfirm","__lastWatirPrompt","__selenium_evaluate","__selenium_unwrapped","__webdriver__chr","__webdriver_evaluate","__webdriver_script_fn","__webdriver_script_func","__webdriver_script_function","__webdriver_unwrapped","awesomium","cdc_adoQpoasnfa76pfcZLmcfl_Array","cdc_adoQpoasnfa76pfcZLmcfl_Promise","chrome_asyncScriptInfo","OSMJIF","spynner_additional_js_loaded","watinExpressionError","watinExpressionResult","push","getMediaMatch","standard","no-preference","high","low","more","less","forced","100","active","none","inverted","rec2020","replace","matchMedia","matches","log","sqrt","exp","acos","acosh","asin","asinh","atanh","atan","sinh","cos","cosh","expm1","log1p","length","hashCodeString","getSessionStorage","sessionStorage","localStorage","external","toString","indexOf","Sequentum","webdriver","__fxdriver_unwrapped","calledSelenium","_WEBDRIVER_ELEM_CACHE","ChromeDriverw","webdriver-evaluate","selenium-evaluate","webdriverCommand","webdriver-evaluate-response","__webdriverFunc","$cdc_asdjflasutopfhvcZLmcfl_","serviceWorker","filter","product","userAgent","userAgentData","storage","estimate","navigatorOnLine","userActivation","isActive","permissions","state","sendBeacon","getOwnPropertyDescriptor","hardwareConcurrency","languages","get","function","platform","url","referrer","memory","indexedDB","DocumentTouch","maxTouchPoints","msMaxTouchPoints","getPlugins","type","plugins","name","description","screen","availHeight","availWidth","height","pixelDepth","orientation","angle","devicePixelRatio","outerWidth","outerHeight","getCpuClass","getOsCpu","oscpu","HTMLElement","prototype","addBehavior","enumerateDevices","kind","label","groupId","OfflineAudioContext","webkitOfflineAudioContext","createOscillator","triangle","frequency","createDynamicsCompressor","knee","ratio","release","connect","destination","start","renderedBuffer","startRendering","getChannelData","subarray","getHash","threshold","attack","createAnalyser","disconnect","frequencyBinCount","getFloatFrequencyData","call","fftSize","getFloatTimeDomainData","reduction","abs","monospace","sans-serif","serif","sans-serif-thin","ARNO PRO","Agency FB","AvantGarde Bk BT","BankGothic Md BT","Calibri","Century","Century Gothic","EUROSTILE","Franklin Gothic","Futura Bk BT","Futura Md BT","GOTHAM","HELV","Haettenschweiler","Helvetica Neue","Humanst521 BT","Levenim MT","Lucida Bright","Lucida Sans","MS Mincho","MS Outlook","MS Reference Specialty","MT Extra","MYRIAD PRO","Marlett","Meiryo UI","Minion Pro","Monotype Corsiva","PMingLiU","SCRIPTINA","Segoe UI Light","Small Fonts","Staccato222 BT","TRAJAN PRO","Univers CE 55 Medium","ZWAdobeF","createElement","style","visibility","hidden","span","top","left","fontSize","10px","textContent","appendChild","map","some","offsetWidth","offsetHeight","body","removeChild","language","DateTimeFormat","resolvedOptions","timeZone","vendor","getBuildID","buildID","width","textBaseline","alphabetic","fillStyle","#f60","#069","font",'11pt "Times New Roman"',"fillText","rgba(102, 204, 0, 0.2)","18pt Arial","globalCompositeOperation","multiply","#f2f","#2ff","arc","fill","#f9c","toDataURL","rect","getContext","charging","chargingTime","dischargingTime","level","brave","isBrave","canvas","webgl","webgl-experimental","getExtension","WEBGL_debug_renderer_info","getParameter","UNMASKED_RENDERER_WEBGL","getCodesTests","video","canPlayType",'video/mp4; codecs="avc1.42E01E"',"video/mp4;;Codecs =avc1.42E01E","getPublicData","isMobile","only screen and (max-width: 600px)","sdkDeviceDataCollectionIgnoreList","deviceDataCalculationExpiry","reduce","storageManager","configManager","cryptoBinding","calculate","getConfValue","dataPointsExtractor","lastDeviceData","now","getDeviceData","getItemLocalStorageSafe","dataPoints","getBattery","getBrave","getCanvasFingerprint","getConnection","getCryptoRandomValues","getDeviceMemory","getDocumentBasedKeys","getHardwareConcurrency","getIndexedDB","getLanguages","getLanguage","getTimezoneOffset","getLocalStorage","getNavigatorBasedKeys","getNavigatorProduct","getNavigatorUAData","getNavigatorHighEntropyData","navigatorStorageEstimation","navigatorIsUserActive","getMathFingerprint","getOpenDatabase","getWindowOrientation","getPlatform","getAddBehavior","getProductSub","getMediaDevices","getAudioFingerprintExtended","getFonts","getPerformanceMemory","getScreen","hasSequentum","getReferrer","getTimezone","getTouchSupport","getVendor","getWebGlRenderer","getWindowOuter","webRTCDisabled","getCryptoBindingData","bind","getNavigatorPermissionsState","geolocation","isGeoLocationExists","isSendBeaconFunction","getNavigatorPrototype","getInstalledRelatedApps","windowConstructorAliasTest","CDPRuntimeDomainTest","Error","Object","console","debug","windowDocumentAuxVarsTest","getOwnPropertyNames","document","$chrome_asyncScriptInfo","values","value","cache_","getPrototypeOf","storeItem","retrieveItem","isNodeReachable_","sort","Promise","Symbol","token","getAsyncToken","startPromisesLoop","entries","includes","warn"];wn=mn,vn=295,function(t){for(;--t;)wn.push(wn.shift())}(++vn);var bn=function(t,e){return mn[t-=0]};const Sn=bn("0x0"),En=bn("0x1"),Dn=t=>t?[...t][bn("0x2")](((t,e)=>t+Math.abs(e)),0):0;class In{constructor(t,e,i){this[bn("0x3")]=t,this[bn("0x4")]=e,this[bn("0x5")]=i}async[bn("0x6")](){const t=this[bn("0x4")][bn("0x7")](Sn,[]),e=this[bn("0x4")][bn("0x7")](En,36e5),i=await new Tn(t,this[bn("0x5")])[bn("0x8")]();return this[bn("0x9")]=i,this[bn("0x3")].setItemLocalStorageSafe(En,Date[bn("0xa")]()+e),i}async[bn("0xb")](){return Number(this[bn("0x3")][bn("0xc")](En))<Date.now()||!this.lastDeviceData?await this.calculate():this[bn("0x9")]}}class Tn{constructor(t,e){this[bn("0x0")]=t,this[bn("0x5")]=e,this[bn("0xd")]={battery:this[bn("0xe")],brave:this[bn("0xf")],canvas:this[bn("0x10")],codecs:this.getCodesTests,connection:this[bn("0x11")],cookieEnabled:this.getCookieEnabled,cryptoRandomValues:this[bn("0x12")],deviceMemory:this[bn("0x13")],documentBasedKeys:this[bn("0x14")],hardwareConcurrency:this[bn("0x15")],indexedDB:this[bn("0x16")],fidoEnabled:this.getFIDOEnabled,languages:this[bn("0x17")],language:this[bn("0x18")],timezoneOffset:this[bn("0x19")],localStorage:this[bn("0x1a")],navigatorBasedKeys:this[bn("0x1b")],navigatorProduct:this[bn("0x1c")],navigatorUserAgent:this.getNavigatorUserAgent,navigatorUAData:this[bn("0x1d")],navigatorHighEntropyData:this[bn("0x1e")],navigatorStorageEstimation:this[bn("0x1f")],navigatorOnLine:this.navigatorOnLine,navigatorIsUserActive:this[bn("0x20")],math:this[bn("0x21")],mediaMatch:this.getMediaMatch,openDatabase:this[bn("0x22")],windowOrientation:this[bn("0x23")],platform:this[bn("0x24")],cpuClass:this.getCpuClass,osClass:this.getOsCpu,addBehavior:this[bn("0x25")],productSub:this[bn("0x26")],mediaDevices:this[bn("0x27")],audioFingerprint:this.getAudioFingerprint,audioFingerprintExtended:this[bn("0x28")],fonts:this[bn("0x29")],performanceTiming:this.getPerformanceTiming,performanceMemory:this[bn("0x2a")],plugins:this.getPlugins,screen:this[bn("0x2b")],sequentum:this[bn("0x2c")],sessionStorage:this.getSessionStorage,referrer:this[bn("0x2d")],timezone:this[bn("0x2e")],touchSupport:this[bn("0x2f")],vendor:this[bn("0x30")],buildID:this.getBuildID,webdriver:this.getWebDriver,webGlRenderer:this[bn("0x31")],windowBasedKeys:this.getWindowBasedKeys,windowOuter:this[bn("0x32")],webRTCDisabled:this[bn("0x33")],cryptoBindingData:this[bn("0x34")][bn("0x35")](this),notificationState:this[bn("0x36")].bind(this,"notifications"),geolocationState:this.getNavigatorPermissionsState[bn("0x35")](this,bn("0x37")),isGeoLocationExists:this[bn("0x38")],isSendBeaconExists:this[bn("0x39")],navigatorPrototype:this[bn("0x3a")],installedRelatedApps:this[bn("0x3b")],windowConstructorAliasTest:this[bn("0x3c")],windowDocumentAuxVarsTest:this.windowDocumentAuxVarsTest,CDPRuntimeDomainTest:this[bn("0x3d")]}}[bn("0x3d")](){let t=!1;const e=new(window[bn("0x3e")]);return window[bn("0x3f")].defineProperty(e,"stack",{configurable:!1,enumerable:!1,get:function(){return t=!0,""}}),window[bn("0x40")][bn("0x41")](e.stack),t}[bn("0x42")](){for(const t of window[bn("0x3f")][bn("0x43")](window[bn("0x44")]))if(t==bn("0x45")||/^\$cdc_[a-zA-Z0-9]{22}_$/.test(t))return!0;for(const t of window[bn("0x3f")][bn("0x46")](window.Object.getOwnPropertyDescriptors(window[bn("0x44")]))){if(!t[bn("0x47")]||void 0===t[bn("0x47")][bn("0x48")])continue;const e=window.Object[bn("0x43")](window[bn("0x3f")][bn("0x49")](t[bn("0x47")])),i=[bn("0x4a"),bn("0x4b"),bn("0x4c")];if(e[bn("0x4d")](),i[bn("0x4d")](),e.every(((t,e)=>t==i[e])))return!0}return!1}[bn("0x3c")](){const t=window[bn("0x3f")].getOwnPropertyNames(window);for(const e of t){if(/^cdc_[a-zA-Z0-9]{22}_(Array|Promise|Symbol)$/.test(e))return!0;for(const t of[window.Array,window[bn("0x4e")],window[bn("0x4f")]])if(e!=(null==t?void 0:t.name)&&e!=bn("0x50")&&e!=bn("0x51")&&window[e]===t)return!0}return!1}async[bn("0x8")](){const t=this.startPromisesLoop();return await this.collectPromisesData(t)}[bn("0x52")](){const t={};for(const[e,i]of Object[bn("0x53")](this[bn("0xd")]))if(!this.sdkDeviceDataCollectionIgnoreList[bn("0x54")](e))try{t[e]=yn(i,100)}catch(i){wi[bn("0x55")](bn("0x56"),{e:i,key:e}),t[e]=Promise[bn("0x57")]()}return t}async[bn("0x58")](t){const e={};for(const[i,n]of Object[bn("0x53")](t))try{e[i]=await n}catch(t){wi[bn("0x55")](bn("0x59"),{e:t,key:i}),e[i]=void 0}return e}[bn("0x5a")](){const t=navigator.cookieEnabled;return Promise[bn("0x57")](t)}async[bn("0x5b")](){return!!navigator[bn("0x5c")]&&await window[bn("0x5d")].isUserVerifyingPlatformAuthenticatorAvailable()}[bn("0x12")](){const t=window[bn("0x5e")][bn("0x5f")](new Uint8Array(16));return Array[bn("0x60")](t)}[bn("0x33")](){const t=null==window[bn("0x61")];return Promise[bn("0x57")](t)}[bn("0x62")](){const t=[bn("0x63"),bn("0x64"),bn("0x65"),"__gCrWeb",bn("0x66"),bn("0x67"),bn("0x68"),"__firefox__",bn("0x69"),bn("0x6a"),"oprt",bn("0x6b"),bn("0x6c"),bn("0x6d"),bn("0x6e"),bn("0x6f"),"__phantomas",bn("0x70"),bn("0x71"),bn("0x72"),bn("0x73"),bn("0x74"),bn("0x75"),bn("0x76"),bn("0x77"),"calledSelenium",bn("0x78"),bn("0x79"),bn("0x7a"),bn("0x7b"),bn("0x7c"),bn("0x7d"),"__fxdriver_unwrapped",bn("0x7e"),bn("0x7f"),bn("0x80"),bn("0x81"),bn("0x82"),bn("0x83"),bn("0x84"),bn("0x85"),bn("0x86"),bn("0x87"),bn("0x88"),"__webdriverFuncgeb",bn("0x89"),"calledPhantom",bn("0x8a"),bn("0x8b"),"cdc_adoQpoasnfa76pfcZLmcfl_Symbol",bn("0x8c"),"fmget_targets","geb",bn("0x8d"),bn("0x8e"),bn("0x8f"),bn("0x90")],e=[];for(const i of t){const t=window[i];void 0!==t&&null!=t&&e[bn("0x91")](i)}return Promise[bn("0x57")](e)}[bn("0x92")](){const t={"dynamic-range":["high",bn("0x93")],"prefers-reduced-motion":[bn("0x94"),bn("0x2")],"prefers-contrast":[bn("0x94"),bn("0x95"),bn("0x96"),bn("0x97"),bn("0x98"),bn("0x99")],"max-monochrome":["0","10",bn("0x9a"),"1000"],"forced-colors":[bn("0x9b"),bn("0x9c")],"inverted-colors":[bn("0x9d"),bn("0x9c")],"color-gamut":[bn("0x9e"),"p3","srgb"]},e={};for(const[i,n]of Object[bn("0x53")](t))for(const t of n)e[i[bn("0x9f")](/-/g,"_")+"_"+t[bn("0x9f")](/-/g,"_")]=window[bn("0xa0")]("("+i+": "+t+")")[bn("0xa1")];return Promise[bn("0x57")](e)}getMathFingerprint(){const t=[Math[bn("0xa5")](.12312423423423424),Math[bn("0xa6")](1e308),(e=1e154,Math[bn("0xa2")](e+Math[bn("0xa3")](e*e-1))),Math[bn("0xa7")](.12312423423423424),Math[bn("0xa8")](1),Math[bn("0xa2")](1+Math[bn("0xa3")](2)),Math[bn("0xa9")](.5),Math[bn("0xa2")](3)/2,Math[bn("0xaa")](.5),Math.sin(-1e300),Math[bn("0xab")](1),Math[bn("0xa4")](1)-1/Math[bn("0xa4")](1)/2,Math[bn("0xac")](10.000000000123),Math[bn("0xad")](1),(Math[bn("0xa4")](1)+1/Math.exp(1))/2,Math.tan(-1e300),Math.tanh(1),(Math[bn("0xa4")](2)-1)/(Math[bn("0xa4")](2)+1),Math[bn("0xa4")](1),Math[bn("0xae")](1),Math[bn("0xa4")](1)-1,Math[bn("0xaf")](10),Math[bn("0xa2")](11),Math.PI**-100];var e;let i="";for(let e=0;e<t[bn("0xb0")];e++)i+=t[e].toString();return Promise[bn("0x57")](Tn[bn("0xb1")](i))}[bn("0x11")](){const{connection:t}=navigator,e=(t=>{let{downlink:e,effectiveType:i,rtt:n,saveData:r}=t;return{downlink:e,effectiveType:i,rtt:n,saveData:r}})(t);return Promise[bn("0x57")](e)}[bn("0xb2")](){return Promise[bn("0x57")](!!window[bn("0xb3")])}[bn("0x1a")](){return Promise[bn("0x57")](!!window[bn("0xb4")])}[bn("0x2c")](){return-1!==window[bn("0xb5")][bn("0xb6")]()[bn("0xb7")](bn("0xb8"))}[bn("0x1b")](){return[bn("0xb9"),bn("0x7b"),bn("0x84"),bn("0x81"),bn("0x7d"),bn("0x7c"),"__webdriver_unwrapped",bn("0x82"),bn("0xba"),bn("0x79"),bn("0x77"),bn("0xbb"),bn("0xbc"),bn("0xbd"),"driver-evaluate",bn("0xbe"),bn("0xbf"),bn("0xc0"),bn("0xc1"),bn("0xc2"),"__webdriver_script_fn","__$webdriverAsyncExecutor",bn("0x7e"),"__lastWatirConfirm","__lastWatirPrompt",bn("0x45"),bn("0xc3"),bn("0xc4")][bn("0xc5")]((t=>navigator[t]))}[bn("0x1c")](){const t=navigator[bn("0xc6")];return Promise.resolve(t)}getNavigatorUserAgent(){return navigator[bn("0xc7")]}[bn("0x1d")](){return navigator[bn("0xc8")]}getNavigatorHighEntropyData(){return pn()}[bn("0x1f")](){return navigator[bn("0xc9")][bn("0xca")]()}[bn("0xcb")](){return navigator.onLine}[bn("0x20")](){return navigator[bn("0xcc")][bn("0xcd")]}async[bn("0x36")](t){try{const e=await navigator[bn("0xce")].query({name:t});return null==e?void 0:e[bn("0xcf")]}catch(t){}}[bn("0x38")](){return!!navigator.geolocation}[bn("0x39")](){return"function"==typeof navigator[bn("0xd0")]}[bn("0x3a")](){return{hardwareConcurrency:Object[bn("0xd1")](Object.getPrototypeOf(navigator),bn("0xd2")).get[bn("0xb6")](),languages:Object[bn("0xd1")](Object.getPrototypeOf(navigator),bn("0xd3"))[bn("0xd4")][bn("0xb6")]()}}async[bn("0x3b")](){if(typeof navigator[bn("0x3b")]===bn("0xd5"))try{const{related_applications:t}=await navigator[bn("0x3b")]();if(t&&Array.isArray(t))return t.map((t=>({platform:t[bn("0xd6")],url:t[bn("0xd7")]})))}catch(t){}}[bn("0x2d")](){return document[bn("0xd8")]}getPerformanceTiming(){return performance.timing}[bn("0x2a")](){const{jsHeapSizeLimit:t,totalJSHeapSize:e,usedJSHeapSize:i}=performance[bn("0xd9")];return{jsHeapSizeLimit:t,totalJSHeapSize:e,usedJSHeapSize:i}}[bn("0x16")](){return Promise[bn("0x57")](!!window[bn("0xda")])}getOpenDatabase(){const{openDatabase:t}=window;return Promise.resolve(!!t)}[bn("0x2f")](){const t=window[bn("0xdb")]&&document instanceof DocumentTouch,e={maxTouchPoints:navigator[bn("0xdc")]||navigator[bn("0xdd")]||0,documentTouch:t,ontouchstart:"ontouchstart"in window};return Promise[bn("0x57")](e)}[bn("0xde")](){function t(t){const e=[];for(let i=0;i<t[bn("0xb0")];++i)e[bn("0x91")]({type:t[i][bn("0xdf")],suffixes:t[i].suffixes});return e}const e=[];for(let i=0;i<navigator.plugins[bn("0xb0")];++i){const n=navigator[bn("0xe0")][i];n&&e[bn("0x91")]({name:n[bn("0xe1")],description:n[bn("0xe2")],mimeTypes:t(n)})}return Promise[bn("0x57")](e)}[bn("0x2b")](){const t=window[bn("0xe3")]||screen,{availLeft:e}=t,{availTop:i}=t,n={availHeight:t[bn("0xe4")],availLeft:e,availTop:i,availWidth:t[bn("0xe5")],colorDepth:t.colorDepth,height:t[bn("0xe6")],width:t.width,pixelDepth:t[bn("0xe7")],orientationAngle:t[bn("0xe8")]&&t[bn("0xe8")][bn("0xe9")],orientationType:t[bn("0xe8")]&&t[bn("0xe8")].type,devicePixelRatio:window[bn("0xea")]};return Promise[bn("0x57")](n)}static[bn("0xb1")](t){if(null==t)return;let e=0,i=0;const n=t[bn("0xb0")];for(;i<n;)e=(e<<5)-e+t.charCodeAt(i++)|0;return e}[bn("0x32")](){const t={outerWidth:window[bn("0xeb")],outerHeight:window[bn("0xec")]};return Promise[bn("0x57")](t)}getWebDriver(){const t=navigator[bn("0xb9")];return Promise[bn("0x57")](t)}[bn("0x23")](){const t=window[bn("0xe8")];return Promise[bn("0x57")](t)}[bn("0x24")](){const t=navigator[bn("0xd6")];return Promise[bn("0x57")](t)}[bn("0xed")](){const t=navigator.cpuClass;return Promise[bn("0x57")](t)}[bn("0xee")](){const t=navigator[bn("0xef")];return Promise[bn("0x57")](t)}[bn("0x25")](){const t=!!window[bn("0xf0")][bn("0xf1")][bn("0xf2")];return Promise[bn("0x57")](t)}getProductSub(){const t=navigator.productSub;return Promise.resolve(t)}async getMediaDevices(){const t=await navigator.mediaDevices[bn("0xf3")](),e=[];for(const i of t)e.push({kind:i[bn("0xf4")],label:i[bn("0xf5")],deviceId:i.deviceId,groupId:i[bn("0xf6")]});return e}async getAudioFingerprint(){const t=window[bn("0xf7")]||window[bn("0xf8")];if(!t)return-1;const e=new t(1,5e3,44100),i=e[bn("0xf9")]();i[bn("0xdf")]=bn("0xfa"),i[bn("0xfb")][bn("0x47")]=1e4;const n=e[bn("0xfc")]();n.threshold.value=-50,n[bn("0xfd")].value=40,n[bn("0xfe")][bn("0x47")]=12,n.attack[bn("0x47")]=0,n[bn("0xff")][bn("0x47")]=.25,i[bn("0x100")](n),n[bn("0x100")](e[bn("0x101")]),i[bn("0x102")](0);const r=new Promise((async(t,i)=>{e.oncomplete=e=>t(e[bn("0x103")]);try{await e[bn("0x104")]()}catch(t){i(t)}})),a=(await r)[bn("0x105")](0)[bn("0x106")](4500);return Tn[bn("0x107")](a)}async[bn("0x28")](){var t;const e=window[bn("0xf7")]||window[bn("0xf8")];if(!e)return{};const i=new e(1,5e3,44100),n=i[bn("0xf9")]();n[bn("0xdf")]="triangle",n[bn("0xfb")][bn("0x47")]=1e4;const r=i[bn("0xfc")]();r[bn("0x108")][bn("0x47")]=-50,r[bn("0xfd")][bn("0x47")]=40,r[bn("0x109")][bn("0x47")]=0;const a=i[bn("0x10a")]();n[bn("0x100")](r),r[bn("0x100")](a),r[bn("0x100")](i[bn("0x101")]),n[bn("0x102")](0);try{await i[bn("0x104")](),r[bn("0x10b")](),n[bn("0x10b")]();const e=new Float32Array(a[bn("0x10c")]);null===(t=a[bn("0x10d")])||void 0===t||t[bn("0x10e")](a,e);const s=new Float32Array(a[bn("0x10f")]);return bn("0x110")in a&&a[bn("0x110")](s),{gain:r[bn("0x111")][bn("0x47")]||r[bn("0x111")],freq:Dn(e),time:Dn(s)}}catch(t){return{}}}static[bn("0x107")](t){let e=0;for(let i=0;i<t.length;++i)e+=Math[bn("0x112")](t[i]);return e}[bn("0x29")](){const t=[bn("0x113"),bn("0x114"),bn("0x115")],e=[bn("0x116"),bn("0x117"),bn("0x118"),"Arabic Typesetting","Arial Unicode MS",bn("0x119"),bn("0x11a"),"Batang","Bitstream Vera Sans Mono",bn("0x11b"),bn("0x11c"),bn("0x11d"),"Clarendon",bn("0x11e"),bn("0x11f"),bn("0x120"),bn("0x121"),bn("0x122"),"Gill Sans",bn("0x123"),bn("0x124"),bn("0x125"),bn("0x126"),"Leelawadee","Letter Gothic",bn("0x127"),bn("0x128"),bn("0x129"),"Menlo",bn("0x12a"),bn("0x12b"),bn("0x12c"),"MS UI Gothic",bn("0x12d"),bn("0x12e"),bn("0x12f"),bn("0x130"),"Microsoft Uighur",bn("0x131"),bn("0x132"),bn("0x133"),"Pristina",bn("0x134"),bn("0x135"),"Serifa","SimHei",bn("0x136"),bn("0x137"),bn("0x138"),bn("0x139"),"Vrinda",bn("0x13a")],i=document[bn("0x13b")]("div");i[bn("0x13c")][bn("0x13d")]=bn("0x13e");const n={},r={},a=t=>{const e=document[bn("0x13b")](bn("0x13f")),{style:n}=e;return n.position="absolute",n[bn("0x140")]="0",n[bn("0x141")]="0",n.fontFamily=t,n[bn("0x142")]=bn("0x143"),e[bn("0x144")]="mmMwWLliI0O&1",i[bn("0x145")](e),e},s=(t,e)=>a("'"+t+"',"+e),o=t[bn("0x146")](a),c=(()=>{const i={};for(const n of e)i[n]=t[bn("0x146")]((t=>s(n,t)));return i})();document.body[bn("0x145")](i);try{for(let e=0;e<t[bn("0xb0")];e++)n[t[e]]=o[e][bn("0x148")],r[t[e]]=o[e][bn("0x149")];const i=e.filter((e=>{return i=c[e],t[bn("0x147")](((t,e)=>i[e].offsetWidth!==n[t]||i[e].offsetHeight!==r[t]));var i}));return Promise[bn("0x57")](i)}finally{document[bn("0x14a")][bn("0x14b")](i)}}getTimezoneOffset(){const t=(new Date)[bn("0x19")]();return Promise[bn("0x57")](t)}[bn("0x18")](){const t=navigator[bn("0x14c")];return Promise[bn("0x57")](t)}[bn("0x17")](){const t=navigator[bn("0xd3")];return Promise[bn("0x57")](t)}[bn("0x15")](){const t=navigator[bn("0xd2")];return Promise[bn("0x57")](t)}[bn("0x13")](){const t=navigator.deviceMemory;return Promise.resolve(t)}[bn("0x14")](){return[bn("0x84"),bn("0x81"),bn("0x87"),bn("0x86"),bn("0x85"),bn("0x7d"),bn("0x7c"),"__webdriver_unwrapped",bn("0x7b"),"__selenium_unwrapped",bn("0xba")][bn("0xc5")]((t=>document[t]))}[bn("0x2e")](){const t=Intl[bn("0x14d")]()[bn("0x14e")]()[bn("0x14f")];return Promise.resolve(t)}[bn("0x30")](){const t=navigator[bn("0x150")];return Promise.resolve(t)}[bn("0x151")](){const t=navigator[bn("0x152")];return Promise[bn("0x57")](t)}async[bn("0x10")](){const t=document[bn("0x13b")]("canvas");t.width=1,t[bn("0xe6")]=1;const e=t[bn("0x167")]("2d"),i={winding:function(t){return t[bn("0x166")](0,0,10,10),t[bn("0x166")](2,2,6,6),!t.isPointInPath(5,5,"evenodd")}(e),geometry:function(t,e){t[bn("0x153")]=122,t[bn("0xe6")]=110,e[bn("0x15e")]=bn("0x15f");const i=[[bn("0x160"),40,40],[bn("0x161"),80,40],["#ff2",60,80]];for(const[t,n,r]of i)e[bn("0x156")]=t,e.beginPath(),e[bn("0x162")](n,r,40,0,2*Math.PI,!0),e.closePath(),e[bn("0x163")]();return e[bn("0x156")]=bn("0x164"),e[bn("0x162")](60,60,60,0,2*Math.PI,!0),e[bn("0x162")](60,60,20,0,2*Math.PI,!0),e[bn("0x163")]("evenodd"),Tn[bn("0xb1")](t[bn("0x165")]())}(t,e),text:function(t,e){t[bn("0x153")]=240,t.height=60,e[bn("0x154")]=bn("0x155"),e[bn("0x156")]=bn("0x157"),e.fillRect(100,1,62,20),e[bn("0x156")]=bn("0x158"),e[bn("0x159")]=bn("0x15a");const i="Cwm fjordbank gly "+String.fromCharCode(55357,56835);return e[bn("0x15b")](i,2,15),e.fillStyle=bn("0x15c"),e[bn("0x159")]=bn("0x15d"),e.fillText(i,4,45),Tn[bn("0xb1")](t.toDataURL())}(t,e)};return Promise[bn("0x57")](i)}async getBattery(){const t=await navigator[bn("0xe")]();return{charging:t[bn("0x168")],chargingTime:t[bn("0x169")],dischargingTime:t[bn("0x16a")],level:t[bn("0x16b")]}}async[bn("0xf")](){return!!navigator[bn("0x16c")]&&await navigator[bn("0x16c")][bn("0x16d")]()}async[bn("0x31")](){const t=document[bn("0x13b")](bn("0x16e")),e=t[bn("0x167")](bn("0x16f"))||t.getContext(bn("0x170")),i=e[bn("0x171")](bn("0x172"));return Promise[bn("0x57")](e[bn("0x173")](i[bn("0x174")]))}async[bn("0x175")](){const t=document[bn("0x13b")](bn("0x176")),e={basic:""===t[bn("0x177")](bn("0x178")),advanced:""===t[bn("0x177")](bn("0x179"))};return Promise.resolve(e)}async[bn("0x34")](){const{publicKey:t,keyIdentifier:e}=await this.cryptoBinding[bn("0x17a")]();return{publicKey:t,keyIdentifier:e}}static[bn("0x17b")](){return/iPhone|iPad|iPod|Android|MiuiBrowser/i.test(navigator[bn("0xc7")])||null!=window[bn("0xe8")]||window[bn("0xa0")](bn("0x17c"))[bn("0xa1")]}}var kn,An,Pn=["uncompressed","ALLOW","CHALLENGE","DENY","TRUST","compress","compressed"];kn=Pn,An=271,function(t){for(;--t;)kn.push(kn.shift())}(++An);var Cn,Mn,On,Rn,Kn=function(t,e){return Pn[t-=0]};(Mn=Cn||(Cn={}))[Kn("0x0")]=Kn("0x1"),Mn[Kn("0x2")]=Kn("0x2"),(Rn=On||(On={}))[Kn("0x3")]=Kn("0x3"),Rn.CHALLENGE=Kn("0x4"),Rn[Kn("0x5")]="DENY",Rn[Kn("0x6")]=Kn("0x6");var Ln,Nn,zn=["parse","SHA-256","crypto is not supported","generateSymKey","subtle","generateKey","AES-GCM","encrypt","decrypt","encryptPayload","string","encode","crypto","arrayBufferToBase64","encryptSymKeyBundle","exportKey","raw","stringify","RSA-OAEP","byteLength","fromCharCode","btoa","importPublicKey","importKey"];Ln=zn,Nn=483,function(t){for(;--t;)Ln.push(Ln.shift())}(++Nn);var Un=function(t,e){return zn[t-=0]};class Bn{constructor(t){this.configManager=t}[Un("0x0")](){return window.crypto[Un("0x1")][Un("0x2")]({name:Un("0x3"),length:256},!0,[Un("0x4"),Un("0x5")])}async[Un("0x6")](t,e){const i=typeof t===Un("0x7")?(new TextEncoder)[Un("0x8")](t):t,n=window.crypto.getRandomValues(new Uint8Array(12)),r={name:Un("0x3"),iv:n},a=await window[Un("0x9")].subtle.encrypt(r,e,i);return{payloadCipherText:this[Un("0xa")](a),iv:n}}async[Un("0xb")](t,e,i){const n=await window[Un("0x9")].subtle[Un("0xc")](Un("0xd"),t),r=this[Un("0xa")](n),a=this[Un("0xa")](e),s=(new TextEncoder)[Un("0x8")](JSON[Un("0xe")]({symKey:r,iv:a})),o=await window[Un("0x9")][Un("0x1")][Un("0x4")]({name:Un("0xf")},i,s);return this[Un("0xa")](o)}[Un("0xa")](t){let e="";const i=new Uint8Array(t),n=i[Un("0x10")];for(let t=0;t<n;t++)e+=String[Un("0x11")](i[t]);return window[Un("0x12")](e)}[Un("0x13")](t){return window[Un("0x9")][Un("0x1")][Un("0x14")]("jwk",JSON[Un("0x15")](t),{name:Un("0xf"),hash:Un("0x16")},!0,["encrypt"])}async[Un("0x4")](t,e){if(!window[Un("0x9")]||!window[Un("0x9")][Un("0x1")])throw new Error(Un("0x17"));const i=await this[Un("0x0")](),{payloadCipherText:n,iv:r}=await this.encryptPayload(e,i),a=await this[Un("0x13")](t);return{encryptedData:n,encryptedKey:await this[Un("0xb")](i,r,a)}}}var Fn,jn,Zn=["error","name","toString","SDKError: ",", errorSpace: ","toLog","CLIENT","SERVER","server","COMMUNICATION","communication","errorSpace","errorCode","message"];Fn=Zn,jn=468,function(t){for(;--t;)Fn.push(Fn.shift())}(++jn);var Vn,Hn,Gn=function(t,e){return Zn[t-=0]};(Hn=Vn||(Vn={}))[Gn("0x0")]="client",Hn[Gn("0x1")]=Gn("0x2"),Hn[Gn("0x3")]=Gn("0x4");class Wn extends Error{constructor(t,e,i){var n,r;super(),this.error=t,this[Gn("0x5")]=e,this[Gn("0x6")]=i,this[Gn("0x7")]=(null===(n=this[Gn("0x8")])||void 0===n?void 0:n.message)||this[Gn("0x8")].toString(),this[Gn("0x9")]=(null===(r=this[Gn("0x8")])||void 0===r?void 0:r.name)||Wn[Gn("0x9")]}[Gn("0xa")](){return Gn("0xb")+this.message+(this[Gn("0x5")]?Gn("0xc")+this[Gn("0x5")]:"")+(this[Gn("0x6")]?", errorCode: "+this[Gn("0x6")]:"")}[Gn("0xd")](){return l(l({name:this[Gn("0x9")],message:this[Gn("0x7")]},this[Gn("0x5")]&&{errorSpace:this.errorSpace}),this[Gn("0x6")]&&{errorCode:this[Gn("0x6")]})}}var Yn,qn,Jn=["identityManager","getTabId","timestamp","includes","type","addEventToLocalStorage","push","length","flushTimeoutHandle","flush","Error while emitting event","getClientId","errorCode","toLog","min","catch","Error while emitting event (delayed flush)","refreshSessionToken","sendDeviceDataEvent","Failed to refresh data","isTokenExpired","error","Failed to polling data","enrichUADataIfDoesNotExist","navigatorHighEntropyData","popAllEvents","pop","sort","clientId","deviceId","userId","getUserId","sdkPlatform","events","keyIdentifier","warn","sessionToken","buildEncryptedRequestBody","getRotationData","data","signature","postData","device/events","headers","find","value","setDeviceId","setUserId","cleanLocalStorageEvents","COMMUNICATION","stringify","uncompressed","increaseEventIndex","eventIndex","getItemLocalStorageSafe","parseInt","isNaN","setItemLocalStorageSafe","shouldSendDeviceEvent","now","info","no need to send device event","getDeviceData","emitEvent","getDeviceId","page_load","referrer","history","extractWindowRespurces","performance","getEntriesByType","resources","isArray","map","name","initiatorType","registerEventListeners","fetchEventsFromLocalStorage","parse","removeItemLocalStorageSafe","ddls","rei","mouseEventsCollectionBuffer","bufferSize","bufferInterval","EVENT_TYPE_IDENTIFICATION","localStoredEventTypes","configManager","storageManager","requestsManager","cryptoBinding","serverPath","enableSessionToken","safeEventCallback","EVENT_TYPE_INTERACTION","eventsQueue","crypto","interactionEventsManager","getConfValue","isMobile","eventTypesToStore","maxEventStored","pollingInterval","pollingSessionToken","index","location","toString","platform","sdkVersion","tabId"];Yn=Jn,qn=410,function(t){for(;--t;)Yn.push(Yn.shift())}(++qn);var $n=function(t,e){return Jn[t-=0]};const Xn=$n("0x0"),Qn="lastDeviceInDeviceEvent",tr=$n("0x1"),er="lse",ir=$n("0x2"),nr="deviceEventDataCollectionIgnoreList",rr=$n("0x3"),ar=$n("0x4"),sr=[Pi.EVENT_TYPE_ACTION,Pi[$n("0x5")]],or=$n("0x6");class cr{constructor(t,e,i,n,r,a,s,o){this[$n("0x7")]=t,this[$n("0x8")]=e,this.deviceDataManager=i,this[$n("0x9")]=n,this.identityManager=r,this[$n("0xa")]=a,this[$n("0xb")]=s,this[$n("0xc")]=o,this.eventIndex=null,this.flushTimeoutHandle=null,this[$n("0xd")]=async(t,e)=>{try{const i=l({},l({interaction_type:t},e)),n={type:Pi[$n("0xe")],attributes:i};return await this.emitEvent(n)}catch(t){}},this.enableSessionToken=o,this[$n("0xf")]=[],this[$n("0x10")]=new Bn(t),this[$n("0x11")]=new hn(this.configManager[$n("0x12")](nr,[]),this[$n("0x7")][$n("0x12")](ir,100),this.safeEventCallback),this[$n("0x13")]=Tn.isMobile(),this[$n("0x14")]=this[$n("0x7")][$n("0x12")](or,[Pi.EVENT_TYPE_ACTION]),this[$n("0x15")]=this.configManager[$n("0x12")]("maxLocalStoredEvents",4),this[$n("0x16")]=36e4,this[$n("0x17")]()}async emitEvent(t){t[$n("0x18")]=this.increaseEventIndex(),t[$n("0x19")]=location[$n("0x1a")](),t.platform=navigator[$n("0x1b")],t[$n("0x1c")]="1.52.0",t[$n("0xb")]=this.serverPath,t[$n("0x1d")]=this[$n("0x1e")][$n("0x1f")](),t[$n("0x20")]=Date.now(),await this.enrichUADataIfDoesNotExist(t);let e=0;this[$n("0x14")][$n("0x21")](t[$n("0x22")])?e=this[$n("0x23")](t):this[$n("0xf")][$n("0x24")](t);const i=this[$n("0x7")][$n("0x12")](rr,2);if(this.eventsQueue[$n("0x25")]+e>=i||sr[$n("0x21")](t[$n("0x22")])){this[$n("0x26")]&&(clearTimeout(this.flushTimeoutHandle),this[$n("0x26")]=null);try{return await this[$n("0x27")]()}catch(e){throw wi.error($n("0x28"),{clientId:this[$n("0x1e")][$n("0x29")](),eventType:t[$n("0x22")],error:e[$n("0x2a")]?e[$n("0x2b")]():e}),e}}if(!this.flushTimeoutHandle&&this[$n("0xf")][$n("0x25")]>0){const e=this[$n("0x7")][$n("0x12")](ar,2),i=Math[$n("0x2c")](e,30);this.flushTimeoutHandle=setTimeout((()=>{this[$n("0x26")]=null,this[$n("0x27")]()[$n("0x2d")]((e=>{wi.error($n("0x2e"),{clientId:this[$n("0x1e")][$n("0x29")](),eventType:t[$n("0x22")],error:e[$n("0x2a")]?e.toLog():e})}))}),1e3*i)}return{}}async[$n("0x2f")](){try{return this[$n("0xf")][$n("0x25")]>0||await this[$n("0x30")](!0),await this.flush()}catch(t){wi.error($n("0x31"),{e:t})}}async[$n("0x17")](){try{this[$n("0x1e")][$n("0x32")]()&&await this[$n("0x2f")]()}catch(t){wi[$n("0x33")]($n("0x34"),{e:t})}finally{setTimeout((async()=>{await this[$n("0x17")]()}),this[$n("0x16")])}}async[$n("0x35")](t){var e;if(!(null===(e=t.attributes)||void 0===e?void 0:e.navigatorHighEntropyData))try{t.attributes[$n("0x36")]=await pn()}catch(t){}}[$n("0x37")](){const t=[],e=this.fetchEventsFromLocalStorage();for(;this.eventsQueue[$n("0x25")];)t[$n("0x24")](this[$n("0xf")][$n("0x38")]());return(null==e?void 0:e[$n("0x25")])&&t[$n("0x24")](...e),t[$n("0x39")](((t,e)=>t[$n("0x20")]-e[$n("0x20")]))}async flush(){const t=this[$n("0x37")]();if(0===t[$n("0x25")])return{};const e={};e[$n("0x3a")]=this[$n("0x1e")][$n("0x29")](),e[$n("0x3b")]=this[$n("0x1e")].getDeviceId(),e[$n("0x3c")]=this[$n("0x1e")][$n("0x3d")](),e[$n("0x3e")]=this[$n("0x13")]?Ri:Oi,e[$n("0x3f")]=t;try{const{keyIdentifier:t}=await this[$n("0xa")].getPublicData();e[$n("0x40")]=t}catch(t){wi[$n("0x41")]("Crypto-binding is not supported. "+t)}this.enableSessionToken&&(e[$n("0x42")]=!0);const i=await this[$n("0x43")](e),n=await this[$n("0xa")][$n("0x44")]();let r;n&&(r=[{type:"key_rotation_data",data:n[$n("0x45")],signature:n[$n("0x46")]}]);const a=await this.requestsManager[$n("0x47")]($n("0x48"),l(l({},i),r?{headers:r}:{}));if(a[$n("0x49")]){const t=a[$n("0x49")][$n("0x4a")]((t=>"key_rotation_status"===t[$n("0x22")]));t&&t[$n("0x4b")]&&this[$n("0xa")].handleRotateResponse(t[$n("0x4b")])}return a[$n("0x3b")]&&this[$n("0x1e")][$n("0x4c")](a.deviceId),a[$n("0x42")]&&this[$n("0x1e")].setSessionToken(a[$n("0x42")]),a[$n("0x3c")]&&this[$n("0x1e")][$n("0x4d")](a[$n("0x3c")]),this[$n("0x4e")](),a}async buildEncryptedRequestBody(t){let e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const i=this[$n("0x7")][$n("0x12")]("publicKey",null);if(null===i&&e)return await this[$n("0x7")].refreshConf(this[$n("0x1e")][$n("0x29")]()),await this[$n("0x43")](t);if(null===i)throw new Wn(new Error("Encryption error - missing public key"),Vn[$n("0x4f")]);try{const e=JSON[$n("0x50")](t),n=this.compressData(e),r=n||e,{encryptedData:a,encryptedKey:s}=await this[$n("0x10")].encrypt(i,r);return{data:a,key:s,dataType:n?Cn.compress:Cn[$n("0x51")]}}catch(t){throw new Wn(t,Vn.CLIENT)}}compressData(t){try{return ii(t)}catch(t){wi.error("Failed to compress data, sending the data to the service uncompressed",{clientId:this[$n("0x1e")][$n("0x29")](),error:t})}}[$n("0x52")](){if(null===this[$n("0x53")]){const t=this[$n("0x8")][$n("0x54")](tr),e=Number[$n("0x55")](t);this[$n("0x53")]=Number[$n("0x56")](e)?-1:e}return this[$n("0x53")]++,this[$n("0x8")][$n("0x57")](tr,this.eventIndex[$n("0x1a")]()),this[$n("0x53")]}[$n("0x58")](){const t=this[$n("0x8")][$n("0x54")](Xn),e=this[$n("0x8")][$n("0x54")](Qn);return!t||!e||Date[$n("0x59")]()-t>864e5||e!=this[$n("0x1e")].getDeviceId()}async[$n("0x30")](t){if(!t&&!this.shouldSendDeviceEvent())return wi[$n("0x5a")]($n("0x5b")),!1;const e=await this.deviceDataManager[$n("0x5c")](),i={type:Pi.EVENT_TYPE_DEVICE,attributes:e},n=await this[$n("0x5d")](i);return n&&(this.storageManager[$n("0x57")](Xn,Date.now()),this[$n("0x8")][$n("0x57")](Qn,this.identityManager[$n("0x5e")]())),n}async sendPageLoadEvent(){const t=$n("0x5f");if(this.configManager.getConfValue(nr,[])[$n("0x21")](t))return!1;const e=this.extractWindowRespurces();return await this.emitEvent({type:Pi[$n("0xe")],attributes:l(l({interaction_type:t,location:window[$n("0x19")].href,referrer:document[$n("0x60")]},window[$n("0x61")]&&{window_historyLength:window[$n("0x61")].length}),e&&{windowResources:e})}),!0}[$n("0x62")](){try{const t=window[$n("0x63")][$n("0x64")]($n("0x65"));return t&&Array[$n("0x66")](t)?t[$n("0x67")]((t=>({name:t[$n("0x68")],initiatorType:t[$n("0x69")]}))):void 0}catch(t){}}registerEventListeners(){this.interactionEventsManager[$n("0x6a")](),this[$n("0x1e")][$n("0x6a")]()}[$n("0x6b")](){const t=this[$n("0x8")][$n("0x54")](er);return t?JSON[$n("0x6c")](t):[]}[$n("0x23")](t){const e=this.fetchEventsFromLocalStorage();return Ui.maintainLastXItems(e,this[$n("0x15")],t),this[$n("0x8")].setItemLocalStorageSafe(er,JSON.stringify(e)),e[$n("0x25")]}cleanLocalStorageEvents(){this[$n("0x8")][$n("0x6d")](er)}}var lr,xr,dr=["userId","removeItemSessionStorageSafe","removeItemLocalStorageSafe","tabId","random","setSessionToken","getSessionToken","parse","iat","exp","now","rti","rst","userIdStorageExpiry","configManager","setClientId","clientId","loadDeviceId","loadTabId","registerEventListeners","addEventListener","beforeunload","saveTabIdOnUnload","getDeviceId","setDeviceId","deviceId","info","Updating DeviceId","setItemSessionStorageSafe","storageManager","setItemLocalStorageSafe","getItemSessionStorageSafe","getItemLocalStorageSafe","getClientId","getUserId","getConfValue","setUserId"];lr=dr,xr=344,function(t){for(;--t;)lr.push(lr.shift())}(++xr);var hr=function(t,e){return dr[t-=0]};const ur="rui",fr="rdi",gr="rdit",_r=hr("0x0"),pr=hr("0x1"),yr=hr("0x2");class wr{constructor(t,e,i){this.storageManager=t,this[hr("0x3")]=e,this.clientId=i,this[hr("0x4")](this[hr("0x5")])}load(){this[hr("0x6")](),this[hr("0x7")]()}[hr("0x8")](){window[hr("0x9")](hr("0xa"),(async()=>this[hr("0xb")]()))}[hr("0xc")](){return this.deviceId}[hr("0xd")](t){this[hr("0xe")]!==t&&(wi[hr("0xf")](hr("0x10"),{deviceId:t}),this[hr("0xe")]=t,this.storageManager[hr("0x11")](fr,t),this[hr("0x12")][hr("0x13")](fr,t))}[hr("0x6")](){const t=this.storageManager[hr("0x14")](fr)||this[hr("0x12")][hr("0x15")](fr);return null!=t&&this[hr("0xd")](t),t}[hr("0x16")](){return this[hr("0x5")]}setClientId(t){this[hr("0x12")][hr("0x16")]()!=t&&this.storageManager[hr("0x4")](t),this[hr("0x12")].setItemSessionStorageSafe("rci",t)}[hr("0x17")](){if(Number(this[hr("0x12")].getItemLocalStorageSafe(gr))+this[hr("0x3")][hr("0x18")](yr,864e5)<Date.now())return this.removeUserId(),null;const t=this[hr("0x12")][hr("0x14")](ur);return null!=t?t:this[hr("0x12")][hr("0x15")](ur)}[hr("0x19")](t){this[hr("0x1a")]=t,this.storageManager[hr("0x11")](ur,t),this[hr("0x12")].setItemLocalStorageSafe(ur,t),this[hr("0x12")][hr("0x13")](gr,Date.now())}removeUserId(){this.storageManager[hr("0x1b")](ur),this[hr("0x12")][hr("0x1c")](ur),this[hr("0x12")][hr("0x1c")](gr)}[hr("0x7")](){const t=this.storageManager[hr("0x14")](_r);t?(this[hr("0x12")][hr("0x1b")](_r),this[hr("0x1d")]=t):this[hr("0x1d")]=Math.floor(Math[hr("0x1e")]()*Number.MAX_SAFE_INTEGER).toString()}getTabId(){return this[hr("0x1d")]}[hr("0xb")](){this[hr("0x12")][hr("0x11")](_r,this[hr("0x1d")])}[hr("0x1f")](t){this[hr("0x12")][hr("0x13")](pr,t)}getSessionToken(){return this[hr("0x12")].getItemLocalStorageSafe(pr)||this.storageManager[hr("0x14")](pr)}isTokenExpired(){var t;const e=this[hr("0x20")]();if(!e)return!0;try{const i=JSON[hr("0x21")](atob(e.split(".")[1]));let n=(null!==(t=i.exp)&&void 0!==t?t:i[hr("0x22")])*(i.exp&&i[hr("0x23")]<1e12?1e3:1);return i.exp||(n+=9e5),Date[hr("0x24")]()>=n}catch(t){return wi.error("Invalid JWT:",{error:t}),!0}}}var vr,mr,br=["stringify","callServer","getData","GET","fetch","fetch-api is not supported","CLIENT","statusText","status","message","COMMUNICATION","serverPath","postData","postDataFromURL","POST","include","application/json"];vr=br,mr=198,function(t){for(;--t;)vr.push(vr.shift())}(++mr);var Sr=function(t,e){return br[t-=0]};class Er{constructor(t){this[Sr("0x0")]=t}async[Sr("0x1")](t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this[Sr("0x2")](this[Sr("0x0")]+t,e,i)}async[Sr("0x2")](t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n={method:Sr("0x3"),credentials:Sr("0x4"),headers:new Headers(l({"Content-Type":Sr("0x5")},i)),body:JSON[Sr("0x6")](e)};return await this[Sr("0x7")](t,n)}async[Sr("0x8")](t){const e=this[Sr("0x0")]+t,i={method:Sr("0x9"),credentials:Sr("0x4")};return await this[Sr("0x7")](e,i)}async[Sr("0x7")](t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!(Sr("0xa")in window))throw new Wn(new Error(Sr("0xb")),Vn[Sr("0xc")]);try{const i=await fetch(t,e),n=await i.json();if(i.ok)return n;throw new Wn(new Error(n.message||i[Sr("0xd")]),Vn.SERVER,i[Sr("0xe")])}catch(t){if(!(t instanceof Wn))throw new Wn(new Error(t[Sr("0xf")]),Vn[Sr("0x10")]);throw t}}}var Dr,Ir,Tr=["filter","length","Invalid SDK params was provided: ","stringify","REQUIRED_SDK_PARAMS","string","throwOrReturnResult","info","throwError","validateSDKParams","keys"];Dr=Tr,Ir=224,function(t){for(;--t;)Dr.push(Dr.shift())}(++Ir);var kr=function(t,e){return Tr[t-=0]};class Ar{constructor(){this[kr("0x0")]={clientId:kr("0x1")}}[kr("0x2")](t,e,i){if(!t&&((null==e?void 0:e.logIfInvalid)&&wi[kr("0x3")](i),null==e?void 0:e[kr("0x4")]))throw new Error(i);return t}[kr("0x5")](t,e){const i=Object[kr("0x6")](this[kr("0x0")])[kr("0x7")]((e=>typeof t[e]!=this[kr("0x0")][e]));return this[kr("0x2")](0==i[kr("0x8")],e,kr("0x9")+JSON[kr("0xa")](i))}}var Pr,Cr,Mr=["platform","postData","device/logs","requestsManager","identityManager","configManager","lastTimeLogsSent","logMiddleware","reportLogs","middlewares","push","getConfValue","enableLogsReporting","logsMinimumDelay","logs","length","now","flush","getClientId","floor"];Pr=Mr,Cr=363,function(t){for(;--t;)Pr.push(Pr.shift())}(++Cr);var Or=function(t,e){return Mr[t-=0]};class Rr{constructor(t,e,i){this[Or("0x0")]=t,this[Or("0x1")]=e,this[Or("0x2")]=i,this[Or("0x3")]=0,this[Or("0x4")]=async()=>{try{await this[Or("0x5")]()}catch(t){}},wi[Or("0x6")][Or("0x7")](this[Or("0x4")])}async[Or("0x5")](){if(!this[Or("0x2")][Or("0x8")](Or("0x9"),!1))return;const t=this[Or("0x2")].getConfValue("logsMinimumBatch",6),e=this[Or("0x2")][Or("0x8")](Or("0xa"),12e4);if(wi[Or("0xb")][Or("0xc")]<t||this[Or("0x3")]+e>Date.now())return;this[Or("0x3")]=Date[Or("0xd")]();const i=wi[Or("0xe")](),n=this[Or("0x1")][Or("0xf")](),r=Math[Or("0x10")](Date[Or("0xd")]()/1e3),a={sdkVersion:"1.52.0",platform:navigator[Or("0x11")],clientId:n,timestamp:r,logEntries:i};await this[Or("0x0")][Or("0x12")](Or("0x13"),a)}}var Kr,Lr,Nr=["getClientId","device/migrate-identifiers","postDataFromURL","deviceId","storageManager","rimd","identityManager","migrateIdentifiers","getItemLocalStorageSafe","true","getDeviceId"];Kr=Nr,Lr=258,function(t){for(;--t;)Kr.push(Kr.shift())}(++Lr);var zr=function(t,e){return Nr[t-=0]};const Ur=zr("0x0");class Br{constructor(t,e,i){this[zr("0x1")]=t,this.requestsManager=e,this.storageManager=i}async[zr("0x2")](t){if(this.storageManager[zr("0x3")](Ur)!=zr("0x4")){const e=this[zr("0x1")][zr("0x5")](),i=this[zr("0x1")][zr("0x6")](),n=(t.endsWith("/")?t:t+"/")+zr("0x7"),r=await this.requestsManager[zr("0x8")](n,{deviceId:e,clientId:i});r.deviceId&&r[zr("0x9")]==e&&this[zr("0xa")].setItemLocalStorageSafe(Ur,zr("0x4"))}}}var Fr,jr,Zr=["identityManager","migrationsManager","storageManager","enableSessionToken","logsReporter","getConfValue","isInitialized","Session token is not enabled","now","info","SDK disabled","disabled_sdk_","eventsManager","refreshSessionToken","getSessionToken","init","object","userId","initializationPromise","refreshConf","tenantId","keyRotation","cryptoBinding","crypto","createCryptoBinding","sign","isEnabled","startedAt","deviceDataManager","enabled","sendDeviceDataEvent","catch","sendPageLoadEvent","updateUserId","registerEventListeners","triggerActionEvent","includes","warn","Invalid action type","CLIENT","claimedUserIdType","invalid_claimed_user_id_type_","getDeviceData","EVENT_TYPE_ACTION","correlationId","claimedUserId","publicKey","extensionMetadata","extensionDeviceAttributes","suspiciousSignals","suspiciousContext","downloadFile","uploadFile","transactionData","customAttributes","emitEvent","Unhandled SDK error. recieved eventResponse: ","errorSpace","SERVER","_error_","message","unexpected_error_","identifyUser","identifyUser called without a valid userid","getUserId","setUserId","EVENT_TYPE_IDENTIFICATION","deviceId","removeUserId","setAuthenticatedUser","setUser","unidentifiedUser","RiskID","TSAccountProtection","dispatchEvent","undefined","sdkEnabled","enableIdentifiersMigration","verbose","actions","https://collect.riskid.security/","email","phone_number","ssn","national_id","passport_number","drivers_license_number","other","isSDKDisabled","identifiersMigrationEnabled","firstPartyMigrationUrl","validationManager","initializedInstance","SDK already initialized","string","clientId","options","serverPath","toString","validateSDKParams","mainEntry","requestsManager","configManager"];Fr=Zr,jr=487,function(t){for(;--t;)Fr.push(Fr.shift())}(++jr);var Vr=function(t,e){return Zr[t-=0]};const Hr=[null,void 0,Vr("0x0"),"",0],Gr=Vr("0x1"),Wr=Vr("0x2"),Yr=Vr("0x3"),qr=Vr("0x4"),Jr=Vr("0x5"),$r=[Vr("0x6"),Vr("0x7"),"account_id",Vr("0x8"),Vr("0x9"),Vr("0xa"),Vr("0xb"),Vr("0xc")];class Xr{constructor(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var i;if(this.initializationPromise=null,this[Vr("0xd")]=!1,this.enableSessionToken=!1,this[Vr("0xe")]=!1,this[Vr("0xf")]=null,this[Vr("0x10")]=new Ar,Xr[Vr("0x11")])throw new Error(Vr("0x12"));Xr[Vr("0x11")]=!0;const n=typeof e===Vr("0x13");this[Vr("0x14")]=n?e:t,this[Vr("0x15")]=n?{serverPath:t}:e,(i=this[Vr("0x15")])[Vr("0x16")]||(i[Vr("0x16")]=Jr),this[Vr("0x15")][Vr("0x16")]=new URL(this.options[Vr("0x16")])[Vr("0x17")](),this[Vr("0xf")]=this.options.firstPartyMigrationUrl||null,wi.enabled=!!this[Vr("0x15")].verbose,this[Vr("0x10")][Vr("0x18")](this,{throwError:!0,logIfInvalid:!0})||(this[Vr("0xd")]=!0),this.storageManager=new ui(this[Vr("0x14")]),this[Vr("0x1a")]=new Er(this.options[Vr("0x16")]),this[Vr("0x1b")]=new Ii(this.storageManager,this.requestsManager),this[Vr("0x1c")]=new wr(this.storageManager,this.configManager,this[Vr("0x14")]),this[Vr("0x1c")].load(),this[Vr("0x1d")]=new Br(this[Vr("0x1c")],this[Vr("0x1a")],this[Vr("0x1e")]),this[Vr("0x1f")]=this[Vr("0x15")][Vr("0x1f")]||!1,this[Vr("0x20")]=new Rr(this[Vr("0x1a")],this[Vr("0x1c")],this.configManager)}get[Vr("0x4")](){return this[Vr("0x1b")][Vr("0x21")](qr,[])}async getActions(){return await this[Vr("0x22")](),this[Vr("0x4")]}async getSessionToken(){if(!this[Vr("0x1f")])throw new Error(Vr("0x23"));if(!await this[Vr("0x22")]()){const t=Date[Vr("0x24")]();return wi[Vr("0x25")](Vr("0x26")),{actionToken:Vr("0x27")+t}}return this[Vr("0x1c")].isTokenExpired()&&await this[Vr("0x28")][Vr("0x29")](),this[Vr("0x1c")][Vr("0x2a")]()}async[Vr("0x2b")](t){const e=typeof t!==Vr("0x2c")?t:null==t?void 0:t[Vr("0x2d")];return wi[Vr("0x25")]("sdk init started"),this[Vr("0x2e")]=(async()=>{await this.configManager[Vr("0x2f")](this[Vr("0x1c")].getClientId());const t=this[Vr("0x1b")].getConfValue(Vr("0x30"),null),i=this[Vr("0x1b")][Vr("0x21")](Vr("0x31"),null);return this[Vr("0x32")]=xi[Vr("0x33")][Vr("0x34")](Vr("0x35"),(null==i?void 0:i[Vr("0x36")])?{keyRotation:{isEnabled:!0,expiryDays:i.expiryDays,startedAt:i[Vr("0x37")],tenantId:t}}:void 0),this[Vr("0x38")]=new In(this[Vr("0x1e")],this[Vr("0x1b")],this[Vr("0x32")]),this[Vr("0x28")]=new cr(this[Vr("0x1b")],this[Vr("0x1e")],this[Vr("0x38")],this[Vr("0x1a")],this[Vr("0x1c")],this[Vr("0x32")],this.options.serverPath,this[Vr("0x1f")]),this.isSDKDisabled=this[Vr("0xd")]||!this[Vr("0x1b")][Vr("0x21")](Gr,!1),!this[Vr("0xd")]&&(this[Vr("0xe")]=this[Vr("0xe")]||this.configManager.getConfValue(Wr,!1),this[Vr("0xe")]&&this[Vr("0xf")]&&await this[Vr("0x1d")].migrateIdentifiers(this[Vr("0xf")]),wi[Vr("0x39")]=wi[Vr("0x39")]||!!this.configManager[Vr("0x21")](Yr,!1),await this[Vr("0x28")][Vr("0x3a")]()[Vr("0x3b")]((()=>{})),await this[Vr("0x28")][Vr("0x3c")]()[Vr("0x3b")]((()=>{})),await this[Vr("0x3d")](e)[Vr("0x3b")]((()=>{})),this.eventsManager[Vr("0x3e")](),await this.eventsManager.flush()[Vr("0x3b")]((()=>{})),wi.info("sdk init done"),!0)})(),await this[Vr("0x2e")]}async isInitialized(){return null!==this.initializationPromise&&await this[Vr("0x2e")]}async[Vr("0x3f")](t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=Date[Vr("0x24")]();if(!await this[Vr("0x22")]())return wi[Vr("0x25")]("SDK disabled"),{actionToken:Vr("0x27")+i};if(!this[Vr("0x4")][Vr("0x40")](t))return wi[Vr("0x41")](Vr("0x42"),{actionType:t}),{actionToken:Vn[Vr("0x43")]+"_error_'invalid action type - "+t+"'_"+i};const n=null==e?void 0:e[Vr("0x44")];if(n&&!$r.includes(n))return wi[Vr("0x41")]("Invalid claimedUserIdType",{claimedUserIdType:n}),{actionToken:Vr("0x45")+n+"_"+i};let r;this[Vr("0x1b")].getConfValue("enableDeviceAttributesInActions",!1)&&(r=await this[Vr("0x38")][Vr("0x46")]());const a=l({type:Pi[Vr("0x47")],attributes:l(l(l(l(l(l(l(l(l(l(l(l({action_type:t},(null==e?void 0:e[Vr("0x48")])&&{correlation_id:e[Vr("0x48")]}),(null==e?void 0:e[Vr("0x49")])&&{claimed_user_id:e[Vr("0x49")]}),n&&{claimed_user_id_type:n}),(null==e?void 0:e[Vr("0x4a")])&&{public_key:e[Vr("0x4a")]}),(null==e?void 0:e[Vr("0x4b")])&&{extension_metadata:e.extensionMetadata}),(null==e?void 0:e.extensionDeviceAttributes)&&{extension_device_attributes:e[Vr("0x4c")]}),(null==e?void 0:e[Vr("0x4d")])&&{suspicious_signals:e[Vr("0x4d")]}),(null==e?void 0:e[Vr("0x4e")])&&{suspicious_context:e.suspiciousContext}),(null==e?void 0:e.downloadFile)&&{download_file:e[Vr("0x4f")]}),(null==e?void 0:e.uploadFile)&&{upload_file:e[Vr("0x50")]}),(null==e?void 0:e[Vr("0x51")])&&{transactionData:e.transactionData}),r)},(null==e?void 0:e.customAttributes)&&{customAttributes:e[Vr("0x52")]});try{const t=await this[Vr("0x28")][Vr("0x53")](a),{actionToken:e}=t;if(!e)throw new Wn(new Error(Vr("0x54")+(typeof t==Vr("0x2c")?JSON.stringify(t).slice(15):t)),Vn.CLIENT);return t}catch(e){return{actionToken:e instanceof Wn?e[Vr("0x55")]===Vn[Vr("0x56")]?e[Vr("0x55")]+Vr("0x57")+t+"_"+e.errorCode+"_'"+e[Vr("0x58")]+"'_"+i:e[Vr("0x55")]+Vr("0x57")+t+"_'"+e.message+"'_"+i:Vr("0x59")+t+"_"+i}}}async[Vr("0x5a")](t){return await this[Vr("0x22")]()?this.updateUserId(t):(wi[Vr("0x25")](Vr("0x26")),!1)}async[Vr("0x3d")](t){if(Hr[Vr("0x40")](t))return wi[Vr("0x25")](Vr("0x5b"),{userId:t}),!1;t=t.toString(),wi.info(Vr("0x5a"),{userId:t});const e=this[Vr("0x1c")][Vr("0x5c")]();return e===t||(this.identityManager[Vr("0x5d")](t),!!(await this[Vr("0x28")].emitEvent({type:Pi[Vr("0x5e")],attributes:{previous_user_id:e,user_id:t}}))[Vr("0x5f")])}async unidentifiedUser(){if(!await this[Vr("0x22")]())return wi[Vr("0x25")](Vr("0x26")),!1;const t=this[Vr("0x1c")][Vr("0x5c")]();return null!=t&&this.identityManager[Vr("0x60")](),!!(await this[Vr("0x28")].emitEvent({type:Pi[Vr("0x5e")],attributes:{previous_user_id:t}}))[Vr("0x5f")]}async[Vr("0x61")](t){return await this[Vr("0x5a")](t)}async[Vr("0x62")](t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return await this[Vr("0x61")](t,e)}async clearUser(){return await this[Vr("0x63")]()}}Xr[Vr("0x11")]=!1,document[Vr("0x66")](new CustomEvent("TSAccountProtectionReady"));var Qr,ta,ea=["events","MODULE_INITIALIZED","moduleMetadata","getInitConfig","init","utils","exceptions","TsError","not_initialized","tsPlatform not initialized","setUser","clearUser","identifyUser","unidentifiedUser","getSessionToken","identityManager","getDeviceId","getClientId","eventsManager","flush"];Qr=ea,ta=500,function(t){for(;--t;)Qr.push(Qr.shift())}(++ta);var ia=function(t,e){return ea[t-=0]};let na=null;function ra(t){if(!t)throw new(xi[ia("0x5")][ia("0x6")][ia("0x7")])(ia("0x8"),ia("0x9"))}xi.events.on(xi[ia("0x0")][ia("0x1")],(()=>{const{clientId:t,drs:e}=xi[ia("0x2")][ia("0x3")](),i=e||{},{enabled:n,userId:r}=i,a=h(i,ni);!1!==n&&(na=new Xr(t,a),na[ia("0x4")]({userId:r}))}));const aa=function(){return ra(na),na.triggerActionEvent(...arguments)},sa=function(){return ra(na),na[ia("0xa")](...arguments)},oa=function(){return ra(na),na.setAuthenticatedUser(...arguments)},ca=function(){return ra(na),na[ia("0xb")](...arguments)},la=function(){return ra(na),na[ia("0xc")](...arguments)},xa=function(){return ra(na),na[ia("0xd")](...arguments)},da=function(){return ra(na),na.getActions()},ha=function(){return ra(na),na[ia("0xe")]()},ua={getDeviceId:()=>na[ia("0xf")][ia("0x10")](),getClientId:()=>na[ia("0xf")][ia("0x11")](),flush:()=>na[ia("0x12")][ia("0x13")]()};const fa={initialize:s,...Object.freeze({__proto__:null,__internal:ua,clearUser:ca,getActions:da,getSessionToken:ha,identifyUser:la,setAuthenticatedUser:oa,setUser:sa,triggerActionEvent:aa,unidentifiedUser:xa})};exports.PACKAGE_VERSION="1.16.2",exports.__internal=ua,exports.clearUser=ca,exports.drs=fa,exports.getActions=da,exports.getSessionToken=ha,exports.identifyUser=la,exports.initialize=s,exports.setAuthenticatedUser=oa,exports.setUser=sa,exports.triggerActionEvent=aa,exports.unidentifiedUser=xa;